LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::scaleSpacePyramid< T >::parameters Class Reference

Parameters for the generation of scaleSpace pyramids. More...

#include <ltiScaleSpacePyramid.h>

Inheritance diagram for lti::scaleSpacePyramid< T >::parameters:
Inheritance graph
[legend]
Collaboration diagram for lti::scaleSpacePyramid< T >::parameters:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 parameters ()
 parameters (const parameters &other)
 ~parameters ()
const char * getTypeName () const
parameterscopy (const parameters &other)
parametersoperator= (const parameters &other)
virtual functor::parametersclone () const
virtual bool write (ioHandler &handler, const bool complete=true) const
virtual bool read (ioHandler &handler, const bool complete=true)

Public Attributes

bool gaussian
int kernelSize
double kernelVariance
bool automaticKernel
double factor
eInterpolatorType interpolatorType

Detailed Description

template<class T>
class lti::scaleSpacePyramid< T >::parameters

Parameters for the generation of scaleSpace pyramids.

Even if scaleSpacePyramid is by no means a functor, the number of parameters required in its generation is large enough to justify the use of a parameters class. It is just inherited from functor::parameters to reuse the interface defined there.


Constructor & Destructor Documentation

template<class T>
lti::scaleSpacePyramid< T >::parameters::parameters ( void   )  [inline]
template<class T>
lti::scaleSpacePyramid< T >::parameters::parameters ( const parameters other  )  [inline]

copy constructor

Parameters:
other the parameters object to be copied

Reimplemented from lti::functor::parameters.

References lti::scaleSpacePyramid< T >::parameters::copy().

template<class T>
lti::scaleSpacePyramid< T >::parameters::~parameters (  )  [inline, virtual]

destructor

Reimplemented from lti::functor::parameters.


Member Function Documentation

template<class T>
virtual functor::parameters* lti::scaleSpacePyramid< T >::parameters::clone (  )  const [inline, virtual]

returns a pointer to a clone of the parameters

Implements lti::functor::parameters.

References lti::scaleSpacePyramid< T >::parameters::parameters().

template<class T>
parameters& lti::scaleSpacePyramid< T >::parameters::copy ( const parameters other  )  [inline]
template<class T>
const char* lti::scaleSpacePyramid< T >::parameters::getTypeName ( void   )  const [inline, virtual]

returns name of this type

Reimplemented from lti::functor::parameters.

template<class T>
parameters& lti::scaleSpacePyramid< T >::parameters::operator= ( const parameters other  )  [inline]

copy the contents of a parameters object

Parameters:
other the parameters object to be copied
Returns:
a reference to this parameters object

Reimplemented from lti::functor::parameters.

References lti::scaleSpacePyramid< T >::parameters::copy().

template<class T>
virtual bool lti::scaleSpacePyramid< T >::parameters::read ( ioHandler handler,
const bool  complete = true 
) [inline, virtual]

read the parameters from the given ioHandler

Parameters:
handler the ioHandler to be used
complete if true (the default) the enclosing begin/end will be also written, otherwise only the data block will be written.
Returns:
true if write was successful

Reimplemented from lti::functor::parameters.

References lti::scaleSpacePyramid< T >::parameters::automaticKernel, lti::scaleSpacePyramid< T >::parameters::factor, lti::scaleSpacePyramid< T >::parameters::interpolatorType, lti::scaleSpacePyramid< T >::parameters::kernelSize, lti::scaleSpacePyramid< T >::parameters::kernelVariance, lti::ioHandler::readBegin(), and lti::ioHandler::readEnd().

template<class T>
virtual bool lti::scaleSpacePyramid< T >::parameters::write ( ioHandler handler,
const bool  complete = true 
) const [inline, virtual]

write the parameters in the given ioHandler

Parameters:
handler the ioHandler to be used
complete if true (the default) the enclosing begin/end will be also written, otherwise only the data block will be written.
Returns:
true if write was successful

Reimplemented from lti::functor::parameters.

References lti::scaleSpacePyramid< T >::parameters::automaticKernel, lti::scaleSpacePyramid< T >::parameters::factor, lti::scaleSpacePyramid< T >::parameters::interpolatorType, lti::scaleSpacePyramid< T >::parameters::kernelSize, lti::scaleSpacePyramid< T >::parameters::kernelVariance, lti::ioHandler::writeBegin(), and lti::ioHandler::writeEnd().


Member Data Documentation

Automatic kernel computation.

The size and the variance of the smoothing kernel are determined depending on the factor for downsampling.

Default value: true

Referenced by lti::scaleSpacePyramid< T >::parameters::copy(), lti::scaleSpacePyramid< T >::parameters::parameters(), lti::scaleSpacePyramid< T >::parameters::read(), and lti::scaleSpacePyramid< T >::parameters::write().

template<class T>
double lti::scaleSpacePyramid< T >::parameters::factor

Scale factor between adjacent pyramid layers.

This parameter determines the factor between the resolution resolution(n) = resolution(0) * factor^n

This value should be in the interval ]0.5,1.0[ in order for many of the interpolation methods to work properly.

Default: cubic root of 0.5 == 0.793700526

Referenced by lti::scaleSpacePyramid< T >::parameters::copy(), lti::scaleSpacePyramid< T >::parameters::parameters(), lti::scaleSpacePyramid< T >::parameters::read(), and lti::scaleSpacePyramid< T >::parameters::write().

template<class T>
bool lti::scaleSpacePyramid< T >::parameters::gaussian

Specify if each level in the pyramid should be smoothed with a Gaussian kernel or not.

Default: false

Referenced by lti::scaleSpacePyramid< T >::parameters::copy().

Interpolation mode used.

The "downsampling" will use interpolation to get values between the pixels of a higher resolution level.

Default: BilinearInterpolator

Referenced by lti::scaleSpacePyramid< T >::parameters::copy(), lti::scaleSpacePyramid< T >::parameters::parameters(), lti::scaleSpacePyramid< T >::parameters::read(), and lti::scaleSpacePyramid< T >::parameters::write().

template<class T>
int lti::scaleSpacePyramid< T >::parameters::kernelSize

Kernel size used to smooth each pyramid level.

Used only if the automaticKernel mode is set to false and Gaussian smoothing is desired.

Default is 5

Referenced by lti::scaleSpacePyramid< T >::parameters::copy(), lti::scaleSpacePyramid< T >::parameters::parameters(), lti::scaleSpacePyramid< T >::parameters::read(), and lti::scaleSpacePyramid< T >::parameters::write().

template<class T>
double lti::scaleSpacePyramid< T >::parameters::kernelVariance

Kernel variance.

Used only if the automaticKernel mode is set to false and Gaussian smoothing is desired.

Default value: 1.6*1.6

Referenced by lti::scaleSpacePyramid< T >::parameters::copy(), lti::scaleSpacePyramid< T >::parameters::parameters(), lti::scaleSpacePyramid< T >::parameters::read(), and lti::scaleSpacePyramid< T >::parameters::write().


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

Generated on Sat Apr 10 15:27:48 2010 for LTI-Lib by Doxygen 1.6.1