#include <transformation_estimation_svd_scale.h>
Public Types | |
typedef boost::shared_ptr < const TransformationEstimationSVDScale < PointSource, PointTarget, Scalar > > | ConstPtr |
typedef TransformationEstimationSVD < PointSource, PointTarget, Scalar >::Matrix4 | Matrix4 |
typedef boost::shared_ptr < TransformationEstimationSVDScale < PointSource, PointTarget, Scalar > > | Ptr |
Public Member Functions | |
TransformationEstimationSVDScale () | |
Inherits from TransformationEstimationSVD, but forces it to not use the Umeyama method. | |
Protected Member Functions | |
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 * tgt'. |
TransformationEstimationSVD implements SVD-based estimation of the transformation aligning the given correspondences. Optionally the scale is estimated. Note that the similarity transform might not be optimal for the underlying Frobenius Norm.
Definition at line 58 of file transformation_estimation_svd_scale.h.
typedef boost::shared_ptr<const TransformationEstimationSVDScale<PointSource, PointTarget, Scalar> > pcl::registration::TransformationEstimationSVDScale< PointSource, PointTarget, Scalar >::ConstPtr |
Reimplemented from pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >.
Definition at line 62 of file transformation_estimation_svd_scale.h.
typedef TransformationEstimationSVD<PointSource, PointTarget, Scalar>::Matrix4 pcl::registration::TransformationEstimationSVDScale< PointSource, PointTarget, Scalar >::Matrix4 |
Reimplemented from pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >.
Definition at line 64 of file transformation_estimation_svd_scale.h.
typedef boost::shared_ptr<TransformationEstimationSVDScale<PointSource, PointTarget, Scalar> > pcl::registration::TransformationEstimationSVDScale< PointSource, PointTarget, Scalar >::Ptr |
Reimplemented from pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >.
Definition at line 61 of file transformation_estimation_svd_scale.h.
pcl::registration::TransformationEstimationSVDScale< PointSource, PointTarget, Scalar >::TransformationEstimationSVDScale | ( | ) | [inline] |
Inherits from TransformationEstimationSVD, but forces it to not use the Umeyama method.
Definition at line 67 of file transformation_estimation_svd_scale.h.
void pcl::registration::TransformationEstimationSVDScale< 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 [protected, virtual] |
Obtain a 4x4 rigid transformation matrix from a correlation matrix H = src * tgt'.
[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 |
Reimplemented from pcl::registration::TransformationEstimationSVD< PointSource, PointTarget, Scalar >.
Definition at line 44 of file transformation_estimation_svd_scale.hpp.