#include <Wavelet.h>
Public Member Functions | |
| const std::string & | name () const |
| Get the name of the wavelet. | |
| bool | integerCompatible () const |
| Query if wavelet is integer compatible. | |
| bool | normalized () const |
| Query if wavelet and scaling coefficients are normalized after lifting. | |
| int | steps () const |
| Get number of steps in the lifting scheme. | |
| const LiftingStep & | liftingStep (int i) const |
| Get a step of the lifting scheme. | |
| double | normS () const |
| Get the normalization factor for the scaling coefficients. | |
| double | normD () const |
| Get the normalization factor for the wavelet coefficients. | |
| bool | operator== (const Wavelet &w) const |
| Compare with another wavelet. | |
| template<class tp_Type> | |
| void | lift (blitz::Array< tp_Type, 1 > &s, blitz::Array< tp_Type, 1 > &d, ExtensionMode be=CONSTANT_EXT) const |
| Apply the lifting scheme on the data channels s and d. | |
| template<class tp_Type> | |
| void | invLift (blitz::Array< tp_Type, 1 > &s, blitz::Array< tp_Type, 1 > &d, ExtensionMode be=CONSTANT_EXT) const |
| Apply the inverse lifting scheme on the data channels s and d. | |
| blitz::Array< double, 1 > | forwardFkt (unsigned int size=1<< 9, int scale=6, unsigned int trans=3) const |
| Get sampled values (i.e. the form) of the forward transformation scaling or wavelet function. | |
| blitz::Array< double, 1 > | inverseFkt (unsigned int size=1<< 9, int scale=6, unsigned int trans=3) const |
| Get sampled values (i.e. the form) of the inverse transformation scaling or wavelet function. | |
| Wavelet () | |
| Construct an empty wavelet. | |
| Wavelet (const std::string &name, double ns, double nd, const LiftingStep &s0, const LiftingStep &s1) | |
| Construct a wavelet and it's lifting scheme. | |
| Wavelet (const std::string &name, double ns, double nd, const LiftingStep &s0, const LiftingStep &s1, const LiftingStep &s2) | |
| Wavelet (const std::string &name, double ns, double nd, const LiftingStep &s0, const LiftingStep &s1, const LiftingStep &s2, const LiftingStep &s3) | |
Static Public Member Functions | |
| static bool | equals (double x, double y) |
| Compare two numbers within numeric limits. | |
Protected Attributes | |
| std::string | m_spec |
| double | m_nS |
| double | m_nD |
| std::vector< LiftingStep > | m_steps |
Classes | |
| class | LiftingStep |
| Instances define a lifting step in a wavelet lifting scheme. More... | |
| class | WaveletComponent |
| Superclass for LiftingStep and other possible components / operations defining a wavelet. More... | |
Instances define specific lifting schemes and therefore specific wavelets. Keep your lifting steps integer compatible if you want do operate on both integer an floating point data-types. Some constant instances of this class are available for instant usage, for example WL_HAAR and WL_D_4.
| bwave::Wavelet::Wavelet | ( | const std::string & | name, | |
| double | ns, | |||
| double | nd, | |||
| const LiftingStep & | s0, | |||
| const LiftingStep & | s1 | |||
| ) |
Construct a wavelet and it's lifting scheme.
| name | the name of the wavelet. | |
| ns | normalization factor for scaling coefficients. | |
| nd | normalization factor for wavelet coefficients. | |
| s0 | first lifting step. | |
| s1 | second lifting step, more steps can be specified. |
| bwave::Wavelet::Wavelet | ( | const std::string & | name, | |
| double | ns, | |||
| double | nd, | |||
| const LiftingStep & | s0, | |||
| const LiftingStep & | s1, | |||
| const LiftingStep & | s2 | |||
| ) |
| bwave::Wavelet::Wavelet | ( | const std::string & | name, | |
| double | ns, | |||
| double | nd, | |||
| const LiftingStep & | s0, | |||
| const LiftingStep & | s1, | |||
| const LiftingStep & | s2, | |||
| const LiftingStep & | s3 | |||
| ) |
| bool bwave::Wavelet::equals | ( | double | x, | |
| double | y | |||
| ) | [static] |
Compare two numbers within numeric limits.
true if x and y and (almost) equal, false if not. Referenced by operator==(), and bwave::Wavelet::LiftingStep::operator==().
| bool bwave::Wavelet::integerCompatible | ( | ) | const |
Query if wavelet is integer compatible.
true if wavelet is integer compatible, false if not.Not implemented yet!
| bool bwave::Wavelet::normalized | ( | ) | const |
| const LiftingStep& bwave::Wavelet::liftingStep | ( | int | i | ) | const [inline] |
Get a step of the lifting scheme.
| i | index of the step to get (0 <= i < steps()). |
Referenced by invLift(), lift(), and operator==().
| double bwave::Wavelet::normS | ( | ) | const [inline] |
Get the normalization factor for the scaling coefficients.
Wavelet and scaling coefficients are not automatically normalized after lifting, otherwise integer applications would not be possible.
Referenced by operator==().
| double bwave::Wavelet::normD | ( | ) | const [inline] |
Get the normalization factor for the wavelet coefficients.
Referenced by operator==().
| bool bwave::Wavelet::operator== | ( | const Wavelet & | w | ) | const |
Compare with another wavelet.
| w | the wavelet to compare with. |
true if the wavelets are equal, false if not. References equals(), liftingStep(), normD(), normS(), and steps().
| void bwave::Wavelet::lift | ( | blitz::Array< tp_Type, 1 > & | s, | |
| blitz::Array< tp_Type, 1 > & | d, | |||
| ExtensionMode | be = CONSTANT_EXT | |||
| ) | const [inline] |
Apply the lifting scheme on the data channels s and d.
| s | usually initialised with the even original data values, contains the scaling coefficients after lifting. | |
| d | usually initialised with the odd original data values, contains the wavelet coefficients after lifting. | |
| be | extension method to use for boundary handling. |
References bwave::Wavelet::LiftingStep::apply(), liftingStep(), and steps().
| void bwave::Wavelet::invLift | ( | blitz::Array< tp_Type, 1 > & | s, | |
| blitz::Array< tp_Type, 1 > & | d, | |||
| ExtensionMode | be = CONSTANT_EXT | |||
| ) | const [inline] |
Apply the inverse lifting scheme on the data channels s and d.
| s | usually initialised with the scaling coefficients. | |
| d | usually initialised with the wavelet coefficients. | |
| be | extension method to use for boundary handling. |
References bwave::Wavelet::LiftingStep::apply(), liftingStep(), and steps().
| blitz::Array<double, 1> bwave::Wavelet::forwardFkt | ( | ) |
Get sampled values (i.e. the form) of the forward transformation scaling or wavelet function.
| size | number of samples. | |
| scale | the scale of the function, use positive values to generate scaling, negative values to generate wavelet functions. | |
| trans | the translation of the function. |
| blitz::Array<double, 1> bwave::Wavelet::inverseFkt | ( | ) |
Get sampled values (i.e. the form) of the inverse transformation scaling or wavelet function.
1.5.5