Denoising using Wavelet problem
조회 수: 3 (최근 30일)
이전 댓글 표시
The inbuilt MATLAB function "wdenoise" does not output the denoised signal. I used the following syntax
f8_clean = wdenoise(f8,5,'Wavelet','db4')
where "f8" is my noisy input signal, "5" is the level of decomposition, and "db4" is the chosen wavelet. The output signal "f8_clean" is supposed to be noise free to some extent, but it exactly matches with my input signal "f8".
What am i doing wrong?
댓글 수: 0
답변 (1개)
Walter Roberson
2022년 2월 9일
Perhaps your noise is just very small and your signal is very regular? And perhaps you only checked to 4 digits?
format long g
t = linspace(0,1/100, 2500);
f8 = sin(t*2*pi*17) + randn(size(t))/100000;
f8_clean = wdenoise(f8,5,'Wavelet','db4');
[maxdiff, maxidx] = max(abs(f8-f8_clean))
[f8(maxidx), f8_clean(maxidx)]
댓글 수: 4
Adam Reed
2022년 4월 9일
I am having the same problem. I check the MSE for the denoised signal and it is on the order of 10^-26.
Walter Roberson
2022년 4월 10일
What shows up if you plot the difference between the original signal and the denoised signal?
참고 항목
카테고리
Help Center 및 File Exchange에서 Signal Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


