pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar > Class Template Reference
Module registration

TransformationEstimation3Points represents the class for transformation estimation based on: More...

`#include <pcl/registration/transformation_estimation_3point.h>`

Inheritance diagram for pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >:

## Public Member Functions

| TransformationEstimation3Point ()
| Constructor. More...
| ~TransformationEstimation3Point ()
| Destructor. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::PointCloud< PointTarget > &cloud_tgt, Matrix4 &transformation_matrix) const override
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const std::vector< int > &indices_src, const pcl::PointCloud< PointTarget > &cloud_tgt, Matrix4 &transformation_matrix) const override
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const std::vector< int > &indices_src, const pcl::PointCloud< PointTarget > &cloud_tgt, const std::vector< int > &indices_tgt, Matrix4 &transformation_matrix) const override
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::PointCloud< PointTarget > &cloud_tgt, const pcl::Correspondences &correspondences, Matrix4 &transformation_matrix) const override
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
Public Member Functions inherited from pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >
| TransformationEstimation ()
virtual | ~TransformationEstimation ()

## Protected Member Functions

void | estimateRigidTransformation (ConstCloudIterator< PointSource > &source_it, ConstCloudIterator< PointTarget > &target_it, Matrix4 &transformation_matrix) const
| Estimate a rigid rotation transformation between a source and a target. More...

## Additional Inherited Members

Public Types inherited from pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >
using | Matrix4 = Eigen::Matrix< Scalar, 4, 4 >
using | Ptr = shared_ptr< TransformationEstimation< PointSource, PointTarget, Scalar > >
using | ConstPtr = shared_ptr< const TransformationEstimation< PointSource, PointTarget, Scalar > >

## Detailed Description

### template<typename PointSource, typename PointTarget, typename Scalar = float>
class pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >

TransformationEstimation3Points represents the class for transformation estimation based on:

- correspondence vectors of 3 pairs (planar case)
- two point clouds (source and target) of size 3
- a point cloud with a set of 3 indices (source), and another point cloud (target)
- two point clouds with two sets of indices (source and target) of the size 3

Note
  The class is templated on the source and target point types as well as on the output scalar of the transformation matrix (i.e., float or double). Default: float.

Author
  P.W.Theiler

Definition at line 59 of file transformation_estimation_3point.h.

## Constructor & Destructor Documentation

## TransformationEstimation3Point()

template<typename PointSource , typename PointTarget , typename Scalar = float>

pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::TransformationEstimation3Point | ( |  | ) |

inline

Constructor.

Definition at line 69 of file transformation_estimation_3point.h.

## ~TransformationEstimation3Point()

template<typename PointSource , typename PointTarget , typename Scalar = float>

pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::~TransformationEstimation3Point | ( |  | ) |

inline

Destructor.

Definition at line 73 of file transformation_estimation_3point.h.

## Member Function Documentation

## estimateRigidTransformation() [1/5]

template<typename PointSource , typename PointTarget , typename Scalar >

void pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | const pcl::PointCloud< PointSource > & | cloud_src,
|  | const pcl::PointCloud< PointTarget > & | cloud_tgt,
|  | const pcl::Correspondences & | correspondences,
|  | Matrix4 & | transformation_matrix
| ) |  | const

override virtual

Estimate a rigid rotation transformation between a source and a target point cloud.

Parameters

  [in] | cloud_src | the source point cloud dataset
  [in] | cloud_tgt | the target point cloud dataset
  [in] | correspondences | the vector of correspondences between source and target point cloud
  [out] | transformation_matrix | the resultant transformation matrix

Implements pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.

Definition at line 105 of file transformation_estimation_3point.hpp.

## estimateRigidTransformation() [2/5]

template<typename PointSource , typename PointTarget , typename Scalar >

void pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | const pcl::PointCloud< PointSource > & | cloud_src,
|  | const pcl::PointCloud< PointTarget > & | cloud_tgt,
|  | Matrix4 & | transformation_matrix
| ) |  | const

inline override virtual

Estimate a rigid rotation transformation between a source and a target point cloud.

Parameters

  [in] | cloud_src | the source point cloud dataset
  [in] | cloud_tgt | the target point cloud dataset
  [out] | transformation_matrix | the resultant transformation matrix

Implements pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.

Definition at line 45 of file transformation_estimation_3point.hpp.

References pcl::PointCloud< PointT >::points.

## estimateRigidTransformation() [3/5]

template<typename PointSource , typename PointTarget , typename Scalar >

void pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | const pcl::PointCloud< PointSource > & | cloud_src,
|  | const std::vector< int > & | indices_src,
|  | const pcl::PointCloud< PointTarget > & | cloud_tgt,
|  | const std::vector< int > & | indices_tgt,
|  | Matrix4 & | transformation_matrix
| ) |  | const

inline override virtual

Estimate a rigid rotation transformation between a source and a target point cloud.

Parameters

  [in] | cloud_src | the source point cloud dataset
  [in] | indices_src | the vector of indices describing the points of interest in cloud_src
  [in] | cloud_tgt | the target point cloud dataset
  [in] | indices_tgt | the vector of indices describing the correspondences of the interest points from indices_src
  [out] | transformation_matrix | the resultant transformation matrix

Implements pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.

Definition at line 84 of file transformation_estimation_3point.hpp.

## estimateRigidTransformation() [4/5]

template<typename PointSource , typename PointTarget , typename Scalar >

void pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | const pcl::PointCloud< PointSource > & | cloud_src,
|  | const std::vector< int > & | indices_src,
|  | const pcl::PointCloud< PointTarget > & | cloud_tgt,
|  | Matrix4 & | transformation_matrix
| ) |  | const

override virtual

Estimate a rigid rotation transformation between a source and a target point cloud.

Parameters

  [in] | cloud_src | the source point cloud dataset
  [in] | indices_src | the vector of indices describing the points of interest in cloud_src
  [in] | cloud_tgt | the target point cloud dataset
  [out] | transformation_matrix | the resultant transformation matrix

Implements pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.

Definition at line 64 of file transformation_estimation_3point.hpp.

References pcl::PointCloud< PointT >::points.

## estimateRigidTransformation() [5/5]

template<typename PointSource , typename PointTarget , typename Scalar >

void pcl::registration::TransformationEstimation3Point< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | ConstCloudIterator< PointSource > & | source_it,
|  | ConstCloudIterator< PointTarget > & | target_it,
|  | Matrix4 & | transformation_matrix
| ) |  | const

inline protected

Estimate a rigid rotation transformation between a source and a target.

Parameters

  [in] | source_it | an iterator over the source point cloud dataset
  [in] | target_it | an iterator over the target point cloud dataset
  [out] | transformation_matrix | the resultant transformation matrix

Definition at line 125 of file transformation_estimation_3point.hpp.

References pcl::compute3DCentroid(), pcl::demeanPointCloud(), and pcl::ConstCloudIterator< PointT >::reset().

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

- pcl/registration/transformation_estimation_3point.h
- pcl/registration/impl/transformation_estimation_3point.hpp