【心电信号】ECG信号滤波分析(IRR+巴特沃斯)【含Matlab源码 3104期】

在这里插入图片描述

⛄一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【心电信号】基于matlab ECG信号滤波分析(IRR+巴特沃斯)【含Matlab源码 3104期】
点击上面蓝色字体,直接付费下载,即可。

获取代码方式2:
付费专栏Matlab信号处理(初级版)

备注:
点击上面蓝色字体付费专栏Matlab信号处理(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab信号处理(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码

⛄二、心电信号简介

0 引言
心电信号是人类最早研究的生物信号之一, 相比其他生物信号更易于检测, 且具有直观的规律。心电图的准确分析对心脏病的及早治疗有重大的意义。人体是一个复杂精密的系统, 有许多不可抗的外界因素, 得到纯净的心电信号非常困难。可以采用神经网络算法去除心电信号的噪声, 但这种方法存在训练难度大、耗时长的缺点。小波变换在处理非线性、非平稳且奇异点较多的信号时具有一定的优越性, 近年来许多学者使用其对心电信号进行研究。

1 心电信号简介
心电信号由以下几个波段组成, 一个典型的心电图如图1所示。
在这里插入图片描述
图1 典型心电图
(1) P波:反映心房肌在除极过程中的电位变化过程;
(2) P-R间期:反映的是激动从窦房结通过房室交界区到心室肌开始除极的时限;
(3) QRS波群:反映心室肌除极过程的电位变化;
(4) T波:代表心室肌复极过程中所引起的电位变化;
(5) S-T段:从QRS波群终点到达T波起点间的一段水平线[2];
(6) Q-T间期:心室从除极到复极的时间[3];
(7) U波:代表动作电位的后电位。
由于心电信号十分微弱, 且低频, 极易受到干扰, 不同的干扰源的噪声虽是随机的, 但来自同一个干扰源的噪声往往具有同一类特征。分析干扰的来源, 针对不同的来源使用合适的处理方法, 是数据采集重点考虑的一个问题。常见干扰有3种: (1) 工频干扰; (2) 基线漂移; (3) 肌电干扰。其中已经证明小波变换在抑制心电信号的工频干扰方面具有较大优势。具体噪声频带如表1所示。
表1 心电信号以及主要噪声频带
在这里插入图片描述

⛄三、部分源代码

close all
clear all
clc

load coursework2ECG.mat
s=signalNoise;
S=fft(s);
f=linspace(-fs/2,fs/2,length(s));
figure;plot(f,abs(fftshift(S)));grid on;

%FIR滤波器:
wp=0.1pi;ws=0.15pi; %滤波器边界频率
wdelta=ws-wp; %过渡带宽
N=ceil(8pi/wdelta); %根据过渡带宽等于表 7-2中Hanning窗函数主瓣宽求得滤波器所用窗函数的最小长度
Nw=N;
wc=(wp+ws)/2; %截止频率在通带和阻带边界频率的中点
n=0:N-1;
alpha=(N-1)/2; %求滤波器的相位延迟
m=n-alpha+eps; %eps为MATLAB系统的精度
hd=sin(wc
m)./(pi*m); %式求理想滤波器脉冲响应
win=hanning(Nw); %采用汉宁窗
h=hd.*win’;
b=h;
figure,impz(b,1);
[H,f]=freqz(b,1,512,50); %采用 50 Hz 的采样频率绘出该滤波器的幅频和相频响应
y=fftfilt(b,s); %使用滤波器对信号进行滤波;

figure;plot(s);hold on; plot(y); grid on;
legend(‘滤波前’,‘滤波后’)

% IIR滤波器设计
N=0; % 阶数
Fp=100; % 通带截止频率50Hz
Fc=200; % 阻带截止频率100Hz
Rp=1; % 通带波纹最大衰减为1dB
Rs=60; % 阻带衰减为60dB

% 3.0 计算最小滤波器阶数
na=sqrt(10^(0.1Rp)-1);
ea=sqrt(10^(0.1
Rs)-1);
N=ceil(log10(ea/na)/log10(Fc/Fp));

figure;
subplot(211);plot(abs(fftshift(fft(y)))); grid on;
subplot(212);plot(abs(fftshift(fft(y2)))); grid on;

⛄四、运行结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⛄五、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.
[4]焦运良,邢计元,靳尧凯.基于小波变换的心电信号阈值去噪算法研究[J].信息技术与网络安全. 2019,38(05)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

  • 29
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Matlab领域

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值