一组数据x[i],对其进行滑动平均滤波,得到在matlab中实现的程序,要求运行完能出对比图的。
发布网友
发布时间:2022-04-24 23:59
我来回答
共2个回答
热心网友
时间:2023-10-15 21:47
clear
clc
x=randn(1,100);
%x为要滤波的信号
m=5;%表示平滑滤波窗长度,这是长度为奇数的情况
%前m/2,最后m/2个点没滤波,设为原来的值就行
for i=1:length(x)-m+1
y(i+(m-1)/2)=sum(x(i:i+m-1))/m;
end
figure(1);
plot(x,'r');hold on;plot(y,'g');hold off;
这是最简单的,不知道你需要基于什么算法的平滑滤波!有重心法的,算术滑动平均的,变参数双指数平滑方法,还有用插值的方式去平滑的
热心网友
时间:2023-10-15 21:47
matlab 有自带mvgavg函数,由于你的问题太宽泛,具体需求你可以自己看doc然后使用。