TransformationEstimationSVD implements SVD-based estimation of the transformation aligning the given correspondences. More...
#include <pcl/registration/transformation_estimation_svd.h>
|
using |
Ptr = shared_ptr< TransformationEstimationSVD< PointSource, PointTarget, Scalar > > |
|
using |
ConstPtr = shared_ptr< const TransformationEstimationSVD< PointSource, PointTarget, Scalar > > |
|
using |
Matrix4 = typename TransformationEstimation< PointSource, PointTarget, Scalar >::Matrix4
|
|
using |
Matrix4 = Eigen::Matrix< float, 4, 4 > |
|
using |
Ptr = shared_ptr< TransformationEstimation< PointSource, PointTarget, float > > |
|
using |
ConstPtr = shared_ptr< const TransformationEstimation< PointSource, PointTarget, float > > |
|
|
|
TransformationEstimationSVD (bool use_umeyama=true) |
|
Constructor. More...
|
|
|
~TransformationEstimationSVD () |
|
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. More...
|
|
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. More...
|
|
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. More...
|
|
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. More...
|
|
|
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 pcl::Indices &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 pcl::Indices &indices_src, const pcl::PointCloud< PointTarget > &cloud_tgt, const pcl::Indices &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...
|
|
|
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. More...
|
|
virtual void |
getTransformationFromCorrelation (const Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_src_demean, const Eigen::Matrix< Scalar, 4, 1 > ¢roid_src, const Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > &cloud_tgt_demean, const Eigen::Matrix< Scalar, 4, 1 > ¢roid_tgt, Matrix4 &transformation_matrix) const |
|
Obtain a 4x4 rigid transformation matrix from a correlation matrix H = src. More...
|
|
template<typename PointSource, typename PointTarget, typename Scalar = float>
class pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >
TransformationEstimationSVD implements SVD-based estimation of the transformation aligning the given correspondences.
- 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 57 of file transformation_estimation_svd.h.
ConstPtr
template<typename PointSource , typename PointTarget , typename Scalar = float>
Matrix4
template<typename PointSource , typename PointTarget , typename Scalar = float>
Ptr
template<typename PointSource , typename PointTarget , typename Scalar = float>
TransformationEstimationSVD()
template<typename PointSource , typename PointTarget , typename Scalar = float>
~TransformationEstimationSVD()
template<typename PointSource , typename PointTarget , typename Scalar = float>
estimateRigidTransformation() [1/5]
template<typename PointSource , typename PointTarget , typename Scalar >
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
- 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 interest points from indices_src |
[out] |
transformation_matrix |
the resultant transformation matrix |
Definition at line 95 of file transformation_estimation_svd.hpp.
estimateRigidTransformation() [2/5]
template<typename PointSource , typename PointTarget , typename Scalar >
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
- 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 |
Definition at line 74 of file transformation_estimation_svd.hpp.
estimateRigidTransformation() [3/5]
template<typename PointSource , typename PointTarget , typename Scalar >
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
- 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 |
Definition at line 117 of file transformation_estimation_svd.hpp.
estimateRigidTransformation() [4/5]
template<typename PointSource , typename PointTarget , typename Scalar >
Estimate a rigid rotation transformation between a source and a target point cloud using SVD.
- Parameters
-
[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 53 of file transformation_estimation_svd.hpp.
estimateRigidTransformation() [5/5]
template<typename PointSource , typename PointTarget , typename Scalar >
Estimate a rigid rotation transformation between a source and a target.
- Parameters
-
[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 130 of file transformation_estimation_svd.hpp.
getTransformationFromCorrelation()
template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >::getTransformationFromCorrelation | ( | const Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > & |
cloud_src_demean, | | | const Eigen::Matrix< Scalar, 4, 1 > & |
centroid_src, | | | const Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > & |
cloud_tgt_demean, | | | const Eigen::Matrix< Scalar, 4, 1 > & |
centroid_tgt, | | |
Matrix4 & |
transformation_matrix | | ) | |
const | | protectedvirtual |
Obtain a 4x4 rigid transformation matrix from a correlation matrix H = src.
- tgt'
- Parameters
-
[in] |
cloud_src_demean |
the input source cloud, demeaned, in Eigen format |
[in] |
centroid_src |
the input source centroid, in Eigen format |
[in] |
cloud_tgt_demean |
the input target cloud, demeaned, in Eigen format |
[in] |
centroid_tgt |
the input target cloud, in Eigen format |
[out] |
transformation_matrix |
the resultant 4x4 rigid transformation matrix |
Definition at line 186 of file transformation_estimation_svd.hpp.
use_umeyama_
template<typename PointSource , typename PointTarget , typename Scalar = float>
The documentation for this class was generated from the following files: