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

TransformationValidation represents the base class for methods that validate the correctness of a transformation found through TransformationEstimation. More...

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

## Public Types

typedef Eigen::Matrix< Scalar, 4, 4 > | Matrix4
typedef boost::shared_ptr< TransformationValidation< PointSource, PointTarget, Scalar > > | Ptr
typedef boost::shared_ptr< const TransformationValidation< PointSource, PointTarget, Scalar > > | ConstPtr
typedef pcl::PointCloud< PointSource > | PointCloudSource
typedef PointCloudSource::Ptr | PointCloudSourcePtr
typedef PointCloudSource::ConstPtr | PointCloudSourceConstPtr
typedef pcl::PointCloud< PointTarget > | PointCloudTarget
typedef PointCloudTarget::Ptr | PointCloudTargetPtr
typedef PointCloudTarget::ConstPtr | PointCloudTargetConstPtr

## Public Member Functions

| TransformationValidation ()
virtual | ~TransformationValidation ()
virtual double | validateTransformation (const PointCloudSourceConstPtr &cloud_src, const PointCloudTargetConstPtr &cloud_tgt, const Matrix4 &transformation_matrix) const =0
| Validate the given transformation with respect to the input cloud data, and return a score. More...
virtual bool | operator() (const double &score1, const double &score2) const =0
| Comparator function for deciding which score is better after running the validation on multiple transforms. More...
virtual bool | isValid (const PointCloudSourceConstPtr &cloud_src, const PointCloudTargetConstPtr &cloud_tgt, const Matrix4 &transformation_matrix) const =0
| Check if the score is valid for a specific transformation. More...

## Detailed Description

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

TransformationValidation represents the base class for methods that validate the correctness of a transformation found through TransformationEstimation.

The inputs for a validation estimation can take any or all of the following:

- source point cloud
- target point cloud
- estimated transformation between source and target

The output is in the form of a score or a confidence measure.

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

Definition at line 68 of file transformation_validation.h.

## Member Typedef Documentation

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

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

Definition at line 73 of file transformation_validation.h.

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

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

Definition at line 71 of file transformation_validation.h.

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

typedef pcl::PointCloud<PointSource> pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::PointCloudSource

Definition at line 75 of file transformation_validation.h.

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

typedef PointCloudSource::ConstPtr pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::PointCloudSourceConstPtr

Definition at line 77 of file transformation_validation.h.

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

typedef PointCloudSource::Ptr pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::PointCloudSourcePtr

Definition at line 76 of file transformation_validation.h.

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

typedef pcl::PointCloud<PointTarget> pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::PointCloudTarget

Definition at line 79 of file transformation_validation.h.

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

typedef PointCloudTarget::ConstPtr pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::PointCloudTargetConstPtr

Definition at line 81 of file transformation_validation.h.

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

typedef PointCloudTarget::Ptr pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::PointCloudTargetPtr

Definition at line 80 of file transformation_validation.h.

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

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

Definition at line 72 of file transformation_validation.h.

## Constructor & Destructor Documentation

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

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

inline

Definition at line 83 of file transformation_validation.h.

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

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

inline virtual

Definition at line 84 of file transformation_validation.h.

References pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::isValid(), pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::operator()(), and pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::validateTransformation().

## Member Function Documentation

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

virtual bool pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::isValid | ( | const PointCloudSourceConstPtr & | cloud_src,
|  | const PointCloudTargetConstPtr & | cloud_tgt,
|  | const Matrix4 & | transformation_matrix
| ) |  | const

pure virtual

Check if the score is valid for a specific transformation.

Pure virtual.

Parameters

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

Returns
  true if the transformation is valid, false otherwise.

Referenced by pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::~TransformationValidation().

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

virtual bool pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::operator() | ( | const double & | score1,
|  | const double & | score2
| ) |  | const

pure virtual

Comparator function for deciding which score is better after running the validation on multiple transforms.

Pure virtual.

Note
  For example, for Euclidean distances smaller is better, for inliers the oposite.

Parameters

  [in] | score1 | the first value
  [in] | score2 | the second value

Returns
  true if score1 is better than score2

Referenced by pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::~TransformationValidation().

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

virtual double pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::validateTransformation | ( | const PointCloudSourceConstPtr & | cloud_src,
|  | const PointCloudTargetConstPtr & | cloud_tgt,
|  | const Matrix4 & | transformation_matrix
| ) |  | const

pure virtual

Validate the given transformation with respect to the input cloud data, and return a score.

Pure virtual.

Parameters

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

Returns
  the score or confidence measure for the given transformation_matrix with respect to the input data

Referenced by pcl::registration::TransformationValidation< PointSource, PointTarget, Scalar >::~TransformationValidation().

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

- /build/pcl-0nnAvv/pcl-1.7.2/registration/include/pcl/registration/transformation_validation.h