ICP-based point cloud alignment.
|
|
| ICP (bool useGPU=true) |
| | Default constructor. If useGPU is true, OpenCL will be used for alignment, otherwise the CPU will be used. GPU support is only available for projective matching.
|
| |
| bool | loadPointClouds (const std::vector< PointCloud * > &pointClouds) |
| | Load point clouds to GPU and make them available for later use without prior upload.
|
| |
|
bool | addPointClouds (const std::vector< PointCloud * > &pointClouds) |
| | Add more point clouds in addition to existing ones.
|
| |
| bool | setPointClouds (int input, int target) |
| | Set point cloud from set of previously loaded point clouds - align 1 to 1 case.
|
| |
| bool | setPointClouds (int input, const std::vector< int > &target) |
| | Set point clouds from set of previously loaded point clouds - align 1 to n case.
|
| |
| bool | setPointClouds (PointCloud *input, PointCloud *target) |
| | Set point clouds.
|
| |
| bool | setPointClouds (PointCloud *input, const std::vector< PointCloud * > &targets) |
| | Set point clouds Deletes all preloaded point clouds.
|
| |
|
PointCloud * | inputPointCloud () const |
| |
|
std::vector< PointCloud * > | targetPointClouds () const |
| |
|
void | setMatchingStrategy (MatchingStrategy s) |
| | Set matching strategy.
|
| |
|
MatchingStrategy | matchingStrategy () const |
| | Get matching strategy.
|
| |
|
void | setMinMatches (int minMatches) |
| | Set minimum number of required matches.
|
| |
|
int | minMatches () const |
| | Get minimum number of required matches.
|
| |
|
void | setDistanceThreshold (double t) |
| | Set distance threshold for point matching.
|
| |
|
double | distanceThreshold () const |
| | Get distance threshold for point matching.
|
| |
|
void | setAngleThreshold (double t) |
| | Set angle threshold in degrees for normals for point matching.
|
| |
|
double | angleThreshold () const |
| | Get angle threshold in degrees for normals for point matching.
|
| |
|
void | setOverlapRatio (double o) |
| | Set (known) overlap ratio between point clouds. Currently not used.
|
| |
|
double | overlapRatio () const |
| | Get (known) overlap ratio between point clouds. Currently not used.
|
| |
|
void | setAbortIterations (int iter) |
| | Abort after a certain number of cost function evaluations.
|
| |
|
int | abortIterations () const |
| | Get the number of iterations after which to abort.
|
| |
|
void | setAbortTime (double sec) |
| | Abort after a certain elapsed number of seconds.
|
| |
|
double | abortTime () const |
| | Get the number of seconds after which to abort.
|
| |
|
void | setAbortParTol (double val) |
| | Abort if change in parameter values becomes too small.
|
| |
|
double | abortParTol () const |
| | Get the threshold for aborting if change in parameter values becomes too small.
|
| |
|
double | rmsError (int *matchedPoints=nullptr, std::vector< std::vector< int > > *matches=nullptr, bool weighted=true) const |
| | Compute alignment RMS error using the current point cloud pose.
|
| |
| bool | align (mat4 *inputT=nullptr, std::pair< double, int > *rms=nullptr) |
| | Align point clouds.
|
| |