input of DWT and output of IDWT not same?
조회 수: 1 (최근 30일)
이전 댓글 표시
I tried to test out the dwt and idwt, before i used this code i've build my own formula to work on dwt and idwt. But i figured that my own formula for dwt and idwt the reconstructed value are not the same as the input. so i tried with the built in function.
A=wavread('tes.wav');
leftchanel=A(1:size(A),1);
[cA,cD] = dwt(leftchanel,'haar');
X = idwt(cA,cD,'haar');
check=leftchanel-X;
from this code i got check not all value are 0, that mean leftchanel is not the same as X ( the input for dwt and the output of idwt are mostly same but some are different ). The main question from me is "Aren't the after we decompose(DWT) and reconstruct(IDWT) the input and the output should be same (exactly same)?"
댓글 수: 0
답변 (1개)
Wayne King
2013년 3월 13일
편집: Wayne King
2013년 3월 13일
When you say they are not zero how large is the difference? You have to keep in mind that there may be small numerical differences. For example:
x = randn(1024,1);
[A,D] = dwt(x,'haar');
xrec = idwt(A,D,'haar');
max(abs(x-xrec))
For the above particular random signal, the largest absolute value of the difference is 10^{-16}. That is as equal as you can get.
댓글 수: 3
참고 항목
카테고리
Help Center 및 File Exchange에서 Discrete Multiresolution Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!