Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
pcl::RSDEstimation< PointInT, PointNT, PointOutT > Class Template Reference

RSDEstimation estimates the Radius-based Surface Descriptor (minimal and maximal radius of the local surface's curves) for a given point cloud dataset containing points and normals. More...

#include <rsd.h>

Inheritance diagram for pcl::RSDEstimation< PointInT, PointNT, PointOutT >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::shared_ptr
< const RSDEstimation
< PointInT, PointNT, PointOutT > > 
ConstPtr
typedef Feature< PointInT,
PointOutT >::PointCloudIn 
PointCloudIn
typedef Feature< PointInT,
PointOutT >::PointCloudOut 
PointCloudOut
typedef boost::shared_ptr
< RSDEstimation< PointInT,
PointNT, PointOutT > > 
Ptr

Public Member Functions

boost::shared_ptr< std::vector
< Eigen::MatrixXf,
Eigen::aligned_allocator
< Eigen::MatrixXf > > > 
getHistograms () const
 Returns a pointer to the list of full distance-angle histograms for all points.
int getNrSubdivisions () const
 Get the number of subdivisions for the considered distance interval.
double getPlaneRadius () const
 Get the maximum radius, above which everything can be considered planar.
bool getSaveHistograms () const
 Returns whether the full distance-angle histograms are being saved.
 RSDEstimation ()
 Empty constructor.
void setKSearch (int)
 Disables the setting of the number of k nearest neighbors to use for the feature estimation.
void setNrSubdivisions (int nr_subdiv)
 Set the number of subdivisions for the considered distance interval.
void setPlaneRadius (double plane_radius)
 Set the maximum radius, above which everything can be considered planar.
void setSaveHistograms (bool save)
 Set whether the full distance-angle histograms should be saved.

Protected Member Functions

void computeFeature (PointCloudOut &output)
 Estimate the estimates the Radius-based Surface Descriptor (RSD) at a set of points given by <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod ()

Protected Attributes

boost::shared_ptr< std::vector
< Eigen::MatrixXf,
Eigen::aligned_allocator
< Eigen::MatrixXf > > > 
histograms_
 The list of full distance-angle histograms for all points.

Private Member Functions

void computeFeatureEigen (pcl::PointCloud< Eigen::MatrixXf > &output)
 Make the computeFeature (&Eigen::MatrixXf); inaccessible from outside the class.

Private Attributes

int nr_subdiv_
 The number of subdivisions for the considered distance interval.
double plane_radius_
 The maximum radius, above which everything can be considered planar.
bool save_histograms_
 Signals whether the full distance-angle histograms are being saved.

Detailed Description

template<typename PointInT, typename PointNT, typename PointOutT>
class pcl::RSDEstimation< PointInT, PointNT, PointOutT >

RSDEstimation estimates the Radius-based Surface Descriptor (minimal and maximal radius of the local surface's curves) for a given point cloud dataset containing points and normals.

Note:
If you use this code in any academic work, please cite:
Note:
The code is stateful as we do not expect this class to be multicore parallelized.
Author:
Zoltan-Csaba Marton

Definition at line 127 of file rsd.h.


Member Typedef Documentation

template<typename PointInT , typename PointNT , typename PointOutT >
typedef boost::shared_ptr<const RSDEstimation<PointInT, PointNT, PointOutT> > pcl::RSDEstimation< PointInT, PointNT, PointOutT >::ConstPtr

Reimplemented from pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.

Definition at line 142 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
typedef Feature<PointInT, PointOutT>::PointCloudIn pcl::RSDEstimation< PointInT, PointNT, PointOutT >::PointCloudIn

Reimplemented from pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.

Definition at line 139 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
typedef Feature<PointInT, PointOutT>::PointCloudOut pcl::RSDEstimation< PointInT, PointNT, PointOutT >::PointCloudOut

Reimplemented from pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.

Definition at line 138 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
typedef boost::shared_ptr<RSDEstimation<PointInT, PointNT, PointOutT> > pcl::RSDEstimation< PointInT, PointNT, PointOutT >::Ptr

Reimplemented from pcl::FeatureFromNormals< PointInT, PointNT, PointOutT >.

Definition at line 141 of file rsd.h.


Constructor & Destructor Documentation

template<typename PointInT , typename PointNT , typename PointOutT >
pcl::RSDEstimation< PointInT, PointNT, PointOutT >::RSDEstimation ( ) [inline]

Empty constructor.

Definition at line 146 of file rsd.h.


Member Function Documentation

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::computeFeature ( PointCloudOut output) [protected, virtual]

Estimate the estimates the Radius-based Surface Descriptor (RSD) at a set of points given by <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod ()

Parameters:
outputthe resultant point cloud model dataset that contains the RSD feature estimates (r_min and r_max values)

Implements pcl::Feature< PointInT, PointOutT >.

Definition at line 246 of file rsd.hpp.

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::computeFeatureEigen ( pcl::PointCloud< Eigen::MatrixXf > &  output) [inline, private, virtual]

Make the computeFeature (&Eigen::MatrixXf); inaccessible from outside the class.

Parameters:
[out]outputthe output point cloud

Implements pcl::Feature< PointInT, PointOutT >.

Definition at line 222 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
boost::shared_ptr<std::vector<Eigen::MatrixXf, Eigen::aligned_allocator<Eigen::MatrixXf> > > pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getHistograms ( ) const [inline]

Returns a pointer to the list of full distance-angle histograms for all points.

Definition at line 193 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
int pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getNrSubdivisions ( ) const [inline]

Get the number of subdivisions for the considered distance interval.

Definition at line 159 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
double pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getPlaneRadius ( ) const [inline]

Get the maximum radius, above which everything can be considered planar.

Definition at line 171 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
bool pcl::RSDEstimation< PointInT, PointNT, PointOutT >::getSaveHistograms ( ) const [inline]

Returns whether the full distance-angle histograms are being saved.

Definition at line 189 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setKSearch ( int  ) [inline]

Disables the setting of the number of k nearest neighbors to use for the feature estimation.

Reimplemented from pcl::Feature< PointInT, PointOutT >.

Definition at line 175 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setNrSubdivisions ( int  nr_subdiv) [inline]

Set the number of subdivisions for the considered distance interval.

Parameters:
[in]nr_subdivthe number of subdivisions

Definition at line 155 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setPlaneRadius ( double  plane_radius) [inline]

Set the maximum radius, above which everything can be considered planar.

Note:
the order of magnitude should be around 10-20 times the search radius (0.2 works well for typical datasets).
on accurate 3D data (e.g. openni sernsors) a search radius as low as 0.01 still gives good results.
Parameters:
[in]plane_radiusthe new plane radius

Definition at line 167 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
void pcl::RSDEstimation< PointInT, PointNT, PointOutT >::setSaveHistograms ( bool  save) [inline]

Set whether the full distance-angle histograms should be saved.

Note:
Obtain the list of histograms by getHistograms ()
Parameters:
[in]saveset to true if histograms should be saved

Definition at line 185 of file rsd.h.


Member Data Documentation

template<typename PointInT , typename PointNT , typename PointOutT >
boost::shared_ptr<std::vector<Eigen::MatrixXf, Eigen::aligned_allocator<Eigen::MatrixXf> > > pcl::RSDEstimation< PointInT, PointNT, PointOutT >::histograms_ [protected]

The list of full distance-angle histograms for all points.

Definition at line 206 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
int pcl::RSDEstimation< PointInT, PointNT, PointOutT >::nr_subdiv_ [private]

The number of subdivisions for the considered distance interval.

Definition at line 210 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
double pcl::RSDEstimation< PointInT, PointNT, PointOutT >::plane_radius_ [private]

The maximum radius, above which everything can be considered planar.

Definition at line 213 of file rsd.h.

template<typename PointInT , typename PointNT , typename PointOutT >
bool pcl::RSDEstimation< PointInT, PointNT, PointOutT >::save_histograms_ [private]

Signals whether the full distance-angle histograms are being saved.

Definition at line 216 of file rsd.h.


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


pcl
Author(s): Open Perception
autogenerated on Mon Oct 6 2014 03:19:59