Point Cloud Library (PCL)  1.7.0
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>

List of all members.

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.
PointCloudConstPtr const getInputCloud ()
 Get a pointer to the input point cloud dataset.
void setNumberOfLevels (int levels)
 Set the number of pyramid levels.
int getNumberOfLevels () const
void setNumberOfThreads (unsigned int nr_threads=0)
 Initialize the scheduler and set the number of threads to use.
void setLargeSmoothingKernel (bool large)
 Choose a larger smoothing kernel for enhanced smoothing.
void setDistanceThreshold (float threshold)
 Only points such us distance (center,point) < threshold are accounted for to prevent ghost points.
float getDistanceThreshold () const
void compute (std::vector< PointCloudPtr > &output)
 compute the pyramid levels.
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< PointT >::at(), pcl::PointCloud< PointT >::height, pcl::isFinite(), pcl::squaredEuclideanDistance(), and pcl::PointCloud< PointT >::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: