pcl::recognition::TrimmedICP< PointT, Scalar > Class Template Reference

`#include <pcl/recognition/ransac_based/trimmed_icp.h>`

Inheritance diagram for pcl::recognition::TrimmedICP< PointT, Scalar >:

## Public Types

typedef pcl::PointCloud< PointT > | PointCloud
typedef PointCloud::ConstPtr | PointCloudConstPtr
typedef Eigen::Matrix< Scalar, 4, 4 > | Matrix4
Public Types inherited from pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >
typedef boost::shared_ptr< TransformationEstimationSVD< PointT, PointT, Scalar > > | Ptr
typedef boost::shared_ptr< const TransformationEstimationSVD< PointT, PointT, Scalar > > | ConstPtr
typedef TransformationEstimation< PointT, PointT, Scalar >::Matrix4 | Matrix4
Public Types inherited from pcl::registration::TransformationEstimation< PointT, PointT, Scalar >
typedef Eigen::Matrix< Scalar, 4, 4 > | Matrix4
typedef boost::shared_ptr< TransformationEstimation< PointT, PointT, Scalar > > | Ptr
typedef boost::shared_ptr< const TransformationEstimation< PointT, PointT, Scalar > > | ConstPtr

## Public Member Functions

| TrimmedICP ()
virtual | ~TrimmedICP ()
void | init (const PointCloudConstPtr &target)
| Call this method before calling align(). More...
void | align (const PointCloud &source_points, int num_source_points_to_use, Matrix4 &guess_and_result) const
| The method performs trimmed ICP, i.e., it rigidly registers the source to the target (passed to the init() method). More...
void | setNewToOldEnergyRatio (float ratio)
Public Member Functions inherited from pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >
| TransformationEstimationSVD (bool use_umeyama=true)
| Constructor. More...
virtual | ~TransformationEstimationSVD ()
void | estimateRigidTransformation (const pcl::PointCloud< PointT > &cloud_src, const pcl::PointCloud< PointT > &cloud_tgt, Matrix4 &transformation_matrix) const
| Estimate a rigid rotation transformation between a source and a target point cloud using SVD. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointT > &cloud_src, const std::vector< int > &indices_src, const pcl::PointCloud< PointT > &cloud_tgt, Matrix4 &transformation_matrix) const
| Estimate a rigid rotation transformation between a source and a target point cloud using SVD. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointT > &cloud_src, const std::vector< int > &indices_src, const pcl::PointCloud< PointT > &cloud_tgt, const std::vector< int > &indices_tgt, Matrix4 &transformation_matrix) const
| Estimate a rigid rotation transformation between a source and a target point cloud using SVD. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointT > &cloud_src, const pcl::PointCloud< PointT > &cloud_tgt, const pcl::Correspondences &correspondences, Matrix4 &transformation_matrix) const
| Estimate a rigid rotation transformation between a source and a target point cloud using SVD. More...
Public Member Functions inherited from pcl::registration::TransformationEstimation< PointT, PointT, Scalar >
| TransformationEstimation ()
virtual | ~TransformationEstimation ()

## Static Protected Member Functions

static bool | compareCorrespondences (const pcl::Correspondence &a, const pcl::Correspondence &b)

## Protected Attributes

PointCloudConstPtr | target_points_
pcl::KdTreeFLANN< PointT > | kdtree_
float | new_to_old_energy_ratio_
Protected Attributes inherited from pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >
bool | use_umeyama_

## Additional Inherited Members

Protected Member Functions inherited from pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >
void | estimateRigidTransformation (ConstCloudIterator< PointT > &source_it, ConstCloudIterator< PointT > &target_it, Matrix4 &transformation_matrix) const
| Estimate a rigid rotation transformation between a source and a target. More...
virtual void | getTransformationFromCorrelation (const Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_src_demean, const Eigen::Matrix< Scalar, 4, 1 > &centroid_src, const Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_tgt_demean, const Eigen::Matrix< Scalar, 4, 1 > &centroid_tgt, Matrix4 &transformation_matrix) const
| Obtain a 4x4 rigid transformation matrix from a correlation matrix H = src * tgt'. More...

## Detailed Description

### template<typename PointT, typename Scalar>
class pcl::recognition::TrimmedICP< PointT, Scalar >

Definition at line 62 of file trimmed_icp.h.

## Member Typedef Documentation

template<typename PointT, typename Scalar>

typedef Eigen::Matrix<Scalar, 4, 4> pcl::recognition::TrimmedICP< PointT, Scalar >::Matrix4

Definition at line 68 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

typedef pcl::PointCloud<PointT> pcl::recognition::TrimmedICP< PointT, Scalar >::PointCloud

Definition at line 65 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

typedef PointCloud::ConstPtr pcl::recognition::TrimmedICP< PointT, Scalar >::PointCloudConstPtr

Definition at line 66 of file trimmed_icp.h.

## Constructor & Destructor Documentation

template<typename PointT, typename Scalar>

pcl::recognition::TrimmedICP< PointT, Scalar >::TrimmedICP | ( |  | ) |

inline

Definition at line 71 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

virtual pcl::recognition::TrimmedICP< PointT, Scalar >::~TrimmedICP | ( |  | ) |

inline virtual

Definition at line 75 of file trimmed_icp.h.

## Member Function Documentation

template<typename PointT, typename Scalar>

void pcl::recognition::TrimmedICP< PointT, Scalar >::align | ( | const PointCloud & | source_points,
|  | int | num_source_points_to_use,
|  | Matrix4 & | guess_and_result
| ) |  | const

inline

The method performs trimmed ICP, i.e., it rigidly registers the source to the target (passed to the init() method).

Parameters

  [in] | source_points | is the point cloud to be registered to the target.
  [in] | num_source_points_to_use | gives the number of closest source points taken into account for registration. By closest source points we mean the source points closest to the target. These points are computed anew at each iteration.
  [in,out] | guess_and_result | is the estimated rigid transform. IMPORTANT: this matrix is also taken as the initial guess for the alignment. If there is no guess, set the matrix to identity!

Definition at line 99 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

static bool pcl::recognition::TrimmedICP< PointT, Scalar >::compareCorrespondences | ( | const pcl::Correspondence & | a,
|  | const pcl::Correspondence & | b
| ) |  |

inline static protected

Definition at line 173 of file trimmed_icp.h.

Referenced by pcl::recognition::TrimmedICP< pcl::pcl::PointXYZ, float >::align().

template<typename PointT, typename Scalar>

void pcl::recognition::TrimmedICP< PointT, Scalar >::init | ( | const PointCloudConstPtr & | target | ) |

inline

Call this method before calling align().

Parameters

  [in] | target | is target point cloud. The method builds a kd-tree based on 'target' for performing fast closest point search. The source point cloud will be registered to 'target' (see align() method).

Definition at line 84 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

void pcl::recognition::TrimmedICP< PointT, Scalar >::setNewToOldEnergyRatio | ( | float | ratio | ) |

inline

Definition at line 163 of file trimmed_icp.h.

## Member Data Documentation

template<typename PointT, typename Scalar>

pcl::KdTreeFLANN<PointT> pcl::recognition::TrimmedICP< PointT, Scalar >::kdtree_

protected

Definition at line 180 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

float pcl::recognition::TrimmedICP< PointT, Scalar >::new_to_old_energy_ratio_

protected

Definition at line 181 of file trimmed_icp.h.

template<typename PointT, typename Scalar>

PointCloudConstPtr pcl::recognition::TrimmedICP< PointT, Scalar >::target_points_

protected

Definition at line 179 of file trimmed_icp.h.

The documentation for this class was generated from the following file:

- /build/pcl-6_P28C/pcl-1.7.2/recognition/include/pcl/recognition/ransac_based/trimmed_icp.h