|
Point Cloud Library (PCL) 1.15.1
|
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>
Public Types | |
| using | Ptr |
| using | ConstPtr |
| using | Matrix4 |
| Public Types inherited from pcl::registration::TransformationEstimation< PointSource, PointTarget, float > | |
| using | Matrix4 |
| using | Ptr |
| using | ConstPtr |
Public Member Functions | |
| TransformationEstimationPointToPlaneLLS ()=default | |
| ~TransformationEstimationPointToPlaneLLS () override=default | |
| 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 using SVD. | |
| void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::Indices &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 using SVD. | |
| void | estimateRigidTransformation (const pcl::PointCloud< PointSource > &cloud_src, const pcl::Indices &indices_src, const pcl::PointCloud< PointTarget > &cloud_tgt, const pcl::Indices &indices_tgt, Matrix4 &transformation_matrix) const override |
| 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 override |
| Estimate a rigid rotation transformation between a source and a target point cloud using SVD. | |
| Public Member Functions inherited from pcl::registration::TransformationEstimation< PointSource, PointTarget, float > | |
| TransformationEstimation ()=default | |
| virtual | ~TransformationEstimation ()=default |
| 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. | |
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. | |
| 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 transformation matrix from the provided rotation and translation. | |
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.
| using pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::ConstPtr |
Definition at line 68 of file transformation_estimation_point_to_plane_lls.h.
| using pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::Matrix4 |
Definition at line 71 of file transformation_estimation_point_to_plane_lls.h.
| using pcl::registration::TransformationEstimationPointToPlaneLLS< PointSource, PointTarget, Scalar >::Ptr |
Definition at line 66 of file transformation_estimation_point_to_plane_lls.h.
|
default |
|
overridedefault |
|
inlineprotected |
Construct a 4 by 4 transformation 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_matrix | the resultant transformation matrix |
Definition at line 134 of file transformation_estimation_point_to_plane_lls.hpp.
Referenced by estimateRigidTransformation().
|
inlineoverride |
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 interest points from indices_src |
| [out] | transformation_matrix | the resultant transformation matrix |
Definition at line 97 of file transformation_estimation_point_to_plane_lls.hpp.
References estimateRigidTransformation().
|
inlineoverride |
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 |
Definition at line 74 of file transformation_estimation_point_to_plane_lls.hpp.
References estimateRigidTransformation(), and pcl::PointCloud< PointT >::size().
|
inlineoverride |
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 |
Definition at line 121 of file transformation_estimation_point_to_plane_lls.hpp.
References estimateRigidTransformation().
|
inlineoverride |
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 |
Definition at line 52 of file transformation_estimation_point_to_plane_lls.hpp.
References estimateRigidTransformation(), and pcl::PointCloud< PointT >::size().
Referenced by estimateRigidTransformation(), estimateRigidTransformation(), estimateRigidTransformation(), and estimateRigidTransformation().
|
inlineprotected |
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 167 of file transformation_estimation_point_to_plane_lls.hpp.
References constructTransformationMatrix(), pcl::ConstCloudIterator< PointT >::isValid(), pcl::console::isVerbosityLevelEnabled(), pcl::console::L_DEBUG, and pcl::ConstCloudIterator< PointT >::reset().