Point Cloud Library (PCL)  1.7.0
Public Types | Public Member Functions
pcl::MultiscaleFeaturePersistence< PointSource, PointFeature > Class Template Reference

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>

+ Inheritance diagram for pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >:

List of all members.

Public Types

typedef boost::shared_ptr
< MultiscaleFeaturePersistence
< PointSource, PointFeature > > 
Ptr
typedef boost::shared_ptr
< const
MultiscaleFeaturePersistence
< PointSource, PointFeature > > 
ConstPtr
typedef pcl::PointCloud
< PointFeature > 
FeatureCloud
typedef pcl::PointCloud
< PointFeature >::Ptr 
FeatureCloudPtr
typedef pcl::Feature
< PointSource, PointFeature >
::Ptr 
FeatureEstimatorPtr
typedef boost::shared_ptr
< const
pcl::PointRepresentation
< PointFeature > > 
FeatureRepresentationConstPtr

Public Member Functions

 MultiscaleFeaturePersistence ()
 Empty constructor.
virtual ~MultiscaleFeaturePersistence ()
 Empty destructor.
void computeFeaturesAtAllScales ()
 Method that calls computeFeatureAtScale () for each scale parameter.
void determinePersistentFeatures (FeatureCloud &output_features, boost::shared_ptr< std::vector< int > > &output_indices)
 Central function that computes the persistent features.
void setScalesVector (std::vector< float > &scale_values)
 Method for setting the scale parameters for the algorithm.
std::vector< float > getScalesVector ()
 Method for getting the scale parameters vector.
void setFeatureEstimator (FeatureEstimatorPtr feature_estimator)
 Setter method for the feature estimator.
FeatureEstimatorPtr getFeatureEstimator ()
 Getter method for the feature estimator.
void setPointRepresentation (const FeatureRepresentationConstPtr &feature_representation)
 Provide a pointer to the feature representation to use to convert features to k-D vectors.
FeatureRepresentationConstPtr const getPointRepresentation ()
 Get a pointer to the feature representation used when converting features into k-D vectors.
void setAlpha (float alpha)
 Sets the alpha parameter.
float getAlpha ()
 Get the value of the alpha parameter.
void setDistanceMetric (NormType distance_metric)
 Method for setting the distance metric that will be used for computing the difference between feature vectors.
NormType getDistanceMetric ()
 Returns the distance metric that is currently used to calculate the difference between feature vectors.

Detailed Description

template<typename PointSource, typename PointFeature>
class pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >

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

Author:
Alexandru-Eugen Ichim

Definition at line 64 of file multiscale_feature_persistence.h.


Member Typedef Documentation

template<typename PointSource , typename PointFeature >
typedef boost::shared_ptr<const MultiscaleFeaturePersistence<PointSource, PointFeature> > pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::ConstPtr

Definition at line 68 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
typedef pcl::PointCloud<PointFeature> pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureCloud

Definition at line 69 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
typedef pcl::PointCloud<PointFeature>::Ptr pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureCloudPtr

Definition at line 70 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
typedef pcl::Feature<PointSource, PointFeature>::Ptr pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureEstimatorPtr

Definition at line 71 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
typedef boost::shared_ptr<const pcl::PointRepresentation <PointFeature> > pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::FeatureRepresentationConstPtr

Definition at line 72 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
typedef boost::shared_ptr<MultiscaleFeaturePersistence<PointSource, PointFeature> > pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::Ptr

Definition at line 67 of file multiscale_feature_persistence.h.


Constructor & Destructor Documentation

template<typename PointSource , typename PointFeature >
pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::MultiscaleFeaturePersistence ( )

Empty constructor.

Definition at line 47 of file multiscale_feature_persistence.hpp.

References pcl::PCLBase< PointSource >::input_.

template<typename PointSource , typename PointFeature >
virtual pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::~MultiscaleFeaturePersistence ( ) [inline, virtual]

Empty destructor.

Definition at line 80 of file multiscale_feature_persistence.h.


Member Function Documentation

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::computeFeaturesAtAllScales ( )

Method that calls computeFeatureAtScale () for each scale parameter.

Definition at line 93 of file multiscale_feature_persistence.hpp.

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::determinePersistentFeatures ( FeatureCloud output_features,
boost::shared_ptr< std::vector< int > > &  output_indices 
)

Central function that computes the persistent features.

Parameters:
output_featuresa cloud containing the persistent features
output_indicesvector 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 195 of file multiscale_feature_persistence.hpp.

References pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::points, and pcl::PointCloud< PointT >::width.

template<typename PointSource , typename PointFeature >
float pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::getAlpha ( ) [inline]

Get the value of the alpha parameter.

Definition at line 135 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
NormType pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::getDistanceMetric ( ) [inline]

Returns the distance metric that is currently used to calculate the difference between feature vectors.

Definition at line 145 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
FeatureEstimatorPtr pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::getFeatureEstimator ( ) [inline]

Getter method for the feature estimator.

Definition at line 115 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
FeatureRepresentationConstPtr const pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::getPointRepresentation ( ) [inline]

Get a pointer to the feature representation used when converting features into k-D vectors.

Definition at line 125 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
std::vector<float> pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::getScalesVector ( ) [inline]

Method for getting the scale parameters vector.

Definition at line 103 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::setAlpha ( float  alpha) [inline]

Sets the alpha parameter.

Parameters:
alphavalue to replace the current alpha with

Definition at line 131 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::setDistanceMetric ( NormType  distance_metric) [inline]

Method for setting the distance metric that will be used for computing the difference between feature vectors.

Parameters:
distance_metricthe new distance metric chosen from the NormType enum

Definition at line 141 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::setFeatureEstimator ( FeatureEstimatorPtr  feature_estimator) [inline]

Setter method for the feature estimator.

Parameters:
feature_estimatorpointer to the feature estimator instance that will be used
Note:
the feature estimator instance should already have the input data given beforehand and everything set, ready to be given the compute () command

Definition at line 111 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::setPointRepresentation ( const FeatureRepresentationConstPtr feature_representation) [inline]

Provide a pointer to the feature representation to use to convert features to k-D vectors.

Parameters:
feature_representationthe const boost shared pointer to a PointRepresentation

Definition at line 121 of file multiscale_feature_persistence.h.

template<typename PointSource , typename PointFeature >
void pcl::MultiscaleFeaturePersistence< PointSource, PointFeature >::setScalesVector ( std::vector< float > &  scale_values) [inline]

Method for setting the scale parameters for the algorithm.

Parameters:
scale_valuesvector of scales to determine the characteristic of each scaling step

Definition at line 99 of file multiscale_feature_persistence.h.


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