Compute a stationary wavelet transform:
The resulting
DiscreteWaveletData represents a tree of transform coefficients:
The inverse transform reconstructs the input:
Useful properties can be extracted from the
DiscreteWaveletData object:
Get a full list of properties:
Get data and coefficient dimensions:
Use
Normal to get all wavelet coefficients explicitly:
Also use
All as an argument to get all coefficients:
Use
Automatic to get only the coefficients used in the inverse transform:
Use the

or

to find out what wavelet coefficients are available:
Extract specific coefficient arrays:
Extract several wavelet coefficients corresponding to the list of wavelet index specifications:
Extract all coefficients whose wavelet indexes match a pattern:
The
Automatic coefficients are used by default in functions like
WaveletListPlot:
Use a higher refinement level to increase the frequency resolution:
With a smaller refinement level, more of the signal energy is left in

:
With further refinement,

is resolved into further components:
Compute the stationary wavelet transform using different wavelet families:
Compare the coefficients:
Use different families of wavelets to capture different features:
Plot the coefficients over a common horizontal axis using
WaveletListPlot:
Plot against a common vertical axis:
Visualize coefficients as a function of time and refinement level using
WaveletScalogram:
The coefficient indexes appear as tooltips when the mouse pointer is moved over a coefficient:
Constant data:
All coefficients are small except coarse coefficients

:
Data oscillating at the highest resolvable frequency (Nyquist frequency):
Only the first detail coefficient

is nonzero:
Data with large discontinuities:
Coarse coefficients

have the same large-scale structure as the data:
Detail coefficients are sensitive to discontinuities:
Data with both spatial and frequency structure:
Coarse coefficients

track the local mean of the data:
The first detail coefficient identifies the oscillatory region:
All coefficients on a common vertical axis:
Compute a two-dimensional stationary wavelet transform:
View the tree of wavelet coefficients:
Inverse transform to get back the original signal:
Use

to visualize each coefficient as a
MatrixPlot:
Visualize wavelet coefficients at higher refinement levels:
In two dimensions, the vector of filtering operations in each direction can be computed:
Interpreting these vectors as binary digit expansions, you get wavelet index numbers:
Get the low-pass and high-pass filters for a Haar wavelet:
The resulting 2D filters are outer products of filters in the two directions:
Wavelet transform of step data:
Data with a vertical discontinuity:
Only the vertical detail coefficients, wavelet index

, are nonzero:
Data with horizontal discontinuity:
Only the horizontal detail coefficients, wavelet index

, are nonzero:
Compute a three-dimensional stationary wavelet transform:
Tree view of all coefficients:
Inverse transform to get back the original signal:
Wavelet transform of a three-dimensional cross array:
Visualize wavelet coefficients:
Energy of the original data is conserved within the transformed coefficients:
Transform an
Image object:
The inverse transform yields a reconstructed
Image object:
Wavelet coefficients are normally given as arrays of data for each image channel:
Number of channels and dimensions of the original image are the same:
Get all coefficients as
Image objects instead of arrays of data:
Get raw
Image objects with no rescaling of color levels:
Get the inverse transform of the

coefficient as an
Image object:
Transform a
Sound object:
The inverse transform yields a reconstructed
Sound object:
By default, coefficients are given as lists of data for each sound channel:
Number of channels and data length in the original sound are the same:
Get the

coefficient as a
Sound object:
Inverse transform of

coefficient as a
Sound object:
Browse all coefficients using a
MenuView: