一种基于极值法的快速P波检测方法与流程

文档序号:16595018发布日期:2019-01-14 19:31阅读:823来源:国知局
一种基于极值法的快速P波检测方法与流程

本发明涉及计算机辅助心电信号诊断,更具体地说,涉及一种基于极值法的快速p波检测方法。



背景技术:

心电图(ecg)检测因其对人体无害、非侵入性、能较好地表示心脏的电活动等优势,广泛用于临床的心脏功能的分析。p波作为心电图波组中出现的第一个波,它代表着心房的去极化,因此p波的准确检测可以最早发现是否存在心房病变或者是否为异位心搏。然而,由于p波幅度相较于qrs波群和t波更低,能量集中在0.5-10hz,信噪比低且易被噪声破坏,从而影响检测结果,主要体现在:(1)检测算法可能无法区分因噪声而产生的波动和真实p波,而错误判断p波的位置,影响心脏起搏位置的判断;(2)噪声叠加在p波上使得检测到的p波振幅不在正常范围内,被认为是假性p波;(3)因为噪声的干扰,而误认为当前p波存在,从而忽略了心房颤动、室性早搏和高血钾症等心脏疾病的可能性,影响了病人的及时就医。对上述p波的特点和存在的问题,相关学者提出了小波变换法、波形拟合法、面积法、qrs-t消除法、自适应阈值法等,这些方法很多都已经有90%以上的准确率,但是方法往往都过于复杂,不利于临床应用。现有的很多基于极值法的p波检测算法都是在一定阈值空间内直接搜索极值点,或者固定搜索窗口内的原信号上搜索最大值作为p波峰值点。虽然满足了方法快速、简单的要求,但前者容易忽略阈值空间之外的潜在p波,后者可能会将搜索窗口的边界值或者因基线漂移而抬高的假性p波,误作为p波峰点。在p波存在性的判断上,现有的方法大都使用p波振幅、时限或者结合p波形态的神经网络方法,前者可能因为p波的低信噪比(snr)而使得p波的振幅不在标准阈值内,从而错误地把正确的p波认为是假性p波,而后者使用神经网络太耗时。



技术实现要素:

本发明要解决的技术问题在于,针对现有技术的不足,提供一种基于改进极值法的快速p波检测方法,并使用伪tp间隔作为验证p波存在的依据。该方法在噪声干扰下更具有鲁棒性,且快速、简单,能更好地适用于临床。

本发明通过下述技术方案实现:一种基于极值法的快速p波检测方法,包括如下步骤:

a)对采集得到的心电信号s(t)直接进行r峰检测,以分割单个心拍;

b)对所述采集得到的心电信号s(t)进行信号预处理,以提高信号的信噪比和后续检测的准确性;

c)利用所述r峰的位置确定p、t波的搜索范围;

d)在所述的p、t波搜索范围内搜索所有的极大值点,并根据得到的极大值点的个数和极大值点所在处的振幅确定p、t波峰的位置;

e)利用三角形法和拟合最小值法确定p、t波的起始点;

f)计算伪tp间隔,并根据伪tp间隔是否小于某个阈值来验证其是否为真实p波。

更进一步地,所述步骤b)中,进一步包括如下步骤:

b1)使用加窗fir带通滤波器对采样信号进行初步滤波,并将其应用于前向、后向级联滤波器,得到一个没有相移的纯净信号;

b2)对所述纯净信号连续进行两次中值滤波以消除qrs波群,得到剩余信号;

b3)对所述剩余信号减去由移动滤波器得到的近似基线,以消除基线漂移。

附图说明

图1是本发明一种基于极值法的快速p波检测方法流程图

图2是本发明中各预处理子步骤处理后的信号结果图

图3是本发明中基于改进极值法确定p波的原理图

图4是本发明中基于改进极值法确定t波的原理图

图5是本发明中基于三角形法确定p、t波起终点的原理图

图6是本发明在qt公开数据库中的sel100记录的检测结果图

具体实施方式

下面将结合附图对本发明实施例作进一步说明,但本发明的实施方式不限于此。

如图1所示,本发明基于极值法的快速p波检测方法,包括如下步骤:

步骤a):对采集得到的心电信号是s(t),对其直接进行r峰检测,以分割单个心拍:基于心电信号的计算机分析往往需要逐拍分析,因此r峰的准确检测是心电信号分析的第一步。本发明采用了已经相对成熟和广泛应用的pon&pomkings法:

所述pon&pomkings法先将ecg信号转换为ecg斜率信号,以增强r峰与其他部分采样增幅的差异;

然后将所述ecg斜率信号通过平方运算将所有数据值转换为正数,从而使ecg信号中的高频成分得到增强;

最后使用移动窗口平均滤波器来逐个积分,并将阈值设置为积分信号输出的平均值和最大值的乘积来检测r波峰。

尽管r峰的检测已经很准确,但p、t峰的检测窗口非常依赖r峰的位置。因此,为了使二者的检测更为准确,本发明在检测到r峰后对其进行了修正。考虑到r峰在ii导联通常是高尖向上的,我们在初步检测到的r峰附近搜索最大值来修正r峰位置,搜索区域的大小为:

[rloc-0.12*fs:rloc+0.06*fs]

rloc为检测到的初始r峰位置,fs为心电信号记录的采样频率。

步骤b):对采集得到的心电信号s(t),进行预处理:心电信号作为一种非线性非平稳的弱电信号,主要幅值范围在10uv~4mv之间,频率范围在0.05-100hz之间。在心电信号的采集过程中常伴有工频干扰(50hz)、肌电干扰(30-300hz)及基线漂移(0.15-0.3hz)等噪声,与心电信号的频带有所重叠,故在对ecg信号进行检测和分类之前需要对其进行滤波,更进一步的:

步骤b1):本发明首先使用截止频率选为[1,100]hz,滤波器阶数为32的加窗fir带通滤波器(选用’hamming’窗)初步滤除所述采样信号s(t)中的上述信号噪声,并将其应用于前向、后向级联滤波器,得到一个没有相移的纯净信号s1(t);

步骤b2):对所述的纯净信号s1(t)连续进行两次中值滤波(窗口l=2*0.03*fs+1)以消除qrs波群,突出p、t波,得到剩余信号s2(t);

步骤b3)对所述剩余信号减去由移动滤波器(窗口长度l=2*0.05*fs)得到的近似基线,以消除基线漂移,得到滤波信号s3(t)。

从图2中我们可以看到,整个预处理流程结束后,qrs基本消除且p、t波的形态更加明显,极值点个数也明显减少,有利于后续的极值点检测。

步骤c):利用所述r峰的位置确定p、t波的搜索范围:在得到滤波信号s3(t)和已知r峰的前提下,根据p、t波相对r峰的位置和当前心跳的rr间隔设计了p、t波的搜索范围如下:

用于p波检测的搜索窗口:已知正常的pr间期在0.12-0.2s之间,pr段持续时间在0.02-0.12s之间,qrs的持续时间<0.12s。故设置p波搜索窗口为:

[rloc(i)-0.35*rr(i):rloc(i)-0.1*rr(i)]

rloc(i)为当前r峰值位置,rr(i)为当前rr间隔大小,i=1,2,…,n,n为当前心电记录的总心拍个数。

同理,用于t波检测的搜索窗口:qt间期是指qrs复合波的起点至t波终点之间的持续时间,其正常值在0.35-0.44s之间,qt间期的异常可引起室性心律失常,因此t波搜索窗口的确定与qt间期相关。故设置t波搜索窗口为:

[rloc(i)+0.15*rr(i):rloc(i)+0.57*rr(i)]

步骤d):在所述的p、t波搜索范围内搜索所有的极大值点,并根据得到的极大值点的个数和极值点所在处的振幅确定p、t波峰的位置;由所述p、t搜索窗口得到对应的信号片段tecg_piece,但是所述信号片段tecg_piece仍然可能存在基线漂移。因此在搜索极值前需要对其再做一次去均值得到ecg_bay。

然后,通过平方运算将信号片段tecg_piece的所有数值转换为正值,从而在经分化后的ecg信号中的高频成分得到进一步的增强,得到ecg_piece。继而计算搜索窗口内的所有极大值,针对不同的极大值个数进行不同的处理:

p波检测:若极值点个数=0,则我们把当前rr间隔的0.2作为p峰位置(图3(a));

