Point Cloud Library (PCL)  1.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
pcl::ndt::NormalDist< PointT > Class Template Reference

A normal distribution estimation class. More...

#include <pcl/registration/impl/ndt.hpp>

List of all members.

Public Member Functions

 NormalDist ()
void addIdx (size_t i)
 Store a point index to use later for estimating distribution parameters.
void estimateParams (const PointCloud &cloud, double min_covar_eigvalue_mult=0.001)
 Estimate the normal distribution parameters given the point indices provided.
ValueAndDerivatives< 3, double > test (const PointT &transformed_pt, const double &cos_theta, const double &sin_theta) const
 Return the 'score' (denormalised likelihood) and derivatives of score of the point p given this distribution.

Detailed Description

template<typename PointT>
class pcl::ndt::NormalDist< PointT >

A normal distribution estimation class.

First the indices of of the points from a point cloud that should be modelled by the distribution are added with addIdx (...).

Then estimateParams (...) uses the stored point indices to estimate the parameters of a normal distribution, and discards the stored indices.

Finally the distriubution, and its derivatives, may be evaluated at any point using test (...).

Definition at line 93 of file ndt.hpp.


Constructor & Destructor Documentation

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

Definition at line 98 of file ndt.hpp.


Member Function Documentation

template<typename PointT >
void pcl::ndt::NormalDist< PointT >::addIdx ( size_t  i) [inline]

Store a point index to use later for estimating distribution parameters.

Parameters:
[in]iPoint index to store

Definition at line 107 of file ndt.hpp.

template<typename PointT >
void pcl::ndt::NormalDist< PointT >::estimateParams ( const PointCloud cloud,
double  min_covar_eigvalue_mult = 0.001 
) [inline]

Estimate the normal distribution parameters given the point indices provided.

Memory of point indices is cleared.

Parameters:
[in]cloudPoint cloud corresponding to indices passed to addIdx.
[in]min_covar_eigvalue_multSet the smallest eigenvalue to this times the largest.

Definition at line 117 of file ndt.hpp.

template<typename PointT >
ValueAndDerivatives<3,double> pcl::ndt::NormalDist< PointT >::test ( const PointT &  transformed_pt,
const double &  cos_theta,
const double &  sin_theta 
) const [inline]

Return the 'score' (denormalised likelihood) and derivatives of score of the point p given this distribution.

Parameters:
[in]transformed_ptLocation to evaluate at.
[in]cos_thetasin(theta) of the current rotation angle of rigid transformation: to avoid repeated evaluation
[in]sin_thetacos(theta) of the current rotation angle of rigid transformation: to avoid repeated evaluation estimateParams must have been called after at least three points were provided, or this will return zero.

Definition at line 162 of file ndt.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines