Point Cloud Library (PCL)
1.7.1
|
Abstract CorrespondenceEstimationBase class. More...
#include <pcl/registration/correspondence_estimation.h>
Public Member Functions | |
CorrespondenceEstimationBase () | |
Empty constructor. More... | |
virtual | ~CorrespondenceEstimationBase () |
Empty destructor. More... | |
PCL_DEPRECATED (void setInputCloud(const PointCloudSourceConstPtr &cloud),"[pcl::registration::CorrespondenceEstimationBase::setInputCloud] setInputCloud is deprecated. Please use setInputSource instead.") | |
Provide a pointer to the input source (e.g., the point cloud that we want to align to the target) More... | |
PCL_DEPRECATED (PointCloudSourceConstPtr const getInputCloud(),"[pcl::registration::CorrespondenceEstimationBase::getInputCloud] getInputCloud is deprecated. Please use getInputSource instead.") | |
Get a pointer to the input point cloud dataset target. 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 | 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... | |
![]() | |
PCLBase () | |
Empty constructor. More... | |
PCLBase (const PCLBase &base) | |
Copy constructor. More... | |
virtual | ~PCLBase () |
Destructor. More... | |
virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
Provide a pointer to the input dataset. More... | |
PointCloudConstPtr const | getInputCloud () |
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 (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols) |
Set the indices for the points laying within an interest region of the point cloud. More... | |
IndicesPtr const | getIndices () |
Get a pointer to the vector of indices used. More... | |
const PointSource & | operator[] (size_t pos) |
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 initalization. More... | |
bool | initComputeReciprocal () |
Internal computation initalization 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... | |
Abstract CorrespondenceEstimationBase class.
All correspondence estimation methods should inherit from this.
Definition at line 63 of file correspondence_estimation.h.
typedef boost::shared_ptr<const CorrespondenceEstimationBase<PointSource, PointTarget, Scalar> > pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::ConstPtr |
Definition at line 67 of file correspondence_estimation.h.
typedef pcl::search::KdTree<PointTarget> pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTree |
Definition at line 75 of file correspondence_estimation.h.
typedef KdTree::Ptr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreePtr |
Definition at line 76 of file correspondence_estimation.h.
typedef pcl::search::KdTree<PointSource> pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocal |
Definition at line 78 of file correspondence_estimation.h.
typedef KdTree::Ptr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::KdTreeReciprocalPtr |
Definition at line 79 of file correspondence_estimation.h.
typedef pcl::PointCloud<PointSource> pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSource |
Definition at line 81 of file correspondence_estimation.h.
typedef PointCloudSource::ConstPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSourceConstPtr |
Definition at line 83 of file correspondence_estimation.h.
typedef PointCloudSource::Ptr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudSourcePtr |
Definition at line 82 of file correspondence_estimation.h.
typedef pcl::PointCloud<PointTarget> pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTarget |
Definition at line 85 of file correspondence_estimation.h.
typedef PointCloudTarget::ConstPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTargetConstPtr |
Definition at line 87 of file correspondence_estimation.h.
typedef PointCloudTarget::Ptr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointCloudTargetPtr |
Definition at line 86 of file correspondence_estimation.h.
typedef KdTree::PointRepresentationConstPtr pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PointRepresentationConstPtr |
Definition at line 89 of file correspondence_estimation.h.
typedef boost::shared_ptr<CorrespondenceEstimationBase<PointSource, PointTarget, Scalar> > pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::Ptr |
Definition at line 66 of file correspondence_estimation.h.
|
inline |
Empty constructor.
Definition at line 92 of file correspondence_estimation.h.
|
inlinevirtual |
Empty destructor.
Definition at line 109 of file correspondence_estimation.h.
|
pure virtual |
Determine the correspondences between input and target cloud.
[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::CorrespondenceEstimation< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationOrganizedProjection< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, and pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
|
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.
[out] | correspondences | the found correspondences (index of query and target point, distance) |
[in] | max_distance | maximum allowed distance between correspondences |
Implemented in pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationOrganizedProjection< PointSource, PointTarget, Scalar >, pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >, and pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >.
|
inlineprotected |
Abstract class get name method.
Definition at line 297 of file correspondence_estimation.h.
|
inline |
Get a pointer to the vector of indices used for the source dataset.
Definition at line 165 of file correspondence_estimation.h.
References pcl::PCLBase< PointSource >::indices_.
|
inline |
Get a pointer to the vector of indices used for the target dataset.
Definition at line 179 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_indices_.
|
inline |
Get a pointer to the input point cloud dataset target.
Definition at line 137 of file correspondence_estimation.h.
References pcl::PCLBase< PointSource >::input_.
|
inline |
Get a pointer to the input point cloud dataset target.
Definition at line 151 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_.
|
inline |
Get a pointer to the search method used to find correspondences in the source cloud.
Definition at line 232 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_reciprocal_.
|
inline |
Get a pointer to the search method used to find correspondences in the target cloud.
Definition at line 204 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::tree_.
|
protected |
Internal computation initalization.
Definition at line 81 of file correspondence_estimation.hpp.
|
protected |
Internal computation initalization for reciprocal correspondences.
Definition at line 106 of file correspondence_estimation.hpp.
pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PCL_DEPRECATED | ( | void | setInputCloudconst PointCloudSourceConstPtr &cloud, |
" setInputCloud is deprecated. Please use setInputSource instead." | [pcl::registration::CorrespondenceEstimationBase::setInputCloud] | ||
) |
Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)
[in] | cloud | the input point cloud source |
pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::PCL_DEPRECATED | ( | PointCloudSourceConstPtr const | getInputCloud(), |
" getInputCloud is deprecated. Please use getInputSource instead." | [pcl::registration::CorrespondenceEstimationBase::getInputCloud] | ||
) |
Get a pointer to the input point cloud dataset target.
|
inline |
Provide a pointer to the vector of indices that represent the input source point cloud.
[in] | indices | a pointer to the vector of indices |
Definition at line 158 of file correspondence_estimation.h.
References pcl::PCLBase< PointSource >::setIndices().
|
inline |
Provide a pointer to the vector of indices that represent the input target point cloud.
[in] | indices | a pointer to the vector of indices |
Definition at line 171 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_cloud_updated_, and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::target_indices_.
|
inline |
Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)
[in] | cloud | the input point cloud source |
Definition at line 128 of file correspondence_estimation.h.
References pcl::getFields(), pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::input_fields_, pcl::PCLBase< PointT >::setInputCloud(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::source_cloud_updated_.
|
inline |
Provide a pointer to the input target (e.g., the point cloud that we want to align the input source to)
[in] | cloud | the input point cloud target |
Definition at line 62 of file correspondence_estimation.hpp.
|
inline |
Provide a boost shared pointer to the PointRepresentation to be used when searching for nearest neighbors.
[in] | point_representation | the PointRepresentation to be used by the k-D tree for nearest neighbor search |
Definition at line 263 of file correspondence_estimation.h.
References pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::point_representation_.
|
inline |
Provide a pointer to the search object used to find correspondences in the source cloud (usually used by reciprocal correspondence finding).
[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 217 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_.
|
inline |
Provide a pointer to the search object used to find correspondences in the target cloud.
[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 189 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_.
|
protected |
The correspondence estimation method name.
Definition at line 270 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimation< PointSource, PointTarget, Scalar >::CorrespondenceEstimation(), pcl::registration::CorrespondenceEstimationBackProjection< PointSource, PointTarget, NormalT, Scalar >::CorrespondenceEstimationBackProjection(), and pcl::registration::CorrespondenceEstimationNormalShooting< PointSource, PointTarget, NormalT, Scalar >::CorrespondenceEstimationNormalShooting().
|
protected |
A flag which, if set, means the tree operating on the target cloud will never be recomputed.
Definition at line 317 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
|
protected |
A flag which, if set, means the tree operating on the source cloud will never be recomputed.
Definition at line 321 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().
|
protected |
The types of input point fields available.
Definition at line 293 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource().
|
protected |
The transformed input source point cloud dataset.
Definition at line 290 of file correspondence_estimation.h.
|
protected |
The point representation used (internal).
Definition at line 287 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setPointRepresentation().
|
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 314 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setInputSource(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().
|
protected |
The input point cloud dataset target.
Definition at line 281 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getInputTarget().
|
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 310 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
|
protected |
The target point cloud dataset indices.
Definition at line 284 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getIndicesTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setIndicesTarget().
|
protected |
A pointer to the spatial search object used for the target dataset.
Definition at line 273 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getSearchMethodTarget(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodTarget().
|
protected |
A pointer to the spatial search object used for the source dataset.
Definition at line 276 of file correspondence_estimation.h.
Referenced by pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::getSearchMethodSource(), and pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar >::setSearchMethodSource().