mdwtrec

Multisignal 1-D wavelet reconstruction

Description

example

x = mdwtrec(dec) reconstructs the original matrix of signals from the wavelet decomposition structure dec.

x = mdwtrec(dec,idxsig) reconstructs the signals whose indices are specified in the vector idxsig.

y = mdwtrec(dec,type,lev) extracts or reconstructs the detail or approximation coefficients at level lev depending on the value of type.

a = mdwtrec(dec,'a') returns the reconstructed approximation coefficients.

d = mdwtrec(dec,'d') returns a matrix containing the sum of all the details, so that x = a + d.

ca = mdwtrec(dec,'ca') returns a matrix containing the extracted approximation coefficients.

cd = mdwtrec(dec,'cd',mode) returns a matrix containing all the detail coefficients concatenated in the order specified by mode.

cfs = mdwtrec(dec,'cfs',mode) returns a matrix containing all the coefficients in the order specified by mode.

y = mdwtrec(___,idxsig) extracts or reconstructs the coefficients whose indices are specified in the vector idxsig.

Examples

collapse all

This example shows how to reconstruct a multisignal and a user-specified signal within the multisignal.

Load the 23 channel EEG data Espiga3 [4]. The channels are arranged column-wise. The data is sampled at 200 Hz.

load Espiga3
size(Espiga3)
ans = 1×2

   995    23

Perform a decomposition at level 2 using the db2 wavelet.

dec = mdwtdec('c',Espiga3,2,'db2');

Reconstruct the original matrix of signals using the decomposition structure dec.

XR = mdwtrec(dec);

Compute the reconstruction error.

errREC = max(abs(Espiga3(:)-XR(:)))
errREC = 3.5431e-10

Reconstruct the original signal at index 17, the corresponding approximation at level 2, and details at levels 1 and 2.

idx = 17;
Y = mdwtrec(dec,idx);
A2 = mdwtrec(dec,'a',2,idx);
D2 = mdwtrec(dec,'d',2,idx);
D1 = mdwtrec(dec,'d',1,idx);

Compute the reconstruction error for signal 17.

errREC = max(abs(Y-A2-D2-D1))
errREC = 4.9542e-18

Input Arguments

collapse all

Wavelet decomposition of a multisignal, specified as a structure with the following fields:

  • dirDec — Direction indicator: 'r' (row) or 'c' (column)

  • level — Level of wavelet decomposition

  • wname — Wavelet name

  • dwtFilters — Structure with four fields: LoD, HiD, LoR, and HiR

  • dwtEXTM — DWT extension mode

  • dwtShift — DWT shift parameter (0 or 1)

  • dataSize — Size of x

  • ca — Approximation coefficients at level lev

  • cd — Cell array of detail coefficients, from level 1 to level lev

The format of dec matches the output of mdwtdec.

Indices of signals to reconstruct, specified as a positive integer-valued vector.

Example: If S is a matrix of 100 signals and dec = mdwtdec('r',S,3,'db2'), then mdwtrec(dec,[1 20 98]) reconstructs the signals whose row indices are 1, 20, and 98.

Level of coefficients to extract or reconstruct, specified as a nonnegative integer.

  • If type is 'a' or 'ca', then lev must be an integer in the interval [0, levdec], where levdec = dec.level.

  • If type is 'd' or 'cd', then lev must be an integer in the interval [1, levdec], where levdec = dec.level.

Output type, specified as one of the following:

  • 'cd' – detail coefficients of level lev are extracted

  • 'd' – detail coefficients of level lev are reconstructed

  • 'ca' – approximation coefficients of level lev are extracted

  • 'a' – approximation coefficients of level lev are reconstructed

Order of concatenation, specified as 'descend' or 'ascend'. For mode = 'descend', the coefficients are concatenated from level levdec to level 1, where levdec = dec.level. If mode = 'ascend', the coefficients are concatenated from level 1 to level levdec. The concatenation is made row-wise if dec.dirDEC = 'r' or column-wise if dec.dirDEC = 'c'.

Output Arguments

collapse all

Reconstructed signals, returned as a real-valued matrix.

Decomposition coefficients, returned as a real-valued matrix, depending on type:

  • 'cd' – extracted detail coefficients

  • 'ca' – extracted approximation coefficients

  • 'd' – reconstructed detail coefficients

  • 'a' – reconstructed approximation coefficients

Reconstructed approximation coefficients, returned as a real-valued matrix.

Reconstructed detail coefficients, returned as a real-valued matrix.

Extracted approximation coefficients, returned as a real-valued matrix.

Extracted detail coefficients, returned as a real-valued matrix.

Extracted approximation and detail coefficients, returned as a real-valued matrix.

References

[1] Daubechies, I. Ten Lectures on Wavelets. CBMS-NSF Regional Conference Series in Applied Mathematics. Philadelphia, PA: Society for Industrial and Applied Mathematics, 1992.

[2] Mallat, S. G. “A Theory for Multiresolution Signal Decomposition: The Wavelet Representation.” IEEE Transactions on Pattern Analysis and Machine Intelligence. Vol. 11, Issue 7, July 1989, pp. 674–693.

[3] Meyer, Y. Wavelets and Operators. Translated by D. H. Salinger. Cambridge, UK: Cambridge University Press, 1995.

[4] Mesa, Hector. “Adapted Wavelets for Pattern Detection.” In Progress in Pattern Recognition, Image Analysis and Applications, edited by Alberto Sanfeliu and Manuel Lazo Cortés, 3773:933–44. Berlin, Heidelberg: Springer Berlin Heidelberg, 2005. https://doi.org/10.1007/11578079_96.

Extended Capabilities

See Also

|

Introduced in R2007a