如果,极值点个数>1,且最后一个极值点位置处对应的ecg_piece处的振幅小于设置的阈值,则以倒数第二个极值点为p峰(图3(b)),定义如下:

ecg_bay[loc]-min(ecg_bay)<thr

thr=0.1*[max(ecg_bay)-min(ecg_bay)]

loc为极值点位置,ecg_bay[loc]为极值点位置处的振幅,min(ecg_bay)和max(ecg_bay)分别为ecg_bay的最小值和最大值。

否则,以最后一个极值点为p峰(图3(c))。

t波检测:若极值点个数=0,则我们把当前rr间隔的0.15作为t峰位置(图4(a));

如果,极值点个数>2,且第二个极值点位置处对应的ecg_bay处的振幅小于设置的阈值,则以第三个极值点为t峰(图4(b));

否则,若极大值个数>1并且第一个极值点位置处对应的ecg_bay处的振幅过小,则以第二个极值点为t峰(图4(c));

除此之外的其它情况,以第一个极值点为t峰(图4(d))。

然而,在得到p、t波峰后,考虑到先前滤波的相移问题,可能会导致原p、t波峰的位置发生偏移,造成检测误差,因此本文针对检测到的p、t波峰进行了局部优化处理。当波峰位置大于0.03倍的当前rr间隔时,在原信号中在波峰前后0.03倍的rr间隔寻找最大值,否则,在波峰到波峰后的0.03倍的rr间隔寻找最大值作为最终的p、t峰位置。

步骤e)利用三角形法和拟合最小值法确定p、t波的起始点,得到伪tp间隔:在检测到p、t波峰后,为了后续的p波存在性检测,就需要在波峰前后的信号片段内搜寻p、t波的起终点。不同于最开始的fir滤波器截止频率的选择,在进行波形的起终点检测前,我们选择截止频率选为[10,60]hz的加窗fir带通滤波对采样信号进行滤波。根据p、t波的形态和相对位置,p波起点和t波的起终点,我们都用三角形法来检测,特别的,对p波终点,我们使用拟合最小值法来检测。具体如下:

p波起点和t波的起终点(三角形法):如图5所示,以t波起点k点的检测为例,我们先固定t波峰点(固定点po),然后大致在t波峰前定义j点(临时固定点pt),从当前r峰值之后的当前rt间隔的四个选项中选择j点位置:{0.3,0.35,0.4,0.45}。连接j、t两点,则k点在jt波段上(移动顶点px),当三角形jk’t的面积达到最大值时,对应的顶点k’即为k点。三角形的面积我们用海伦公式求得:

pipj表示三角形的边长,s为三角形的半周长:

类比于t波起点的检测,p峰起点pstart为p峰到p峰之前的0.2*rr(i)区间内最大三角形处对应的点;t波终点为t峰到t峰后0.2*rr(i)区间内最大三角形处对应的点。

p波终点(拟合最小值法):从当前p峰值之后的当前pr间隔的四个选项中选择pend’点位置:{0.3,0.35,0.4,0.45},作为终点搜索区间。在所述终点搜索区间内做线性拟合,使用时间间隔的最小二乘近似曲线,求最小值即为终点。

步骤f)计算伪tp间隔,并根据伪tp间隔是否小于某个阈值来验证其是否为真实p波:针对以上的p、t波检测,都是在假定搜索窗口内一定存在p波或t波,但实际心电信号并不是每个心拍都存在p波,若判断错误,则会将异常心拍误认为是正常心拍,不利于后续的诊断,因此,我们会对p波的存在性进行进一步的判段,本发明提出了使用tp间隔来进行判别。

根据假设,每个心跳的p波与前一个心跳的t波的之间一定存在一个tp间隔,我们将tp间隔定义为t波终点与p波起点之间的持续时间。通过t、p波之间的相对位置和p波消失时tp间隔相对较小,结合心率hr,最终将用于判定p波存在的阈值设置为:

thr1=0.16,若hr<105

thr1=hr*0.55/fs,其它

thr2=0.1*rr(i)

并且规定:如果tp间隔小于min{thr1,thr2},则我们认为不存在p波,由此完成p波检测。

本发明所提供的技术方案为本发明的一个较佳的实现方式,但本发明的实施方式并不局限于此,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化、均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1