Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Types | Public Member Functions | Protected Attributes
pcl::filters::GaussianKernel< PointInT, PointOutT > Class Template Reference

Gaussian kernel implementation interface Use this as implementation reference. More...

#include <pcl/filters/convolution_3d.h>

+ Inheritance diagram for pcl::filters::GaussianKernel< PointInT, PointOutT >:
+ Collaboration diagram for pcl::filters::GaussianKernel< PointInT, PointOutT >:

Public Types

using Ptr = shared_ptr< GaussianKernel< PointInT, PointOutT > >
 
using ConstPtr = shared_ptr< GaussianKernel< PointInT, PointOutT > >
 
- Public Types inherited from pcl::filters::ConvolvingKernel< PointInT, PointOutT >
using Ptr = shared_ptr< ConvolvingKernel< PointInT, PointOutT > >
 
using ConstPtr = shared_ptr< const ConvolvingKernel< PointInT, PointOutT > >
 
using PointCloudInConstPtr = typename PointCloud< PointInT >::ConstPtr
 

Public Member Functions

 GaussianKernel ()
 Default constructor. More...
 
void setSigma (float sigma)
 Set the sigma parameter of the Gaussian. More...
 
void setThresholdRelativeToSigma (float sigma_coefficient)
 Set the distance threshold relative to a sigma factor i.e. More...
 
void setThreshold (float threshold)
 Set the distance threshold such as pi, ||pi - q|| > threshold are not considered. More...
 
bool initCompute ()
 Must call this method before doing any computation. More...
 
virtual PointOutT operator() (const Indices &indices, const std::vector< float > &distances)
 Convolve point at the center of this local information. More...
 
- Public Member Functions inherited from pcl::filters::ConvolvingKernel< PointInT, PointOutT >
 ConvolvingKernel ()
 empty constructor More...
 
virtual ~ConvolvingKernel ()=default
 empty destructor More...
 
void setInputCloud (const PointCloudInConstPtr &input)
 Set input cloud. More...
 

Protected Attributes

float sigma_
 
float sigma_sqr_
 
float threshold_
 
boost::optional< float > sigma_coefficient_
 
- Protected Attributes inherited from pcl::filters::ConvolvingKernel< PointInT, PointOutT >
PointCloudInConstPtr input_
 source cloud More...
 

Additional Inherited Members

- Static Public Member Functions inherited from pcl::filters::ConvolvingKernel< PointInT, PointOutT >
static void makeInfinite (PointOutT &p)
 Utility function that annihilates a point making it fail the pcl::isFinite test. More...
 

Detailed Description

template<typename PointInT, typename PointOutT>
class pcl::filters::GaussianKernel< PointInT, PointOutT >

Gaussian kernel implementation interface Use this as implementation reference.

Definition at line 113 of file convolution_3d.h.

Member Typedef Documentation

◆ ConstPtr

template<typename PointInT , typename PointOutT >
using pcl::filters::GaussianKernel< PointInT, PointOutT >::ConstPtr = shared_ptr<GaussianKernel<PointInT, PointOutT> >

Definition at line 121 of file convolution_3d.h.

◆ Ptr

template<typename PointInT , typename PointOutT >
using pcl::filters::GaussianKernel< PointInT, PointOutT >::Ptr = shared_ptr<GaussianKernel<PointInT, PointOutT> >

Definition at line 120 of file convolution_3d.h.

Constructor & Destructor Documentation

◆ GaussianKernel()

template<typename PointInT , typename PointOutT >
pcl::filters::GaussianKernel< PointInT, PointOutT >::GaussianKernel ( )
inline

Default constructor.

Definition at line 124 of file convolution_3d.h.

Member Function Documentation

◆ initCompute()

template<typename PointInT , typename PointOutT >
bool pcl::filters::GaussianKernel< PointInT, PointOutT >::initCompute
virtual

Must call this method before doing any computation.

Reimplemented from pcl::filters::ConvolvingKernel< PointInT, PointOutT >.

Definition at line 82 of file convolution_3d.hpp.

◆ operator()()

template<typename PointInT , typename PointOutT >
PointOutT pcl::filters::GaussianKernel< PointInT, PointOutT >::operator() ( const Indices indices,
const std::vector< float > &  distances 
)
virtual

Convolve point at the center of this local information.

Parameters
[in]indicesindices of the point in the source point cloud
[in]distanceseuclidean distance squared from the query point
Returns
the convolved point

Implements pcl::filters::ConvolvingKernel< PointInT, PointOutT >.

Reimplemented in pcl::filters::GaussianKernelRGB< PointInT, PointOutT >.

Definition at line 107 of file convolution_3d.hpp.

References pcl::isFinite().

◆ setSigma()

template<typename PointInT , typename PointOutT >
void pcl::filters::GaussianKernel< PointInT, PointOutT >::setSigma ( float  sigma)
inline

Set the sigma parameter of the Gaussian.

Parameters
[in]sigma

Definition at line 134 of file convolution_3d.h.

References pcl::filters::GaussianKernel< PointInT, PointOutT >::sigma_.

◆ setThreshold()

template<typename PointInT , typename PointOutT >
void pcl::filters::GaussianKernel< PointInT, PointOutT >::setThreshold ( float  threshold)
inline

Set the distance threshold such as pi, ||pi - q|| > threshold are not considered.

Definition at line 147 of file convolution_3d.h.

References pcl::filters::GaussianKernel< PointInT, PointOutT >::threshold_.

◆ setThresholdRelativeToSigma()

template<typename PointInT , typename PointOutT >
void pcl::filters::GaussianKernel< PointInT, PointOutT >::setThresholdRelativeToSigma ( float  sigma_coefficient)
inline

Set the distance threshold relative to a sigma factor i.e.

points such as ||pi - q|| > sigma_coefficient^2 * sigma^2 are not considered.

Definition at line 140 of file convolution_3d.h.

References pcl::filters::GaussianKernel< PointInT, PointOutT >::sigma_coefficient_.

Member Data Documentation

◆ sigma_

template<typename PointInT , typename PointOutT >
float pcl::filters::GaussianKernel< PointInT, PointOutT >::sigma_
protected

◆ sigma_coefficient_

template<typename PointInT , typename PointOutT >
boost::optional<float> pcl::filters::GaussianKernel< PointInT, PointOutT >::sigma_coefficient_
protected

◆ sigma_sqr_

template<typename PointInT , typename PointOutT >
float pcl::filters::GaussianKernel< PointInT, PointOutT >::sigma_sqr_
protected

Definition at line 157 of file convolution_3d.h.

◆ threshold_

template<typename PointInT , typename PointOutT >
float pcl::filters::GaussianKernel< PointInT, PointOutT >::threshold_
protected

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