Demonstrate perfect reconstruction of a signal using a dual-tree double-density wavelet transform.

Load the noisy Doppler signal. Obtain the dual-tree double-density wavelet transform down to level 5. Invert the transform and demonstrate perfect reconstruction.

Wavelet transform, returned as a structure from dddtree with these fields:

type — Type of wavelet decomposition (filter bank) 'dwt' | 'ddt' | 'cplxdt' | 'cplxdddt'

Type of wavelet decomposition (filter bank), specified as one
of 'dwt', 'ddt', 'cplxdt',
or 'cplxdddt'. The type,'dwt',
gives a critically sampled discrete wavelet transform. The other types
are oversampled wavelet transforms. 'ddt' is a
double-density wavelet transform, 'cplxdt' is a
dual-tree complex wavelet transform, and 'cplxdddt' is
a double-density dual-tree complex wavelet transform.

level — Level of wavelet decomposition positive integer

Level of 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:

First-stage analysis filters, specified as an N-by-2
or N-by-3 matrix for single-tree wavelet transforms,
or a 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.

Analysis filters for levels > 1, specified as an N-by-2
or N-by-3 matrix for single-tree wavelet transforms,
or a 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.

First-level reconstruction filters, specified as an N-by-2
or N-by-3 matrix for single-tree wavelet transforms,
or a 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.

Reconstruction filters for levels > 1, specified as an N-by-2
or N-by-3 matrix for single-tree wavelet transforms,
or a 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 synthesis 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}

j = 1,2,... level is the level.

cfs{level+1} are the lowpass, or
scaling, coefficients.

'ddt' — cfs{j}(:,:,k)

j = 1,2,... level is the level.

k = 1,2 is the wavelet filter.

cfs{level+1}(:,:) are the lowpass,
or scaling, coefficients.

'cplxdt' — cfs{j}(:,:,m)

j = 1,2,... level is the level.

m = 1,2 are the real and imaginary parts.

cfs{level+1}(:,:) are the lowpass,
or scaling, coefficients.

'cplxdddt' — cfs{j}(:,:,k,m)

j = 1,2 level is the level.

k = 1,2 is the wavelet filter.

m = 1,2 are the real and imaginary parts.

cfs{level+1}(:,:) are the lowpass,
or scaling, coefficients.

Synthesized 1-D signal, returned as a vector. The row or column
orientation of xrec depends on the row or column
orientation of the 1-D signal input to dddtree.

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.