lowpass filter function doesn't filter out data
显示 更早的评论
I have an ultrasonic signal (sample rate 199.2 MHz) with random noise which I want to filter out using the lowpass() built-in function in matlab. I want my cut-off frequency to be 9 MHz. In my code this looks like this:
FilteredSignal = lowpass(NoisySignal,9*1e6,1e6*199.2,'ImpulseResponse','iir');
The resulting signal I get after this seems to include even more frequencies instead of filtering out the noise.

How can I fix this?
Any help is much appreciated.
1 个评论
Hi Maria,
Is the plot on the right really the output of that lowpass command? Can't recereate that plot ...
load('NoisySignal')
Fs = 199.2e6; % Sampling Frequency (Hz)
N = numel(NoisySignal);
FilteredSignal = lowpass(NoisySignal,9*1e6,1e6*199.2,'ImpulseResponse','iir');
t = (0:N-1)/Fs;
figure
plot(subplot(121),t*1e6, NoisySignal),grid,xlim([0 9]);
plot(subplot(122),t*1e6, FilteredSignal),grid,xlim([0 9])
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Signal Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!






