40 #ifndef PCL_REGISTRATION_TRANSFORMATION_ESTIMATION_SVD_SCALE_H_
41 #define PCL_REGISTRATION_TRANSFORMATION_ESTIMATION_SVD_SCALE_H_
43 #include <pcl/registration/transformation_estimation_svd.h>
47 namespace registration
57 template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar =
float>
61 typedef boost::shared_ptr<TransformationEstimationSVDScale<PointSource, PointTarget, Scalar> >
Ptr;
62 typedef boost::shared_ptr<const TransformationEstimationSVDScale<PointSource, PointTarget, Scalar> >
ConstPtr;
81 const Eigen::Matrix<Scalar, 4, 1> ¢roid_src,
82 const Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic> &cloud_tgt_demean,
83 const Eigen::Matrix<Scalar, 4, 1> ¢roid_tgt,
84 Matrix4 &transformation_matrix)
const;
90 #include <pcl/registration/impl/transformation_estimation_svd_scale.hpp>
boost::shared_ptr< TransformationEstimationSVDScale< PointSource, PointTarget, Scalar > > Ptr
TransformationEstimationSVDScale()
Inherits from TransformationEstimationSVD, but forces it to not use the Umeyama method.
TransformationEstimationSVD< PointSource, PointTarget, Scalar >::Matrix4 Matrix4
TransformationEstimationSVD implements SVD-based estimation of the transformation aligning the given ...
TransformationEstimation< PointSource, PointTarget, Scalar >::Matrix4 Matrix4
TransformationEstimationSVD implements SVD-based estimation of the transformation aligning the given ...
boost::shared_ptr< const TransformationEstimationSVDScale< PointSource, PointTarget, Scalar > > ConstPtr
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'.