Public Types | 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 Types

typedef boost::shared_ptr
< const BilateralFilter
< PointT > > 
ConstPtr
typedef boost::shared_ptr
< BilateralFilter< PointT > > 
Ptr

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 () const
 Get the half size of the Gaussian bilateral filter window as set by the user.
double getStdDev () const
 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 57 of file bilateral.h.


Member Typedef Documentation

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

Reimplemented from pcl::Filter< PointT >.

Definition at line 67 of file bilateral.h.

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

Definition at line 62 of file bilateral.h.

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

Reimplemented from pcl::Filter< PointT >.

Definition at line 61 of file bilateral.h.

template<typename PointT >
typedef boost::shared_ptr< BilateralFilter<PointT> > pcl::BilateralFilter< PointT >::Ptr

Reimplemented from pcl::Filter< PointT >.

Definition at line 66 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 73 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 73 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 47 of file bilateral.hpp.

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

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

Definition at line 104 of file bilateral.h.

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

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

Definition at line 116 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 133 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 99 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 123 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 111 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 139 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 137 of file bilateral.h.

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

A pointer to the spatial search object.

Definition at line 142 of file bilateral.h.


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


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:39:06