|
DGtal 1.4.0
|
Aim: Computes the normal vector at a surface element by convolution of elementary normal vector to adjacent surfel. More...
#include <DGtal/geometry/surfaces/estimation/LocalConvolutionNormalVectorEstimator.h>
Public Types | |
| typedef TDigitalSurface | DigitalSurface |
| typedef TKernelFunctor | KernelFunctor |
| typedef DigitalSurface | Surface |
| typedef Surface::ConstIterator | ConstIterator |
| typedef Surface::KSpace::Space::RealVector | Quantity |
| typedef Surface::SCell | SCell |
Public Member Functions | |
| BOOST_CONCEPT_ASSERT ((concepts::CConvolutionWeights< TKernelFunctor >)) | |
| LocalConvolutionNormalVectorEstimator (ConstAlias< DigitalSurface > aSurface, ConstAlias< KernelFunctor > aFunctor) | |
| ~LocalConvolutionNormalVectorEstimator () | |
| const Surface & | surface () const |
| void | init (const double h, const unsigned int radius) |
| Quantity | eval (const SCell &scell) const |
| Quantity | eval (const ConstIterator &it) const |
| template<typename OutputIterator > | |
| OutputIterator | eval (const ConstIterator &itb, const ConstIterator &ite, OutputIterator result) const |
| template<typename OutputIterator > | |
| OutputIterator | evalAll (OutputIterator result) const |
| bool | isValid () const |
Protected Member Functions | |
| LocalConvolutionNormalVectorEstimator () | |
Private Member Functions | |
| LocalConvolutionNormalVectorEstimator (const LocalConvolutionNormalVectorEstimator &other) | |
| LocalConvolutionNormalVectorEstimator & | operator= (const LocalConvolutionNormalVectorEstimator &other) |
Private Attributes | |
| double | myH |
| Grid size. | |
| bool | myFlagIsInit |
| True if the init() has been called. | |
| unsigned int | myRadius |
| Radius of the convolution. | |
| const DigitalSurface & | mySurface |
| Reference to the digital surface. | |
| const KernelFunctor & | myKernelFunctor |
| Reference of the kernel convolution functor. | |
Aim: Computes the normal vector at a surface element by convolution of elementary normal vector to adjacent surfel.
Description of template class 'LocalConvolutionNormalVectorEstimator'
A model of CNormalVectorEstimator.
To each $n-1$ signed surfel, an elementary inward normal vector can be defined. At a given surfel, this estimator will compute the convolution of elementary normal vector of neighboring surfels using a breadth-first propagation around the given surfel.
The neighboring is parametrized by a given topological radius R. The weight kernel function maps displacment vectors to a continuous weights.
| TDigitalSurface | type of digital surface on which we would like to compute vector field.. |
| TKernelFunctor | type of Functor used to represent convolution kernel functor (see BasicConvolutionKernels.h). |
Definition at line 84 of file LocalConvolutionNormalVectorEstimator.h.
| typedef Surface::ConstIterator DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::ConstIterator |
Definition at line 93 of file LocalConvolutionNormalVectorEstimator.h.
| typedef TDigitalSurface DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::DigitalSurface |
Definition at line 90 of file LocalConvolutionNormalVectorEstimator.h.
| typedef TKernelFunctor DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::KernelFunctor |
Definition at line 91 of file LocalConvolutionNormalVectorEstimator.h.
| typedef Surface::KSpace::Space::RealVector DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::Quantity |
Definition at line 94 of file LocalConvolutionNormalVectorEstimator.h.
| typedef Surface::SCell DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::SCell |
Definition at line 95 of file LocalConvolutionNormalVectorEstimator.h.
| typedef DigitalSurface DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::Surface |
Definition at line 92 of file LocalConvolutionNormalVectorEstimator.h.
| DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::LocalConvolutionNormalVectorEstimator | ( | ConstAlias< DigitalSurface > | aSurface, |
| ConstAlias< KernelFunctor > | aFunctor ) |
Constructor.
| aSurface | surface for which the normal vector are estimated. |
| aFunctor | convolution kernel functor. |
|
inline |
|
inlineprotected |
Default constructor.
Definition at line 170 of file LocalConvolutionNormalVectorEstimator.h.
References DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::myFlagIsInit.
|
private |
Copy constructor.
| other | the object to clone. Forbidden by default. |
| DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::BOOST_CONCEPT_ASSERT | ( | (concepts::CConvolutionWeights< TKernelFunctor >) | ) |
| Quantity DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::eval | ( | const ConstIterator & | it | ) | const |
| OutputIterator DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::eval | ( | const ConstIterator & | itb, |
| const ConstIterator & | ite, | ||
| OutputIterator | result ) const |
| Quantity DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::eval | ( | const SCell & | scell | ) | const |
| scell | any signed cell. |
| OutputIterator DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::evalAll | ( | OutputIterator | result | ) | const |
Writes on result the estimated quantity at all surfels of the digital surface.
| result | any model of boost::OutputIterator on Quantity. |
| void DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::init | ( | const double | h, |
| const unsigned int | radius ) |
Initialisation.
| h | grid size (must be >0). |
| radius | topological radius used to specify the size of the convolution. |
| bool DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
|
private |
Assignment.
| other | the object to copy. |
| const Surface & DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::surface | ( | ) | const |
|
private |
True if the init() has been called.
Definition at line 183 of file LocalConvolutionNormalVectorEstimator.h.
Referenced by DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::LocalConvolutionNormalVectorEstimator().
|
private |
Grid size.
Definition at line 180 of file LocalConvolutionNormalVectorEstimator.h.
|
private |
Reference of the kernel convolution functor.
Definition at line 192 of file LocalConvolutionNormalVectorEstimator.h.
|
private |
Radius of the convolution.
Definition at line 186 of file LocalConvolutionNormalVectorEstimator.h.
|
private |
Reference to the digital surface.
Definition at line 189 of file LocalConvolutionNormalVectorEstimator.h.