43 #include <pcl/registration/transformation_estimation.h> 44 #include <pcl/registration/transformation_estimation_lm.h> 45 #include <pcl/registration/warp_point_rigid.h> 49 namespace registration
57 template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar =
float>
61 using Ptr = shared_ptr<TransformationEstimationPointToPlane<PointSource, PointTarget, Scalar> >;
62 using ConstPtr = shared_ptr<const TransformationEstimationPointToPlane<PointSource, PointTarget, Scalar> >;
71 using Vector4 = Eigen::Matrix<Scalar, 4, 1>;
78 computeDistance (
const PointSource &p_src,
const PointTarget &p_tgt)
const override 81 Vector4 s (p_src.x, p_src.y, p_src.z, 0);
82 Vector4 t (p_tgt.x, p_tgt.y, p_tgt.z, 0);
83 Vector4 n (p_tgt.normal_x, p_tgt.normal_y, p_tgt.normal_z, 0);
84 return ((s - t).dot (n));
91 Vector4 t (p_tgt.x, p_tgt.y, p_tgt.z, 0);
92 Vector4 n (p_tgt.normal_x, p_tgt.normal_y, p_tgt.normal_z, 0);
93 return ((p_src - t).dot (n));
shared_ptr< PointCloud< PointSource > > Ptr
shared_ptr< ::pcl::PointIndices > Ptr
shared_ptr< const ::pcl::PointIndices > ConstPtr
shared_ptr< const PointCloud< PointSource > > ConstPtr