De-noising or compression

`[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('gbl',X,`

* 'wname'*,N,THR,SORH,KEEPAPP)

wdencmp('gbl',C,L,

`'wname'`

[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',X,

`'wname'`

[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',C,L,

`'wname'`

[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',X,

`'wname'`

[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',C,L,

`'wname'`

`wdencmp`

is a one- or
two-dimensional de-noising and compression-oriented function.

`wdencmp`

performs a de-noising
or compression process of a signal or an image, using wavelets.

`[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('gbl',X,`

returns
a de-noised or compressed version * 'wname'*,N,THR,SORH,KEEPAPP)

`XC`

of input signal `X`

(one-
or two-dimensional) obtained by wavelet coefficients thresholding
using global positive threshold `THR`

.Additional output arguments `[CXC,LXC]`

are
the wavelet decomposition structure of `XC`

(see `wavedec`

or `wavedec2`

for
more information). `PERF0`

and `PERFL2`

are *L ^{2}* -norm
recovery and compression score in percentage.

`PERFL2`

= 100 * (vector-norm of `CXC`

/
vector-norm of `C`

)^{2} if `[C,L]`

denotes
the wavelet decomposition structure of `X`

.

If `X`

is a one-dimensional signal and * 'wname'* an
orthogonal wavelet,

`PERFL2`

is reduced to$$\frac{100{\Vert XC\Vert}^{2}}{{\Vert X\Vert}^{2}}$$

Wavelet decomposition is performed at level `N`

and * 'wname'* is
a string containing wavelet name (see

`wmaxlev`

and `wfilters`

for more
information). `SORH`

(`'s'`

or `'h'`

)
is for soft or hard thresholding (see `wthresh`

for
more information). If `KEEPAPP`

= 1, approximation
coefficients cannot be thresholded, otherwise it is possible. `wdencmp('gbl',C,L,`

has
the same output arguments, using the same options as above, but obtained
directly from the input wavelet decomposition structure * 'wname'*,N,THR,SORH,KEEPAPP)

`[C,L]`

of
the signal to be de-noised or compressed, at level `N`

and
using `'wname'`

For the one-dimensional case and `'lvd'`

option, ```
[XC,CXC,LXC,PERF0,PERFL2]
= wdencmp('lvd',X,
```

or * 'wname'*,N,THR,SORH)

```
[XC,CXC,LXC,PERF0,PERFL2]
= wdencmp('lvd',C,L,
````'wname'`

,N,THR,SORH)

have
the same output arguments, using the same options as above, but allowing
level-dependent thresholds contained in vector `THR`

(`THR`

must
be of length `N`

). In addition, the approximation
is kept. Note that, with respect to `wden`

(automatic
de-noising), `wdencmp`

allows
more flexibility and you can implement your own de-noising strategy.For the two-dimensional case and `'lvd'`

option, ```
[XC,CXC,LXC,PERF0,PERFL2]
= wdencmp('lvd',X,
```

or * 'wname'*,N,THR,SORH)

```
[XC,CXC,LXC,PERF0,PERFL2]
= wdencmp('lvd',C,L,
````'wname'`

,N,THR,SORH)

.`THR`

must be a matrix 3 by `N`

containing
the level-dependent thresholds in the three orientations, horizontal,
diagonal, and vertical.

Like denoising, the compression procedure contains three steps:

Decomposition.

Detail coefficient thresholding. For each level from 1 to

`N`

, a threshold is selected and hard thresholding is applied to the detail coefficients.Reconstruction.

The difference with the denoising procedure is found in step 2.

DeVore, R.A.; B. Jawerth, B.J. Lucier (1992), "Image
compression through wavelet transform coding," *IEEE
Trans. on Inf. Theory*, vol. 38, No 2, pp. 719–746.

Donoho, D.L. (1993), "Progress in wavelet analysis and WVD: a ten minute tour," in Progress in wavelet analysis and applications, Y. Meyer, S. Roques, pp. 109–128. Frontières Ed.

Donoho, D.L.; I.M. Johnstone (1994), "Ideal spatial adaptation
by wavelet shrinkage," *Biometrika*, vol.
81, pp. 425–455.

Donoho, D.L.; I.M. Johnstone, G. Kerkyacharian, D. Picard (1995),
"Wavelet shrinkage: asymptopia," *Jour. Roy.
Stat. Soc.*,* series B*, vol. 57 no.
2, pp. 301–369.

Donoho, D.L.; I.M. Johnstone, "Ideal de-noising in an orthonormal basis chosen from a library of bases," C.R.A.S. Paris, t. 319, Ser. I, pp. 1317–1322.

Donoho, D.L. (1995), "De-noising by soft-thresholding," *IEEE
Trans. on Inf. Theory*, 41, 3, pp. 613–627.

Was this topic helpful?