Point Cloud Library (PCL)  1.14.1-dev
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > Class Template Referenceabstract

Abstract CorrespondenceEstimationBase class. More...

#include <pcl/registration/correspondence_estimation.h>

+ Inheritance diagram for pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >:
+ Collaboration diagram for pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >:

Public Types

using Ptr = shared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > >
 
using ConstPtr = shared_ptr< const CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > >
 
using KdTree = pcl::search::KdTree< PointTarget >
 
using KdTreePtr = typename KdTree::Ptr
 
using KdTreeConstPtr = typename KdTree::ConstPtr
 
using KdTreeReciprocal = pcl::search::KdTree< PointSource >
 
using KdTreeReciprocalPtr = typename KdTreeReciprocal::Ptr
 
using KdTreeReciprocalConstPtr = typename KdTreeReciprocal::ConstPtr
 
using PointCloudSource = pcl::PointCloud< PointSource >
 
using PointCloudSourcePtr = typename PointCloudSource::Ptr
 
using PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr
 
using PointCloudTarget = pcl::PointCloud< PointTarget >
 
using PointCloudTargetPtr = typename PointCloudTarget::Ptr
 
using PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr
 
using PointRepresentationConstPtr = typename KdTree::PointRepresentationConstPtr
 
using PointRepresentationReciprocalConstPtr = typename KdTreeReciprocal::PointRepresentationConstPtr
 
- Public Types inherited from pcl::PCLBase< PointSource >
using PointCloud = pcl::PointCloud< PointSource >
 
using PointCloudPtr = typename PointCloud::Ptr
 
using PointCloudConstPtr = typename PointCloud::ConstPtr
 
using PointIndicesPtr = PointIndices::Ptr
 
using PointIndicesConstPtr = PointIndices::ConstPtr
 

Public Member Functions

 CorrespondenceEstimationBase ()
 Empty constructor. More...
 
 ~CorrespondenceEstimationBase () override=default
 Empty destructor. More...
 
void setInputSource (const PointCloudSourceConstPtr &cloud)
 Provide a pointer to the input source (e.g., the point cloud that we want to align to the target) More...
 
PointCloudSourceConstPtr const getInputSource ()
 Get a pointer to the input point cloud dataset target. More...
 
void setInputTarget (const PointCloudTargetConstPtr &cloud)
 Provide a pointer to the input target (e.g., the point cloud that we want to align the input source to) More...
 
PointCloudTargetConstPtr const getInputTarget ()
 Get a pointer to the input point cloud dataset target. More...
 
void setNumberOfThreads (unsigned int nr_threads)
 Set the number of threads to use. More...
 
virtual bool requiresSourceNormals () const
 See if this rejector requires source normals. More...
 
virtual void setSourceNormals (pcl::PCLPointCloud2::ConstPtr)
 Abstract method for setting the source normals. More...
 
virtual bool requiresTargetNormals () const
 See if this rejector requires target normals. More...
 
virtual void setTargetNormals (pcl::PCLPointCloud2::ConstPtr)
 Abstract method for setting the target normals. More...
 
