43 #include <pcl/registration/transformation_estimation.h>
44 #include <pcl/registration/warp_point_rigid.h>
48 namespace registration {
57 template <
typename Po
intSource,
typename Po
intTarget,
typename MatScalar =
float>
71 shared_ptr<TransformationEstimationLM<PointSource, PointTarget, MatScalar>>;
73 shared_ptr<const TransformationEstimationLM<PointSource, PointTarget, MatScalar>>;
75 using VectorX = Eigen::Matrix<MatScalar, Eigen::Dynamic, 1>;
76 using Vector4 = Eigen::Matrix<MatScalar, 4, 1>;
117 Matrix4& transformation_matrix)
const override;
130 Matrix4& transformation_matrix)
const override;
146 Matrix4& transformation_matrix)
const override;
158 Matrix4& transformation_matrix)
const override;
183 Vector4 s(p_src.x, p_src.y, p_src.z, 0);
184 Vector4 t(p_tgt.x, p_tgt.y, p_tgt.z, 0);
185 return ((s - t).norm());
199 Vector4 t(p_tgt.x, p_tgt.y, p_tgt.z, 0);
200 return ((p_src - t).norm());
224 template <
typename _Scalar,
int NX = Eigen::Dynamic,
int NY = Eigen::Dynamic>
228 using InputType = Eigen::Matrix<_Scalar, InputsAtCompileTime, 1>;
229 using ValueType = Eigen::Matrix<_Scalar, ValuesAtCompileTime, 1>;
231 Eigen::Matrix<_Scalar, ValuesAtCompileTime, InputsAtCompileTime>;
350 #include <pcl/registration/impl/transformation_estimation_lm.hpp>
shared_ptr< PointCloud< PointSource > > Ptr
shared_ptr< const PointCloud< PointSource > > ConstPtr
shared_ptr< WarpPointRigid< PointSourceT, PointTargetT, Scalar > > Ptr
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
Defines functions, macros and traits for allocating and using memory.
std::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > Correspondences
IndicesAllocator<> Indices
Type used for indices in PCL.
shared_ptr< ::pcl::PointIndices > Ptr
shared_ptr< const ::pcl::PointIndices > ConstPtr