Point Cloud Library (PCL)  1.7.1
List of all members | Public Types | Public Member Functions
pcl::filters::Pyramid< PointT > Class Template Reference

Pyramid constructs a multi-scale representation of an organised point cloud. More...

#include <pcl/filters/pyramid.h>

Public Types

typedef PointCloud< PointT >::Ptr PointCloudPtr
 
typedef PointCloud< PointT >
::ConstPtr 
PointCloudConstPtr
 
typedef boost::shared_ptr
< Pyramid< PointT > > 
Ptr
 
typedef boost::shared_ptr
< const Pyramid< PointT > > 
ConstPtr
 

Public Member Functions

 Pyramid (int levels=4)
 
void setInputCloud (const PointCloudConstPtr &cloud)
 Provide a pointer to the input dataset. More...
 
PointCloudConstPtr const getInputCloud ()
 Get a pointer to the input point cloud dataset. More...
 
void setNumberOfLevels (int levels)
 Set the number of pyramid levels. More...
 
int getNumberOfLevels () const
 
void setNumberOfThreads (unsigned int nr_threads=0)
 Initialize the scheduler and set the number of threads to use. More...
 
void setLargeSmoothingKernel (bool large)
 Choose a larger smoothing kernel for enhanced smoothing. More...
 
void setDistanceThreshold (float threshold)
 Only points such us distance (center,point) < threshold are accounted for to prevent ghost points. More...
 
float getDistanceThreshold () const
 
void compute (std::vector< PointCloudPtr > &output)
 compute the pyramid levels. More...
 
const std::string & getClassName () const
 
template<>
void compute (std::vector< Pyramid< pcl::PointXYZRGB >::PointCloudPtr > &output)
 
template<>
void compute (std::vector< Pyramid< pcl::PointXYZRGBA >::PointCloudPtr > &output)
 
template<>
void compute (std::vector< Pyramid< pcl::RGB >::PointCloudPtr > &output)
 

Detailed Description

template<typename PointT>
class pcl::filters::Pyramid< PointT >

Pyramid constructs a multi-scale representation of an organised point cloud.

It is an iterative smoothing subsampling algorithm. The subsampling is fixed to 2. Two smoothing kernels may be used:

Author
Nizar Sallem

Definition at line 62 of file pyramid.h.

Member Typedef Documentation

template<typename PointT>
typedef boost::shared_ptr< const Pyramid<PointT> > pcl::filters::Pyramid< PointT >::ConstPtr

Definition at line 68 of file pyramid.h.

template<typename PointT>
typedef PointCloud<PointT>::ConstPtr pcl::filters::Pyramid< PointT >::PointCloudConstPtr

Definition at line 66 of file pyramid.h.

template<typename PointT>
typedef PointCloud<PointT>::Ptr pcl::filters::Pyramid< PointT >::PointCloudPtr

Definition at line 65 of file pyramid.h.

template<typename PointT>
typedef boost::shared_ptr< Pyramid<PointT> > pcl::filters::Pyramid< PointT >::Ptr

Definition at line 67 of file pyramid.h.

Constructor & Destructor Documentation

template<typename PointT>
pcl::filters::Pyramid< PointT >::Pyramid ( int  levels = 4)
inline

Definition at line 70 of file pyramid.h.

Member Function Documentation

template<typename PointT >
void pcl::filters::Pyramid< PointT >::compute ( std::vector< PointCloudPtr > &  output)

compute the pyramid levels.

Parameters
[out]outputthe constructed pyramid. It is resized to the number of levels.
Remarks
input_ is copied to output[0] for consistency reasons.

Definition at line 90 of file pyramid.hpp.

References pcl::PointCloud< T >::at(), pcl::PointCloud< T >::height, pcl::isFinite(), pcl::squaredEuclideanDistance(), and pcl::PointCloud< T >::width.

template<>
void pcl::filters::Pyramid< pcl::PointXYZRGB >::compute ( std::vector< Pyramid< pcl::PointXYZRGB >::PointCloudPtr > &  output)
template<>
void pcl::filters::Pyramid< pcl::PointXYZRGBA >::compute ( std::vector< Pyramid< pcl::PointXYZRGBA >::PointCloudPtr > &  output)
template<>
void pcl::filters::Pyramid< pcl::RGB >::compute ( std::vector< Pyramid< pcl::RGB >::PointCloudPtr > &  output)
template<typename PointT>
const std::string& pcl::filters::Pyramid< PointT >::getClassName ( ) const
inline

Definition at line 131 of file pyramid.h.

template<typename PointT>
float pcl::filters::Pyramid< PointT >::getDistanceThreshold ( ) const
inline
Returns
the distance threshold

Definition at line 121 of file pyramid.h.

template<typename PointT>
PointCloudConstPtr const pcl::filters::Pyramid< PointT >::getInputCloud ( )
inline

Get a pointer to the input point cloud dataset.

Definition at line 87 of file pyramid.h.

template<typename PointT>
int pcl::filters::Pyramid< PointT >::getNumberOfLevels ( ) const
inline
Returns
the number of pyramid levels

Definition at line 97 of file pyramid.h.

template<typename PointT>
void pcl::filters::Pyramid< PointT >::setDistanceThreshold ( float  threshold)
inline

Only points such us distance (center,point) < threshold are accounted for to prevent ghost points.

Default value is 0.01, to disable set to std::numeric<float>::infinity ().

Parameters
[in]thresholdmaximum allowed distance between center and neighbor.

Definition at line 117 of file pyramid.h.

template<typename PointT>
void pcl::filters::Pyramid< PointT >::setInputCloud ( const PointCloudConstPtr cloud)
inline

Provide a pointer to the input dataset.

Parameters
cloudthe const boost shared pointer to a PointCloud message

Definition at line 83 of file pyramid.h.

template<typename PointT>
void pcl::filters::Pyramid< PointT >::setLargeSmoothingKernel ( bool  large)
inline

Choose a larger smoothing kernel for enhanced smoothing.

Parameters
largeif true large smoothng kernel will be used.

Definition at line 109 of file pyramid.h.

template<typename PointT>
void pcl::filters::Pyramid< PointT >::setNumberOfLevels ( int  levels)
inline

Set the number of pyramid levels.

Parameters
levelsdesired number of pyramid levels

Definition at line 93 of file pyramid.h.

template<typename PointT>
void pcl::filters::Pyramid< PointT >::setNumberOfThreads ( unsigned int  nr_threads = 0)
inline

Initialize the scheduler and set the number of threads to use.

Parameters
nr_threadsthe number of hardware threads to use (0 sets the value back to automatic).

Definition at line 103 of file pyramid.h.


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