void setIndicesSource (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represent the input source point cloud. More...
 
IndicesPtr const getIndicesSource ()
 Get a pointer to the vector of indices used for the source dataset. More...
 
void setIndicesTarget (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represent the input target point cloud. More...
 
IndicesPtr const getIndicesTarget ()
 Get a pointer to the vector of indices used for the target dataset. More...
 
void setSearchMethodTarget (const KdTreePtr &tree, bool force_no_recompute=false)
 Provide a pointer to the search object used to find correspondences in the target cloud. More...
 
KdTreePtr getSearchMethodTarget () const
 Get a pointer to the search method used to find correspondences in the target cloud. More...
 
void setSearchMethodSource (const KdTreeReciprocalPtr &tree, bool force_no_recompute=false)
 Provide a pointer to the search object used to find correspondences in the source cloud (usually used by reciprocal correspondence finding). More...
 
KdTreeReciprocalPtr getSearchMethodSource () const
 Get a pointer to the search method used to find correspondences in the source cloud. More...
 
virtual void determineCorrespondences (pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max())=0
 Determine the correspondences between input and target cloud. More...
 
virtual void determineReciprocalCorrespondences (pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max())=0
 Determine the reciprocal correspondences between input and target cloud. More...
 
void setPointRepresentation (const PointRepresentationConstPtr &point_representation)
 Provide a boost shared pointer to the PointRepresentation for target cloud to be used when searching for nearest neighbors. More...
 
void setPointRepresentationReciprocal (const PointRepresentationReciprocalConstPtr &point_representation_reciprocal)
 Provide a boost shared pointer to the PointRepresentation for source cloud to be used when searching for nearest neighbors. More...
 
virtual CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr clone () const =0
 Clone and cast to CorrespondenceEstimationBase. More...
 
- Public Member Functions inherited from pcl::PCLBase< PointSource >
 PCLBase ()
 Empty constructor. More...
 
 PCLBase (const PCLBase &base)
 Copy constructor. More...
 
virtual ~PCLBase ()=default
 Destructor. More...
 
virtual void setInputCloud (const PointCloudConstPtr &cloud)
 Provide a pointer to the input dataset. More...
 
PointCloudConstPtr const getInputCloud () const
 Get a pointer to the input point cloud dataset. More...
 
virtual void setIndices (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (const IndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (const PointIndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols)
 Set the indices for the points laying within an interest region of the point cloud. More...
 
IndicesPtr getIndices ()
 Get a pointer to the vector of indices used. More...
 
IndicesConstPtr const getIndices () const
 Get a pointer to the vector of indices used. More...
 
const PointSource & operator[] (std::size_t pos) const
 Override PointCloud operator[] to shorten code. More...
 

Protected Member Functions

const std::string & getClassName () const
 Abstract class get name method. More...
 
bool initCompute ()
 Internal computation initialization. More...
 
bool initComputeReciprocal ()
 Internal computation initialization for reciprocal correspondences. More...
 
- Protected Member Functions inherited from pcl::PCLBase< PointSource >
bool initCompute ()
 This method should get called before starting the actual computation. More...
 
bool deinitCompute ()
 This method should get called after finishing the actual computation. More...
 

Protected Attributes

std::string corr_name_
 The correspondence estimation method name. More...
 
KdTreePtr tree_
 A pointer to the spatial search object used for the target dataset. More...
 
KdTreeReciprocalPtr tree_reciprocal_
 A pointer to the spatial search object used for the source dataset. More...
 
PointCloudTargetConstPtr target_
 The input point cloud dataset target. More...
 
IndicesPtr target_indices_
 The target point cloud dataset indices. More...
 
PointRepresentationConstPtr point_representation_
 The target point representation used (internal). More...
 
PointRepresentationReciprocalConstPtr point_representation_reciprocal_
 The source point representation used (internal). More...
 
PointCloudTargetPtr input_transformed_
 The transformed input source point cloud dataset. More...
 
std::vector< pcl::PCLPointFieldinput_fields_
 The types of input point fields available. More...
 
bool target_cloud_updated_ {true}
 Variable that stores whether we have a new target cloud, meaning we need to pre-process it again. More...
 
bool source_cloud_updated_ {true}
 Variable that stores whether we have a new source cloud, meaning we need to pre-process it again. More...
 
bool force_no_recompute_ {false}
 A flag which, if set, means the tree operating on the target cloud will never be recomputed. More...
 
bool force_no_recompute_reciprocal_ {false}
 A flag which, if set, means the tree operating on the source cloud will never be recomputed. More...
 
unsigned int num_threads_ {1}
 
- Protected Attributes inherited from pcl::PCLBase< PointSource >
PointCloudConstPtr input_
 The input point cloud dataset. More...
 
IndicesPtr indices_
 A pointer to the vector of point indices to use. More...
 
bool use_indices_
 Set to true if point indices are used. More...
 
bool fake_indices_
 If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More...
 

Detailed Description

template<typename PointSource, typename PointTarget, typename Scalar = float>
class pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >

Abstract CorrespondenceEstimationBase class.

All correspondence estimation methods should inherit from this.

Author
Radu B. Rusu

Definition at line 60 of file correspondence_estimation.h.

Member Typedef Documentation

◆ ConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::ConstPtr = shared_ptr<const CorrespondenceEstimationBase<PointSource, PointTarget, Scalar> >

Definition at line 64 of file correspondence_estimation.h.

◆ KdTree

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTree = pcl::search::KdTree<PointTarget>

Definition at line 73 of file correspondence_estimation.h.

◆ KdTreeConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeConstPtr = typename KdTree::ConstPtr

Definition at line 75 of file correspondence_estimation.h.

◆ KdTreePtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreePtr = typename KdTree::Ptr

Definition at line 74 of file correspondence_estimation.h.

◆ KdTreeReciprocal

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocal = pcl::search::KdTree<PointSource>

Definition at line 77 of file correspondence_estimation.h.

◆ KdTreeReciprocalConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocalConstPtr = typename KdTreeReciprocal::ConstPtr

Definition at line 79 of file correspondence_estimation.h.

◆ KdTreeReciprocalPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocalPtr = typename KdTreeReciprocal::Ptr

Definition at line 78 of file correspondence_estimation.h.

◆ PointCloudSource

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSource = pcl::PointCloud<PointSource>

Definition at line 81 of file correspondence_estimation.h.

◆ PointCloudSourceConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr

Definition at line 83 of file correspondence_estimation.h.

◆ PointCloudSourcePtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSourcePtr = typename PointCloudSource::Ptr

Definition at line 82 of file correspondence_estimation.h.

◆ PointCloudTarget

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTarget = pcl::PointCloud<PointTarget>

Definition at line 85 of file correspondence_estimation.h.

◆ PointCloudTargetConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr

Definition at line 87 of file correspondence_estimation.h.

◆ PointCloudTargetPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTargetPtr = typename PointCloudTarget::Ptr

Definition at line 86 of file correspondence_estimation.h.

◆ PointRepresentationConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointRepresentationConstPtr = typename KdTree::PointRepresentationConstPtr

Definition at line 89 of file correspondence_estimation.h.

◆ PointRepresentationReciprocalConstPtr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointRepresentationReciprocalConstPtr = typename KdTreeReciprocal::PointRepresentationConstPtr

Definition at line 90 of file correspondence_estimation.h.

◆ Ptr

template<typename PointSource , typename PointTarget , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr = shared_ptr<CorrespondenceEstimationBase<PointSource, PointTarget, Scalar> >

Definition at line 62 of file correspondence_estimation.h.

Constructor & Destructor Documentation

◆ CorrespondenceEstimationBase()

template<typename PointSource , typename PointTarget , typename Scalar = float>
pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::CorrespondenceEstimationBase ( )
inline

Empty constructor.

Definition at line 94 of file correspondence_estimation.h.

◆ ~CorrespondenceEstimationBase()

template<typename PointSource , typename PointTarget , typename Scalar = float>
pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::~CorrespondenceEstimationBase ( )
overridedefault

Empty destructor.

Member Function Documentation

◆ clone()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual CorrespondenceEstimationBase<PointSource, PointTarget, Scalar>::Ptr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::clone ( ) const
pure virtual

◆ determineCorrespondences()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::determineCorrespondences ( pcl::Correspondences correspondences,
double  max_distance = std::numeric_limits< double >::max() 
)
pure virtual

Determine the correspondences between input and target cloud.

Parameters
[out]correspondencesthe found correspondences (index of query point, index of target point, distance)
[in]max_distancemaximum allowed distance between correspondences

Implemented in pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >, and pcl::registration::CorrespondenceEstimationOrganizedProjection< PointSource, PointTarget, Scalar >.

◆ determineReciprocalCorrespondences()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::determineReciprocalCorrespondences ( pcl::Correspondences correspondences,
double  max_distance = std::numeric_limits< double >::max() 
)
pure virtual

Determine the reciprocal correspondences between input and target cloud.

A correspondence is considered reciprocal if both Src_i has Tgt_i as a correspondence, and Tgt_i has Src_i as one.

Parameters
[out]correspondencesthe found correspondences (index of query and target point, distance)
[in]max_distancemaximum allowed distance between correspondences

Implemented in pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >, and pcl::registration::CorrespondenceEstimationOrganizedProjection< PointSource, PointTarget, Scalar >.

◆ getClassName()

template<typename PointSource , typename PointTarget , typename Scalar = float>
const std::string& pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getClassName ( ) const
inlineprotected

◆ getIndicesSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
IndicesPtr const pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getIndicesSource ( )
inline

Get a pointer to the vector of indices used for the source dataset.

Definition at line 201 of file correspondence_estimation.h.

References pcl::PCLBase< PointSource >::indices_.

◆ getIndicesTarget()

template<typename PointSource , typename PointTarget , typename Scalar = float>
IndicesPtr const pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getIndicesTarget ( )
inline

Get a pointer to the vector of indices used for the target dataset.

Definition at line 218 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_indices_.

◆ getInputSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
PointCloudSourceConstPtr const pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getInputSource ( )
inline

Get a pointer to the input point cloud dataset target.

Definition at line 121 of file correspondence_estimation.h.

References pcl::PCLBase< PointSource >::input_.

◆ getInputTarget()

template<typename PointSource , typename PointTarget , typename Scalar = float>
PointCloudTargetConstPtr const pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getInputTarget ( )
inline

Get a pointer to the input point cloud dataset target.

Definition at line 135 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_.

◆ getSearchMethodSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
KdTreeReciprocalPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getSearchMethodSource ( ) const
inline

Get a pointer to the search method used to find correspondences in the source cloud.

Definition at line 267 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_reciprocal_.

◆ getSearchMethodTarget()

template<typename PointSource , typename PointTarget , typename Scalar = float>
KdTreePtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getSearchMethodTarget ( ) const
inline

Get a pointer to the search method used to find correspondences in the target cloud.

Definition at line 242 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_.

◆ initCompute()

template<typename PointSource , typename PointTarget , typename Scalar >
bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::initCompute
protected

Internal computation initialization.

Definition at line 74 of file correspondence_estimation.hpp.

◆ initComputeReciprocal()

template<typename PointSource , typename PointTarget , typename Scalar >
bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::initComputeReciprocal
protected

Internal computation initialization for reciprocal correspondences.

Definition at line 98 of file correspondence_estimation.hpp.

◆ requiresSourceNormals()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::requiresSourceNormals ( ) const
inlinevirtual

◆ requiresTargetNormals()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::requiresTargetNormals ( ) const
inlinevirtual

See if this rejector requires target normals.

Reimplemented in pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.

Definition at line 175 of file correspondence_estimation.h.

◆ setIndicesSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesSource ( const IndicesPtr indices)
inline

Provide a pointer to the vector of indices that represent the input source point cloud.

Parameters
[in]indicesa pointer to the vector of indices

Definition at line 194 of file correspondence_estimation.h.

References pcl::PCLBase< PointSource >::setIndices().

◆ setIndicesTarget()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesTarget ( const IndicesPtr indices)
inline

Provide a pointer to the vector of indices that represent the input target point cloud.

Parameters
[in]indicesa pointer to the vector of indices

Definition at line 210 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_cloud_updated_, and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_indices_.

◆ setInputSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource ( const PointCloudSourceConstPtr cloud)
inline

Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)

Parameters
[in]cloudthe input point cloud source

Definition at line 112 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::input_fields_, pcl::PCLBase< PointT >::setInputCloud(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::source_cloud_updated_.

◆ setInputTarget()

template<typename PointSource , typename PointTarget , typename Scalar >
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputTarget ( const PointCloudTargetConstPtr cloud)
inline

Provide a pointer to the input target (e.g., the point cloud that we want to align the input source to)

Parameters
[in]cloudthe input point cloud target

Definition at line 54 of file correspondence_estimation.hpp.

◆ setNumberOfThreads()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setNumberOfThreads ( unsigned int  nr_threads)
inline

Set the number of threads to use.

Parameters
nr_threadsthe number of hardware threads to use (0 sets the value back to automatic)

Definition at line 145 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::num_threads_.

◆ setPointRepresentation()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setPointRepresentation ( const PointRepresentationConstPtr point_representation)
inline

Provide a boost shared pointer to the PointRepresentation for target cloud to be used when searching for nearest neighbors.

Parameters
[in]point_representationthe PointRepresentation to be used by the k-D tree for nearest neighbor search

Definition at line 302 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::point_representation_.

◆ setPointRepresentationReciprocal()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setPointRepresentationReciprocal ( const PointRepresentationReciprocalConstPtr point_representation_reciprocal)
inline

Provide a boost shared pointer to the PointRepresentation for source cloud to be used when searching for nearest neighbors.

Parameters
[in]point_representationthe PointRepresentation to be used by the k-D tree for nearest neighbor search

Definition at line 314 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::point_representation_reciprocal_.

◆ setSearchMethodSource()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource ( const KdTreeReciprocalPtr tree,
bool  force_no_recompute = false 
)
inline

Provide a pointer to the search object used to find correspondences in the source cloud (usually used by reciprocal correspondence finding).

Parameters
[in]treea pointer to the spatial search object.
[in]force_no_recomputeIf set to true, this tree will NEVER be recomputed, regardless of calls to setInputSource. Only use if you are extremely confident that the tree will be set correctly.

Definition at line 255 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::force_no_recompute_reciprocal_, pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::source_cloud_updated_, and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_reciprocal_.

◆ setSearchMethodTarget()

template<typename PointSource , typename PointTarget , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget ( const KdTreePtr tree,
bool  force_no_recompute = false 
)
inline

Provide a pointer to the search object used to find correspondences in the target cloud.

Parameters
[in]treea pointer to the spatial search object.
[in]force_no_recomputeIf set to true, this tree will NEVER be recomputed, regardless of calls to setInputTarget. Only use if you are confident that the tree will be set correctly.

Definition at line 231 of file correspondence_estimation.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::force_no_recompute_, pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_cloud_updated_, and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_.

◆ setSourceNormals()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSourceNormals ( pcl::PCLPointCloud2::ConstPtr  )
inlinevirtual

◆ setTargetNormals()

template<typename PointSource , typename PointTarget , typename Scalar = float>
virtual void pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setTargetNormals ( pcl::PCLPointCloud2::ConstPtr  )
inlinevirtual

Member Data Documentation

◆ corr_name_

template<typename PointSource , typename PointTarget , typename Scalar = float>
std::string pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::corr_name_
protected

The correspondence estimation method name.

Definition at line 326 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getClassName().

◆ force_no_recompute_

template<typename PointSource , typename PointTarget , typename Scalar = float>
bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::force_no_recompute_ {false}
protected

A flag which, if set, means the tree operating on the target cloud will never be recomputed.

Definition at line 377 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().

◆ force_no_recompute_reciprocal_

template<typename PointSource , typename PointTarget , typename Scalar = float>
bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::force_no_recompute_reciprocal_ {false}
protected

A flag which, if set, means the tree operating on the source cloud will never be recomputed.

Definition at line 381 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().

◆ input_fields_

template<typename PointSource , typename PointTarget , typename Scalar = float>
std::vector<pcl::PCLPointField> pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::input_fields_
protected

The types of input point fields available.

Definition at line 350 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource().

◆ input_transformed_

template<typename PointSource , typename PointTarget , typename Scalar = float>
PointCloudTargetPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::input_transformed_
protected

The transformed input source point cloud dataset.

Definition at line 347 of file correspondence_estimation.h.

◆ num_threads_

template<typename PointSource , typename PointTarget , typename Scalar = float>
unsigned int pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::num_threads_ {1}
protected

◆ point_representation_

template<typename PointSource , typename PointTarget , typename Scalar = float>
PointRepresentationConstPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::point_representation_
protected

The target point representation used (internal).

Definition at line 341 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setPointRepresentation().

◆ point_representation_reciprocal_

template<typename PointSource , typename PointTarget , typename Scalar = float>
PointRepresentationReciprocalConstPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::point_representation_reciprocal_
protected

◆ source_cloud_updated_

template<typename PointSource , typename PointTarget , typename Scalar = float>
bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::source_cloud_updated_ {true}
protected

Variable that stores whether we have a new source cloud, meaning we need to pre-process it again.

This way, we avoid rebuilding the reciprocal kd-tree for the source cloud every time the determineCorrespondences () method is called.

Definition at line 374 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().

◆ target_

template<typename PointSource , typename PointTarget , typename Scalar = float>
PointCloudTargetConstPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_
protected

◆ target_cloud_updated_

template<typename PointSource , typename PointTarget , typename Scalar = float>
bool pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_cloud_updated_ {true}
protected

Variable that stores whether we have a new target cloud, meaning we need to pre-process it again.

This way, we avoid rebuilding the kd-tree for the target cloud every time the determineCorrespondences () method is called.

Definition at line 370 of file correspondence_estimation.h.

Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().

◆ target_indices_

template<typename PointSource , typename PointTarget , typename Scalar = float>
IndicesPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_indices_
protected

◆ tree_

template<typename PointSource , typename PointTarget , typename Scalar = float>
KdTreePtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_
protected

◆ tree_reciprocal_

template<typename PointSource , typename PointTarget , typename Scalar = float>
KdTreeReciprocalPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_reciprocal_
protected

The documentation for this class was generated from the following files: