matlab5点3次平滑程序,[转载]matlab 五点三次平滑算法

这里提供一个函数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。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值