|
latest version v1.9 - last update 10 Apr 2010 |
|
The parameters for the class genericInterpolator. More...
#include <ltiGenericInterpolator.h>


Public Types | |
| enum | eInterpolationKernelType { BilinearKernel, BicubicKernel, GenericKernel } |
Public Member Functions | |
| parameters () | |
| parameters (const eBoundaryType btype) | |
| parameters (const parameters &other) | |
| ~parameters () | |
| const char * | getTypeName () const |
| parameters & | copy (const parameters &other) |
| parameters & | operator= (const parameters &other) |
| virtual functor::parameters * | clone () const |
| virtual bool | write (ioHandler &handler, const bool complete=true) const |
| virtual bool | read (ioHandler &handler, const bool complete=true) |
Public Attributes | |
| eInterpolationKernelType | kernelType |
| int | numSamplesPerInterval |
| fvector | kernelLUT |
The parameters for the class genericInterpolator.
| enum lti::genericInterpolator::parameters::eInterpolationKernelType |
Types for interpolation kernels.
| BilinearKernel |
Bilinear interpolation kernel. The neighborhood size is always 2x2. This implementation is slower than the optimized version in the functor lti::bilinearInterpolation, but is provided for completeness. |
| BicubicKernel |
Bicubic interpolation. The neighborhood size is always 4x4. The kernel provided here is after Sonka et.al. pp. 67
|
| GenericKernel |
Generic interpolation. The generic interpolation uses the kernelLUT given in the parameters. |
| lti::genericInterpolator< T >::parameters::parameters | ( | void | ) | [inline] |
default constructor
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::BicubicKernel, lti::interpolator::parameters::boundaryType, lti::genericVector< T >::clear(), lti::Constant, lti::genericInterpolator< T >::parameters::kernelLUT, lti::genericInterpolator< T >::parameters::kernelType, and lti::genericInterpolator< T >::parameters::numSamplesPerInterval.
Referenced by lti::genericInterpolator< T >::parameters::clone().
| lti::genericInterpolator< T >::parameters::parameters | ( | const eBoundaryType | btype | ) | [inline] |
Constructor to set explicitelly the desired boundaryType.
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::BicubicKernel, lti::interpolator::parameters::boundaryType, lti::genericVector< T >::clear(), lti::Constant, lti::genericInterpolator< T >::parameters::kernelLUT, lti::genericInterpolator< T >::parameters::kernelType, and lti::genericInterpolator< T >::parameters::numSamplesPerInterval.
| lti::genericInterpolator< T >::parameters::parameters | ( | const parameters & | other | ) | [inline] |
copy constructor
| other | the parameters object to be copied |
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::copy().
| lti::genericInterpolator< T >::parameters::~parameters | ( | ) | [inline, virtual] |
destructor
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericVector< T >::clear(), and lti::genericInterpolator< T >::parameters::kernelLUT.
| virtual functor::parameters* lti::genericInterpolator< T >::parameters::clone | ( | ) | const [inline, virtual] |
returns a pointer to a clone of the parameters
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::parameters().
| parameters& lti::genericInterpolator< T >::parameters::copy | ( | const parameters & | other | ) | [inline] |
copy the contents of a parameters object
| other | the parameters object to be copied |
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericVector< T >::copy(), lti::genericInterpolator< T >::parameters::kernelLUT, lti::genericInterpolator< T >::parameters::kernelType, and lti::genericInterpolator< T >::parameters::numSamplesPerInterval.
Referenced by lti::genericInterpolator< T >::parameters::operator=(), and lti::genericInterpolator< T >::parameters::parameters().
| const char* lti::genericInterpolator< T >::parameters::getTypeName | ( | void | ) | const [inline, virtual] |
returns name of this type
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
| parameters& lti::genericInterpolator< T >::parameters::operator= | ( | const parameters & | other | ) | [inline] |
copy the contents of a parameters object
| other | the parameters object to be copied |
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::copy().
| virtual bool lti::genericInterpolator< T >::parameters::read | ( | ioHandler & | handler, | |
| const bool | complete = true | |||
| ) | [inline, virtual] |
read the parameters from the given ioHandler
| 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. |
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::BicubicKernel, lti::genericInterpolator< T >::parameters::BilinearKernel, lti::genericInterpolator< T >::parameters::GenericKernel, lti::genericInterpolator< T >::parameters::kernelLUT, lti::genericInterpolator< T >::parameters::kernelType, lti::genericInterpolator< T >::parameters::numSamplesPerInterval, lti::ioHandler::readBegin(), lti::ioHandler::readEnd(), and lti::ioHandler::setStatusString().
| virtual bool lti::genericInterpolator< T >::parameters::write | ( | ioHandler & | handler, | |
| const bool | complete = true | |||
| ) | const [inline, virtual] |
write the parameters in the given ioHandler
| 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. |
Reimplemented from lti::scalarValuedInterpolation< T >::parameters.
References lti::genericInterpolator< T >::parameters::BicubicKernel, lti::genericInterpolator< T >::parameters::BilinearKernel, lti::genericInterpolator< T >::parameters::GenericKernel, lti::genericInterpolator< T >::parameters::kernelLUT, lti::genericInterpolator< T >::parameters::kernelType, lti::genericInterpolator< T >::parameters::numSamplesPerInterval, lti::ioHandler::writeBegin(), and lti::ioHandler::writeEnd().
| fvector lti::genericInterpolator< T >::parameters::kernelLUT |
Generic interpolation kernel.
If the kernelType is GenericKernel then this kernel LUT will be used. To be a valid kernel, this vector must have a size n times numSamplesPerInterval, with n even. If the validity of the kernel LUT cannot be confirmed, a Bilinear Kernel will be used instead, but setParameters will return false.
Default value: empty kernel
Referenced by lti::genericInterpolator< T >::parameters::copy(), lti::genericInterpolator< T >::parameters::parameters(), lti::genericInterpolator< T >::parameters::read(), lti::genericInterpolator< T >::parameters::write(), and lti::genericInterpolator< T >::parameters::~parameters().
| eInterpolationKernelType lti::genericInterpolator< T >::parameters::kernelType |
Interpolation type to be used.
Default: Bicubic
Referenced by lti::genericInterpolator< T >::parameters::copy(), lti::genericInterpolator< T >::parameters::parameters(), lti::genericInterpolator< T >::parameters::read(), and lti::genericInterpolator< T >::parameters::write().
| int lti::genericInterpolator< T >::parameters::numSamplesPerInterval |
Number of samples in the interpolation table for a unit interval.
The total number of elements in the LUT will be this value multiplied by the number of unit intervals of the interpolation kernel.
Default value: 256
Referenced by lti::genericInterpolator< T >::parameters::copy(), lti::genericInterpolator< T >::parameters::parameters(), lti::genericInterpolator< T >::parameters::read(), and lti::genericInterpolator< T >::parameters::write().