Point Cloud Library (PCL)  1.6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions
pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget > Class Template Reference

TransformationEstimationPointToPlaneLLS implements a Linear Least Squares (LLS) approximation for minimizing the point-to-plane distance between two clouds of corresponding points with normals. More...

#include <pcl/registration/transformation_estimation_point_to_plane_lls.h>

Inheritance diagram for pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >:
Inheritance graph
[legend]
Collaboration diagram for pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef boost::shared_ptr
< TransformationEstimation
< PointSource, PointTarget > > 
Ptr
typedef boost::shared_ptr
< const
TransformationEstimation
< PointSource, PointTarget > > 
ConstPtr

Public Member Functions

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

Detailed Description

template<typename PointSource, typename PointTarget>
class pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >

TransformationEstimationPointToPlaneLLS implements a Linear Least Squares (LLS) approximation for minimizing the point-to-plane distance between two clouds of corresponding points with normals.

For additional details, see "Linear Least-Squares Optimization for Point-to-Plane ICP Surface Registration", Kok-Lim Low, 2004

Author:
Michael Dixon

Definition at line 59 of file transformation_estimation_point_to_plane_lls.h.


Member Typedef Documentation

template<typename PointSource , typename PointTarget >
typedef boost::shared_ptr<const TransformationEstimation<PointSource, PointTarget> > pcl::registration::TransformationEstimation< PointSource, PointTarget >::ConstPtr [inherited]

Definition at line 121 of file transformation_estimation.h.

template<typename PointSource , typename PointTarget >
typedef boost::shared_ptr<TransformationEstimation<PointSource, PointTarget> > pcl::registration::TransformationEstimation< PointSource, PointTarget >::Ptr [inherited]

Constructor & Destructor Documentation

template<typename PointSource , typename PointTarget >
pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >::TransformationEstimationPointToPlaneLLS ( ) [inline]
template<typename PointSource , typename PointTarget >
virtual pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >::~TransformationEstimationPointToPlaneLLS ( ) [inline, virtual]

Member Function Documentation

template<typename PointSource , typename PointTarget >
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >::estimateRigidTransformation ( const pcl::PointCloud< PointSource > &  cloud_src,
const pcl::PointCloud< PointTarget > &  cloud_tgt,
Eigen::Matrix4f &  transformation_matrix 
) [inline, virtual]

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

Parameters:
[in]cloud_srcthe source point cloud dataset
[in]cloud_tgtthe target point cloud dataset
[out]transformation_matrixthe resultant transformation matrix

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

Definition at line 44 of file transformation_estimation_point_to_plane_lls.hpp.

template<typename PointSource , typename PointTarget >
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >::estimateRigidTransformation ( const pcl::PointCloud< PointSource > &  cloud_src,
const std::vector< int > &  indices_src,
const pcl::PointCloud< PointTarget > &  cloud_tgt,
Eigen::Matrix4f &  transformation_matrix 
) [inline, virtual]

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

Parameters:
[in]cloud_srcthe source point cloud dataset
[in]indices_srcthe vector of indices describing the points of interest in cloud_src
[in]cloud_tgtthe target point cloud dataset
[out]transformation_matrixthe resultant transformation matrix

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

Definition at line 89 of file transformation_estimation_point_to_plane_lls.hpp.

template<typename PointSource , typename PointTarget >
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >::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,
Eigen::Matrix4f &  transformation_matrix 
) [inline, virtual]

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

Parameters:
[in]cloud_srcthe source point cloud dataset
[in]indices_srcthe vector of indices describing the points of interest in cloud_src
[in]cloud_tgtthe target point cloud dataset
[in]indices_tgtthe vector of indices describing the correspondences of the interst points from indices_src
[out]transformation_matrixthe resultant transformation matrix

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

Definition at line 135 of file transformation_estimation_point_to_plane_lls.hpp.

template<typename PointSource , typename PointTarget >
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget >::estimateRigidTransformation ( const pcl::PointCloud< PointSource > &  cloud_src,
const pcl::PointCloud< PointTarget > &  cloud_tgt,
const pcl::Correspondences correspondences,
Eigen::Matrix4f &  transformation_matrix 
) [inline, virtual]

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

Parameters:
[in]cloud_srcthe source point cloud dataset
[in]cloud_tgtthe target point cloud dataset
[in]correspondencesthe vector of correspondences between source and target point cloud
[out]transformation_matrixthe resultant transformation matrix

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

Definition at line 181 of file transformation_estimation_point_to_plane_lls.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines