发明内容
本发明为了解决现有技术中房颤检测准确性不高的技术问题,提供一种房颤检测方法和装置。
本发明实施例的房颤检测方法,包括如下步骤:
S1、获取一段时间内心电信号的RR间期序列;
S2、对所述RR间期序列进行预处理;
S3、对预处理后的RR间期序列进行归一化处理;
S4、计算归一化处理后的RR间期序列的方差;
S5、将所得方差与阈值比较,若所得方差大于该阈值则判定所述一段时间内发生房颤。
进一步优选,步骤S2包括如下步骤:
S22、获取符合
及
的RR[j],其中,
、
各为RR间期比值序列中数据值按从小到大排序的第35%、65%处的值;
S23、删除满足步骤S22中的RR[j]以及RR[j+1]。
进一步优选,步骤S3包括如下步骤:
S31、获取RR间期序列的平均值RRmean;
进一步优选,该阈值的范围为70至80。
进一步优选,在步骤S2与S3之间还包括步骤S6:
步骤S6:去掉PVC处的R波的前后两个RR间期。
进一步优选,所述一段时间至少为2分钟。
本发明实施例的房颤检测装置,包括:
信号获取模块,用于获取一段时间内心电信号的RR间期序列;
预处理模块,用于对所述RR间期序列进行预处理;
归一化模块,用于对预处理模块处理后的RR间期序列进行归一化处理;
方差计算模块,用于计算出归一化处理后的RR间期序列的方差;以及
判断模块,用于并将所得方差与阈值比较,若所得方差大于所述阈值则判定所述一段时间内发生房颤。
进一步优选,该预处理模块包括:
干扰RR间期获取单元,用于获取干扰RR间期RR[j],即获取满足
及
的RR[j],其中,
、
各为RR间期比值序列中数据值按从小到大排序的第35%、65%处的值;
第一间期删除单元,用于删除干扰RR间期获取单元获得的干扰RR间期RR[j]以及RR[j+1]。
进一步优选,该归一化模块包括:
均值计算单元,用于获取RR间期序列的平均值RRmean;
归一化处理单元,用于获取每个RR间期的归一化值
:
,其中,
。
进一步优选,该阈值的范围为70至80。
进一步优选,还包括室性早搏处理模块,该室性早搏处理模块包括:
室性早搏获取单元,用于获取室性早搏处的R波;
第二间期删除单元,用于删除室性早搏获取单元获取的R波的前后两个RR间期。
进一步优选,所述一段时间至少为2分钟。
有益效果:本发明实施例的房颤检测方法和装置,通过预处理及归一化后的方差比较,判断是否发生房颤,具有检测时间短及准确性高的优点。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图2是本发明实施例的心电信号示意图。图2中波峰最高的波为R波,该波为心电信号特征波,可以被用来检测心率等等生理参数,还被用在检测PVC(室性早搏)等心脏事件。本发明的核心思想是利用R波间期(即RR间期)来检测房颤,即通过预处理及归一化后的RR间期的方差比较,判断是否发生房颤,达到检测准确、快速的目的。由于R波检测和PVC检测是比较成熟的现有技术,在本发明实施例中就不再详细描述,而是直接将检测的结果直接应用于本发明实施例的房颤检测方法和装置中。
图1是本发明实施例的房颤检测方法流程图。图3是本发明实施例的预处理方法流程图。图4是本发明实施例的归一化方法流程图。
请参照图1、图2、图3及图4,本发明实施例的房颤检测方法,包括如下步骤:
S10,获取一段时间内心电信号的RR间期序列。
该段时间内的心电信号是本发明实施例的房颤检测方法的对象,所有的结果都是根据该对象得出,也只是对该心电信号负责。该段时间内的心电信号应包含足够的信息,使本实施例的房颤检测方法能够得出结论。需要的信息量越少(即该段时间越短),该房颤检测方法也就越好,因为,在越早的时间内发现房颤的发生,就能越早地采取相关措施。本发明实施例的房颤检测方法最短只需要2分钟的心电信号就可以给出房颤检测结果,并且结果准确性较高,这是本实施例的房颤检测方法采用两步处理(预处理及检测)得到良好结果,是经过房颤数据库(MIT-BIH Atrial Fibrillation Database)测试验证的。
RR间期就是两个R波中心位置的相减,反映为一时间间期,故称为RR间期。一段时间内的心电信号中,所有的RR间期按照时间先后排列成一集合称为RR间期序列。例如图2中,第一个R波标记为R1,第二个R波标记为R2,以此类推,第S个R波标记为RS。R2与R1间的RR间期标记为RR[1],R3与R2间的RR间期标记为RR[2],以此类推,RS与RS-1间的RR间期标记为RR[S-1]。该RR间期序列是指:RR[1]、RR[2]、RR[3]、RR[4]……RR[S-1]….. RR[N]。该RR[N]为该RR间期序列中最后一个RR间期。该RR间期序列可以通过现有技术获取,即可以直接读取存储在存储器中的RR间期序列。
本实施例的检测方法也可以包括通过处理获取RR间期序列的方法,具体为:
第一步,获取该段时间内所有R波的位置(即R波中心的时间点),读取存储在存储器中的R波的位置或者通过读取存储在存储器中的心电信号通过现有技术计算获得R波的位置;
第二步,根据R波的位置,计算RR间期:RR[j-1]=Rj-Rj-1,并获取RR间期序列:RR[1]、RR[2]、RR[3]、RR[4]……RR[S-1]…..RR[N]。
获取该RR间期序列就可以进行下一步处理了,即进入步骤S20。
S20,对该RR间期序列进行预处理,目的在于去除干扰RR间期。
本步骤是为了提高检测精度,进行预处理去除干扰RR间期,以减少其它心律事件对我们检测精度的影响,例如明显的PVC。本步骤结合后面的检测步骤,还可以节省检测所需要的信息量,即减少检测时间。本实施例优选的方法如下:
S210:以
建立RR间期比值序列;即用后一RR间期与前一RR间期相比得到该RR间期比值序列的一个元素(或者一个值),例如RR[2]/RR[1]、RR[3]/RR[2]……RR[S]/RR[S-1]……RR[N]/RR[N-1]。
S220:获取满足
及
的RR[j],其中,
、
各为RR间期比值序列中数据值按从小到大排序的第35%、65%处的值;本步骤获取满足上述条件所有的RR[j],可以为一个,也可以为多个,该RR[j]会对后续的判断产生影响,带来错误的判断。当然,在对某些信号检测时,也可能检测不出干扰RR间期。
S230:删除满足步骤S220中的RR[j]以及其后一个RR间期(RR[j+1]),完成预处理;例如RR[2]、RR[3]、RR[7]满足条件,则删除RR[2]、RR[3]、RR[4]、RR[7]、RR[8]。删除RR[j]外还删除RR[j+1],是为了将RR[j]的影响降到最低。本步骤对干扰RR间期的删除,可以提高精度以及减少后续步骤的计算量。
在步骤S220中没有检测出满足条件的RR[j]时,跳过此步骤(S230),完成预处理。
经过步骤S20预处理,删除影响检测正确性的RR间期,起到了提高正确性以及减少检测时间的目的。
S30,本发明实施例还包括去除PVC处的R波的前后两个RR间期。因为步骤S20预处理时,对某些PVC可能没办法识别,同时PVC处R波得前后两个RR间期存在,会使本实施例的房颤检测方法造成误判,所以本步骤去除步骤S20中漏删除的干扰RR间期能进一步提高检测精度。此处PVC可以通过直接读取存储在存储器中的PVC信息获取。获取到PVC信息后,去除该PVC信息对应的R波前后两个RR间期。例如获取到R2处发生PVC,则删除RR[1]及RR[2]。在某些实施例中,还可以省略此步骤。
S40,对去除干扰RR间期后的RR间期序列进行归一化处理。
本步骤对预处理后的RR间期及去除PVC相关RR间期后的RR间期序列进行归一化处理。在没有步骤S30的实施例中,本步骤对预处理后的RR间期序列进行归一化处理。在本实施例中,删除干扰RR间期及PVC相关RR间期后的RR间期序列为:RR[5]、RR[6]、……、RR[S]、……RR[N]。
S410、获取该RR间期序列的平均值RRmean;
首先,对该RR间期序列进行转换:按时间先后顺序将RR间期重新连续标记,例如RR[5]标记为RR(1),RR[6]标记为RR(2)、以此类推,最后一个RR间期标记为RR(s)。这样处理,有利于后续的计算,不会混乱。
S420、获取每个RR间期的归一化值
:
,其中,
,i的取值范围为1至s。本实施例的
通过采用RR
mean作为计算因子,因此本步骤中不需要重复计算平均值RR
mean,减少了运算量,提高了运算速度。
S50,计算归一化处理后的RR间期序列的方差Var
RR。本步骤中即对
进行方差计算,即
,其中M为
的平均值。
S60,将该方差VarRR与阈值T比较,若该方差VarRR大于该阈值T则判定该一段时间内发生房颤(即给出房颤信息),反之,则判定该一段时间内没有发生房颤(即给出非房颤信息)。该阈值T的范围为70至80,优选为73.68,这样精度较高。
参照图5,本发明实施例还提供一种房颤检测装置。该房颤检测装置包括信号获取模100、预处理模块200、室性早搏处理模块300、归一化模块400、方差计算模块500和判断模块600。
信号获取模块100,用于获取一段时间内心电信号的RR间期序列。该段时间内的心电信号应包含足够的信息,使本实施例的房颤检测装置能够得出结论。需要的信息量越少(即该段时间越短),该房颤检测装置也就越好,因为,在越早的时间内发现房颤的发生,就能越早地采取相关措施。本发明实施例的房颤检测装置最短只需要2分钟的心电信号就可以给出房颤检测结果,并且结果准确性较高,这是本实施例的房颤检测装置采用两步处理(预处理及检测)得到良好结果,是经过房颤数据库(MIT-BIH Atrial Fibrillation Database)测试验证的。一段时间内的心电信号中,所有的RR间期按照时间先后排列成一集合称为RR间期序列。例如图2中,第一个R波标记为R1,第二个R波标记为R2,以此类推,第S个R波标记为RS。R2与R1间的RR间期标记为RR[1],R3与R2间的RR间期标记为RR[2],以此类推,RS与RS-1间的RR间期标记为RR[S-1]。该RR间期序列是指:RR[1]、RR[2]、RR[3]、RR[4]……RR[S-1]….. RR[N]。该RR[N]为该RR间期序列中最后一个RR间期。该RR间期序列可以通过现有技术获取,即可以直接读取存储在存储器中的RR间期序列。
本实施例的信号获取模块100也可以包括R波位置获取单元和RR间期序列构建单元,用于处理获取RR间期序列。该R波位置获取单元,用于获取该段时间内所有R波的位置(即R波中心的时间点);该RR间期序列构建单元,根据R波位置,计算RR间期:RR[j-1]=Rj-Rj-1,并构建RR间期序列:RR[1]、RR[2]、RR[3]、RR[4]……RR[S-1]…..RR[N]。
预处理模块200,用于对该RR间期序列进行预处理,去除干扰RR间期。该预处理模块200包括:比值序列建立单元210、干扰RR间期获取单元220和第一间期删除单元230。该比值序列建立单元210用于根据
建立RR间期比值序列;即用后一RR间期与前一RR间期相比得到该RR间期比值序列的一个元素(或者一个值),例如RR[2]/RR[1]、RR[3]/RR[2]……RR[S]/RR[S-1]……RR[N]/RR[N-1]。该干扰RR间期获取单元220,用于获取干扰RR间期即获取满足
及
的RR[j],其中,
、
各为RR间期比值序列中数据值按从小到大排序的第35%、65%处的值;本步骤获取满足上述条件所有的RR[j],可以为一个,也可以为多个,该RR[j]会对后续的判断产生影响,带来错误的判断。当然,在对某些信号检测时,也可能检测不出满足条件RR[j]。该第一间期删除单元230,用于删除干扰RR间期获取单元220获得的干扰RR间期RR[j]以及所述干扰RR间期RR[j]的后一个RR间期(RR[j+1])。例如RR[2]、RR[3]、RR[7]满足条件,则删除RR[2]、RR[3]、RR[4]、RR[7]、RR[8]。删除RR[j]外还删除RR[j+1],是为了将RR[j]的影响降到最低。该预处理模块200对干扰RR间期的删除,可以提高精度以及减少后续步骤的计算量。在干扰RR间期获取单元220没有检测出满足条件的RR[j]时,该第一间期删除单元230不做任何处理。
该预处理模块200,删除影响检测正确性的RR间期,起到了提高正确性以及减少检测时间的目的。
室性早搏处理模块300,该室性早搏处理模块300包括室性早搏获取单元310和第二间期删除单元320。该室性早搏获取单元310用于获取室性早搏处的R波。该室性早搏获取单元310可以直接读取存储在存储器中发生室性早搏(PVC)的R波信息。该第二间期删除单元320,用于删除室性早搏处的R波的前后两个RR间期。在该室性早搏获取单元310没有获取到PVC时,该第二间期删除单元320不做任何处理。因为预处理模块200对某些PVC可能没法识别,同时PVC处R波的前后两个RR间期存在,在某些情况下会使本实施例的房颤检测装置造成误判,所以能进一步提高检测精度。例如R2处发生PVC,则删除RR[1]及RR[2]。在某些实施例中,还可以省略此模块。
归一化模块400,用于对去除干扰RR间期的RR间期序列进行归一化处理,包括均值计算单元410和归一化处理单元420。该归一化模块400对删除干扰RR间期及PVC相关RR间期后的RR间期序列进行归一处理。在没有室性早搏处理模块300的实施例中,该归一化模块400对删除干扰RR间期的RR间期序列进行归一化处理。在本实施例中,删除干扰RR间期及PVC相关RR间期后的RR间期序列为:RR[5]、RR[6]、……、RR[S]、……RR[N]。该均值计算单元410,用于获取RR间期序列的平均值RR
mean。该均值计算单元410首先对该RR间期序列进行转换:按时间先后顺序将RR间期重新连续标记,例如RR[5]标记为RR(1),RR[6]标记为RR(2)、以此类推,最后一个RR间期标记为RR(s)。这样处理,有利于后续的计算,不会混乱。该均值计算单元410其次按照公式
来获取RR间期序列的平均值。该归一化处理单元420,用于获取每个RR间期的归一化值
:
,其中,
,i的取值范围为1至s。本实施例的
通过采用RR
mean作为计算因子,因此本步骤中不需要重复计算平均值RR
mean,减少了运算量,提高了运算速度。
方差计算模块500,用于计算出归一化处理后的RR间期序列的方差Var
RR。该方差计算模块500采用下面公式对
进行方差计算:
,其中M为
的平均值。
判断模块600,用于将该方差计算模块500得到的方差VarRR与阈值T比较,若所述方差大于该阈值T则判定所述一段时间内发生房颤(即给出房颤信息),反之,则判定该一段时间内没有发生房颤(即给出非房颤信息)。该阈值T的范围为70至80,优选为73.68,这样精度较高。
对本发明实施例的房颤检测方法和装置进行测试验证,用本发明实施例的房颤检测方法和装置对房颤数据库(MIT-BIH Atrial Fibrillation Database)中的心电信号进行了灵敏度(sensitivity)和特异性(specificity)的检验,发现该灵敏度和特异性都较高,说明本发明实施例的房颤检测方法和装置的精度较高。敏感度(sensitivity)表示在确诊为有病者中检查为阳性者所占的比例。特异性(specificity)表示在确诊为正常人中检查为阴性者所占的比例。
用本发明实施例的房颤检测方法和装置对房颤数据库(MIT-BIH Atrial Fibrillation Database)进行灵敏度和特异性检测后还绘制了ROC曲线,如图6所示。ROC曲线是指受试者工作特征曲线(receiver operating characteristic curve),是反映敏感度和特异性连续变量的综合指标,是用构图法揭示敏感度和特异性的相互关系,以敏感度为纵坐标、(1-特异性)为横坐标绘制成曲线,曲线下面积越大,诊断准确性越高。从图6中可以知道,本发明实施例的房颤检测方法和装置检测得到的ROC曲线下方的面积占有绝大多数,而曲线上方的面积较少,进一步说明本发明实施例的房颤检测方法和装置的精度较高。
以上对本发明提供的房颤检测方法和装置进行了详细介绍,本文中应用了具体个例对发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。