Feature represents the base feature class. Some generic 3D operations that are applicable to all features are defined here as static methods. More...
#include <feature.h>
Public Types | |
typedef PCLBase< PointInT > | BaseClass |
typedef pcl::KdTree< PointInT > | KdTree |
typedef pcl::KdTree< PointInT > ::Ptr | KdTreePtr |
typedef pcl::PointCloud< PointInT > | PointCloudIn |
typedef PointCloudIn::ConstPtr | PointCloudInConstPtr |
typedef PointCloudIn::Ptr | PointCloudInPtr |
typedef pcl::PointCloud < PointOutT > | PointCloudOut |
typedef boost::function< int(int, double, std::vector< int > &, std::vector< float > &)> | SearchMethod |
typedef boost::function< int(const PointCloudIn &cloud, int index, double, std::vector< int > &, std::vector< float > &)> | SearchMethodSurface |
Public Member Functions | |
void | compute (PointCloudOut &output) |
Base method for feature estimation for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod (). | |
Feature () | |
Empty constructor. | |
int | getKSearch () |
get the number of k nearest neighbors used for the feature estimation. | |
double | getRadiusSearch () |
Get the sphere radius used for determining the neighbors. | |
KdTreePtr | getSearchMethod () |
Get a pointer to the search method used. | |
double | getSearchParameter () |
Get the internal search parameter. | |
PointCloudInConstPtr | getSearchSurface () |
Get a pointer to the surface point cloud dataset. | |
int | searchForNeighbors (int index, double parameter, std::vector< int > &indices, std::vector< float > &distances) |
Search for k-nearest neighbors using the spatial locator from setSearchmethod, and the given surface from setSearchSurface. | |
void | setKSearch (int k) |
Set the number of k nearest neighbors to use for the feature estimation. | |
void | setRadiusSearch (double radius) |
Set the sphere radius that is to be used for determining the nearest neighbors used for the feature estimation. | |
void | setSearchMethod (const KdTreePtr &tree) |
Provide a pointer to the search object. | |
void | setSearchSurface (const PointCloudInConstPtr &cloud) |
Provide a pointer to the input dataset that we need to estimate features at every point for. | |
Protected Member Functions | |
const std::string & | getClassName () const |
Get a string representation of the name of this class. | |
Protected Attributes | |
std::string | feature_name_ |
The feature name. | |
int | k_ |
The number of K nearest neighbors to use for each point. | |
SearchMethod | search_method_ |
The search method template for indices. | |
SearchMethodSurface | search_method_surface_ |
The search method template for points. | |
double | search_parameter_ |
The actual search parameter (from either search_radius_ or k_). | |
double | search_radius_ |
The nearest neighbors search radius for each point. | |
PointCloudInConstPtr | surface_ |
An input point cloud describing the surface that is to be used for nearest neighbors estimation. | |
KdTreePtr | tree_ |
A pointer to the spatial search object. | |
Private Member Functions | |
virtual void | computeFeature (PointCloudOut &output)=0 |
Abstract feature estimation method. | |
Private Attributes | |
bool | fake_surface_ |
If no surface is given, we use the input PointCloud as the surface. |
Feature represents the base feature class. Some generic 3D operations that are applicable to all features are defined here as static methods.
Definition at line 265 of file feature.h.
typedef PCLBase<PointInT> pcl::Feature< PointInT, PointOutT >::BaseClass |
Reimplemented in pcl::NarfDescriptor, and pcl::RangeImageBorderExtractor.
typedef pcl::KdTree<PointInT> pcl::Feature< PointInT, PointOutT >::KdTree |
typedef pcl::KdTree<PointInT>::Ptr pcl::Feature< PointInT, PointOutT >::KdTreePtr |
typedef pcl::PointCloud<PointInT> pcl::Feature< PointInT, PointOutT >::PointCloudIn |
Reimplemented in pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >, pcl::IntensitySpinEstimation< PointInT, PointOutT >, pcl::PFHEstimation< PointInT, PointNT, PointOutT >, pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >, pcl::RIFTEstimation< PointInT, GradientT, PointOutT >, and pcl::RSDEstimation< PointInT, PointNT, PointOutT >.
typedef PointCloudIn::ConstPtr pcl::Feature< PointInT, PointOutT >::PointCloudInConstPtr |
Reimplemented in pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.
typedef PointCloudIn::Ptr pcl::Feature< PointInT, PointOutT >::PointCloudInPtr |
Reimplemented in pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.
typedef pcl::PointCloud<PointOutT> pcl::Feature< PointInT, PointOutT >::PointCloudOut |
Reimplemented in pcl::BoundaryEstimation< PointInT, PointNT, PointOutT >, pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >, pcl::FPFHEstimation< PointInT, PointNT, PointOutT >, pcl::FPFHEstimationOMP< PointInT, PointNT, PointOutT >, pcl::IntensityGradientEstimation< PointInT, PointNT, PointOutT >, pcl::IntensitySpinEstimation< PointInT, PointOutT >, pcl::MomentInvariantsEstimation< PointInT, PointOutT >, pcl::NormalEstimation< PointInT, PointOutT >, pcl::NormalEstimationOMP< PointInT, PointOutT >, pcl::NormalEstimationTBB< PointInT, PointOutT >, pcl::PFHEstimation< PointInT, PointNT, PointOutT >, pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >, pcl::RIFTEstimation< PointInT, GradientT, PointOutT >, pcl::RSDEstimation< PointInT, PointNT, PointOutT >, and pcl::VFHEstimation< PointInT, PointNT, PointOutT >.
typedef boost::function<int (int, double, std::vector<int> &, std::vector<float> &)> pcl::Feature< PointInT, PointOutT >::SearchMethod |
typedef boost::function<int (const PointCloudIn &cloud, int index, double, std::vector<int> &, std::vector<float> &)> pcl::Feature< PointInT, PointOutT >::SearchMethodSurface |
pcl::Feature< PointInT, PointOutT >::Feature | ( | ) | [inline] |
void pcl::Feature< PointInT, PointOutT >::compute | ( | PointCloudOut & | output | ) | [inline] |
Base method for feature estimation for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod ().
output | the resultant point cloud model dataset containing the estimated features |
Reimplemented in pcl::NarfDescriptor, and pcl::RangeImageBorderExtractor.
Definition at line 433 of file feature.hpp.
virtual void pcl::Feature< PointInT, PointOutT >::computeFeature | ( | PointCloudOut & | output | ) | [private, pure virtual] |
Abstract feature estimation method.
Implemented in pcl::BoundaryEstimation< PointInT, PointNT, PointOutT >, pcl::FPFHEstimation< PointInT, PointNT, PointOutT >, pcl::FPFHEstimationOMP< PointInT, PointNT, PointOutT >, pcl::IntensityGradientEstimation< PointInT, PointNT, PointOutT >, pcl::IntensitySpinEstimation< PointInT, PointOutT >, pcl::MomentInvariantsEstimation< PointInT, PointOutT >, pcl::NarfDescriptor, pcl::NormalEstimation< PointInT, PointOutT >, pcl::NormalEstimationOMP< PointInT, PointOutT >, pcl::NormalEstimationTBB< PointInT, PointOutT >, pcl::PFHEstimation< PointInT, PointNT, PointOutT >, pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >, pcl::RangeImageBorderExtractor, pcl::RIFTEstimation< PointInT, GradientT, PointOutT >, pcl::RSDEstimation< PointInT, PointNT, PointOutT >, and pcl::VFHEstimation< PointInT, PointNT, PointOutT >.
const std::string& pcl::Feature< PointInT, PointOutT >::getClassName | ( | ) | const [inline, protected] |
int pcl::Feature< PointInT, PointOutT >::getKSearch | ( | ) | [inline] |
double pcl::Feature< PointInT, PointOutT >::getRadiusSearch | ( | ) | [inline] |
KdTreePtr pcl::Feature< PointInT, PointOutT >::getSearchMethod | ( | ) | [inline] |
double pcl::Feature< PointInT, PointOutT >::getSearchParameter | ( | ) | [inline] |
PointCloudInConstPtr pcl::Feature< PointInT, PointOutT >::getSearchSurface | ( | ) | [inline] |
int pcl::Feature< PointInT, PointOutT >::searchForNeighbors | ( | int | index, | |
double | parameter, | |||
std::vector< int > & | indices, | |||
std::vector< float > & | distances | |||
) | [inline] |
Search for k-nearest neighbors using the spatial locator from setSearchmethod, and the given surface from setSearchSurface.
index | the index of the query point | |
parameter | the search parameter (either k or radius) | |
indices | the resultant vector of indices representing the k-nearest neighbors | |
distances | the resultant vector of distances representing the distances from the query point to the k-nearest neighbors |
void pcl::Feature< PointInT, PointOutT >::setKSearch | ( | int | k | ) | [inline] |
Set the number of k nearest neighbors to use for the feature estimation.
k | the number of k-nearest neighbors |
Reimplemented in pcl::RSDEstimation< PointInT, PointNT, PointOutT >.
void pcl::Feature< PointInT, PointOutT >::setRadiusSearch | ( | double | radius | ) | [inline] |
void pcl::Feature< PointInT, PointOutT >::setSearchMethod | ( | const KdTreePtr & | tree | ) | [inline] |
void pcl::Feature< PointInT, PointOutT >::setSearchSurface | ( | const PointCloudInConstPtr & | cloud | ) | [inline] |
Provide a pointer to the input dataset that we need to estimate features at every point for.
cloud | the const boost shared pointer to a PointCloud message |
bool pcl::Feature< PointInT, PointOutT >::fake_surface_ [private] |
If no surface is given, we use the input PointCloud as the surface.
std::string pcl::Feature< PointInT, PointOutT >::feature_name_ [protected] |
int pcl::Feature< PointInT, PointOutT >::k_ [protected] |
SearchMethod pcl::Feature< PointInT, PointOutT >::search_method_ [protected] |
SearchMethodSurface pcl::Feature< PointInT, PointOutT >::search_method_surface_ [protected] |
double pcl::Feature< PointInT, PointOutT >::search_parameter_ [protected] |
double pcl::Feature< PointInT, PointOutT >::search_radius_ [protected] |
PointCloudInConstPtr pcl::Feature< PointInT, PointOutT >::surface_ [protected] |
KdTreePtr pcl::Feature< PointInT, PointOutT >::tree_ [protected] |