Point Cloud Library (PCL)
1.14.1-dev
|
CorrespondenceRejectoVarTrimmed implements a simple correspondence rejection method by considering as inliers a certain percentage of correspondences with the least distances. More...
#include <pcl/registration/correspondence_rejection_var_trimmed.h>
Public Types | |
using | Ptr = shared_ptr< CorrespondenceRejectorVarTrimmed > |
using | ConstPtr = shared_ptr< const CorrespondenceRejectorVarTrimmed > |
Public Types inherited from pcl::registration::CorrespondenceRejector | |
using | Ptr = shared_ptr< CorrespondenceRejector > |
using | ConstPtr = shared_ptr< const CorrespondenceRejector > |
Public Member Functions | |
CorrespondenceRejectorVarTrimmed () | |
Empty constructor. More... | |
void | getRemainingCorrespondences (const pcl::Correspondences &original_correspondences, pcl::Correspondences &remaining_correspondences) override |
Get a list of valid correspondences after rejection from the original set of correspondences. More... | |
double | getTrimmedDistance () const |
Get the trimmed distance used for thresholding in correspondence rejection. More... | |
template<typename PointT > | |
void | setInputSource (const typename pcl::PointCloud< PointT >::ConstPtr &cloud) |
Provide a source point cloud dataset (must contain XYZ data!), used to compute the correspondence distance. More... | |
template<typename PointT > | |
void | setInputTarget (const typename pcl::PointCloud< PointT >::ConstPtr &target) |
Provide a target point cloud dataset (must contain XYZ data!), used to compute the correspondence distance. More... | |
bool | requiresSourcePoints () const override |
See if this rejector requires source points. More... | |
void | setSourcePoints (pcl::PCLPointCloud2::ConstPtr cloud2) override |
Blob method for setting the source cloud. More... | |
bool | requiresTargetPoints () const override |
See if this rejector requires a target cloud. More... | |
void | setTargetPoints (pcl::PCLPointCloud2::ConstPtr cloud2) override |
Method for setting the target cloud. More... | |
template<typename PointT > | |
void | setSearchMethodTarget (const typename pcl::search::KdTree< PointT >::Ptr &tree, bool force_no_recompute=false) |
Provide a pointer to the search object used to find correspondences in the target cloud. More... | |
double | getTrimFactor () const |
Get the computed inlier ratio used for thresholding in correspondence rejection. More... | |
void | setMinRatio (double ratio) |
brief set the minimum overlap ratio More... | |
double | getMinRatio () const |
brief get the minimum overlap ratio More... | |
void | setMaxRatio (double ratio) |
brief set the maximum overlap ratio More... | |
double | getMaxRatio () const |
brief get the maximum overlap ratio More... | |
Public Member Functions inherited from pcl::registration::CorrespondenceRejector | |
CorrespondenceRejector ()=default | |
Empty constructor. More... | |
virtual | ~CorrespondenceRejector ()=default |
Empty destructor. More... | |
virtual void | setInputCorrespondences (const CorrespondencesConstPtr &correspondences) |
Provide a pointer to the vector of the input correspondences. More... | |
CorrespondencesConstPtr | getInputCorrespondences () |
Get a pointer to the vector of the input correspondences. More... | |
void | getCorrespondences (pcl::Correspondences &correspondences) |
Run correspondence rejection. More... | |
void | getRejectedQueryIndices (const pcl::Correspondences &correspondences, pcl::Indices &indices) |
Determine the indices of query points of correspondences that have been rejected, i.e., the difference between the input correspondences (set via setInputCorrespondences) and the given correspondence vector. More... | |
const std::string & | getClassName () const |
Get a string representation of the name of this class. 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... | |
Protected Types | |
using | DataContainerPtr = DataContainerInterface::Ptr |
Protected Member Functions | |
void | applyRejection (pcl::Correspondences &correspondences) override |
Apply the rejection algorithm. More... | |
Protected Attributes | |
double | trimmed_distance_ {0.0} |
The inlier distance threshold (based on the computed trim factor) between two correspondent points in source <-> target. More... | |
double | factor_ {0.0} |
The factor for correspondence rejection. More... | |
double | min_ratio_ {0.05} |
The minimum overlap ratio between the input and target clouds. More... | |
double | max_ratio_ {0.95} |
The maximum overlap ratio between the input and target clouds. More... | |
double | lambda_ {0.95} |
part of the term that balances the root mean square difference. More... | |
DataContainerPtr | data_container_ |
A pointer to the DataContainer object containing the input and target point clouds. More... | |
Protected Attributes inherited from pcl::registration::CorrespondenceRejector | |
std::string | rejection_name_ {} |
The name of the rejection method. More... | |
CorrespondencesConstPtr | input_correspondences_ |
The input correspondences. More... | |
CorrespondenceRejectoVarTrimmed implements a simple correspondence rejection method by considering as inliers a certain percentage of correspondences with the least distances.
The percentage of inliers is computed internally as mentioned in the paper 'Outlier Robust ICP for minimizing Fractional RMSD, J. M. Philips et al'
Definition at line 65 of file correspondence_rejection_var_trimmed.h.
using pcl::registration::CorrespondenceRejectorVarTrimmed::ConstPtr = shared_ptr<const CorrespondenceRejectorVarTrimmed> |
Definition at line 72 of file correspondence_rejection_var_trimmed.h.
|
protected |
Definition at line 247 of file correspondence_rejection_var_trimmed.h.
using pcl::registration::CorrespondenceRejectorVarTrimmed::Ptr = shared_ptr<CorrespondenceRejectorVarTrimmed> |
Definition at line 71 of file correspondence_rejection_var_trimmed.h.
|
inline |
Empty constructor.
Definition at line 75 of file correspondence_rejection_var_trimmed.h.
|
inlineoverrideprotectedvirtual |
Apply the rejection algorithm.
[out] | correspondences | the set of resultant correspondences. |
Implements pcl::registration::CorrespondenceRejector.
Definition at line 218 of file correspondence_rejection_var_trimmed.h.
|
inline |
brief get the maximum overlap ratio
Definition at line 208 of file correspondence_rejection_var_trimmed.h.
|
inline |
brief get the minimum overlap ratio
Definition at line 191 of file correspondence_rejection_var_trimmed.h.
|
overridevirtual |
Get a list of valid correspondences after rejection from the original set of correspondences.
[in] | original_correspondences | the set of initial correspondences given |
[out] | remaining_correspondences | the resultant filtered set of remaining correspondences |
Implements pcl::registration::CorrespondenceRejector.
|
inline |
Get the computed inlier ratio used for thresholding in correspondence rejection.
Definition at line 174 of file correspondence_rejection_var_trimmed.h.
|
inline |
Get the trimmed distance used for thresholding in correspondence rejection.
Definition at line 92 of file correspondence_rejection_var_trimmed.h.
|
inlineoverridevirtual |
See if this rejector requires source points.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 125 of file correspondence_rejection_var_trimmed.h.
|
inlineoverridevirtual |
See if this rejector requires a target cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 141 of file correspondence_rejection_var_trimmed.h.
|
inline |
Provide a source point cloud dataset (must contain XYZ data!), used to compute the correspondence distance.
[in] | cloud | a cloud containing XYZ data |
Definition at line 103 of file correspondence_rejection_var_trimmed.h.
|
inline |
Provide a target point cloud dataset (must contain XYZ data!), used to compute the correspondence distance.
[in] | target | a cloud containing XYZ data |
Definition at line 116 of file correspondence_rejection_var_trimmed.h.
|
inline |
brief set the maximum overlap ratio
[in] | ratio | the overlap ratio [0..1] |
Definition at line 200 of file correspondence_rejection_var_trimmed.h.
|
inline |
brief set the minimum overlap ratio
[in] | ratio | the overlap ratio [0..1] |
Definition at line 183 of file correspondence_rejection_var_trimmed.h.
|
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 164 of file correspondence_rejection_var_trimmed.h.
|
inlineoverridevirtual |
Blob method for setting the source cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 132 of file correspondence_rejection_var_trimmed.h.
References pcl::fromPCLPointCloud2().
|
inlineoverridevirtual |
Method for setting the target cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 148 of file correspondence_rejection_var_trimmed.h.
References pcl::fromPCLPointCloud2().
|
protected |
A pointer to the DataContainer object containing the input and target point clouds.
Definition at line 251 of file correspondence_rejection_var_trimmed.h.
|
protected |
The factor for correspondence rejection.
Only factor times the total points sorted based on the correspondence distances will be considered as inliers. Remaining points are rejected. This factor is computed internally
Definition at line 232 of file correspondence_rejection_var_trimmed.h.
|
protected |
part of the term that balances the root mean square difference.
This is an internal parameter
Definition at line 245 of file correspondence_rejection_var_trimmed.h.
|
protected |
The maximum overlap ratio between the input and target clouds.
Definition at line 240 of file correspondence_rejection_var_trimmed.h.
|
protected |
The minimum overlap ratio between the input and target clouds.
Definition at line 236 of file correspondence_rejection_var_trimmed.h.
|
protected |
The inlier distance threshold (based on the computed trim factor) between two correspondent points in source <-> target.
Definition at line 226 of file correspondence_rejection_var_trimmed.h.