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 <transformation_estimation_point_to_plane_lls.h>
Public Types | |
typedef boost::shared_ptr < const TransformationEstimationPointToPlaneLLS < PointSource, PointTarget, Scalar > > | ConstPtr |
typedef TransformationEstimation < PointSource, PointTarget, Scalar >::Matrix4 | Matrix4 |
typedef boost::shared_ptr < TransformationEstimationPointToPlaneLLS < PointSource, PointTarget, Scalar > > | Ptr |
Public Member Functions | |
void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::PointCloud< PointTarget > &cloud_tgt, Matrix4 &transformation_matrix) const |
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, Matrix4 &transformation_matrix) const |
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, Matrix4 &transformation_matrix) const |
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, Matrix4 &transformation_matrix) const |
Estimate a rigid rotation transformation between a source and a target point cloud using SVD. | |
TransformationEstimationPointToPlaneLLS () | |
virtual | ~TransformationEstimationPointToPlaneLLS () |
Protected Member Functions | |
void | constructTransformationMatrix (const double &alpha, const double &beta, const double &gamma, const double &tx, const double &ty, const double &tz, Matrix4 &transformation_matrix) const |
Construct a 4 by 4 tranformation matrix from the provided rotation and translation. | |
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. |
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
Definition at line 63 of file transformation_estimation_point_to_plane_lls.h.
typedef boost::shared_ptr<const TransformationEstimationPointToPlaneLLS<PointSource, PointTarget, Scalar> > pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::ConstPtr |
Reimplemented from pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.
Definition at line 67 of file transformation_estimation_point_to_plane_lls.h.
typedef TransformationEstimation<PointSource, PointTarget, Scalar>::Matrix4 pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::Matrix4 |
Reimplemented from pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.
Definition at line 69 of file transformation_estimation_point_to_plane_lls.h.
typedef boost::shared_ptr<TransformationEstimationPointToPlaneLLS<PointSource, PointTarget, Scalar> > pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::Ptr |
Reimplemented from pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.
Definition at line 66 of file transformation_estimation_point_to_plane_lls.h.
pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::TransformationEstimationPointToPlaneLLS | ( | ) | [inline] |
Definition at line 71 of file transformation_estimation_point_to_plane_lls.h.
virtual pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::~TransformationEstimationPointToPlaneLLS | ( | ) | [inline, virtual] |
Definition at line 72 of file transformation_estimation_point_to_plane_lls.h.
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::constructTransformationMatrix | ( | const double & | alpha, |
const double & | beta, | ||
const double & | gamma, | ||
const double & | tx, | ||
const double & | ty, | ||
const double & | tz, | ||
Matrix4 & | transformation_matrix | ||
) | const [inline, protected] |
Construct a 4 by 4 tranformation matrix from the provided rotation and translation.
[in] | alpha | the rotation about the x-axis |
[in] | beta | the rotation about the y-axis |
[in] | gamma | the rotation about the z-axis |
[in] | tx | the x translation |
[in] | ty | the y translation |
[in] | tz | the z translation |
[out] | transformation | the resultant transformation matrix |
Definition at line 121 of file transformation_estimation_point_to_plane_lls.hpp.
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | const pcl::PointCloud< PointSource > & | cloud_src, |
const pcl::PointCloud< PointTarget > & | cloud_tgt, | ||
Matrix4 & | transformation_matrix | ||
) | const [inline, virtual] |
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
[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 47 of file transformation_estimation_point_to_plane_lls.hpp.
void pcl::registration::TransformationEstimationPointToPlaneLLS< 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 [inline, virtual] |
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
[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 66 of file transformation_estimation_point_to_plane_lls.hpp.
void pcl::registration::TransformationEstimationPointToPlaneLLS< 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, virtual] |
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
[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 |
Implements pcl::registration::TransformationEstimation< PointSource, PointTarget, Scalar >.
Definition at line 87 of file transformation_estimation_point_to_plane_lls.hpp.
void pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::estimateRigidTransformation | ( | const pcl::PointCloud< PointSource > & | cloud_src, |
const pcl::PointCloud< PointTarget > & | cloud_tgt, | ||
const pcl::Correspondences & | correspondences, | ||
Matrix4 & | transformation_matrix | ||
) | const [inline, virtual] |
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
[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 108 of file transformation_estimation_point_to_plane_lls.hpp.
void pcl::registration::TransformationEstimationPointToPlaneLLS< 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.
[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 146 of file transformation_estimation_point_to_plane_lls.hpp.