MATLAB环境下一维信号的前处理:信号去趋势项和信号平滑

以爆破振动信号为例,爆破振动信号在采集过程中易受周围环境或监测系统影响,产生波形偏离基线中心的信号趋势项。信号受到趋势项负面作用,导致波形峰值呈现差异性变化,并影响了频谱和能量分布的特征,导致得出错误结论。因此,这就需要先对采集到的爆破振动信号进行预处理,提高爆破振动信号分析的精度,以获得真实的爆破振动峰值和时频特征等重要信息。信号平滑是指通过降低信号中噪声的强度,使其更加平滑的一种处理方法。在信号处理中,平滑通常是为了减小信号的波动和噪声,提高信号的可靠性和稳定性。

鉴于此,采用MATLAB环境下一维信号的前处理:信号去趋势项(滑动平均法消除趋势项,最小二乘法消除多项式趋势项)和信号平滑方法(Savitzky-Golay滤波平滑,五点三次法平滑处理),部分代码如下:

%% Savitzky-Golay滤波平滑
clear
clc
close all 

sf=200;%采样频率

load y

x=y(1:100);
k=length(x);
noise = 0.03*randn(1,k);%服从正态分布的噪声信号
x0=x+noise;%添加噪声信号
n=length(x0);%取信号数据长度
t=(0:1/sf:(n-1)/sf);% 建立离散时间列向量

x1=SG(x0,3,7);% 使用SavitzkyGolay滤波

plot(t,x0,'r',t,x1,'b');
xlabel('Time / s')
ylabel('Amplitude / mm')
legend('\fontsize{10}\fontname{宋体}滤波前','\fontsize{10}\fontname{宋体}滤波后');
legend boxoff
grid on;
title('滤波前后对比')

出图如下:

完整代码:MATLAB环境下一维信号的前处理:信号去趋势项和信号平滑

工学博士,担任《Mechanical System and Signal Processing》审稿专家,担任《中国电机工程学报》优秀审稿专家,《控制与决策》,《系统工程与电子技术》,《电力系统保护与控制》,《宇航学报》等EI期刊审稿专家。

擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

  • 13
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哥廷根数学学派

码字不易,且行且珍惜

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值