This class computes the continuous wavelet transformation using a marr wavelet.
More...
|
| ContinuousWaveletTransformNumIntegration () |
| Constructor. More...
|
|
| ~ContinuousWaveletTransformNumIntegration () override |
| Destructor. More...
|
|
template<typename InputPeakIterator > |
void | transform (InputPeakIterator begin_input, InputPeakIterator end_input, float resolution) |
| Computes the wavelet transform of a given profile data interval [begin_input,end_input) More...
|
|
void | init (double scale, double spacing) override |
| Perform necessary preprocessing steps like tabulating the Wavelet. More...
|
|
| ContinuousWaveletTransform () |
| Constructor. More...
|
|
virtual | ~ContinuousWaveletTransform () |
| Destructor. More...
|
|
const std::vector< Peak1D > & | getSignal () const |
| Non-mutable access to the wavelet transform of the signal. More...
|
|
std::vector< Peak1D > & | getSignal () |
| Mutable access to the wavelet transform of the signal. More...
|
|
void | setSignal (const std::vector< Peak1D > &signal) |
| Mutable access to the wavelet transform of the signal. More...
|
|
const std::vector< double > & | getWavelet () const |
| Non-mutable access to the wavelet. More...
|
|
std::vector< double > & | getWavelet () |
| Mutable access to the wavelet. More...
|
|
void | setWavelet (const std::vector< double > &wavelet) |
| Mutable access to the signal. More...
|
|
double | getScale () const |
|
double & | getScale () |
| Mutable access to the spacing of raw data. More...
|
|
void | setScale (double scale) |
| Mutable access to the spacing of raw data. More...
|
|
double | getSpacing () const |
|
double & | getSpacing () |
| Mutable access to the spacing of raw data. More...
|
|
void | setSpacing (double spacing) |
| Mutable access to the spacing of raw data. More...
|
|
SignedSize | getLeftPaddingIndex () const |
| Non-mutable access to the position where the signal starts (in the interval [0,end_left_padding_) are the padded zeros) More...
|
|
SignedSize & | getLeftPaddingIndex () |
| Mutable access to the position where the signal starts. More...
|
|
void | setLeftPaddingIndex (const SignedSize end_left_padding) |
| Mutable access to position where the signal starts. More...
|
|
SignedSize | getRightPaddingIndex () const |
| Non-mutable access to the position where the signal ends (in the interval (begin_right_padding_,end] are the padded zeros) More...
|
|
SignedSize & | getRightPaddingIndex () |
| Mutable access to the position where the signal starts. More...
|
|
void | setRightPaddingIndex (const SignedSize begin_right_padding) |
| Mutable access to position where the signal starts. More...
|
|
SignedSize | getSignalLength () const |
| Non-mutable access to signal length [end_left_padding,begin_right_padding]. More...
|
|
SignedSize & | getSignalLength () |
| Mutable access to signal length [end_left_padding,begin_right_padding]. More...
|
|
void | setSignalLength (const SignedSize signal_length) |
| Mutable access to signal length [end_left_padding,begin_right_padding]. More...
|
|
int | getSize () const |
| Non-mutable access to signal length including padded zeros [0,end]. More...
|
|
double | operator[] (unsigned int i) |
| Yields the signal (intensity) at position i. More...
|
|
double | operator[] (unsigned int i) const |
|
|
template<typename InputPeakIterator > |
double | integrate_ (InputPeakIterator x, InputPeakIterator first, InputPeakIterator last) |
| Computes the convolution of the wavelet and the profile data at position x with resolution = 1. More...
|
|
double | integrate_ (const std::vector< double > &processed_input, double spacing_data, int index) |
| Computes the convolution of the wavelet and the profile data at position x with resolution > 1. More...
|
|
double | marr_ (const double x) const |
| Computes the Marr wavelet at position x. More...
|
|
template<typename InputPeakIterator > |
double | getInterpolatedValue_ (double x, InputPeakIterator it_left) |
|
This class computes the continuous wavelet transformation using a marr wavelet.
The convolution of the signal and the wavelet is computed by numerical integration.
Perform necessary preprocessing steps like tabulating the Wavelet.
Build a Marr-Wavelet for the current spacing and scale. We store the wavelet in the vector<double> wavelet_;
We only need a finite amount of points since the Marr function decays fast. We take 5*scale, since at that point the wavelet has dropped to ~ -10^-4
Reimplemented from ContinuousWaveletTransform.