- 积分
- 26283
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-6-1
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
原文地址:matlab 五点三次平滑算法作者:deman
http://www.ilovematlab.cn/thread-71818-1-1.html
这里提供一个函数mean5_3(五点三次平滑算法)对数据进行平滑处理:
load V1.mat
subplot 211; plot(V1); ylim([2000 7000]); grid;
y=mean5_3(V1,5);
subplot 212; plot(y); ylim([2000 7000]); grid;
function y=mean5_3(x,m)
% x为被处理的数据
% m 为循环次数
n=length(x);
a=x;
for k=1: m
b(1) = (69*a(1) +4*(a(2) +a(4)) -6*a(3) -a(5)) /70;
b(2) = (2* (a(1) +a(5)) +27*a(2) +12*a(3) -8*a(4)) /35;
for j=3:n-2
b (j) = (-3*(a(j-2) +a(j+2)) +12*(a(j-1) +a(j+1)) +17*a(j)) /35;
end
b (n-1) = (2*(a(n) +a(n-4)) +27*a(n-1) +12*a(n-2) -8*a(n-3)) /35;
b (n) = (69*a(n) +4* (a(n-1) +a(n-3)) -6*a(n-2) -a(n-4)) /70;
a=b;
end
y =a;
处理后得图如下,如果还想更平滑,可以修改调用函数时的参数m。
|
|