Point Cloud Library (PCL)  1.9.1-dev
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
pcl::filters::Convolution3D< PointIn, PointOut, KernelT > Class Template Reference

Convolution3D handles the non organized case where width and height are unknown or if you are only interested in convolving based on local neighborhood information. More...

#include <pcl/filters/convolution_3d.h>

+ Inheritance diagram for pcl::filters::Convolution3D< PointIn, PointOut, KernelT >:

Public Types

typedef pcl::PointCloud< PointIn > PointCloudIn
 
typedef PointCloudIn::ConstPtr PointCloudInConstPtr
 
typedef pcl::search::Search< PointIn > KdTree
 
typedef pcl::search::Search< PointIn >::Ptr KdTreePtr
 
typedef pcl::PointCloud< PointOut > PointCloudOut
 
typedef boost::shared_ptr< Convolution3D< PointIn, PointOut, KernelT > > Ptr
 
typedef boost::shared_ptr< Convolution3D< PointIn, PointOut, KernelT > > ConstPtr
 
- Public Types inherited from pcl::PCLBase< PointIn >
typedef pcl::PointCloud< PointIn > PointCloud
 
typedef PointCloud::Ptr PointCloudPtr
 
typedef PointCloud::ConstPtr PointCloudConstPtr
 
typedef boost::shared_ptr< PointIndicesPointIndicesPtr
 
typedef boost::shared_ptr< PointIndices const > PointIndicesConstPtr
 

Public Member Functions

 Convolution3D ()
 Constructor. More...
 
 ~Convolution3D ()
 Empty destructor. More...
 
void setNumberOfThreads (unsigned int nr_threads=0)
 Initialize the scheduler and set the number of threads to use. More...
 
void setKernel (const KernelT &kernel)
 Set convolving kernel. More...
 
void setSearchSurface (const PointCloudInConstPtr &cloud)
 Provide a pointer to the input dataset that we need to estimate features at every point for. More...
 
PointCloudInConstPtr getSearchSurface ()
 Get a pointer to the surface point cloud dataset. More...
 
void setSearchMethod (const KdTreePtr &tree)
 Provide a pointer to the search object. More...
 
KdTreePtr getSearchMethod ()
 Get a pointer to the search method used. More...
 
void setRadiusSearch (double radius)
 Set the sphere radius that is to be used for determining the nearest neighbors. More...
 
double getRadiusSearch ()
 Get the sphere radius used for determining the neighbors. More...
 
void convolve (PointCloudOut &output)
 Convolve point cloud. More...
 
- Public Member Functions inherited from pcl::PCLBase< PointIn >
 PCLBase ()
 Empty constructor. More...
 
 PCLBase (const PCLBase &base)
 Copy constructor. More...
 
virtual ~PCLBase ()
 Destructor. More...
 
virtual void setInputCloud (const PointCloudConstPtr &cloud)
 Provide a pointer to the input dataset. More...
 
PointCloudConstPtr const getInputCloud () const
 Get a pointer to the input point cloud dataset. More...
 
