39 #ifndef PCL_REGISTRATION_TRANSFORMATION_ESTIMATION_DQ_H_
40 #define PCL_REGISTRATION_TRANSFORMATION_ESTIMATION_DQ_H_
42 #include <pcl/registration/transformation_estimation.h>
43 #include <pcl/cloud_iterator.h>
47 namespace registration
56 template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar =
float>
60 typedef boost::shared_ptr<TransformationEstimationDQ<PointSource, PointTarget, Scalar> >
Ptr;
61 typedef boost::shared_ptr<const TransformationEstimationDQ<PointSource, PointTarget, Scalar> >
ConstPtr;
78 Matrix4 &transformation_matrix)
const;
90 const std::vector<int> &indices_src,
92 Matrix4 &transformation_matrix)
const;
105 const std::vector<int> &indices_src,
107 const std::vector<int> &indices_tgt,
108 Matrix4 &transformation_matrix)
const;
122 Matrix4 &transformation_matrix)
const;
134 Matrix4 &transformation_matrix)
const;
140 #include <pcl/registration/impl/transformation_estimation_dq.hpp>
Iterator class for point clouds with or without given indices.
TransformationEstimationDQ()
boost::shared_ptr< const TransformationEstimationDQ< PointSource, PointTarget, Scalar > > ConstPtr
virtual ~TransformationEstimationDQ()
boost::shared_ptr< TransformationEstimationDQ< PointSource, PointTarget, Scalar > > Ptr
std::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > Correspondences
void estimateRigidTransformation(const pcl::PointCloud< PointSource > &cloud_src, const pcl::PointCloud< PointTarget > &cloud_tgt, Matrix4 &transformation_matrix) const
Estimate a rigid rotation transformation between a source and a target point cloud using dual quatern...
TransformationEstimationDQ implements dual quaternion based estimation of the transformation aligning...
Eigen::Matrix< Scalar, 4, 4 > Matrix4
TransformationEstimation represents the base class for methods for transformation estimation based on...
TransformationEstimation< PointSource, PointTarget, Scalar >::Matrix4 Matrix4