Single-level discrete 1-D wavelet transform
[cA,cD] = dwt(X,
[cA,cD] = dwt(X,Lo_D,Hi_D)
[cA,cD] = dwt(...,'mode',MODE)
dwt command performs
a single-level one-dimensional wavelet decomposition. Compare this
may be more useful for your application. The decomposition is done
with respect to either a particular wavelet (
wfilters for more information)
or particular wavelet decomposition filters (
that you specify.
[cA,cD] = dwt(X, computes
the approximation coefficients vector
cA and detail
cD, obtained by a wavelet decomposition
of the vector
X. The character vector
the wavelet name.
[cA,cD] = dwt(X,Lo_D,Hi_D) computes the
wavelet decomposition as above, given these filters as input:
Lo_D is the decomposition low-pass
Hi_D is the decomposition high-pass
Hi_D must be
the same length.
lx = the length of
the length of the filters
length(cA) = length(cD)
= la where
la = ceil(lx/2), if the DWT
extension mode is set to periodization. For the other extension modes,
For more information about the different Discrete Wavelet Transform
extension modes, see
[cA,cD] = dwt(...,'mode',MODE) computes
the wavelet decomposition with the extension mode
MODE is a character vector containing
the desired extension mode.
[cA,cD] = dwt(x,'db1','mode','sym');
Obtain the level-1 DWT of the noisy Doppler signal using a wavelet name.
load noisdopp; [A,D] = dwt(noisdopp,'sym4'); [Lo_D,Hi_D] = wfilters('bior3.5','d'); [A,D] = dwt(noisdopp,Lo_D,Hi_D);
Obtain the level-1 DWT of the noisy Doppler signal using wavelet and scaling filters.
load noisdopp; [Lo_D,Hi_D] = wfilters('bior3.5','d'); [A,D] = dwt(noisdopp,Lo_D,Hi_D);
Starting from a signal s of length N, two sets of coefficients are computed: approximation coefficients CA1, and detail coefficients CD1. These vectors are obtained by convolving s with the low-pass filter Lo_D for approximation and with the high-pass filter Hi_D for detail, followed by dyadic decimation.
More precisely, the first step is
The length of each filter is equal to 2L. For signal of length N, the signals F and G are of length N + 2L − 1, and then the coefficients CA1 and CD1 are of length
To deal with signal-end effects involved by a convolution-based
algorithm, a global variable managed by
used. This variable defines the kind of signal extension mode used.
The possible options include zero-padding (used in the previous example)
and symmetric extension, which is the default mode.
For the same input, this
and the DWT block in the Signal
Processing Toolbox™ do not produce
the same results. The blockset is designed for real-time implementation
Toolbox™ software is designed for analysis, so they
produce handle boundary conditions and filter states differently.
To make the
output match the DWT block output, set the function boundary condition
to zero-padding by typing
dwtmode('zpd') at the MATLAB® command
prompt. To match the latency of the DWT block, which is implemented
using FIR filters, add zeros to the input of the
dwt function. The number of zeros you
add must be equal to half the filter length.
Daubechies, I. (1992), Ten lectures on wavelets, CBMS-NSF conference series in applied mathematics. SIAM Ed.
Mallat, S. (1989), “A theory for multiresolution signal decomposition: the wavelet representation,” IEEE Pattern Anal. and Machine Intell., vol. 11, no. 7, pp. 674–693.
Meyer, Y. (1990), Ondelettes et opérateurs, Tome 1, Hermann Ed. (English translation: Wavelets and operators, Cambridge Univ. Press. 1993.)