Point Cloud Library (PCL)
1.14.1-dev
|
Generic class for extracting the persistent features from an input point cloud It can be given any Feature estimator instance and will compute the features of the input over a multiscale representation of the cloud and output the unique ones over those scales. More...
#include <pcl/features/multiscale_feature_persistence.h>
Public Types | |
using | Ptr = shared_ptr< MultiscaleFeaturePersistence< PointSource, PointFeature > > |
using | ConstPtr = shared_ptr< const MultiscaleFeaturePersistence< PointSource, PointFeature > > |
using | FeatureCloud = pcl::PointCloud< PointFeature > |
using | FeatureCloudPtr = typename pcl::PointCloud< PointFeature >::Ptr |
using | FeatureEstimatorPtr = typename pcl::Feature< PointSource, PointFeature >::Ptr |
using | FeatureRepresentationConstPtr = typename pcl::PointRepresentation< PointFeature >::ConstPtr |
Public Types inherited from pcl::PCLBase< PointSource > | |
using | PointCloud = pcl::PointCloud< PointSource > |
using | PointCloudPtr = typename PointCloud::Ptr |
using | PointCloudConstPtr = typename PointCloud::ConstPtr |
using | PointIndicesPtr = PointIndices::Ptr |
using | PointIndicesConstPtr = PointIndices::ConstPtr |
Public Member Functions | |
MultiscaleFeaturePersistence () | |
Empty constructor. More... | |
~MultiscaleFeaturePersistence () override=default | |
Empty destructor. More... | |
void | computeFeaturesAtAllScales () |
Method that calls computeFeatureAtScale () for each scale parameter. More... | |
void | determinePersistentFeatures (FeatureCloud &output_features, pcl::IndicesPtr &output_indices) |
Central function that computes the persistent features. More... | |
void | setScalesVector (std::vector< float > &scale_values) |
Method for setting the scale parameters for the algorithm. More... | |
std::vector< float > | getScalesVector () |
Method for getting the scale parameters vector. More... | |
void | setFeatureEstimator (FeatureEstimatorPtr feature_estimator) |
Setter method for the feature estimator. More... | |
FeatureEstimatorPtr | getFeatureEstimator () |
Getter method for the feature estimator. More... | |
void | setPointRepresentation (const FeatureRepresentationConstPtr &feature_representation) |
Provide a pointer to the feature representation to use to convert features to k-D vectors. More... | |
FeatureRepresentationConstPtr const | getPointRepresentation () |
Get a pointer to the feature representation used when converting features into k-D vectors. More... | |
void | setAlpha (float alpha) |
Sets the alpha parameter. More... | |
float | getAlpha () |
Get the value of the alpha parameter. More... | |
void | setDistanceMetric (NormType distance_metric) |
Method for setting the distance metric that will be used for computing the difference between feature vectors. More... | |
NormType | getDistanceMetric () |
Returns the distance metric that is currently used to calculate the difference between feature vectors. More... | |
Public Member Functions inherited from pcl::PCLBase< PointSource > | |
PCLBase () | |
Empty constructor. More... | |
PCLBase (const PCLBase &base) | |
Copy constructor. More... | |
virtual | ~PCLBase ()=default |
Destructor. More... | |
virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
Provide a pointer to the input dataset. More... | |
PointCloudConstPtr const | getInputCloud () const |
Get a pointer to the input point cloud dataset. More... | |
virtual void | setIndices (const IndicesPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
virtual void | setIndices (const IndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
virtual void | setIndices (const PointIndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
virtual void | setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols) |
Set the indices for the points laying within an interest region of the point cloud. More... | |
IndicesPtr | getIndices () |
Get a pointer to the vector of indices used. More... | |
IndicesConstPtr const | getIndices () const |
Get a pointer to the vector of indices used. More... | |
const PointSource & | operator[] (std::size_t pos) const |
Override PointCloud operator[] to shorten code. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from pcl::PCLBase< PointSource > | |
bool | initCompute () |
This method should get called before starting the actual computation. More... | |
bool | deinitCompute () |
This method should get called after finishing the actual computation. More... | |
Protected Attributes inherited from pcl::PCLBase< PointSource > | |
PointCloudConstPtr | input_ |
The input point cloud dataset. More... | |
IndicesPtr | indices_ |
A pointer to the vector of point indices to use. More... | |
bool | use_indices_ |
Set to true if point indices are used. More... | |
bool | fake_indices_ |
If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More... | |
Generic class for extracting the persistent features from an input point cloud It can be given any Feature estimator instance and will compute the features of the input over a multiscale representation of the cloud and output the unique ones over those scales.
Please refer to the following publication for more details: Radu Bogdan Rusu, Zoltan Csaba Marton, Nico Blodow, and Michael Beetz Persistent Point Feature Histograms for 3D Point Clouds Proceedings of the 10th International Conference on Intelligent Autonomous Systems (IAS-10) 2008, Baden-Baden, Germany
Definition at line 63 of file multiscale_feature_persistence.h.
using pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::ConstPtr = shared_ptr<const MultiscaleFeaturePersistence<PointSource, PointFeature> > |
Definition at line 67 of file multiscale_feature_persistence.h.
using pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureCloud = pcl::PointCloud<PointFeature> |
Definition at line 68 of file multiscale_feature_persistence.h.
using pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureCloudPtr = typename pcl::PointCloud<PointFeature>::Ptr |
Definition at line 69 of file multiscale_feature_persistence.h.
using pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureEstimatorPtr = typename pcl::Feature<PointSource, PointFeature>::Ptr |
Definition at line 70 of file multiscale_feature_persistence.h.
using pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureRepresentationConstPtr = typename pcl::PointRepresentation<PointFeature>::ConstPtr |
Definition at line 71 of file multiscale_feature_persistence.h.
using pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::Ptr = shared_ptr<MultiscaleFeaturePersistence<PointSource, PointFeature> > |
Definition at line 66 of file multiscale_feature_persistence.h.
pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::MultiscaleFeaturePersistence |
Empty constructor.
Definition at line 47 of file multiscale_feature_persistence.hpp.
References pcl::PCLBase< PointSource >::input_.
|
overridedefault |
Empty destructor.
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::computeFeaturesAtAllScales |
Method that calls computeFeatureAtScale () for each scale parameter.
Definition at line 87 of file multiscale_feature_persistence.hpp.
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::determinePersistentFeatures | ( | FeatureCloud & | output_features, |
pcl::IndicesPtr & | output_indices | ||
) |
Central function that computes the persistent features.
output_features | a cloud containing the persistent features |
output_indices | vector containing the indices of the points in the input cloud that have persistent features, under a one-to-one correspondence with the output_features cloud |
Definition at line 209 of file multiscale_feature_persistence.hpp.
References pcl::PointCloud< PointT >::emplace_back(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::size(), and pcl::PointCloud< PointT >::width.
|
inline |
Get the value of the alpha parameter.
Definition at line 134 of file multiscale_feature_persistence.h.
|
inline |
Returns the distance metric that is currently used to calculate the difference between feature vectors.
Definition at line 144 of file multiscale_feature_persistence.h.
|
inline |
Getter method for the feature estimator.
Definition at line 114 of file multiscale_feature_persistence.h.
|
inline |
Get a pointer to the feature representation used when converting features into k-D vectors.
Definition at line 124 of file multiscale_feature_persistence.h.
|
inline |
Method for getting the scale parameters vector.
Definition at line 102 of file multiscale_feature_persistence.h.
|
inline |
Sets the alpha parameter.
alpha | value to replace the current alpha with |
Definition at line 130 of file multiscale_feature_persistence.h.
|
inline |
Method for setting the distance metric that will be used for computing the difference between feature vectors.
distance_metric | the new distance metric chosen from the NormType enum |
Definition at line 140 of file multiscale_feature_persistence.h.
|
inline |
Setter method for the feature estimator.
feature_estimator | pointer to the feature estimator instance that will be used |
Definition at line 110 of file multiscale_feature_persistence.h.
|
inline |
Provide a pointer to the feature representation to use to convert features to k-D vectors.
feature_representation | the const boost shared pointer to a PointRepresentation |
Definition at line 120 of file multiscale_feature_persistence.h.
|
inline |
Method for setting the scale parameters for the algorithm.
scale_values | vector of scales to determine the characteristic of each scaling step |
Definition at line 98 of file multiscale_feature_persistence.h.