point_cloud_library / 1.12.1 / classpcl_1_1registration_1_1_correspondence_rejector_var_trimmed.html /

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 ()
Empty constructor. More...
virtual ~CorrespondenceRejector ()
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_
The inlier distance threshold (based on the computed trim factor) between two correspondent points in source <-> target. More...
double factor_
The factor for correspondence rejection. More...
double min_ratio_
The minimum overlap ratio between the input and target clouds. More...
double max_ratio_
The maximum overlap ratio between the input and target clouds. More...
double lambda_
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...

Detailed Description

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'

Note
If setInputCloud and setInputTarget are given, then the distances between correspondences will be estimated using the given XYZ data, and not read from the set of input correspondences.
Author
Aravindhan K Krishnan. This code is ported from libpointmatcher ( https://github.com/ethz-asl/libpointmatcher)

Definition at line 65 of file correspondence_rejection_var_trimmed.h.

Member Typedef Documentation

ConstPtr

DataContainerPtr

Ptr

Constructor & Destructor Documentation

CorrespondenceRejectorVarTrimmed()

pcl::registration::CorrespondenceRejectorVarTrimmed::CorrespondenceRejectorVarTrimmed ( )
inline

Empty constructor.

Definition at line 75 of file correspondence_rejection_var_trimmed.h.

Member Function Documentation

applyRejection()

void pcl::registration::CorrespondenceRejectorVarTrimmed::applyRejection ( pcl::Correspondences & correspondences )
inlineoverrideprotectedvirtual

Apply the rejection algorithm.

Parameters
[out] correspondences the set of resultant correspondences.

Implements pcl::registration::CorrespondenceRejector.

Definition at line 219 of file correspondence_rejection_var_trimmed.h.

getMaxRatio()

double pcl::registration::CorrespondenceRejectorVarTrimmed::getMaxRatio ( ) const
inline

brief get the maximum overlap ratio

Definition at line 209 of file correspondence_rejection_var_trimmed.h.

getMinRatio()

double pcl::registration::CorrespondenceRejectorVarTrimmed::getMinRatio ( ) const
inline

brief get the minimum overlap ratio

Definition at line 192 of file correspondence_rejection_var_trimmed.h.

getRemainingCorrespondences()

void pcl::registration::CorrespondenceRejectorVarTrimmed::getRemainingCorrespondences ( const pcl::Correspondences & original_correspondences,
pcl::Correspondences & remaining_correspondences
)
overridevirtual

Get a list of valid correspondences after rejection from the original set of correspondences.

Parameters
[in] original_correspondences the set of initial correspondences given
[out] remaining_correspondences the resultant filtered set of remaining correspondences

Implements pcl::registration::CorrespondenceRejector.

getTrimFactor()

double pcl::registration::CorrespondenceRejectorVarTrimmed::getTrimFactor ( ) const
inline

Get the computed inlier ratio used for thresholding in correspondence rejection.

Definition at line 175 of file correspondence_rejection_var_trimmed.h.

getTrimmedDistance()

double pcl::registration::CorrespondenceRejectorVarTrimmed::getTrimmedDistance ( ) const
inline

Get the trimmed distance used for thresholding in correspondence rejection.

Definition at line 93 of file correspondence_rejection_var_trimmed.h.

requiresSourcePoints()

bool pcl::registration::CorrespondenceRejectorVarTrimmed::requiresSourcePoints ( ) const
inlineoverridevirtual

See if this rejector requires source points.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 126 of file correspondence_rejection_var_trimmed.h.

requiresTargetPoints()

bool pcl::registration::CorrespondenceRejectorVarTrimmed::requiresTargetPoints ( ) const
inlineoverridevirtual

See if this rejector requires a target cloud.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 142 of file correspondence_rejection_var_trimmed.h.

setInputSource()

template<typename PointT >
void pcl::registration::CorrespondenceRejectorVarTrimmed::setInputSource ( const typename pcl::PointCloud< PointT >::ConstPtr & cloud )
inline

Provide a source point cloud dataset (must contain XYZ data!), used to compute the correspondence distance.

Parameters
[in] cloud a cloud containing XYZ data

Definition at line 104 of file correspondence_rejection_var_trimmed.h.

setInputTarget()

template<typename PointT >
void pcl::registration::CorrespondenceRejectorVarTrimmed::setInputTarget ( const typename pcl::PointCloud< PointT >::ConstPtr & target )
inline

Provide a target point cloud dataset (must contain XYZ data!), used to compute the correspondence distance.

Parameters
[in] target a cloud containing XYZ data

Definition at line 117 of file correspondence_rejection_var_trimmed.h.

setMaxRatio()

void pcl::registration::CorrespondenceRejectorVarTrimmed::setMaxRatio ( double ratio )
inline

brief set the maximum overlap ratio

Parameters
[in] ratio the overlap ratio [0..1]

Definition at line 201 of file correspondence_rejection_var_trimmed.h.

setMinRatio()

void pcl::registration::CorrespondenceRejectorVarTrimmed::setMinRatio ( double ratio )
inline

brief set the minimum overlap ratio

Parameters
[in] ratio the overlap ratio [0..1]

Definition at line 184 of file correspondence_rejection_var_trimmed.h.

setSearchMethodTarget()

template<typename PointT >
void pcl::registration::CorrespondenceRejectorVarTrimmed::setSearchMethodTarget ( const typename pcl::search::KdTree< PointT >::Ptr & tree,
bool force_no_recompute = false
)
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 165 of file correspondence_rejection_var_trimmed.h.

setSourcePoints()

void pcl::registration::CorrespondenceRejectorVarTrimmed::setSourcePoints ( pcl::PCLPointCloud2::ConstPtr cloud2 )
inlineoverridevirtual

Blob method for setting the source cloud.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 133 of file correspondence_rejection_var_trimmed.h.

References pcl::fromPCLPointCloud2().

setTargetPoints()

void pcl::registration::CorrespondenceRejectorVarTrimmed::setTargetPoints ( pcl::PCLPointCloud2::ConstPtr cloud2 )
inlineoverridevirtual

Method for setting the target cloud.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 149 of file correspondence_rejection_var_trimmed.h.

References pcl::fromPCLPointCloud2().

Member Data Documentation

data_container_

DataContainerPtr pcl::registration::CorrespondenceRejectorVarTrimmed::data_container_
protected

A pointer to the DataContainer object containing the input and target point clouds.

Definition at line 252 of file correspondence_rejection_var_trimmed.h.

factor_

double pcl::registration::CorrespondenceRejectorVarTrimmed::factor_
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 233 of file correspondence_rejection_var_trimmed.h.

lambda_

double pcl::registration::CorrespondenceRejectorVarTrimmed::lambda_
protected

part of the term that balances the root mean square difference.

This is an internal parameter

Definition at line 246 of file correspondence_rejection_var_trimmed.h.

max_ratio_

double pcl::registration::CorrespondenceRejectorVarTrimmed::max_ratio_
protected

The maximum overlap ratio between the input and target clouds.

Definition at line 241 of file correspondence_rejection_var_trimmed.h.

min_ratio_

double pcl::registration::CorrespondenceRejectorVarTrimmed::min_ratio_
protected

The minimum overlap ratio between the input and target clouds.

Definition at line 237 of file correspondence_rejection_var_trimmed.h.

trimmed_distance_

double pcl::registration::CorrespondenceRejectorVarTrimmed::trimmed_distance_
protected

The inlier distance threshold (based on the computed trim factor) between two correspondent points in source <-> target.

Definition at line 227 of file correspondence_rejection_var_trimmed.h.


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

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