43#include <pcl/features/feature.h>
64 template <
typename Po
intInT,
typename Po
intLT,
typename Po
intOutT>
68 using Ptr = shared_ptr<GFPFHEstimation<PointInT, PointLT, PointOutT> >;
69 using ConstPtr = shared_ptr<const GFPFHEstimation<PointInT, PointLT, PointOutT> >;
85 octree_leaf_size_ (0.01),
86 number_of_classes_ (16),
141 std::vector< std::vector<int> >& transition_histograms);
146 std::vector<float>& distances);
151 const std::vector<float>& mean_histogram);
156 std::vector<float>& histogram);
161 std::vector<float>& mean_histogram);
165 double octree_leaf_size_;
168 std::uint32_t number_of_classes_;
171 int descriptor_size_;
175#ifdef PCL_NO_PRECOMPILE
176#include <pcl/features/impl/gfpfh.hpp>
PointCloudLConstPtr labels_
A pointer to the input dataset that contains the point labels of the XYZ dataset.
double search_parameter_
The actual search parameter (from either search_radius_ or k_).
const std::string & getClassName() const
Get a string representation of the name of this class.
int k_
The number of K nearest neighbors to use for each point.
shared_ptr< Feature< PointInT, PointOutT > > Ptr
std::string feature_name_
The feature name.
shared_ptr< const Feature< PointInT, PointOutT > > ConstPtr
PointCloudInConstPtr surface_
An input point cloud describing the surface that is to be used for nearest neighbors estimation.
GFPFHEstimation estimates the Global Fast Point Feature Histogram (GFPFH) descriptor for a given poin...
int descriptorSize() const
Return the size of the descriptor.
void computeDistancesToMean(const std::vector< std::vector< int > > &transition_histograms, std::vector< float > &distances)
Compute the distance of each transition histogram to the mean.
typename Feature< PointInT, PointOutT >::PointCloudOut PointCloudOut
std::uint32_t getNumberOfClasses() const
Return the number of different classes.
void computeTransitionHistograms(const std::vector< std::vector< int > > &label_histograms, std::vector< std::vector< int > > &transition_histograms)
Compute the fixed-length histograms of transitions.
std::uint32_t getDominantLabel(const pcl::Indices &indices)
Return the dominant label of a set of points.
std::uint32_t emptyLabel() const
Return the empty label value.
void setNumberOfClasses(std::uint32_t n)
Set the number of different classes.
void compute(PointCloudOut &output)
Overloaded computed method from pcl::Feature.
void computeMeanHistogram(const std::vector< std::vector< int > > &histograms, std::vector< float > &mean_histogram)
Compute the mean histogram of the given set of histograms.
float computeHIKDistance(const std::vector< int > &histogram, const std::vector< float > &mean_histogram)
Return the Intersection Kernel distance between two histograms.
GFPFHEstimation()
Empty constructor.
void computeDistanceHistogram(const std::vector< float > &distances, std::vector< float > &histogram)
Compute the binned histogram of distance values.
void computeFeature(PointCloudOut &output) override
Estimate the Point Feature Histograms (PFH) descriptors at a set of points given by <setInputCloud ()...
void setOctreeLeafSize(double size)
Set the size of the octree leaves.
double getOctreeLeafSize()
Get the sphere radius used for determining the neighbors.
PointCloudConstPtr input_
The input point cloud dataset.
IndicesPtr indices_
A pointer to the vector of point indices to use.
IndicesAllocator<> Indices
Type used for indices in PCL.