Point Cloud Library (PCL)
1.11.0
|
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 > |
![]() | |
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 | setInputCloud (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 > | |
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... | |
![]() | |
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, std::vector< int > &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_ |
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... | |
![]() | |
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 62 of file correspondence_rejection_surface_normal.h.
using pcl::registration::CorrespondenceRejectorSurfaceNormal::ConstPtr = shared_ptr<const CorrespondenceRejectorSurfaceNormal> |
Definition at line 70 of file correspondence_rejection_surface_normal.h.
|
protected |
Definition at line 318 of file correspondence_rejection_surface_normal.h.
using pcl::registration::CorrespondenceRejectorSurfaceNormal::Ptr = shared_ptr<CorrespondenceRejectorSurfaceNormal> |
Definition at line 69 of file correspondence_rejection_surface_normal.h.
|
inline |
Empty constructor.
Sets the threshold to 1.0.
Definition at line 73 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 310 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the normals computed on the input point cloud.
Definition at line 203 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the target input point cloud.
Definition at line 136 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the target input point cloud.
Definition at line 177 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 229 of file correspondence_rejection_surface_normal.h.
|
inline |
Get the thresholding angle between the normals for correspondence rejection.
Definition at line 95 of file correspondence_rejection_surface_normal.h.
|
inline |
Initialize the data container object for the point type and the normal type.
Definition at line 99 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires source normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 274 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires source points.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 242 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires target normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 290 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
See if this rejector requires a target cloud.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 258 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 110 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 191 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 124 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 150 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 168 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
Blob method for setting the source normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 279 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 247 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 217 of file correspondence_rejection_surface_normal.h.
|
inlineoverridevirtual |
Method for setting the target normals.
Reimplemented from pcl::registration::CorrespondenceRejector.
Definition at line 295 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 263 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 91 of file correspondence_rejection_surface_normal.h.
|
protected |
A pointer to the DataContainer object containing the input and target point clouds.
Definition at line 320 of file correspondence_rejection_surface_normal.h.
|
protected |
The median distance threshold between two correspondent points in source <-> target.
Definition at line 316 of file correspondence_rejection_surface_normal.h.