# Question about wavelet and reconstruction

1 view (last 30 days)
tanglaoya on 20 Sep 2016
Commented: tanglaoya on 6 Oct 2016
Dear all, I am studying wavelet and focusing on the signal reconstruction. I noticed that the function 'upcoef' just work for the reconstruction: http://cn.mathworks.com/help/wavelet/ref/upcoef.html
At the end of this page, I also noticed that upcoef is equivalent to an N time repeated use of the inverse wavelet transform.
Then I tried to test it with the following code:
t=0:2*pi/999:2*pi;
b0=sin(t);
figure,plot(b0);
[cA,cD]=dwt(b0,'db4',3);
D = upcoef('d',cD,'db4',3,length(b0));
figure,plot(D);
[cA,cD]=dwt(b0,'db4');
[cA,cD]=dwt(cA,'db4');
[cA,cD]=dwt(cA,'db4');
D=idwt([],cD,'db4');
D=idwt([],D,'db4');
D=idwt([],D,'db4',length(b0));
figure,plot(D)
However, results by two methods are different. Could anyone tell me what's wrong in the code?
Thanks, Tang Laoya
##### 3 CommentsShowHide 2 older comments
tanglaoya on 20 Sep 2016
Not only the roundoff error. I guess there is something wrong in the code. Thanks

Sign in to comment.

### Answers (1)

Wayne King on 4 Oct 2016
One problem you are having is that DWT does not take the 3 input you are using. DWT only does a single-level wavelet transform unlike wavedec. The 3 input to DWT above is NOT being used. It has no effect on the output.
##### 1 CommentShowHide None
tanglaoya on 6 Oct 2016
Hi Wayne, Thanks for your kindly reply. I did use wavedec in my latter comment, but the results are the same.

Sign in to comment.

### Categories

Find more on Signal Analysis in Help Center and File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by