6 #include <pcl/registration/ia_ransac.h>
7 #include <pcl/registration/icp.h>
29 computeInitialAlignment (
const PointCloudPtr & source_points,
const LocalDescriptorsPtr & source_descriptors,
30 const PointCloudPtr & target_points,
const LocalDescriptorsPtr & target_descriptors,
31 float min_sample_distance,
float max_correspondence_distance,
int nr_iterations)
45 sac_ia.
align (registration_output);
71 refineAlignment (
const PointCloudPtr & source_points,
const PointCloudPtr & target_points,
72 const Eigen::Matrix4f &initial_alignment,
float max_correspondence_distance,
73 float outlier_rejection_threshold,
float transformation_epsilon,
float max_iterations)
82 PointCloudPtr source_points_transformed (
new PointCloud);
89 icp.
align (registration_output);
virtual void setInputTarget(const PointCloudTargetConstPtr &cloud)
Provide a pointer to the input target (e.g., the point cloud that we want to align to the target) ...
void align(PointCloudSource &output)
Call the registration algorithm which estimates the transformation and returns the transformed source...
void setRANSACOutlierRejectionThreshold(double inlier_threshold)
Set the inlier distance threshold for the internal RANSAC outlier rejection loop. ...
Matrix4 getFinalTransformation()
Get the final transformation matrix estimated by the registration method.
void transformPointCloud(const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, const Eigen::Transform< Scalar, 3, Eigen::Affine > &transform)
Apply an affine transform defined by an Eigen Transform.
virtual void setInputTarget(const PointCloudTargetConstPtr &cloud)
Provide a pointer to the input target (e.g., the point cloud that we want to align the input source t...
void setTargetFeatures(const FeatureCloudConstPtr &features)
Provide a boost shared pointer to the target point cloud's feature descriptors.
void setSourceFeatures(const FeatureCloudConstPtr &features)
Provide a boost shared pointer to the source point cloud's feature descriptors.
void setMaximumIterations(int nr_iterations)
Set the maximum number of iterations the internal optimization should run for.
void setTransformationEpsilon(double epsilon)
Set the transformation epsilon (maximum allowable difference between two consecutive transformations)...
IterativeClosestPoint provides a base implementation of the Iterative Closest Point algorithm...
SampleConsensusInitialAlignment is an implementation of the initial alignment algorithm described in ...
virtual void setInputCloud(const PointCloudConstPtr &cloud)
Provide a pointer to the input dataset.
void setMaxCorrespondenceDistance(double distance_threshold)
Set the maximum distance threshold between two correspondent points in source <-> target...
void setMinSampleDistance(float min_sample_distance)
Set the minimum distances between samples.