Public Member Functions | Private Types | Private Member Functions | Private Attributes
pcl::BilateralFilter< PointT > Class Template Reference

A bilateral filter implementation for point cloud data. Uses the intensity data channel. More...

#include <bilateral.h>

Inheritance diagram for pcl::BilateralFilter< PointT >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void applyFilter (PointCloud &output)
 Filter the input data and store the results into output.
 BilateralFilter ()
 Constructor. Sets sigma_s_ to 0 and sigma_r_ to MAXDBL.
double computePointWeight (const int pid, const std::vector< int > &indices, const std::vector< float > &distances)
 Compute the intensity average for a single point.
double getHalfSize ()
 Get the half size of the Gaussian bilateral filter window as set by the user.
double getStdDev ()
 Get the value of the current standard deviation parameter of the bilateral filter.
void setHalfSize (const double sigma_s)
 Set the half size of the Gaussian bilateral filter window.
void setSearchMethod (const KdTreePtr &tree)
 Provide a pointer to the search object.
void setStdDev (const double sigma_r)
 Set the standard deviation parameter.

Private Types

typedef pcl::search::Search
< PointT >::Ptr 
KdTreePtr
typedef Filter< PointT >
::PointCloud 
PointCloud

Private Member Functions

double kernel (double x, double sigma)
 The bilateral filter Gaussian distance kernel.

Private Attributes

double sigma_r_
 The standard deviation of the bilateral filter (e.g., standard deviation in intensity).
double sigma_s_
 The half size of the Gaussian bilateral filter window (e.g., spatial extents in Euclidean).
KdTreePtr tree_
 A pointer to the spatial search object.

Detailed Description

template<typename PointT>
class pcl::BilateralFilter< PointT >

A bilateral filter implementation for point cloud data. Uses the intensity data channel.

Note:
For more information please see C. Tomasi and R. Manduchi. Bilateral Filtering for Gray and Color Images. In Proceedings of the IEEE International Conference on Computer Vision, 1998.
Author:
Luca Penasa

Definition at line 55 of file bilateral.h.


Member Typedef Documentation

template<typename PointT >
typedef pcl::search::Search<PointT>::Ptr pcl::BilateralFilter< PointT >::KdTreePtr [private]

Definition at line 60 of file bilateral.h.

template<typename PointT >
typedef Filter<PointT>::PointCloud pcl::BilateralFilter< PointT >::PointCloud [private]

Reimplemented from pcl::Filter< PointT >.

Definition at line 59 of file bilateral.h.


Constructor & Destructor Documentation

template<typename PointT >
pcl::BilateralFilter< PointT >::BilateralFilter ( ) [inline]

Constructor. Sets sigma_s_ to 0 and sigma_r_ to MAXDBL.

Definition at line 66 of file bilateral.h.


Member Function Documentation

template<typename PointT >
void pcl::BilateralFilter< PointT >::applyFilter ( PointCloud output) [virtual]

Filter the input data and store the results into output.

Parameters:
[out]outputthe resultant point cloud message

Implements pcl::Filter< PointT >.

Definition at line 71 of file bilateral.hpp.

template<typename PointT >
double pcl::BilateralFilter< PointT >::computePointWeight ( const int  pid,
const std::vector< int > &  indices,
const std::vector< float > &  distances 
)

Compute the intensity average for a single point.

Parameters:
[in]pidthe point index to compute the weight for
[in]indicesthe set of nearest neighor indices
[in]distancesthe set of nearest neighbor distances
Returns:
the intensity average at a given point index

Definition at line 45 of file bilateral.hpp.

template<typename PointT >
double pcl::BilateralFilter< PointT >::getHalfSize ( ) [inline]

Get the half size of the Gaussian bilateral filter window as set by the user.

Definition at line 99 of file bilateral.h.

template<typename PointT >
double pcl::BilateralFilter< PointT >::getStdDev ( ) [inline]

Get the value of the current standard deviation parameter of the bilateral filter.

Definition at line 115 of file bilateral.h.

template<typename PointT >
double pcl::BilateralFilter< PointT >::kernel ( double  x,
double  sigma 
) [inline, private]

The bilateral filter Gaussian distance kernel.

Parameters:
[in]xthe spatial distance (distance or intensity)
[in]sigmastandard deviation

Definition at line 136 of file bilateral.h.

template<typename PointT >
void pcl::BilateralFilter< PointT >::setHalfSize ( const double  sigma_s) [inline]

Set the half size of the Gaussian bilateral filter window.

Parameters:
[in]sigma_sthe half size of the Gaussian bilateral filter window to use

Definition at line 92 of file bilateral.h.

template<typename PointT >
void pcl::BilateralFilter< PointT >::setSearchMethod ( const KdTreePtr tree) [inline]

Provide a pointer to the search object.

Parameters:
[in]treea pointer to the spatial search object.

Definition at line 124 of file bilateral.h.

template<typename PointT >
void pcl::BilateralFilter< PointT >::setStdDev ( const double  sigma_r) [inline]

Set the standard deviation parameter.

Parameters:
[in]sigma_rthe new standard deviation parameter

Definition at line 108 of file bilateral.h.


Member Data Documentation

template<typename PointT >
double pcl::BilateralFilter< PointT >::sigma_r_ [private]

The standard deviation of the bilateral filter (e.g., standard deviation in intensity).

Definition at line 144 of file bilateral.h.

template<typename PointT >
double pcl::BilateralFilter< PointT >::sigma_s_ [private]

The half size of the Gaussian bilateral filter window (e.g., spatial extents in Euclidean).

Definition at line 142 of file bilateral.h.

template<typename PointT >
KdTreePtr pcl::BilateralFilter< PointT >::tree_ [private]

A pointer to the spatial search object.

Definition at line 147 of file bilateral.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:17