找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12152|回復(fù): 1
收起左側(cè)

五點均值法濾波濾波方法(平滑處理)MATLAB程序

[復(fù)制鏈接]
ID:451569 發(fā)表于 2018-12-21 15:30 | 顯示全部樓層 |閱讀模式
五點滑動平均法平滑處理
通過數(shù)據(jù)采集系統(tǒng)采樣得到的振動信號數(shù)據(jù)往往疊加有不規(guī)則的隨機干擾信號。由于隨機干擾信號的頻帶較寬,有時高頻成分所占比例還很大,是的采集到的數(shù)據(jù)繪成的振動曲線上呈現(xiàn)許多毛刺,為了消除干擾信號的影響,提高振動曲線的光滑度,常常需要對采樣數(shù)據(jù)進行平滑處理。利用最小二乘法原理對離散數(shù)據(jù)進行線性平滑的方法稱為直線滑動平均法。
0028qXQezy7iqoo4jj2c8&690.jpg

MATLAB源程序如下:
  1. function y = mean5( x,n )
  2. %五點滑動平均分法平滑處理
  3. % 輸入
  4. %   x  待平滑信號
  5. %   n  平滑次數(shù)
  6. %   輸出
  7. %   y   平滑后信號

  8. %exanple:
  9. % N = 1000;
  10. % t=0:0.1:(N-1)*0.1;
  11. % x = 5*sin(t);
  12. % a = rand(1,1000)*0.5;
  13. % y = x+a;
  14. % subplot(311)
  15. % plot(t,x);
  16. % legend('原始信號')
  17. % subplot(312)
  18. % plot(t,y)
  19. % legend('加入噪聲信號')
  20. % z = mean5(y,10);
  21. % subplot(313)
  22. % plot(t,z)
  23. % legend('平滑處理后信號')


  24. L = length(x);%信號長度
  25. a = x;
  26. for k = 1:n
  27.     b(1) = (3*a(1)+2*a(2)+a(3)-a(4))/5;
  28.     b(2) = (4*a(1)+3*a(2)+2*a(3)+a(4))/10;
  29.     for j = 3:L-2
  30.         b(j) = mean(a(j-2:j+2));
  31.     end
  32.     b(L-1) = (a(L-3)+2*a(L-2)+3*a(L-1)+4*a(L))/10;
  33.     b(L) = (-a(L-3)+a(L-2)+2*a(L-1)+3*a(L))/5;
  34.     a = b;
  35. end
  36. y = a';
  37. end
復(fù)制代碼

所有資料51hei提供下載:
mean5.rar (505 Bytes, 下載次數(shù): 42)


回復(fù)

使用道具 舉報

ID:393578 發(fā)表于 2019-6-26 08:31 | 顯示全部樓層
挺好的
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表