pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar > Class Template Referenceabstract
Module registration

TransformationEstimation represents the base class for methods for transformation estimation based on: More...

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

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

## Public Types

typedef Eigen::Matrix< Scalar, 4, 4 > | Matrix4
typedef boost::shared_ptr< TransformationEstimation< PointSource, PointTarget, Scalar > > | Ptr
typedef boost::shared_ptr< const TransformationEstimation< PointSource, PointTarget, Scalar > > | ConstPtr

## Public Member Functions

| TransformationEstimation ()
virtual | ~TransformationEstimation ()
virtual void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::PointCloud< PointTarget > &cloud_tgt, Matrix4 &transformation_matrix) const =0
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
virtual void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const std::vector< int > &indices_src, const pcl::PointCloud< PointTarget > &cloud_tgt, Matrix4 &transformation_matrix) const =0
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
virtual 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 =0
| Estimate a rigid rotation transformation between a source and a target point cloud. More...
virtual void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::PointCloud< PointTarget > &cloud_tgt, const pcl::Correspondences &correspondences, Matrix4 &transformation_matrix) const =0
| Estimate a rigid rotation transformation between a source and a target point cloud. More...

## Detailed Description

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

TransformationEstimation represents the base class for methods for transformation estimation based on:

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

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
  Dirk Holz, Radu B. Rusu

Definition at line 62 of file transformation_estimation.h.

## Member Typedef Documentation

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

typedef boost::shared_ptr<const TransformationEstimation<PointSource, PointTarget, Scalar> > pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >::ConstPtr

Definition at line 124 of file transformation_estimation.h.

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

typedef Eigen::Matrix<Scalar, 4, 4> pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >::Matrix4

Definition at line 65 of file transformation_estimation.h.

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

typedef boost::shared_ptr<TransformationEstimation<PointSource, PointTarget, Scalar> > pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >::Ptr

Definition at line 123 of file transformation_estimation.h.

## Constructor & Destructor Documentation

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

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

inline

Definition at line 67 of file transformation_estimation.h.

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

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

inline virtual

Definition at line 68 of file transformation_estimation.h.

## Member Function Documentation

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

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

pure 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

Implemented in pcl::registration::TransformationEstimationLM< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLSWeighted< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< pcl::pcl::PointXYZ, pcl::pcl::PointXYZ, float >, pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >, pcl::registration::TransformationEstimation2D< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationDQ< PointSource, PointTarget, Scalar >, and pcl::registration::TransformationEstimationDualQuaternion< PointSource, PointTarget, Scalar >.

Referenced by pcl::registration::TransformationEstimation< PointT, PointT, Scalar >::~TransformationEstimation().

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

virtual void pcl::registration::TransformationEstimation< 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

pure 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

Implemented in pcl::registration::TransformationEstimationLM< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLSWeighted< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< pcl::pcl::PointXYZ, pcl::pcl::PointXYZ, float >, pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >, pcl::registration::TransformationEstimation2D< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationDQ< PointSource, PointTarget, Scalar >, and pcl::registration::TransformationEstimationDualQuaternion< PointSource, PointTarget, Scalar >.

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

virtual void pcl::registration::TransformationEstimation< 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

pure 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 interst points from indices_src
  [out] | transformation_matrix | the resultant transformation matrix

Implemented in pcl::registration::TransformationEstimationLM< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLSWeighted< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< pcl::pcl::PointXYZ, pcl::pcl::PointXYZ, float >, pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >, pcl::registration::TransformationEstimationDQ< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationDualQuaternion< PointSource, PointTarget, Scalar >, and pcl::registration::TransformationEstimation2D< PointSource, PointTarget, Scalar >.

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

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

pure 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

Implemented in pcl::registration::TransformationEstimationLM< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationPointToPlaneLLSWeighted< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationSVD< pcl::pcl::PointXYZ, pcl::pcl::PointXYZ, float >, pcl::registration::TransformationEstimationSVD< PointT, PointT, Scalar >, pcl::registration::TransformationEstimationDQ< PointSource, PointTarget, Scalar >, pcl::registration::TransformationEstimationDualQuaternion< PointSource, PointTarget, Scalar >, and pcl::registration::TransformationEstimation2D< PointSource, PointTarget, Scalar >.

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

- /build/pcl-6_P28C/pcl-1.7.2/registration/include/pcl/registration/transformation_estimation.h