## Denoising by Donoho algorithm

on 15 Jun 2013

### Wayne King (view profile)

Hello I'm trying to apply Donoho formula on my noisy image to get the threshold value and apply it on details coefficients which i get it by using wavedec function please someone help me to get a results if some one have another idea for make my code useful please just tell me I'm waiting

clear all

n = prod( size(I) );

I=double(I);

[C,S] = wavedec2(Ib,2,'bior3.7');

DH = detcoef2('all',C,S,1);% extract details coefficient from level 1

delta = median( abs(DH) ) / 0.6745;

thr = delta * sqrt(2*log(n));

NC = wthcoef2('bior3.7',C,S,DH,thr,s) % i use the soft threshold

X = waverec2(C, S, 'bior3.7'); % how can i get my image after threshold

figure(2)

imagesc(X);axis off;colormap(gray)

## Products

No products are associated with this question.

### Wayne King (view profile)

on 15 Jun 2013
Edited by Wayne King

### Wayne King (view profile)

on 15 Jun 2013

You want to use the thresholded coefficients in the reconstruction. You also made a couple other errors in your code.

```    I = imread('cameraman.tif');
n = prod( size(I) );
I = double(I);
[C,S] = wavedec2(Ib,2,'bior3.7');
DH = detcoef2('all',C,S,1);% extract details coefficient from level 1
DH = DH(:);
delta = median( abs(DH) ) / 0.6745;
thr = delta * sqrt(2*log(n));
NC = wthcoef2('t',C,S,1,thr,'s'); % i use the soft threshold
X = waverec2(NC, S, 'bior3.7');```
```    figure;
imagesc(Ib); title('Noisy Image'); colormap gray;
figure;
imagesc(X); title('Denoised 1st level coeffs'); colormap gray;```

Soum

### Soum (view profile)

on 16 Jun 2013

THANK YOU AGAIN :) but you didn't understand me whatt does it mean the 't'??? NC = wthcoef2('t',C,S,1,thr,'s');

Walter Roberson

### Walter Roberson (view profile)

on 22 Jun 2013

The 't' is a literal string. http://www.mathworks.com/help/wavelet/ref/wthcoef2.html

```NC = wthcoef2('t',C,S,N,T,SORH) returns the detail coefficients obtained from the wavelet decomposition structure [C,S] by soft (if SORH ='s') or hard (if SORH ='h') thresholding (see wthresh for more information) defined in vectors N and T. N contains the detail levels to be thresholded and T the corresponding thresholds which are applied in the three detail orientations. N and T must be of the same length.
```
Soum

### Soum (view profile)

on 25 Jun 2013

Thanks Mr.Walter Yes I've read this http://www.mathworks.com/help/wavelet/ref/wthcoef2.html but my Problem is why we put the t ???? t is a literal string but what does it mean ?

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi