一种心电信号R波的识别方法、装置、计算机设备与流程

文档序号:17787996发布日期:2019-05-31 19:41阅读:712来源:国知局
一种心电信号R波的识别方法、装置、计算机设备与流程

本申请涉及心电信号检测技术领域,特别是涉及一种心电信号r波识别方法、装置、计算机设备。



背景技术:

心电图是由一系列的波组所构成,每个波组代表着每一个心动周期。一个波组包括p波、qrs波群、t波及u波。(1)p波:心脏的激动发源于窦房结,然后传导到达心房。p波由心房除极所产生,是每一波组中的第一波,它反映了左、右心房的除极过程。前半部分代表右房,后半部分代表左房。(2)qrs波群:典型的qrs波群包括三个紧密相连的波,第一个向下的波称为q波,继q波后的一个高尖的直立波称为r波,r波后向下的波称为s波。因其紧密相连,且反映了心室电激动过程,故统称为qrs波群。这个波群反映了左、右两心室的除极过程。(3)t波:t波位于s-t段之后,是一个比较低而占时较长的波,它是心室复极所产生的。(4)u波:u波位于t波之后,比较低小,其发生机理未完全明确。一般认为是心肌激动的“激后电位”。

人体采集的心电信号所包含的噪声有:基线漂移、工频干扰、电极运动造成的伪迹和电极接触噪声。现有的心率计算方法,为避免噪声对结果的影响,一般先是通过带通滤波进行降噪;然后,对滤波后的信号进行求导,得到qrs波群的斜率信息;接着,对斜率信号取绝对值或者取平方;再用移动平均窗对上一步的信号进行光滑平均。然后,设置复杂的qrs检测的规则。如opensourceecganalysissoftware中的规则有:1.忽略所有在大波峰前后小于196ms(306bpm)的波峰;2.如果检测到波峰,则检查原始信号中是否同时包含正负斜率,如果是的,则为波峰,如果不满足,则该波峰表示基线漂移;3.设置探测阈值,如果波峰值大于阈值,则为qrs波群,否则,视为噪声;4.如果在1.5倍的rr间距内没有探测到qrs,但是有一个波峰值大于检测阈值的一半,并且该波峰在先前检测到的qrs后至少360ms,则该波峰视为qrs波群。

从上述qrs波群的检测规则可以看出,现有技术中对于r波识别的规则设置得很复杂,而且一定频率范围的基线漂移,会对这种算法的结果造成影响;同时还需要预先设置阈值,但是,对于实测心电数据,不同的人所测到的心电信号强度是不一样的,这样可能对预先设置阈值带来困难。



技术实现要素:

基于此,有必要针对现有技术中对于r波识别的规则设置得很复杂,而且算法会受到基线漂移的影响,同时需要针对不同的人预先设置阈值的技术问题,提供一种心电信号的r波识别方法、装置、计算机设备和存储介质。

一种心电信号r波的识别方法,所述方法包括:获取心电信号中的波峰;获取所述波峰的上升沿和下降沿;获取所述波峰的上升沿和下降沿的高度;根据所述波峰对应的上升沿和下降沿的高度确定r波。

在其中一个实施例中,在获取心电信号中的波峰前对所述心电信号进行滤波,包括高通滤波和低通滤波。

在其中一个实施例中,获取心电信号中的波峰包括:获取心电信号的波形斜率;根据所述斜率的变化,确定心电信号中的波峰。

在其中一个实施例中,获取所述波峰的上升沿和下降沿包括:获取心电信号的波形斜率;根据所述波形斜率确定所述波峰的上升沿和下降沿。

在其中一个实施例中,获取所述波峰的上升沿和下降沿的高度包括;根据所述斜率的变化,确定上升沿的起始点和终止点,以及下降沿的起始点和终止点;根据上升沿的起始点和终止点计算所述上升沿的高度;根据下降沿的起始点和终止点计算所述下降沿的高度。

