For many natural signals, the wavelet transform is a more
effective tool than the Fourier transform.
The wavelet transform provides a multiresolution
representation using a set of analyzing functions
that are dilations and translations of a few
These web pages describe an implementation in Matlab of
the discrete wavelet transforms (DWT).
The programs for 1D, 2D, and 3D signals are described
separately, but they all follow the same structure.
Examples of how to use the programs for 1D signals, 2D images
and 3D video clips are also described.
As discrete wavelet transform are based on perfect
reconstruction two-channel filter banks, the programs below
for the (forward/inverse) DWT call programs for
(analysis/synthesis) filter banks.
The DWT consists of recursively applying a 2-channel filter
bank - the successive decomposition is performed only on the
In each section below, the 2-channel filter banks are
The application of the wavelet transform to noise attenuation,
image enhancement, and motion detection is also described below.
These examples are accompanied by Matlab programs to illustrate
how the DWT programs are used.
The wavelet transform comes in several forms.
The critically-sampled form of the wavelet transform provides
the most compact representation, however, it has several
For example, it lacks the shift-invariance property, and in
multiple dimensions it does a poor job of distinguishing
orientations, which is important in image processing.
For these reasons, it turns out that for some applications
improvements can be obtained by using an expansive
wavelet transform in place of a critically-sampled one.
(An expansive transform is one that converts an N-point signal
into M coefficients with M > N.)
There are several kinds of expansive DWTs; here we describe
and provide an implementation of the dual-tree complex
discrete wavelet transform.
The dual-tree complex wavelet transform overcomes these
limitations - it is nearly shift-invariant and is oriented
in 2D [Kin-2002].
The 2D dual-tree wavelet transform produces six subbands
at each scale, each of which are strongly oriented at
In addition to being spatially oriented, the 3D dual-tree
wavelet transform is also motion selective - each subband
is associated with motion in a specific direction.
The 3D dual-tree isolates in its subbands motion in distinct
You are visitor