Skip to content

wish list concept #2

Description

@cwmeijer

based on:
http://www.pointclouds.org/assets/iros2011/registration.pdf

Refining initial alignments using ICP:

  • pcl::IterativeClosestPoint<PointT, PointT> icp;

// Threshold for outliers. If to far away between matches, ignore it while calculating rms.
? icp.setMaxCorrespondenceDistance (distance)

? icp.setRANSACOutlierRejectionThreshold (distance);

// ICP stops when the epsilon (difference) between the previous transformation and the current estimated transformation is smaller than an user imposed value (via setTransformationEpsilon)

  • icp.setTransformationEpsilon (transformation_epsilon);

// ICP stops after n iterations.

  • icp.setMaximumIterations (max_iterations);

// ICP stops when error between correspondences is smaller than this threshold.

  • icp.setEuclideanFitnessEpsilon(distance)

// Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)

  • icp.setInputCloud (aligned_source);

// Provide a pointer to the input target (e.g., the point cloud that we want to align to the target)

  • icp.setInputTarget (target_points);
  • virtual void pcl::IterativeClosestPoint< PointSource, PointTarget, Scalar >::setInputTarget ( const PointCloudTargetConstPtr & cloud )
  • PointCloud registration_output;

// Call the registration algorithm which estimates the transformation and returns the transformed source (input) as output.

  • icp.align (registration_output);
  • void pcl::Registration< PointSource, PointTarget, Scalar >::align ( PointCloudSource & output )

Get the final transformation matrix estimated by the registration method

  • Eigen::Matrix4f refined_T = 14 icp.getFinalTransformation () * initial_T);
  • Matrix4 pcl::Registration< PointSource, PointTarget, Scalar >::getFinalTransformation ( )

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions