Point Cloud Library (PCL)
1.14.1-dev
|
CorrespondenceRejectorSurfaceNormal implements a simple correspondence rejection method based on the angle between the normals at correspondent points. More...
#include <pcl/registration/correspondence_rejection_surface_normal.h>
Public Types | |
using | Ptr = shared_ptr< CorrespondenceRejectorSurfaceNormal > |
using | ConstPtr = shared_ptr< const CorrespondenceRejectorSurfaceNormal > |
Public Types inherited from pcl::registration::CorrespondenceRejector | |
using | Ptr = shared_ptr< CorrespondenceRejector > |
using | ConstPtr = shared_ptr< const CorrespondenceRejector > |
Public Member Functions | |
CorrespondenceRejectorSurfaceNormal () | |
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... | |
void | setThreshold (double threshold) |
Set the thresholding angle between the normals for correspondence rejection. More... | |
double | getThreshold () const |
Get the thresholding angle between the normals for correspondence rejection. More... | |
template<typename PointT , typename NormalT > | |
void | initializeDataContainer () |
Initialize the data container object for the point type and the normal type. More... | |
template<typename PointT > | |
void | setInputSource (const typename pcl::PointCloud< PointT >::ConstPtr &input) |
Provide a source point cloud dataset (must contain XYZ data!), used to compute the correspondence distance. More... | |
template<typename PointT > | |
pcl::PointCloud< PointT >::ConstPtr | getInputSource () const |
Get the target input point cloud. 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... | |
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... | |
template<typename PointT > | |
pcl::PointCloud< PointT >::ConstPtr | getInputTarget () const |
Get the target input point cloud. More... | |
template<typename PointT , typename NormalT > | |
void | setInputNormals (const typename pcl::PointCloud< NormalT >::ConstPtr &normals) |
Set the normals computed on the input point cloud. More... | |
template<typename NormalT > | |
pcl::PointCloud< NormalT >::Ptr | getInputNormals () const |
Get the normals computed on the input point cloud. More... | |
template<typename PointT , typename NormalT > | |
void | setTargetNormals (const typename pcl::PointCloud< NormalT >::ConstPtr &normals) |
Set the normals computed on the target point cloud. More... | |
template<typename NormalT > | |
pcl::PointCloud< NormalT >::Ptr | getTargetNormals () const |
Get the normals computed on the target point cloud. 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... | |
bool | requiresSourceNormals () const override |
See if this rejector requires source normals. More... | |
void | setSourceNormals (pcl::PCLPointCloud2::ConstPtr cloud2) override |
Blob method for setting the source normals. More... | |
bool | requiresTargetNormals () const override |
See if this rejector requires target normals. More... | |
void | setTargetNormals (pcl::PCLPointCloud2::ConstPtr cloud2) override |
Method for setting the target normals. 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... | |
Protected Types | |
using | DataContainerPtr = DataContainerInterface::Ptr |
Protected Member Functions | |
void | applyRejection (pcl::Correspondences &correspondences) override |
Apply the rejection algorithm. More... | |
Protected Attributes | |
double | threshold_ {1.0} |
The median distance threshold between two correspondent points in source <-> target. 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... | |
CorrespondenceRejectorSurfaceNormal implements a simple correspondence rejection method based on the angle between the normals at correspondent points.
Definition at line 60 of file correspondence_rejection_surface_normal.h.
using pcl::registration::CorrespondenceRejectorSurfaceNormal::ConstPtr = shared_ptr<const CorrespondenceRejectorSurfaceNormal> |
Definition at line 67 of file correspondence_rejection_surface_normal.h.
|
protected |
Definition at line 347 of file correspondence_rejection_surface_normal.h.
using pcl::registration::CorrespondenceRejectorSurfaceNormal::Ptr = shared_ptr<CorrespondenceRejectorSurfaceNormal> |
Definition at line 66 of file correspondence_rejection_surface_normal.h.
|
inline |
Empty constructor.
Sets the threshold to 1.0.
Definition at line 70 of file correspondence_rejection_surface_normal.h.
|
inlineoverrideprotectedvirtual |
Apply the rejection algorithm.
[out] | correspondences | the set of resultant correspondences. |
Implements pcl::registration::CorrespondenceRejector.
Definition at line 338 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the normals computed on the input point cloud.
Definition at line 214 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the target input point cloud.
Definition at line 131 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the target input point cloud.
Definition at line 180 of file correspondence_rejection_surface_normal.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 normals computed on the target point cloud.
Definition at line 248 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the thresholding angle between the normals for correspondence rejection.
Definition at line 97 of file correspondence_rejection_surface_normal.h.
|
inline |
Initialize the data container object for the point type and the normal type.
Definition at line 106 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires source normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 299 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires source points.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 263 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires target normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 317 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires a target cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 281 of file correspondence_rejection_surface_normal.h.
|
inline |
Set the normals computed on the input point cloud.
[in] | normals | the normals computed for the input cloud |
Definition at line 198 of file correspondence_rejection_surface_normal.h.
|
inline |
Provide a source point cloud dataset (must contain XYZ data!), used to compute the correspondence distance.
[in] | input | a cloud containing XYZ data |
Definition at line 116 of file correspondence_rejection_surface_normal.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 149 of file correspondence_rejection_surface_normal.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 170 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
Blob method for setting the source normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 306 of file correspondence_rejection_surface_normal.h.
References pcl::fromPCLPointCloud2().
|
inlineoverridevirtual |
Blob method for setting the source cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 270 of file correspondence_rejection_surface_normal.h.
References pcl::fromPCLPointCloud2().
|
inline |
Set the normals computed on the target point cloud.
[in] | normals | the normals computed for the input cloud |
Definition at line 232 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
Method for setting the target normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 324 of file correspondence_rejection_surface_normal.h.
References pcl::fromPCLPointCloud2().
|
inlineoverridevirtual |
Method for setting the target cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 288 of file correspondence_rejection_surface_normal.h.
References pcl::fromPCLPointCloud2().
|
inline |
Set the thresholding angle between the normals for correspondence rejection.
[in] | threshold | cosine of the thresholding angle between the normals for rejection |
Definition at line 89 of file correspondence_rejection_surface_normal.h.
|
protected |
A pointer to the DataContainer object containing the input and target point clouds.
Definition at line 350 of file correspondence_rejection_surface_normal.h.
|
protected |
The median distance threshold between two correspondent points in source <-> target.
Definition at line 345 of file correspondence_rejection_surface_normal.h.