wavedec2 performs a 2D multilevel wavelet decomposition of an input matrix X. It returns the wavelet coefficients as a vector C and bookkeeping information in a matrix S. The decomposition can be done to N levels using either a named wavelet filter or by specifying the low-pass and high-pass filters. C contains the approximation and detail coefficients organized by level, and S provides the size of each subset of coefficients.
1 of 3
Download to read offline
More Related Content
Webdec2
1. wavedec2
Multilevel 2-D wavelet decomposition
collapse all in page
Syntax
[C,S] = wavedec2(X,N,'wname')
[C,S] = wavedec2(X,N,Lo_D,Hi_D)
Description
wavedec2 is a two-dimensional wavelet analysis function.
[C,S] = wavedec2(X,N,'wname') returns the wavelet decomposition of the matrix X at level N, using the wavelet named in string'wname' (see wfilters for
more information).
Outputs are the decomposition vector C and the corresponding bookkeeping matrix S.
N must be a strictly positive integer (see wmaxlev for more information).
Instead of giving the wavelet name, you can give the filters.
For [C,S] = wavedec2(X,N,Lo_D,Hi_D), Lo_D is the decomposition low-pass filter and Hi_D is the decomposition high-pass filter.
Vector C is organized as
C = [ A(N) | H(N) | V(N) | D(N) | ...
H(N-1) | V(N-1) | D(N-1) | ... | H(1) | V(1) | D(1) ].
where A, H, V, D, are row vectors such that
A = approximation coefficients
H = horizontal detail coefficients
V = vertical detail coefficients
D = diagonal detail coefficients
Each vector is the vector column-wise storage of a matrix.
Matrix S is such that
S(1,:) = size of approximation coefficients(N).
S(i,:) = size of detail coefficients(N-i+2) for i = 2, ...N+1 and S(N+2,:) = size(X).
Examples
% The current extension mode is zero-padding (see dwtmode).
% Load original image.
load woman;
% X contains the loaded image.
% Perform decomposition at level 2
% of X using db1.
[c,s] = wavedec2(X,2,'db1');
% Decomposition structure organization.
sizex = size(X)
sizex =
256 256
sizec = size(c)
sizec =
1 65536
2. val_s = s
val_s =
64 64
64 64
128 128
256 256
More About
collapse all
Tips
When X represents an indexed image, X, as well as the output arrays cA,cH,cV, and cD are m-by-n matrices. When X represents a truecolor image, it is an m-by-n-by-3 array,
where each m-by-n matrix represents a red, green, or blue color plane concatenated along the third dimension. The size of vector C and the size of matrix S depend on the type
of analyzed image.
For a truecolor image, the decomposition vector C and the corresponding bookkeeping matrix S can be represented as follows.
For more information on image formats, see the image and imfinfo reference pages.
Algorithms
For images, an algorithm similar to the one-dimensional case is possible for two-dimensional wavelets and scaling functions obtained from one-dimensional ones by tensor
product.
This kind of two-dimensional DWT leads to a decomposition of approximation coefficients at level j in four components: the approximation at level j+1, and the details in three
orientations (horizontal, vertical, and diagonal).
The following chart describes the basic decomposition step for images:
3. So, for J=2, the two-dimensional wavelet tree has the form
References
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. 674693.
Meyer, Y. (1990), Ondelettes et op辿rateurs, Tome 1, Hermann Ed. (English translation: Wavelets and operators, Cambridge Univ. Press.