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< PointIndices > | PointIndicesPtr
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 200 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 209 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 205 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 206 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 203 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 204 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 207 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 208 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 218 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 | ) |

Convolve point cloud.

Parameters

  [out] | output | the convolved cloud

Definition at line 226 of file convolution_3d.hpp.

References pcl::PointCloud< PointT >::height, pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::initCompute(), pcl::PointCloud< PointT >::is_dense, pcl::isFinite(), pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::kernel_, pcl::PointCloud< PointT >::resize(), pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::search_radius_, pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::surface_, pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::tree_, and pcl::PointCloud< PointT >::width.

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 260 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 250 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 240 of file convolution_3d.h.

template<typename PointInT , typename PointOutT , typename KernelT >

bool pcl::filters::Convolution3D< PointInT, PointOutT, KernelT >::initCompute | ( |  | ) |

protected

initialize computation

Definition at line 180 of file convolution_3d.hpp.

References pcl::PCLBase< PointIn >::input_, pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::kernel_, pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::search_radius_, pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::surface_, and pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::tree_.

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

template<typename PointIn , typename PointOut , typename KernelT >

void pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::setKernel | ( | const KernelT & | kernel | ) |

inline

Set convolving kernel.

Parameters

  [in] | kernel | convolving element

Definition at line 230 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_threads | the number of hardware threads to use (0 sets the value back to automatic)

Definition at line 224 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

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

Definition at line 256 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

  tree | a pointer to the spatial search object.

Definition at line 246 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

  cloud | the const boost shared pointer to a PointCloud message

Definition at line 236 of file convolution_3d.h.

## Member Data Documentation

template<typename PointIn , typename PointOut , typename KernelT >

KernelT pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::kernel_

protected

convlving kernel

Definition at line 285 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 >

double pcl::filters::Convolution3D< PointIn, PointOut, KernelT >::search_radius_

protected

The nearest neighbors search radius for each point.

Definition at line 279 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 >

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 273 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 282 of file convolution_3d.h.

template<typename PointIn , typename PointOut , typename KernelT >

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

protected

A pointer to the spatial search object.

Definition at line 276 of file convolution_3d.h.

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

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

- /build/pcl-0nnAvv/pcl-1.7.2/filters/include/pcl/filters/convolution_3d.h
- /build/pcl-0nnAvv/pcl-1.7.2/filters/include/pcl/filters/impl/convolution_3d.hpp