42 #include <pcl/registration/correspondence_types.h>
43 #include <pcl/registration/correspondence_estimation.h>
47 namespace registration
54 template <
typename Po
intSource,
typename Po
intTarget,
typename NormalT,
typename Scalar =
float>
58 using Ptr = shared_ptr<CorrespondenceEstimationBackProjection<PointSource, PointTarget, NormalT, Scalar> >;
59 using ConstPtr = shared_ptr<const CorrespondenceEstimationBackProjection<PointSource, PointTarget, NormalT, Scalar> >;
93 , source_normals_transformed_ ()
97 corr_name_ =
"CorrespondenceEstimationBackProjection";
161 double max_distance = std::numeric_limits<double>::max ());
172 double max_distance = std::numeric_limits<double>::max ());
225 #include <pcl/registration/impl/correspondence_estimation_backprojection.hpp>
shared_ptr< KdTree< PointT, Tree > > Ptr
void fromPCLPointCloud2(const pcl::PCLPointCloud2 &msg, pcl::PointCloud< PointT > &cloud, const MsgFieldMap &field_map)
Convert a PCLPointCloud2 binary data blob into a pcl::PointCloud object using a field_map...
void setSourceNormals(const NormalsConstPtr &normals)
Set the normals computed on the source point cloud.
search::KdTree is a wrapper class which inherits the pcl::KdTree class for performing search function...
CorrespondenceEstimationBackProjection()
Empty constructor.
virtual CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr clone() const
Clone and cast to CorrespondenceEstimationBase.
CorrespondenceEstimationBackprojection computes correspondences as points in the target cloud which h...
typename PointCloudSource::ConstPtr PointCloudSourceConstPtr
std::string corr_name_
The correspondence estimation method name.
typename KdTree::Ptr KdTreePtr
unsigned int getKSearch() const
Get the number of nearest neighbours considered in the target point cloud for computing correspondenc...
shared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > > Ptr
shared_ptr< const CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > > ConstPtr
virtual ~CorrespondenceEstimationBackProjection()
Empty destructor.
shared_ptr< PointCloud< PointSource > > Ptr
typename PointCloudNormals::ConstPtr NormalsConstPtr
void determineCorrespondences(pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max())
Determine the correspondences between input and target cloud.
void setTargetNormals(const NormalsConstPtr &normals)
Set the normals computed on the target point cloud.
NormalsConstPtr getSourceNormals() const
Get the normals of the source point cloud.
typename PointCloudSource::Ptr PointCloudSourcePtr
typename PointCloudTarget::ConstPtr PointCloudTargetConstPtr
void setTargetNormals(pcl::PCLPointCloud2::ConstPtr cloud2)
Method for setting the target normals.
typename PointCloudNormals::Ptr NormalsPtr
shared_ptr< const PointCloud< PointSource > > ConstPtr
NormalsConstPtr getTargetNormals() const
Get the normals of the target point cloud.
void setKSearch(unsigned int k)
Set the number of nearest neighbours to be considered in the target point cloud.
std::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > Correspondences
virtual void determineReciprocalCorrespondences(pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max())
Determine the reciprocal correspondences between input and target cloud.
bool requiresTargetNormals() const
See if this rejector requires target normals.
bool requiresSourceNormals() const
See if this rejector requires source normals.
bool initCompute()
Internal computation initialization.
typename PointCloudTarget::Ptr PointCloudTargetPtr
void setSourceNormals(pcl::PCLPointCloud2::ConstPtr cloud2)
Blob method for setting the source normals.
Abstract CorrespondenceEstimationBase class.