idddtree2
Inverse dual-tree and double-density 2-D wavelet transform
Syntax
Description
Examples
Perfect Reconstruction Using Complex Oriented Dual-Tree Wavelet Filter Bank
Demonstrate perfect reconstruction of an image using a complex oriented dual-tree wavelet transform.
Load the image and obtain the complex oriented dual-tree wavelet transform down to level 5 using dddtree2
. Reconstruct the image using idddtree2
and demonstrate perfect reconstruction.
load woman; wt = dddtree2('cplxdt',X,5,'dtf2'); xrec = idddtree2(wt); max(max(abs(X-xrec)))
ans = 7.3896e-12
Input Arguments
wt
— Wavelet transform
structure
Wavelet transform, returned as a structure from dddtree2
with these fields:
type
— Type of wavelet decomposition (filter bank)
'dwt'
| 'ddt'
| 'realdt'
| 'cplxdt'
| 'realdddt'
| 'cplxdddt'
Type of wavelet decomposition (filter bank), specified as one
of 'dwt'
, 'ddt'
, 'realdt'
, 'cplxdt'
, 'realdddt'
,
or 'cplxdddt'
. 'dwt'
is the
critically sampled DWT. 'ddt'
produces a double-density
wavelet transform with one scaling and two wavelet filters for both
row and column filtering. 'realdt'
and 'cplxdt'
produce
oriented dual-tree wavelet transforms consisting of two and four separable
wavelet transforms. 'realdddt'
and 'cplxdddt'
produce
double-density dual-tree wavelet transforms consisting of two and
four separable wavelet transforms.
level
— Level of the wavelet decomposition
positive integer
Level of the wavelet decomposition, specified as a positive integer.
filters
— Decomposition (analysis) and reconstruction (synthesis) filters
structure
Decomposition (analysis) and reconstruction (synthesis) filters, specified as a structure with these fields:
Fdf
— First-stage analysis filters
matrix | cell array
First-stage analysis filters, specified as an N-by-2 or N-by-3 matrix for single-tree wavelet transforms, or a 1-by-2 cell array of two N-by-2 or N-by-3 matrices for dual-tree wavelet transforms. The matrices are N-by-3 for the double-density wavelet transforms. For an N-by-2 matrix, the first column of the matrix is the scaling (lowpass) filter and the second column is the wavelet (highpass) filter. For an N-by-3 matrix, the first column of the matrix is the scaling (lowpass) filter and the second and third columns are the wavelet (highpass) filters. For the dual-tree transforms, each element of the cell array contains the first-stage analysis filters for the corresponding tree.
Df
— Analysis filters for levels > 1
matrix | cell array
Analysis filters for levels > 1, specified as an N-by-2 or N-by-3 matrix for single-tree wavelet transforms, or a 1-by-2 cell array of two N-by-2 or N-by-3 matrices for dual-tree wavelet transforms. The matrices are N-by-3 for the double-density wavelet transforms. For an N-by-2 matrix, the first column of the matrix is the scaling (lowpass) filter and the second column is the wavelet (highpass) filter. For an N-by-3 matrix, the first column of the matrix is the scaling (lowpass) filter and the second and third columns are the wavelet (highpass) filters. For the dual-tree transforms, each element of the cell array contains the analysis filters for the corresponding tree.
Frf
— First-level reconstruction filters
matrix | cell array
First-level reconstruction filters, specified as an N-by-2 or N-by-3 matrix for single-tree wavelet transforms, or a 1-by-2 cell array of two N-by-2 or N-by-3 matrices for dual-tree wavelet transforms. The matrices are N-by-3 for the double-density wavelet transforms. For an N-by-2 matrix, the first column of the matrix is the scaling (lowpass) filter and the second column is the wavelet (highpass) filter. For an N-by-3 matrix, the first column of the matrix is the scaling (lowpass) filter and the second and third columns are the wavelet (highpass) filters. For the dual-tree transforms, each element of the cell array contains the first-stage synthesis filters for the corresponding tree.
Rf
— Reconstruction filters for levels > 1
matrix | cell array
Reconstruction filters for levels > 1, specified as an N-by-2 or N-by-3 matrix for single-tree wavelet transforms, or a 1-by-2 cell array of two N-by-2 or N-by-3 matrices for dual-tree wavelet transforms. The matrices are N-by-3 for the double-density wavelet transforms. For an N-by-2 matrix, the first column of the matrix is the scaling (lowpass) filter and the second column is the wavelet (highpass) filter. For an N-by-3 matrix, the first column of the matrix is the scaling (lowpass) filter and the second and third columns are the wavelet (highpass) filters. For the dual-tree transforms, each element of the cell array contains the first-stage analysis filters for the corresponding tree.
cfs
— Wavelet transform coefficients
cell array of matrices
Wavelet transform coefficients, specified as a 1-by-(level
+1)
cell array of matrices. The size and structure of the matrix elements
of the cell array depend on the type of wavelet transform as follows:
'dwt'
—cfs{j}(:,:,d)
j = 1,2,...
level
is the level.d = 1,2,3 is the orientation.
cfs{level+1}(:,:)
are the lowpass, or scaling, coefficients.
'ddt'
—cfs{j}(:,:,d)
j = 1,2,...
level
is the level.d = 1,2,3,4,5,6,7,8 is the orientation.
cfs{level+1}(:,:)
are the lowpass, or scaling, coefficients.
'realddt'
—cfs{j}(:,:,d,k)
j = 1,2,...
level
is the level.d = 1,2,3 is the orientation.
k = 1,2 is the wavelet transform tree.
cfs{level+1}(:,:)
are the lowpass, or scaling, coefficients.
'cplxdt'
—cfs{j}(:,:,d,k,m)
j = 1,2,...
level
is the level.d = 1,2,3 is the orientation.
k = 1,2 is the wavelet transform tree.
m = 1,2 are the real and imaginary parts.
cfs{level+1}(:,:)
are the lowpass, or scaling, coefficients..
'realdddt'
—cfs{j}(:,:,d,k)
j = 1,2,...
level
is the level.d = 1,2,3 is the orientation.
k = 1,2 is the wavelet transform tree.
cfs{level+1}(:,:)
are the lowpass, or scaling, coefficients.
'cplxdddt'
—cfs{j}(:,:,d,k,m)
j = 1,2,...
level
is the level.d = 1,2,3 is the orientation.
k = 1,2 is the wavelet transform tree.
m = 1,2 are the real and imaginary parts.
cfs{level+1}(:,:)
are the lowpass, or scaling, coefficients.
Output Arguments
xrec
— Synthesized 2-D image
matrix
Synthesized image, returned as a matrix.
Data Types: double
Version History
Introduced in R2013b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)