matlab 如何消除信号的高频分量

如题所述

第1个回答  2012-09-22

让信号过一个低通滤波器就行了~~~给你看看写的一个例子~~~~


% 产生用于测试的数据

fs=2000;

t=0:(1/fs):1;

fc1=20;

fc2=193;

signal=cos(2*pi*fc1*t)+0.2*cos(2*pi*fc2*t+2);

% 设计低通滤波器

d = fdesign.lowpass(50,100,1,40,fs);

h = design(d);

%对信号进行低通滤波并画出波形

newsignal=filter(h,signal);

figure;

subplot(211);

plot(t,signal);

title('滤波前信号');

subplot(212);

plot(t,newsignal);

title('滤波后信号');


出来的效果如下~~~~~~~

相似回答