Loading...
Searching...
No Matches
pcl::registration::CorrespondenceRejectorDistance Class Reference
Module registration

CorrespondenceRejectorDistance implements a simple correspondence rejection method based on thresholding the distances between the correspondences. More...

`#include <pcl/registration/correspondence_rejection_distance.h>`

Inheritance diagram for pcl::registration::CorrespondenceRejectorDistance:

## Public Types

using | Ptr = shared_ptr<CorrespondenceRejectorDistance>
using | ConstPtr = shared_ptr<const CorrespondenceRejectorDistance>
Public Types inherited from pcl::registration::CorrespondenceRejector
using | Ptr = shared_ptr<CorrespondenceRejector>
using | ConstPtr = shared_ptr<const CorrespondenceRejector>

## Public Member Functions

| CorrespondenceRejectorDistance ()
| Empty constructor.
| ~CorrespondenceRejectorDistance () override=default
| Empty destructor.
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.
virtual void | setMaximumDistance (float distance)
| Set the maximum distance used for thresholding in correspondence rejection.
float | getMaximumDistance () const
| Get the maximum distance used for thresholding in correspondence rejection.
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.
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.
bool | requiresSourcePoints () const override
| See if this rejector requires source points.
void | setSourcePoints (pcl::PCLPointCloud2::ConstPtr cloud2) override
| Blob method for setting the source cloud.
bool | requiresTargetPoints () const override
| See if this rejector requires a target cloud.
void | setTargetPoints (pcl::PCLPointCloud2::ConstPtr cloud2) override
| Method for setting the target cloud.
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.
Public Member Functions inherited from pcl::registration::CorrespondenceRejector
| CorrespondenceRejector ()=default
| Empty constructor.
virtual | ~CorrespondenceRejector ()=default
| Empty destructor.
virtual void | setInputCorrespondences (const CorrespondencesConstPtr &correspondences)
| Provide a pointer to the vector of the input correspondences.
CorrespondencesConstPtr | getInputCorrespondences ()
| Get a pointer to the vector of the input correspondences.
void | getCorrespondences (pcl::Correspondences &correspondences)
| Run correspondence rejection.
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.
const std::string & | getClassName () const
| Get a string representation of the name of this class.
virtual bool | requiresSourceNormals () const
| See if this rejector requires source normals.
virtual void | setSourceNormals (pcl::PCLPointCloud2::ConstPtr)
| Abstract method for setting the source normals.
virtual bool | requiresTargetNormals () const
| See if this rejector requires target normals.
virtual void | setTargetNormals (pcl::PCLPointCloud2::ConstPtr)
| Abstract method for setting the target normals.

## Protected Types

using | DataContainerPtr = DataContainerInterface::Ptr

## Protected Member Functions

void | applyRejection (pcl::Correspondences &correspondences) override
| Apply the rejection algorithm.

## Protected Attributes

float | max_distance_
| The maximum distance threshold between two correspondent points in source <-> target.
DataContainerPtr | data_container_
| A pointer to the DataContainer object containing the input and target point clouds.
Protected Attributes inherited from pcl::registration::CorrespondenceRejector
std::string | rejection_name_ {}
| The name of the rejection method.
CorrespondencesConstPtr | input_correspondences_
| The input correspondences.

## Detailed Description

CorrespondenceRejectorDistance implements a simple correspondence rejection method based on thresholding the distances between the correspondences.

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
  Dirk Holz, Radu B. Rusu

Definition at line 61 of file correspondence_rejection_distance.h.

## Member Typedef Documentation

## ConstPtr

using pcl::registration::CorrespondenceRejectorDistance::ConstPtr = shared_ptr<const CorrespondenceRejectorDistance>

Definition at line 68 of file correspondence_rejection_distance.h.

## DataContainerPtr

using pcl::registration::CorrespondenceRejectorDistance::DataContainerPtr = DataContainerInterface::Ptr

protected

Definition at line 197 of file correspondence_rejection_distance.h.

## Ptr

using pcl::registration::CorrespondenceRejectorDistance::Ptr = shared_ptr<CorrespondenceRejectorDistance>

Definition at line 67 of file correspondence_rejection_distance.h.

## Constructor & Destructor Documentation

## CorrespondenceRejectorDistance()

pcl::registration::CorrespondenceRejectorDistance::CorrespondenceRejectorDistance | ( |  | ) |

inline

Empty constructor.

Definition at line 71 of file correspondence_rejection_distance.h.

References max_distance_.

## ~CorrespondenceRejectorDistance()

pcl::registration::CorrespondenceRejectorDistance::~CorrespondenceRejectorDistance | ( |  | ) |

override default

Empty destructor.

## Member Function Documentation

## applyRejection()

void pcl::registration::CorrespondenceRejectorDistance::applyRejection | ( | pcl::Correspondences & | correspondences | ) |

inline override protected virtual

Apply the rejection algorithm.

Parameters

  [out] | correspondences | the set of resultant correspondences.

Implements pcl::registration::CorrespondenceRejector.

Definition at line 186 of file correspondence_rejection_distance.h.

References getRemainingCorrespondences().

## getMaximumDistance()

float pcl::registration::CorrespondenceRejectorDistance::getMaximumDistance | ( |  | ) | const

inline

Get the maximum distance used for thresholding in correspondence rejection.

Definition at line 102 of file correspondence_rejection_distance.h.

References max_distance_.

## getRemainingCorrespondences()

void pcl::registration::CorrespondenceRejectorDistance::getRemainingCorrespondences | ( | const pcl::Correspondences & | original_correspondences,
|  | pcl::Correspondences & | remaining_correspondences )

override virtual

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.

Referenced by applyRejection().

## requiresSourcePoints()

bool pcl::registration::CorrespondenceRejectorDistance::requiresSourcePoints | ( |  | ) | const

inline override virtual

See if this rejector requires source points.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 135 of file correspondence_rejection_distance.h.

## requiresTargetPoints()

bool pcl::registration::CorrespondenceRejectorDistance::requiresTargetPoints | ( |  | ) | const

inline override virtual

See if this rejector requires a target cloud.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 151 of file correspondence_rejection_distance.h.

## setInputSource()

template<typename PointT>

void pcl::registration::CorrespondenceRejectorDistance::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 113 of file correspondence_rejection_distance.h.

References data_container_, and setInputSource().

Referenced by setInputSource(), and setSourcePoints().

## setInputTarget()

template<typename PointT>

void pcl::registration::CorrespondenceRejectorDistance::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 126 of file correspondence_rejection_distance.h.

References data_container_, and setInputTarget().

Referenced by setInputTarget(), and setTargetPoints().

## setMaximumDistance()

virtual void pcl::registration::CorrespondenceRejectorDistance::setMaximumDistance | ( | float | distance | ) |

inline virtual

Set the maximum distance used for thresholding in correspondence rejection.

Parameters

  [in] | distance | Distance to be used as maximum distance between correspondences. Correspondences with larger distances are rejected.

Note
  Internally, the distance will be stored squared.

Definition at line 94 of file correspondence_rejection_distance.h.

References max_distance_.

## setSearchMethodTarget()

template<typename PointT>

void pcl::registration::CorrespondenceRejectorDistance::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 174 of file correspondence_rejection_distance.h.

References data_container_, and setSearchMethodTarget().

Referenced by setSearchMethodTarget().

## setSourcePoints()

void pcl::registration::CorrespondenceRejectorDistance::setSourcePoints | ( | pcl::PCLPointCloud2::ConstPtr | cloud2 | ) |

inline override virtual

Blob method for setting the source cloud.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 142 of file correspondence_rejection_distance.h.

References pcl::fromPCLPointCloud2(), and setInputSource().

## setTargetPoints()

void pcl::registration::CorrespondenceRejectorDistance::setTargetPoints | ( | pcl::PCLPointCloud2::ConstPtr | cloud2 | ) |

inline override virtual

Method for setting the target cloud.

Reimplemented from pcl::registration::CorrespondenceRejector.

Definition at line 158 of file correspondence_rejection_distance.h.

References pcl::fromPCLPointCloud2(), and setInputTarget().

## Member Data Documentation

## data_container_

DataContainerPtr pcl::registration::CorrespondenceRejectorDistance::data_container_

protected

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

Definition at line 201 of file correspondence_rejection_distance.h.

Referenced by setInputSource(), setInputTarget(), and setSearchMethodTarget().

## max_distance_

float pcl::registration::CorrespondenceRejectorDistance::max_distance_

protected

The maximum distance threshold between two correspondent points in source <-> target.

If the distance is larger than this threshold, the points will not be ignored in the alignment process.

Definition at line 195 of file correspondence_rejection_distance.h.

Referenced by CorrespondenceRejectorDistance(), getMaximumDistance(), and setMaximumDistance().

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

- pcl/registration/correspondence_rejection_distance.h