point_cloud_library / 1.12.1 / classpcl_1_1registration_1_1_correspondence_estimation_back_projection.html /

CorrespondenceEstimationBackprojection computes correspondences as points in the target cloud which have minimum More...

#include <pcl/registration/correspondence_estimation_backprojection.h>

Public Types

using Ptr = shared_ptr< CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar > >
using ConstPtr = shared_ptr< const CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar > >
using KdTree = pcl::search::KdTree< PointTarget >
using KdTreePtr = typename KdTree::Ptr
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 PointCloudNormals = pcl::PointCloud< NormalT >
using NormalsPtr = typename PointCloudNormals::Ptr
using NormalsConstPtr = typename PointCloudNormals::ConstPtr
- Public Types inherited from pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
using Ptr = shared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, float > >
using ConstPtr = shared_ptr< const CorrespondenceEstimationBase< PointSource, PointTarget, float > >
using KdTree = pcl::search::KdTree< PointTarget >
using KdTreePtr = typename KdTree::Ptr
using KdTreeReciprocal = pcl::search::KdTree< PointSource >
using KdTreeReciprocalPtr = typename KdTree::Ptr
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
- 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

CorrespondenceEstimationBackProjection ()
Empty constructor. More...
virtual ~CorrespondenceEstimationBackProjection ()
Empty destructor. More...
void setSourceNormals (const NormalsConstPtr &normals)
Set the normals computed on the source point cloud. More...
NormalsConstPtr getSourceNormals () const
Get the normals of the source point cloud. More...
void setTargetNormals (const NormalsConstPtr &normals)
Set the normals computed on the target point cloud. More...
NormalsConstPtr getTargetNormals () const
Get the normals of the target point cloud. More...
bool requiresSourceNormals () const
See if this rejector requires source normals. More...
void setSourceNormals (pcl::PCLPointCloud2::ConstPtr cloud2)
Blob method for setting the source normals. More...
bool requiresTargetNormals () const
See if this rejector requires target normals. More...
void setTargetNormals (pcl::PCLPointCloud2::ConstPtr cloud2)
Method for setting the target normals. More...
void determineCorrespondences (pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max())
Determine the correspondences between input and target cloud. More...
virtual void determineReciprocalCorrespondences (pcl::Correspondences &correspondences, double max_distance=std::numeric_limits< double >::max())
Determine the reciprocal correspondences between input and target cloud. More...
void setKSearch (unsigned int k)
Set the number of nearest neighbours to be considered in the target point cloud. More...
unsigned int getKSearch () const
Get the number of nearest neighbours considered in the target point cloud for computing correspondences. More...
virtual CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr clone () const
Clone and cast to CorrespondenceEstimationBase. More...
- Public Member Functions inherited from pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
CorrespondenceEstimationBase ()
Empty constructor. More...
~CorrespondenceEstimationBase ()
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...
const PointCloudSourceConstPtr 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...
const PointCloudTargetConstPtr getInputTarget ()
Get a pointer to the input point cloud dataset target. More...
virtual bool requiresSourceNormals () const
See if this rejector requires source normals. More...
virtual bool requiresTargetNormals () const
See if this rejector requires target normals. More...
void setIndicesSource (const IndicesPtr &indices)
Provide a pointer to the vector of indices that represent the input source point cloud. More...
const IndicesPtr 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...
const IndicesPtr 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...
void setPointRepresentation (const PointRepresentationConstPtr &point_representation)
Provide a boost shared pointer to the PointRepresentation to be used when searching for nearest neighbors. More...
virtual CorrespondenceEstimationBase< PointSource, PointTarget, float >::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...
const PointCloudConstPtr 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...
const IndicesConstPtr 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

bool initCompute ()
Internal computation initialization. More...
- Protected Member Functions inherited from pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
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...

Additional Inherited Members

- Protected Attributes inherited from pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >
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 point representation used (internal). More...
PointCloudTargetPtr input_transformed_
The transformed input source point cloud dataset. More...
std::vector< pcl::PCLPointField > input_fields_
The types of input point fields available. More...
bool target_cloud_updated_
Variable that stores whether we have a new target cloud, meaning we need to pre-process it again. More...
bool source_cloud_updated_
Variable that stores whether we have a new source cloud, meaning we need to pre-process it again. More...
bool force_no_recompute_
A flag which, if set, means the tree operating on the target cloud will never be recomputed. More...
bool force_no_recompute_reciprocal_
A flag which, if set, means the tree operating on the source cloud will never be recomputed. More...
- 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 NormalT, typename Scalar = float>
class pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >

CorrespondenceEstimationBackprojection computes correspondences as points in the target cloud which have minimum

Author
Suat Gedikli

Definition at line 56 of file correspondence_estimation_backprojection.h.

Member Typedef Documentation

ConstPtr

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

Definition at line 66 of file correspondence_estimation_backprojection.h.

KdTree

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

Definition at line 81 of file correspondence_estimation_backprojection.h.

KdTreePtr

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

Definition at line 82 of file correspondence_estimation_backprojection.h.

NormalsConstPtr

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::NormalsConstPtr = typename PointCloudNormals::ConstPtr

Definition at line 94 of file correspondence_estimation_backprojection.h.

NormalsPtr

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::NormalsPtr = typename PointCloudNormals::Ptr

Definition at line 93 of file correspondence_estimation_backprojection.h.

PointCloudNormals

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
using pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::PointCloudNormals = pcl::PointCloud<NormalT>

Definition at line 92 of file correspondence_estimation_backprojection.h.

PointCloudSource

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

Definition at line 84 of file correspondence_estimation_backprojection.h.

PointCloudSourceConstPtr

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

Definition at line 86 of file correspondence_estimation_backprojection.h.

PointCloudSourcePtr

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

Definition at line 85 of file correspondence_estimation_backprojection.h.

PointCloudTarget

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

Definition at line 88 of file correspondence_estimation_backprojection.h.

PointCloudTargetConstPtr

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

Definition at line 90 of file correspondence_estimation_backprojection.h.

PointCloudTargetPtr

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

Definition at line 89 of file correspondence_estimation_backprojection.h.

Ptr

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

Definition at line 62 of file correspondence_estimation_backprojection.h.

Constructor & Destructor Documentation

CorrespondenceEstimationBackProjection()

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

Empty constructor.

Note
Sets the number of neighbors to be considered in the target point cloud (k_) to 10.

Definition at line 101 of file correspondence_estimation_backprojection.h.

References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >::corr_name_.

~CorrespondenceEstimationBackProjection()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
virtual pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::~CorrespondenceEstimationBackProjection ( )
inlinevirtual

Empty destructor.

Definition at line 108 of file correspondence_estimation_backprojection.h.

Member Function Documentation

clone()

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

Clone and cast to CorrespondenceEstimationBase.

Definition at line 222 of file correspondence_estimation_backprojection.h.

determineCorrespondences()

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

Determine the correspondences between input and target cloud.

Parameters
[out] correspondences the found correspondences (index of query point, index of target point, distance)
[in] max_distance maximum distance between the normal on the source point cloud and the corresponding point in the target point cloud

Implements pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >.

Definition at line 69 of file correspondence_estimation_backprojection.hpp.

References pcl::copyPoint(), pcl::Correspondence::distance, pcl::Correspondence::index_match, and pcl::Correspondence::index_query.

determineReciprocalCorrespondences()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar >
void pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::determineReciprocalCorrespondences ( pcl::Correspondences & correspondences,
double max_distance = std::numeric_limits<double>::max()
)
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] correspondences the found correspondences (index of query and target point, distance)
[in] max_distance maximum allowed distance between correspondences

Implements pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, float >.

Definition at line 168 of file correspondence_estimation_backprojection.hpp.

References pcl::copyPoint(), pcl::Correspondence::distance, pcl::Correspondence::index_match, and pcl::Correspondence::index_query.

getKSearch()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
unsigned int pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::getKSearch ( ) const
inline

Get the number of nearest neighbours considered in the target point cloud for computing correspondences.

By default we use k = 10 nearest neighbors.

Definition at line 215 of file correspondence_estimation_backprojection.h.

getSourceNormals()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
NormalsConstPtr pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::getSourceNormals ( ) const
inline

Get the normals of the source point cloud.

Definition at line 122 of file correspondence_estimation_backprojection.h.

getTargetNormals()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
NormalsConstPtr pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::getTargetNormals ( ) const
inline

Get the normals of the target point cloud.

Definition at line 139 of file correspondence_estimation_backprojection.h.

initCompute()

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

Internal computation initialization.

Definition at line 52 of file correspondence_estimation_backprojection.hpp.

requiresSourceNormals()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
bool pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::requiresSourceNormals ( ) const
inline

See if this rejector requires source normals.

Definition at line 146 of file correspondence_estimation_backprojection.h.

requiresTargetNormals()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
bool pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::requiresTargetNormals ( ) const
inline

See if this rejector requires target normals.

Definition at line 162 of file correspondence_estimation_backprojection.h.

setKSearch()

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::setKSearch ( unsigned int k )
inline

Set the number of nearest neighbours to be considered in the target point cloud.

By default, we use k = 10 nearest neighbors.

Parameters
[in] k the number of nearest neighbours to be considered

Definition at line 205 of file correspondence_estimation_backprojection.h.

setSourceNormals() [1/2]

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::setSourceNormals ( const NormalsConstPtr & normals )
inline

Set the normals computed on the source point cloud.

Parameters
[in] normals the normals computed for the source cloud

Definition at line 114 of file correspondence_estimation_backprojection.h.

Referenced by pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::setSourceNormals().

setSourceNormals() [2/2]

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

setTargetNormals() [1/2]

template<typename PointSource , typename PointTarget , typename NormalT , typename Scalar = float>
void pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::setTargetNormals ( const NormalsConstPtr & normals )
inline

Set the normals computed on the target point cloud.

Parameters
[in] normals the normals computed for the target cloud

Definition at line 131 of file correspondence_estimation_backprojection.h.

Referenced by pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::setTargetNormals().

setTargetNormals() [2/2]

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

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

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1registration_1_1_correspondence_estimation_back_projection.html