On this page
Abstract CorrespondenceEstimationBase class. More...
#include <pcl/registration/correspondence_estimation.h>
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... |
|
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 to be used when searching for nearest neighbors. More... |
|
virtual CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr | clone () const =0 |
Clone and cast to CorrespondenceEstimationBase. More... |
|
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... |
|
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 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... |
|
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.
Definition at line 60 of file correspondence_estimation.h.
Member Typedef Documentation
ConstPtr
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
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTree = pcl::search::KdTree<PointTarget> |
Definition at line 73 of file correspondence_estimation.h.
KdTreePtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreePtr = typename KdTree::Ptr |
Definition at line 74 of file correspondence_estimation.h.
KdTreeReciprocal
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocal = pcl::search::KdTree<PointSource> |
Definition at line 76 of file correspondence_estimation.h.
KdTreeReciprocalPtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocalPtr = typename KdTree::Ptr |
Definition at line 77 of file correspondence_estimation.h.
PointCloudSource
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSource = pcl::PointCloud<PointSource> |
Definition at line 79 of file correspondence_estimation.h.
PointCloudSourceConstPtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr |
Definition at line 81 of file correspondence_estimation.h.
PointCloudSourcePtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSourcePtr = typename PointCloudSource::Ptr |
Definition at line 80 of file correspondence_estimation.h.
PointCloudTarget
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTarget = pcl::PointCloud<PointTarget> |
Definition at line 83 of file correspondence_estimation.h.
PointCloudTargetConstPtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr |
Definition at line 85 of file correspondence_estimation.h.
PointCloudTargetPtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTargetPtr = typename PointCloudTarget::Ptr |
Definition at line 84 of file correspondence_estimation.h.
PointRepresentationConstPtr
using pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointRepresentationConstPtr = typename KdTree::PointRepresentationConstPtr |
Definition at line 87 of file correspondence_estimation.h.
Ptr
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()
|
inline |
Empty constructor.
Definition at line 90 of file correspondence_estimation.h.
~CorrespondenceEstimationBase()
|
overridedefault |
Empty destructor.
Member Function Documentation
clone()
|
pure virtual |
Clone and cast to CorrespondenceEstimationBase.
Implemented in pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationOrganizedProjection< PointSource, PointTarget, Scalar >, and pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
determineCorrespondences()
|
pure 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 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()
|
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] correspondences the found correspondences (index of query and target point, distance) [in] max_distance maximum 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()
|
inlineprotected |
Abstract class get name method.
Definition at line 321 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::corr_name_.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSourceNormals(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setTargetNormals().
getIndicesSource()
|
inline |
Get a pointer to the vector of indices used for the source dataset.
Definition at line 184 of file correspondence_estimation.h.
References pcl::PCLBase< PointSource >::indices_.
getIndicesTarget()
|
inline |
Get a pointer to the vector of indices used for the target dataset.
Definition at line 201 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_indices_.
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()
|
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()
|
inline |
Get a pointer to the search method used to find correspondences in the source cloud.
Definition at line 250 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_reciprocal_.
getSearchMethodTarget()
|
inline |
Get a pointer to the search method used to find correspondences in the target cloud.
Definition at line 225 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_.
initCompute()
|
protected |
Internal computation initialization.
Definition at line 73 of file correspondence_estimation.hpp.
initComputeReciprocal()
|
protected |
Internal computation initialization for reciprocal correspondences.
Definition at line 97 of file correspondence_estimation.hpp.
requiresSourceNormals()
|
inlinevirtual |
See if this rejector requires source normals.
Reimplemented in pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, and pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
Definition at line 142 of file correspondence_estimation.h.
requiresTargetNormals()
|
inlinevirtual |
See if this rejector requires target normals.
Reimplemented in pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
Definition at line 158 of file correspondence_estimation.h.
setIndicesSource()
|
inline |
Provide a pointer to the vector of indices that represent the input source point cloud.
- Parameters
-
[in] indices a pointer to the vector of indices
Definition at line 177 of file correspondence_estimation.h.
References pcl::PCLBase< PointSource >::setIndices().
setIndicesTarget()
|
inline |
Provide a pointer to the vector of indices that represent the input target point cloud.
- Parameters
-
[in] indices a pointer to the vector of indices
Definition at line 193 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()
|
inline |
Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)
- Parameters
-
[in] cloud the 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()
|
inline |
Provide a pointer to the input target (e.g., the point cloud that we want to align the input source to)
- Parameters
-
[in] cloud the input point cloud target
Definition at line 53 of file correspondence_estimation.hpp.
setPointRepresentation()
|
inline |
Provide a boost shared pointer to the PointRepresentation to be used when searching for nearest neighbors.
- Parameters
-
[in] point_representation the PointRepresentation to be used by the k-D tree for nearest neighbor search
Definition at line 285 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::point_representation_.
setSearchMethodSource()
|
inline |
Provide a pointer to the search object used to find correspondences in the source cloud (usually used by reciprocal correspondence finding).
- Parameters
-
[in] tree a pointer to the spatial search object. [in] force_no_recompute If 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 238 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()
|
inline |
Provide a pointer to the search object used to find correspondences in the target cloud.
- Parameters
-
[in] tree a pointer to the spatial search object. [in] force_no_recompute If 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 214 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()
|
inlinevirtual |
Abstract method for setting the source normals.
Reimplemented in pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, and pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
Definition at line 149 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getClassName().
setTargetNormals()
|
inlinevirtual |
Abstract method for setting the target normals.
Reimplemented in pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
Definition at line 165 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getClassName().
Member Data Documentation
corr_name_
|
protected |
The correspondence estimation method name.
Definition at line 296 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getClassName().
force_no_recompute_
|
protected |
A flag which, if set, means the tree operating on the target cloud will never be recomputed.
Definition at line 344 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
force_no_recompute_reciprocal_
|
protected |
A flag which, if set, means the tree operating on the source cloud will never be recomputed.
Definition at line 348 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().
input_fields_
|
protected |
The types of input point fields available.
Definition at line 317 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource().
input_transformed_
|
protected |
The transformed input source point cloud dataset.
Definition at line 314 of file correspondence_estimation.h.
point_representation_
|
protected |
The point representation used (internal).
Definition at line 311 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setPointRepresentation().
source_cloud_updated_
|
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 341 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().
target_
|
protected |
The input point cloud dataset target.
Definition at line 305 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getInputTarget().
target_cloud_updated_
|
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 337 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
target_indices_
|
protected |
The target point cloud dataset indices.
Definition at line 308 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getIndicesTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesTarget().
tree_
|
protected |
A pointer to the spatial search object used for the target dataset.
Definition at line 299 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getSearchMethodTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
tree_reciprocal_
|
protected |
A pointer to the spatial search object used for the source dataset.
Definition at line 302 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getSearchMethodSource(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().
The documentation for this class was generated from the following files:
- pcl/registration/correspondence_estimation.h
- pcl/registration/impl/correspondence_estimation.hpp
© 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_base.html