在其中一个实施例中,根据所述波峰对应的上升沿和下降沿的高度确定r波包括:在第一距离范围内,根据预设规则判断第一距离范围的中间波是否为r波。

在其中一个实施例中,获取第一距离范围内的中间波的第一波峰大小;获获取第一距离范围内的波峰平均高度累积量;若所述第一距离范围的中间波的第一波峰大小大于所述第一距离范围内的波峰平均高度累积量,则所述第一距离范围的中间波为r波。

在其中一个实施例中,以任一波峰为第一距离范围的中间波,判断所述第一距离范围的中间波是否为r波。

一种心电信号r波识别装置,所述装置包括:波峰获取模块,获取心电信号中的波峰;波形获取模块,获取所述波峰的上升沿和下降沿;高度获取模块,获取所述波峰的上升沿和下降沿的高度;r波识别模块,根据所述波峰对应的上升沿和下降沿的高度确定r波。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述心电信号r波的识别方法的步骤。

上述心电信号r波的识别方法、装置、计算机设备,通过对心电信号进行滤波以消除高频噪声毛刺和基线漂移,基于采样点斜率的变化识别波峰,并计算波峰对应的上升沿和下降沿的高度,基于所述第一距离范围内的波峰平均高度累积量与中间波的第一波峰大小可以很好的识别r波,并且可以r波的特征实现对心电信号的利用,算法简单,结果不会受基线漂移的影响,更加准确,同时不需要根据个人情况预先设置阈值,通用性更好。

附图说明

图1为一个实施例中心电信号r波识别方法的流程示意图;

图2为一个实施例中心电信号r波识别装置的结构框图;

图3为一个实施例中计算机设备的内部结构图;

图4为进行算法验证时原始心电信号图;

图5为进行算法验证时加入高斯白噪声后信噪比为10db的心电信号图;

图6为进行算法验证时加入高斯白噪声后信噪比为6db的心电信号图;

图7为进行算法验证时加入高斯白噪声后信噪比为1db的心电信号图;

图8(a)为采用pan-tompkins算法进行心电信号r波识别时错检率随信噪比变化的示意图;

图8(b)为采用本发明的进行心电信号r波识别时错检率随信噪比变化的示意图;

图8(c)为采用本发明的采用pan-tompkins算法的带通滤波参数进行心电信号r波识别时错检率随信噪比变化的示意图;

图9(a)为采用pan-tompkins算法进行心电信号r波识别时漏检率随信噪比变化的示意图;

图9(b)为采用本发明进行心电信号r波识别时漏检率随信噪比变化的示意图;

图9(c)为采用pan-tompkins算法的带通滤波参数进行心电信号r波识别时漏检率随信噪比变化的示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在本实施例中,心电信号r波识别通过以下步骤的方法来实现。

步骤s100:获取心电信号中的波峰。

通过一定采样频率对心电信号进行采样,采集的样本点按照时间的顺序排列,形成心电信号的波形。波峰是指在一个波长的范围内,波幅的最大值点,获取心电信号波形中一个波长的范围内波幅最大的信号即为心电信号中的波峰。

在本实施例中,根据心电信号的波形斜率,获取心电信号的波峰,具体包括以下步骤。

步骤s101:获取心电信号的波形斜率。

所述心电信号的波形斜率为通过计算采样点之间的斜率获得。具体地,设心电信号为ν,心电信号样本点与样本点的距离为1,当前样本点值ν[n]与前一个样本点值ν[n-1]的差值即为当前样本点的斜率:

δν[n]=ν[n]-ν[n-1](1)。

步骤s102:根据所述斜率的变化,确定心电信号的波峰。

具体地,当前时刻的样本点的斜率为正,即δν[n]>0,下一个样本的斜率δν[n+1]<0,,则当前时刻的样本点为心电信号的一个波峰。

在一实施例中,在获取心电信号中的波峰前对所述心电信号进行滤波,包括高通滤波和低通滤波。首先进行低通滤波,一般取截止频率为40hz,用于消除r波上可能存在的高频噪声毛刺;再进行高通滤波,一般取截止频率为0.5hz,用于消除基线漂移。

本实施例中,基于波形的斜率正负性改变来定位波峰位置,如果r波上面有噪声毛刺,算法会将噪声毛刺也识别为小的波形,因此,最后的结果可能是r波被分别识别成一系列小的波形,从而导致无法对r波定位。本实施例中,低通消除r波上的噪声毛刺,其滤波的程度没有pan-tompkins那么大,避免带通滤波而造成qrs波的波形特征被改变太多,而影响后续qrs波群识别分析。

步骤s200:获取所述波峰的上升沿和下降沿。

任意一个波峰是由上升沿和下降沿构成,获取所述波峰的上升沿和下降沿即判断当前样本点位于上升沿还是下降沿。具体的,计算当前样本点与前一样本点的差值,若差值为正,则为波峰的上升沿,若差值为负,则为波峰的下降沿,即上升沿和下降沿的判断规则为:

步骤s300:获取所述波峰的上升沿和下降沿的高度。

任意一个完整的波峰是由上升沿的起始点、上升沿的终止点、下降沿的起始点、下降沿的终止点的之间波形构成,一般上升沿的终止点和下降沿的起始点为同一个样本点,计算上升沿以及下降沿波形的高度即为上升沿和下降沿的高度。

在一实施例中,根据所述斜率的变化,确定上升沿的起始点和终止点,以及下降沿的起始点和终止点;根据上升沿的起始点和终止点计算所述上升沿的高度;根据下降沿的起始点和终止点计算所述下降沿的高度。具体地,如果前一个时刻的样本值与当前时刻的样本值的差值为负,即δν[n]<0,当前时刻的样本值与下一个时刻的样本值的差值为正,即δν[n+1]>0,则当前样本点n为波峰上升沿的起始点,同时也是前一个波峰下降沿的终止点;如果前一个时刻的样本值与当前时刻的样本值的差值为正,即δν[n]>0,当前时刻的样本值与下一个时刻的样本值的差值为负,即δν[n+1]<0,则所述当前样本点n为波峰上升沿的终止点,也是波峰下降沿的起始点。

在一实施例中,第i个波峰上升沿的高度为上升沿起始点与上升沿终止点之间的相邻样本点差值的累加,即:

其中,n=ni表示上升沿起始点。n=ni+1为波峰位置,即表示上升沿终止点。

第i个波峰的下降沿的高度为下降沿起始点与下降沿终止点之间的相邻样本点差值的累加,即:

其中,n=ni+1为波峰位置,即表示下降沿的起始点,n=ni+2为下降沿的终止点。因为δν[n]<0,式(4)中取负号以使求得的下降沿高度为正。

步骤s400:根据所述波峰对应的上升沿和下降沿的高度确定r波。

根据所述波峰对应的上升沿和下降沿为构成该波峰的上升沿和下降沿。

在一实施例中,在第一距离范围内,根据预设规则判断第一距离范围的中间波是否为r波。所述预设规则与波峰的高度特征相关。具体的,包括以下步骤。

步骤s401:获取第一距离范围内的中间波的第一波峰大小。

所述第一波峰大小为的波峰对应的上升沿和下降沿高度之和,即

δh[i]=δhup[i]+δhdown[i](5)。

步骤s402:获取第一距离范围内的波峰平均高度累积量。

根据所述第一波峰大小,获取第一距离范围内的波峰平均高度累计量。具体地,将第一距离范围内的每个波峰的第一波峰大小相加得到第一距离范围内的波峰总高度累积量,并除以第一距离范围内波峰的数量,计算得到第一距离范围内多个波峰的平均高度累积量。

具体的,所述第i个波峰的第二波峰大小为:

所述第二波峰大小为心电信号第一个波峰到第i个波峰的第一波峰大小之和。

因此,以第一距离范围内中间的波峰第t个波峰为中心,第一距离范围内的波峰总高度累积量为hc[t+w]-hc[t-w]。。其中,第一距离范围的半宽度为w,第一距离范围的宽度为2w,一般w大于5,即第一距离范围内心电信号的特征波pqrst波个数大于5。

对第一距离范围内2w+1个波的波峰大小求平均

在一实施例中,所述第一距离范围内的波峰总高度累积量也可以通过累加第一距离范围内所有的相邻样本点的差值获得。

步骤s403:若所述第一距离范围的中间波的第一波峰大小大于所述第一距离范围内的波峰平均高度累积量,则所述第一距离范围的中间波为r波。

如果第一距离范围内的中间波的第一波峰大小大于该平均高度累积量,即则判断该中间波为r波。

在一实施例中,以步骤s100获得的心电信号中的任一波峰为第一距离范围的中间波,判断所述中间波是否为r波,从而识别所述心电信号中所有的r波。

在一实施例中,还可以根据相邻两个r波波峰之间的时间差,计算得到瞬时心率。具体地,波峰时刻tr[p],p表示第p个r波峰,以及相应的第一波峰大小hr[p],所述瞬时心率为

在一实施例中,还可以通过本方法实现心电信号的其他特征波,例如p波、t波、u波等的识别,并利用识别的特征波计算心率。

上述心电信号的r波识别方法,通过对心电信号进行滤波以消除高频噪声毛刺和基线漂移,基于采样点斜率的变化识别波峰,并计算波峰对应的上升沿和下降沿的高度,基于所述第一距离范围内的波峰平均高度累积量与中间波的第一波峰大小可以很好的识别r波,并且可以r波的特征实现对心电信号的利用,算法简单,结果不会受基线漂移的影响,更加准确,同时不需要根据个人情况预先设置阈值,通用性更好。

应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图2所示,提供了一种心电信号r波识别装置,包括:

波峰获取模块,获取心电信号中的波峰;

波形获取模块,获取所述波峰的上升沿和下降沿;

高度获取模块,获取所述波峰的上升沿和下降沿的高度;

r波识别模块,根据所述波峰对应的上升沿和下降沿的高度确定r波。

所述心电信号r波识别装置还包滤波模块,用于在获取心电信号中的波峰前对所述心电信号进行滤波,所述滤波模块还包括高通滤波单元和低通滤波单元,所述高通滤波单元用于对心电信号进行高通滤波,所述低通滤波单元用于对心电信号进行低通滤波。

关于心电信号r波识别装置的具体限定可以参见上文中对于心电信号r波识别方法的限定,在此不再赘述。上述心电信号r波识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种r波识别方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取心电信号中的波峰;获取所述波峰的上升沿和下降沿;获取所述波峰的上升沿和下降沿的高度;根据所述波峰对应的上升沿和下降沿的高度确定r波。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:在获取心电信号中的波峰前对所述心电信号进行滤波,包括高通滤波和低通滤波。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取心电信号中的波峰包括:获取心电信号的波形斜率;根据所述斜率的变化,确定心电信号中的波峰。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取所述波峰的上升沿和下降沿包括:获取心电信号的波形斜率;根据所述波形斜率确定所述波峰的上升沿和下降沿。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述斜率的变化,确定上升沿的起始点和终止点,以及下降沿的起始点和终止点;根据上升沿的起始点和终止点计算所述上升沿的高度;根据下降沿的起始点和终止点计算所述下降沿的高度。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:在第一距离范围内,根据预设规则判断第一距离范围的中间波是否为r波。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取第一距离范围内的中间波的第一波峰大小;获取第一距离范围内的波峰平均高度累积量;若所述第一距离范围的中间波的第一波峰大小大于所述第一距离范围内的波峰平均高度累积量,则所述第一距离范围的中间波为r波。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:以任一波峰为第一距离范围的中间波,判断所述第一距离范围的中间波是否为r波。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取心电信号中的波峰;获取所述波峰的上升沿和下降沿;获取所述波峰的上升沿和下降沿的高度;根据所述波峰对应的上升沿和下降沿的高度确定r波。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在获取心电信号中的波峰前对所述心电信号进行滤波,包括高通滤波和低通滤波。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取心电信号中的波峰包括:获取心电信号的波形斜率;根据所述斜率的变化,确定心电信号中的波峰。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取所述波峰的上升沿和下降沿包括:获取心电信号的波形斜率;根据所述波形斜率确定所述波峰的上升沿和下降沿。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据所述斜率的变化,确定上升沿的起始点和终止点,以及下降沿的起始点和终止点;根据上升沿的起始点和终止点计算所述上升沿的高度;根据下降沿的起始点和终止点计算所述下降沿的高度。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在第一距离范围内,根据预设规则判断第一距离范围的中间波是否为r波。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取第一距离范围内的中间波的第一波峰大小;获取第一距离范围内的波峰平均高度累积量;若所述第一距离范围的中间波的第一波峰大小大于所述第一距离范围内的波峰平均高度累积量,则所述第一距离范围的中间波为r波。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:以任一波峰为第一距离范围的中间波,判断所述第一距离范围的中间波是否为r波。

