基于小波域优化Savitzky–Golay滤波器的脑电图信号的运动伪影去除方法(MATLAB R2018A)

在获取或采集数据的过程中,不可避免地将噪声引入到数据中,噪声的存在使得原始数据发生变异,对数据的处理及分析产生严重地影响。常用的去噪模型有平滑去噪、均值去噪。其中,平滑去噪又包括移动平均平滑法和Savitzky-Golay卷积平滑法。

Savitzky-Golay是由Savitzky和Golay于1964年提出,之后被广泛地运用于数据平滑除噪,是一种在时域内基于局域多项式最小二乘法拟合的滤波方法。即对样本中的每个数据点邻域内的数据,用一个n阶多项式拟合,此多项式的系数是由最小二乘法准则在拟合误差最小的条件下确定,从而得到该数据点的最佳拟合值,也就是经过SG去噪后的数据值。

鉴于此,采用小波域优化Savitzky--Golay滤波器对脑电图信号的运动伪影进行去除。

Matlab 复制代码
function MAE_D=MAE_PSD(rec, x2,fs)
[Pxxf,freq]=psd_fft(rec, fs);
 Pxxdbf=10*log10(Pxxf);
 [Pxxn,freq]=psd_fft(x2, fs);
 Pxxdbn=10*log10(Pxxn);
%%PSD calculation for delta(0-4Hz)%%
for i=1:46
MAE_d(i)=abs(Pxxdbf(i)-Pxxdbn(i))./(46-0); %%%%delta information is present upto 46 bins, this will change for different sampling frequency
end
MAE_D=(sum(MAE_d)/(fs/2)); %%%%%formulae given in the paper
完整代码:https://mbd.pub/o/bread/ZJ6alZly
end

工学博士,担任《Mechanical System and Signal Processing》《中国电机工程学报》《控制与决策》等期刊审稿专家,擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

相关推荐
Mephisto.java5 分钟前
【力扣 | SQL题 | 每日四题】力扣2082, 2084, 2072, 2112, 180
sql·算法·leetcode
robin_suli6 分钟前
滑动窗口->dd爱框框
算法
丶Darling.8 分钟前
LeetCode Hot100 | Day1 | 二叉树:二叉树的直径
数据结构·c++·学习·算法·leetcode·二叉树
labuladuo52019 分钟前
Codeforces Round 977 (Div. 2) C2 Adjust The Presentation (Hard Version)(思维,set)
数据结构·c++·算法
wjs202423 分钟前
XSLT 实例:掌握 XML 转换的艺术
开发语言
萧鼎27 分钟前
Python第三方库选择与使用陷阱避免
开发语言·python
安冬的码畜日常29 分钟前
【D3.js in Action 3 精译_029】3.5 给 D3 条形图加注图表标签(上)
开发语言·前端·javascript·信息可视化·数据可视化·d3.js
jiyisuifeng199129 分钟前
代码随想录训练营第54天|单调栈+双指针
数据结构·算法
一颗星星辰33 分钟前
C语言 | 第十章 | 函数 作用域
c语言·开发语言
lxp19974135 分钟前
php函数积累
开发语言·php