[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

details Gaussian< T > Class Template Reference VIGRA

#include <vigra/gaussians.hxx>

Public Types

typedef T argument_type
 
typedef T result_type
 
typedef T value_type
 

Public Member Functions

unsigned int derivativeOrder () const
 
 Gaussian (T sigma=1.0, unsigned int derivativeOrder=0)
 
result_type operator() (argument_type x) const
 
double radius (double sigmaMultiple=3.0) const
 
value_type sigma () const
 

Detailed Description

template<class T = double>
class vigra::Gaussian< T >

The Gaussian function and its derivatives.

Implemented as a unary functor. Since it supports the radius() function it can also be used as a kernel in resamplingConvolveImage().

#include <vigra/gaussians.hxx>
Namespace: vigra

Member Typedef Documentation

typedef T value_type

the value type if used as a kernel in resamplingConvolveImage().

typedef T argument_type

the functor's argument type

typedef T result_type

the functor's result type

Constructor & Destructor Documentation

Gaussian ( sigma = 1.0,
unsigned int  derivativeOrder = 0 
)
explicit

Create functor for the given standard deviation sigma and derivative order n. The functor then realizes the function

\[ f_{\sigma,n}(x)=\frac{\partial^n}{\partial x^n} \frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{x^2}{2\sigma^2}} \]

Precondition:

sigma > 0.0

Member Function Documentation

Gaussian< T >::result_type operator() ( argument_type  x) const

Function (functor) call.

value_type sigma ( ) const

Get the standard deviation of the Gaussian.

unsigned int derivativeOrder ( ) const

Get the derivative order of the Gaussian.

double radius ( double  sigmaMultiple = 3.0) const

Get the required filter radius for a discrete approximation of the Gaussian. The radius is given as a multiple of the Gaussian's standard deviation (default: sigma * (3 + 1/2 * derivativeOrder() – the second term accounts for the fact that the derivatives of the Gaussian become wider with increasing order). The result is rounded to the next higher integer.


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

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de)
Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany

html generated using doxygen and Python
vigra 1.11.1 (Fri May 19 2017)