STIRA
0.1
|
parent class to compute wavelet decomposition / reconstruction For the moment just a fast Haar wavelet is available. Fast in the sense that the downsampling and upsampling are directly integrated in the computations and that no unnecessary coefficients are computed that are removed by the subsampling More...
#include <Wavelet.h>
Public Member Functions | |
Wavelet () | |
constructor | |
virtual | ~Wavelet () |
destructor | |
virtual bool | Decompose (ArrayGrid< double > *pSourceGrid, int nrScales)=0 |
decomposition More... | |
Pyramid< double > * | GetPyramid () |
Gets the pyramid with all the subbands. | |
virtual bool | Reconstruct (double threshold=0.0)=0 |
reconstructs the decomposed image More... | |
ArrayGrid< double > * | GetCopyOfReconstructedGrid () |
gets a copy of the grid after wavelket reconstruction Caller gets responsability to delete it after usage | |
int | GetNumberOfOrientations () |
gets the number of orientations | |
int | GetNumberOfScales () |
gets the number of scales | |
Protected Member Functions | |
void | Initialize (ArrayGrid< double > *pSourceGrid, int nrScales, int nrOrientations=3, bool createBands=false, bool isSubsampled=true, bool isLowestScaleSubsampled=true) |
Initializes data structures and variables for decomposition. More... | |
Protected Attributes | |
int | mNrOrientations |
Number of orientations; default 3 with classical wavelets (LH, HL and HH) | |
int | mNrScales |
Number of scales. | |
Pyramid< double > * | mpPyramid |
data structure for decomposed bands with wavelet coefficients | |
ArrayGrid< double > * | mpDecomposeReconstructGrid |
grid after deompose/reconstruct | |
int | mCurrentScale |
number of the scale being computed | |
WaveletFilterSet | mSet |
the wavelet filter taps | |
ArrayGrid< double > * | mpSourceGrid |
pointer to source data before decomposition | |
parent class to compute wavelet decomposition / reconstruction For the moment just a fast Haar wavelet is available. Fast in the sense that the downsampling and upsampling are directly integrated in the computations and that no unnecessary coefficients are computed that are removed by the subsampling
|
pure virtual |
decomposition
pSourceGrid | grid to be deomposed |
nrScales | nr of scales in the decomposition |
Implemented in stira::wavelet::NonSubsampledTransform, stira::wavelet::CriticallySubsampledTransform, and stira::wavelet::SubsampledTransform.
|
protected |
Initializes data structures and variables for decomposition.
pSourceGrid | input grid to be decomposed |
nrScales | the number of scales |
nrOrientations | the number of orientations |
createBands | flag whether we need to allocate the bands upon initialization |
isSubsampled | flag whether the deomposition is subsampled |
isLowestScaleSubsampled | flag whether the finest deomposed scale is subsampled (only used if isSubsampled is true) |
References stira::imagedata::Pyramid< T >::CreateBands().
Referenced by stira::wavelet::CriticallySubsampledTransform::Decompose(), and stira::wavelet::NonSubsampledTransform::Decompose().
|
pure virtual |
reconstructs the decomposed image
threshold | hard threshold for bandpass images, just for demo purposes |
Implemented in stira::wavelet::NonSubsampledTransform, stira::wavelet::CriticallySubsampledTransform, and stira::wavelet::SubsampledTransform.