43#include <pcl/registration/correspondence_rejection.h>
46namespace registration {
62 using CorrespondenceRejector::getClassName;
63 using CorrespondenceRejector::input_correspondences_;
64 using CorrespondenceRejector::rejection_name_;
73 rejection_name_ =
"CorrespondenceRejectorTrimmed";
87 overlap_ratio_ = std::min(1.0f, std::max(0.0f,
ratio));
95 return overlap_ratio_;
115 return nr_min_correspondences_;
134 getRemainingCorrespondences(*input_correspondences_, correspondences);
Iterator class for point clouds with or without given indices.
CorrespondenceRejector represents the base class for correspondence rejection methods
CorrespondenceRejectorTrimmed implements a correspondence rejection for ICP-like registration algorit...
void setMinCorrespondences(unsigned int min_correspondences)
Set a minimum number of correspondences.
float getOverlapRatio() const
Get the maximum distance used for thresholding in correspondence rejection.
unsigned int getMinCorrespondences() const
Get the minimum number of correspondences.
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 setOverlapRatio(float ratio)
Set the expected ratio of overlap between point clouds (in terms of correspondences).
CorrespondenceRejectorTrimmed()
Empty constructor.
~CorrespondenceRejectorTrimmed()
Destructor.
float overlap_ratio_
Overlap Ratio in [0..1].
unsigned int nr_min_correspondences_
Minimum number of correspondences.
void applyRejection(pcl::Correspondences &correspondences) override
Apply the rejection algorithm.
std::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > Correspondences