Abstract base class for Correspondence Grouping algorithms. More...
#include <correspondence_grouping.h>
Public Types | |
typedef pcl::PointCloud < PointSceneT > | SceneCloud |
typedef SceneCloud::ConstPtr | SceneCloudConstPtr |
typedef SceneCloud::Ptr | SceneCloudPtr |
Public Member Functions | |
void | cluster (std::vector< Correspondences > &clustered_corrs) |
Clusters the input correspondences belonging to different model instances. | |
CorrespondenceGrouping () | |
Empty constructor. | |
std::vector< double > | getCharacteristicScales () const |
Getter for the vector of characteristic scales associated to each cluster. | |
CorrespondencesConstPtr | getModelSceneCorrespondences () const |
Getter for the precomputed correspondences between points in the input dataset and points in the scene dataset. | |
SceneCloudConstPtr | getSceneCloud () const |
Getter for the scene dataset. | |
virtual void | setModelSceneCorrespondences (const CorrespondencesConstPtr &corrs) |
Provide a pointer to the precomputed correspondences between points in the input dataset and points in the scene dataset. The correspondences are going to be clustered into different model hypotheses by the algorithm. | |
virtual void | setSceneCloud (const SceneCloudConstPtr &scene) |
Provide a pointer to the scene dataset. | |
virtual | ~CorrespondenceGrouping () |
destructor. | |
Protected Member Functions | |
virtual void | clusterCorrespondences (std::vector< Correspondences > &clustered_corrs)=0 |
The actual clustering method, should be implemented by each subclass. | |
bool | deinitCompute () |
This method should get called after finishing the actual computation. | |
bool | initCompute () |
This method should get called before starting the actual computation. | |
Protected Attributes | |
std::vector< double > | corr_group_scale_ |
characteristic scale associated to each correspondence subset; if the cg algorithm can not handle scale invariance, the size of the vector will be 0. | |
CorrespondencesConstPtr | model_scene_corrs_ |
The correspondences between points in the input and the scene datasets. | |
SceneCloudConstPtr | scene_ |
The scene cloud. |
Abstract base class for Correspondence Grouping algorithms.
Definition at line 55 of file correspondence_grouping.h.
typedef pcl::PointCloud<PointSceneT> pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::SceneCloud |
Definition at line 58 of file correspondence_grouping.h.
typedef SceneCloud::ConstPtr pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::SceneCloudConstPtr |
Reimplemented in pcl::Hough3DGrouping< PointModelT, PointSceneT, PointModelRfT, PointSceneRfT >, and pcl::GeometricConsistencyGrouping< PointModelT, PointSceneT >.
Definition at line 60 of file correspondence_grouping.h.
typedef SceneCloud::Ptr pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::SceneCloudPtr |
Definition at line 59 of file correspondence_grouping.h.
pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::CorrespondenceGrouping | ( | ) | [inline] |
Empty constructor.
Definition at line 63 of file correspondence_grouping.h.
virtual pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::~CorrespondenceGrouping | ( | ) | [inline, virtual] |
destructor.
Definition at line 66 of file correspondence_grouping.h.
void pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::cluster | ( | std::vector< Correspondences > & | clustered_corrs | ) |
Clusters the input correspondences belonging to different model instances.
[out] | clustered_corrs | a vector containing the correspondences for each instance of the model found within the input data. |
Definition at line 44 of file correspondence_grouping.hpp.
virtual void pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::clusterCorrespondences | ( | std::vector< Correspondences > & | clustered_corrs | ) | [protected, pure virtual] |
The actual clustering method, should be implemented by each subclass.
[out] | clustered_corrs | a vector containing the correspondences for each instance of the model found within the input data. |
Implemented in pcl::Hough3DGrouping< PointModelT, PointSceneT, PointModelRfT, PointSceneRfT >, and pcl::GeometricConsistencyGrouping< PointModelT, PointSceneT >.
bool pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::deinitCompute | ( | ) | [inline, protected] |
This method should get called after finishing the actual computation.
Reimplemented from pcl::PCLBase< PointModelT >.
Definition at line 192 of file correspondence_grouping.h.
std::vector<double> pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::getCharacteristicScales | ( | ) | const [inline] |
Getter for the vector of characteristic scales associated to each cluster.
Definition at line 120 of file correspondence_grouping.h.
CorrespondencesConstPtr pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::getModelSceneCorrespondences | ( | ) | const [inline] |
Getter for the precomputed correspondences between points in the input dataset and points in the scene dataset.
Definition at line 110 of file correspondence_grouping.h.
SceneCloudConstPtr pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::getSceneCloud | ( | ) | const [inline] |
Getter for the scene dataset.
Definition at line 87 of file correspondence_grouping.h.
bool pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::initCompute | ( | ) | [inline, protected] |
This method should get called before starting the actual computation.
Internally, initCompute() does the following:
Reimplemented from pcl::PCLBase< PointModelT >.
Definition at line 160 of file correspondence_grouping.h.
virtual void pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::setModelSceneCorrespondences | ( | const CorrespondencesConstPtr & | corrs | ) | [inline, virtual] |
Provide a pointer to the precomputed correspondences between points in the input dataset and points in the scene dataset. The correspondences are going to be clustered into different model hypotheses by the algorithm.
[in] | corrs | the correspondences between the model and the scene. |
Reimplemented in pcl::Hough3DGrouping< PointModelT, PointSceneT, PointModelRfT, PointSceneRfT >.
Definition at line 99 of file correspondence_grouping.h.
virtual void pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::setSceneCloud | ( | const SceneCloudConstPtr & | scene | ) | [inline, virtual] |
Provide a pointer to the scene dataset.
[in] | scene | the const boost shared pointer to a PointCloud message. |
Reimplemented in pcl::Hough3DGrouping< PointModelT, PointSceneT, PointModelRfT, PointSceneRfT >.
Definition at line 77 of file correspondence_grouping.h.
std::vector<double> pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::corr_group_scale_ [protected] |
characteristic scale associated to each correspondence subset; if the cg algorithm can not handle scale invariance, the size of the vector will be 0.
Definition at line 143 of file correspondence_grouping.h.
CorrespondencesConstPtr pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::model_scene_corrs_ [protected] |
The correspondences between points in the input and the scene datasets.
Definition at line 139 of file correspondence_grouping.h.
SceneCloudConstPtr pcl::CorrespondenceGrouping< PointModelT, PointSceneT >::scene_ [protected] |
The scene cloud.
Definition at line 134 of file correspondence_grouping.h.