经验证,本发明的心电信号的r波识别方法、装置、计算机设备和存储介质算法简单,结果不会受基线漂移的影响,更加准确,同时不需要根据个人情况预先设置阈值,通用性更好。具体验证过程如下:采用标准数据库mit-biharrhythmiadatabase进行验证,因为该数据库的心电数据的r波位置都已经人工标注,可以用于本发明方法的验证,即通过比较算法得到的r波位置和人工标注的r波位置,计算r波的检测率来验证方法的可行性。选取的信号编号为100,101,103,107,109。将这些原始信号视为无噪声干净信号,然后在里面添加高斯白噪声,实现不同信噪比的信号。考察的信号信噪比为-10~10db,原始心电信号,如图3所示,信噪比为10db,6db和1db的心电信号分别如图4~6所示,可以看出,随着信噪比的降低,噪声也越来越大。

根据中华人民共和国医药行业标准的《yy0885-2013动态心电图系统安全和基本性能专用要求》中的规定,设置150ms的r波匹配窗口,即人工标注的r位置在半宽150ms的范围内,有算法得到的r波位置与之匹配,则代表检测正常心拍,否则为漏检心拍。如果算法得到的r波在匹配窗口内没有人工标注的r波与之匹配,则为错检心拍。设tp为检测正常的心拍个数,fn为漏检的心拍个数,fp为错检的心拍个数。

则漏检率pm和错检率pw分别为

本算法结果和经典的r波检测pan-tompkins算法结果进行比较,pan-tompkins算法的流程包括:1.5-15hz带通滤波,2.求导,3.取平方,4.移窗积分5.寻找波峰位置,6.设置双阈值检测r波位置。

本验证算例中,取两种滤波参数:1.低通滤波和高通滤波的截止频率分别为40hz和0.5hz;2.采用pan-tompkins的低通和高通滤波参数。步骤3中的窗的半宽w取10,算法得到的结果,如图7和图8所示。第一种滤波参数的结果为,当信噪比snr≥0db时,错检率为零,当信噪比进一步降低时,错检率不断增加。当信噪比snr≥0db时,漏检率低于5%,虽然,随着信噪比进一步降低,漏检率为先增加后减小,但错检率上升了。第二种滤波参数的结果相比第一次波参数来说,漏检率有略微的提高,但错检率除了snr=-10db,其余情况几乎均为零。因此,本算法如果采用pan-tompkins相同的滤波参数,即使在信噪比较差的情况下,错检率可以控制得很低,但漏检率相比原先的较宽的带通滤波参数(第一种滤波参数)要高。pan-tompkins算法的结果,r波的漏检率控制得比较好,但是,当信噪比较低时,其错检率显著增加,显著高于本专利算法。因此,本专利算法在心电信号中存在噪声,且信噪比较低时,r波检测的结果要好于pan-tompkins算法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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