virtual void setIndices (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (const IndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (const PointIndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)
 Set the indices for the points laying within an interest region of the point cloud. More...
 
IndicesPtr const getIndices ()
 Get a pointer to the vector of indices used. More...
 
IndicesConstPtr const getIndices () const
 Get a pointer to the vector of indices used. More...
 
const PointIn & operator[] (size_t pos) const
 Override PointCloud operator[] to shorten code. More...
 

Protected Member Functions

bool initCompute ()
 initialize computation More...
 
- Protected Member Functions inherited from pcl::PCLBase< PointIn >
bool initCompute ()
 This method should get called before starting the actual computation. More...
 
bool deinitCompute ()
 This method should get called after finishing the actual computation. More...
 

Protected Attributes

PointCloudInConstPtr surface_
 An input point cloud describing the surface that is to be used for nearest neighbors estimation. More...
 
KdTreePtr tree_
 A pointer to the spatial search object. More...
 
double search_radius_
 The nearest neighbors search radius for each point. More...
 
unsigned int threads_
 number of threads More...
 
KernelT kernel_
 convlving kernel More...
 
- Protected Attributes inherited from pcl::PCLBase< PointIn >
PointCloudConstPtr input_
 The input point cloud dataset. More...
 
IndicesPtr indices_
 A pointer to the vector of point indices to use. More...
 
bool use_indices_
 Set to true if point indices are used. More...
 
bool fake_indices_
 If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More...
 

Detailed Description

template<typename PointIn, typename PointOut, typename KernelT>
class pcl::filters::Convolution3D< PointIn, PointOut, KernelT >

Convolution3D handles the non organized case where width and height are unknown or if you are only interested in convolving based on local neighborhood information.

The convolving kernel MUST be a radial symmetric and implement ConvolvingKernel interface.

Definition at line 199 of file convolution_3d.h.

Member Typedef Documentation

template<typename PointIn , typename PointOut , typename KernelT >
typedef boost::shared_ptr<Convolution3D<PointIn, PointOut, KernelT> > pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::ConstPtr

Definition at line 208 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
typedef pcl::search::Search<PointIn> pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::KdTree

Definition at line 204 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
typedef pcl::search::Search<PointIn>::Ptr pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::KdTreePtr

Definition at line 205 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
typedef pcl::PointCloud<PointIn> pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::PointCloudIn

Definition at line 202 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
typedef PointCloudIn::ConstPtr pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::PointCloudInConstPtr

Definition at line 203 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
typedef pcl::PointCloud<PointOut> pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::PointCloudOut

Definition at line 206 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
typedef boost::shared_ptr<Convolution3D<PointIn, PointOut, KernelT> > pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::Ptr

Definition at line 207 of file convolution_3d.h.

Constructor & Destructor Documentation

template<typename PointInT , typename PointOutT , typename KernelT >
pcl::filters::Convolution3D< PointInT, PointOutT, KernelT >::Convolution3D ( )

Constructor.

Definition at line 171 of file convolution_3d.hpp.

template<typename PointIn , typename PointOut , typename KernelT >
pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::~Convolution3D ( )
inline

Empty destructor.

Definition at line 217 of file convolution_3d.h.

Member Function Documentation

template<typename PointInT , typename PointOutT , typename KernelT >
void pcl::filters::Convolution3D< PointInT, PointOutT, KernelT >::convolve ( PointCloudOut output)
template<typename PointIn , typename PointOut , typename KernelT >
double pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::getRadiusSearch ( )
inline

Get the sphere radius used for determining the neighbors.

Definition at line 259 of file convolution_3d.h.

References pcl::filters::ConvolvingKernel< PointInT, PointOutT >::initCompute().

template<typename PointIn , typename PointOut , typename KernelT >
KdTreePtr pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::getSearchMethod ( )
inline

Get a pointer to the search method used.

Definition at line 249 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
PointCloudInConstPtr pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::getSearchSurface ( )
inline

Get a pointer to the surface point cloud dataset.

Definition at line 239 of file convolution_3d.h.

template<typename PointInT , typename PointOutT , typename KernelT >
bool pcl::filters::Convolution3D< PointInT, PointOutT, KernelT >::initCompute ( )
protected
template<typename PointIn , typename PointOut , typename KernelT >
void pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::setKernel ( const KernelT &  kernel)
inline

Set convolving kernel.

Parameters
[in]kernelconvolving element

Definition at line 229 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
void pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::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 223 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
void pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::setRadiusSearch ( double  radius)
inline

Set the sphere radius that is to be used for determining the nearest neighbors.

Parameters
radiusthe sphere radius used as the maximum distance to consider a point a neighbor

Definition at line 255 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
void pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::setSearchMethod ( const KdTreePtr tree)
inline

Provide a pointer to the search object.

Parameters
treea pointer to the spatial search object.

Definition at line 245 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
void pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::setSearchSurface ( const PointCloudInConstPtr cloud)
inline

Provide a pointer to the input dataset that we need to estimate features at every point for.

Parameters
cloudthe const boost shared pointer to a PointCloud message

Definition at line 235 of file convolution_3d.h.

Member Data Documentation

template<typename PointIn , typename PointOut , typename KernelT >
KernelT pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::kernel_
protected
template<typename PointIn , typename PointOut , typename KernelT >
double pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::search_radius_
protected
template<typename PointIn , typename PointOut , typename KernelT >
PointCloudInConstPtr pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::surface_
protected

An input point cloud describing the surface that is to be used for nearest neighbors estimation.

Definition at line 272 of file convolution_3d.h.

Referenced by pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::convolve(), and pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::initCompute().

template<typename PointIn , typename PointOut , typename KernelT >
unsigned int pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::threads_
protected

number of threads

Definition at line 281 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >
KdTreePtr pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::tree_
protected

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