latest version v1.9 - last update 10 Apr 2010 |
the parameters for the class qmf More...
#include <ltiQmf.h>
Public Member Functions | |
parameters () | |
parameters (const parameters &other) | |
~parameters () | |
const char * | getTypeName () const |
parameters & | copy (const parameters &other) |
parameters & | operator= (const parameters &other) |
virtual functor::parameters * | clone () const |
const mathObject & | getKernel () const |
void | setKernel (const mathObject &aKernel) |
virtual bool | write (ioHandler &handler, const bool complete=true) const |
virtual bool | read (ioHandler &handler, const bool complete=true) |
Public Attributes | |
kernel1D< float > | kernel |
int | levels |
the parameters for the class qmf
lti::qmf::parameters::parameters | ( | ) |
default constructor
Reimplemented from lti::modifier::parameters.
lti::qmf::parameters::parameters | ( | const parameters & | other | ) |
copy constructor
other | the parameters object to be copied |
Reimplemented from lti::modifier::parameters.
lti::qmf::parameters::~parameters | ( | ) | [virtual] |
destructor
Reimplemented from lti::functor::parameters.
virtual functor::parameters* lti::qmf::parameters::clone | ( | ) | const [virtual] |
returns a pointer to a clone of the parameters
Reimplemented from lti::modifier::parameters.
parameters& lti::qmf::parameters::copy | ( | const parameters & | other | ) |
copy the contents of a parameters object
other | the parameters object to be copied |
Reimplemented from lti::filter::parameters.
const mathObject& lti::qmf::parameters::getKernel | ( | ) | const |
const char* lti::qmf::parameters::getTypeName | ( | ) | const [virtual] |
returns name of this type
Reimplemented from lti::modifier::parameters.
parameters& lti::qmf::parameters::operator= | ( | const parameters & | other | ) |
copy the contents of a parameters object
other | the parameters object to be copied |
virtual bool lti::qmf::parameters::read | ( | ioHandler & | handler, | |
const bool | complete = true | |||
) | [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::modifier::parameters.
void lti::qmf::parameters::setKernel | ( | const mathObject & | aKernel | ) |
sets the filter kernel to be used.
A copy of the given parameter will be made!
aKernel | the filter kernel to be used |
Note that the expected parameter is a filter kernel and NOT the wavelet coefficients. Remember that the kernel can be constructed by mirroring the wavelet coefficients. This kernel is also the low-pass kernel h(k). The high-pass kernel g(k) will be constructed using the fact that g(k)=(-1)^k h(1-k)
virtual bool lti::qmf::parameters::write | ( | ioHandler & | handler, | |
const bool | complete = true | |||
) | const [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::modifier::parameters.
The kernel is the 1D low-pass filter, which must hold several conditions:.
Let H(w) be the Fourier-Transformation of the kernel:
|H(0)| = 1; kernel[n] = O(n^-2) for n->infinity |H(w)|^2 + |H(w+Pi)|^2 = 1; The high-pass filter g(n) can be calculated from the kernel as: g(n) = (-1)^n kernel[1-k]
The LTI-Lib has some usual kernel predefined:
The default kernel is the 9-Tap Symetric kernel
How many levels must have the result.
This value should be >= 1 For 1, the original channel will be returned Default value: 3