Wavelet denoising on low pass filtered signal
9 ビュー (過去 30 日間)
古いコメントを表示
Egor Liokumovitch
2022 年 11 月 23 日
回答済み: Egor Liokumovitch
2022 年 11 月 24 日
Hello,
I'm having an issue with the wdenoise function.
I'm sampling essensially white noise, hardware filtered to 200 MHz, at 2.5 GS/s with an oscilloscope.
I'm then denoising this data by using the following function:
wdenoise(x, 15,'Wavelet', 'sym8', 'DenoisingMethod','UniversalThreshold', ...
'ThresholdRule','Soft', 'NoiseEstimate','LevelIndependent');
It works great:

The next step is to first filter the 200 MHz signal using a digital low pass filter to 20 MHz:
df = designfilt('lowpassfir','FilterOrder',110,'CutoffFrequency',20e6/(2.5e9/2));
D = mean(grpdelay(df));
y = filter(df,[x zeros(D,1)']);
y = y(D+1:end);
The filter works great:

Now comes the problem - I'm trying to wdenoise the filterd signal, and instead of getting at least the same picture as with the 200 MHz after denoising, the signal after LPF and the signal after denoising said filtered signal are literally the same waveform.
I'm not a DSP expert and not hugely familiar in the inner workings of each function, so I'm most likely missing something. Please help.
4 件のコメント
Mathieu NOE
2022 年 11 月 23 日
so if I understand correctly the matlab wavelet denoising is not giving you the expected results (as I can see in your original post)
採用された回答
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Denoising についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




