技术领域
[0001] 本发明涉及数据处理技术领域,尤其涉及一种心电信息处理方法和心电工作站。
相关背景技术
[0002] 心电工作站是将人体弱小的心电信号由心电采集器采集,送入计算机处理系统放大、分析处理,从而达到诊断心脏疾病的目的,通常由计算机主机、监视器、导联线、心电信号采集盒和打印机等几部分组成,具有视窗菜单,不需要深奥的操作技术和过多的人工干预,临床医生或操作人员即可以通过它获得心电图输出报告。
[0003] 心电工作站所执行的心电监测是一种常用的临床医疗监测手段。其监测的心电信号是心肌细胞的电活动在体表反映出的微弱电流,通过体表电极和放大记录系统记录下来。
[0004] 在心电监测中涉及心电图数据自动分析,但由于心电图信号本身的复杂与变异性,很容易受到各种信号干扰,在记录过程中同时还会记录到其他非心源性的电信号,比如骨骼肌活动带来的肌电信号干扰等等。这些信号可能会导致不正确心搏信号检测结果的输出。
[0005] 此外,心电信号是心肌电活动过程的体现,可以体现出大量的心脏状态的信息。在心脏状态出现问题的时候,心电信号会出现相应的改变,目前自动分析的准确率远远不够,致使输出的心电图检测报告的参考意义不大,还是依然依赖于医生的主观判断来形成心电图检测报告。
[0006] 此外,现有心电工作站的心电图检测报告输出方式单一,无法满足不同用户或不同使用需求的差异化要求。因而如何有效提高心电图的自动分析水平,并智能化的生成和输出分析数据以及满足多方位的需求,是本发明所要解决的难题和挑战。
具体实施方式
[0053] 下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
[0054] 心电工作站是将采集到的人体弱小的心电信号送入计算机处理系统放大、分析处理,从而达到心电检查、监护的目的。心电信号是心肌细胞的电活动在体表反映出的微弱电流,通过体表电极和放大记录系统记录下来。
[0055] 本发明就是基于记录的心电信号,进行完整快速的自动分析形成报告数据;并建立了对报告数据进行查询、按请求或设定的输出模式和数据格式输出、以及对报告数据的更新和修改的机制。
[0056] 下面首先结合图1所示的心电信息处理方法的流程图,对本发明的心电信息处理方法进行详述。
[0057] 如图1所示,本发明的心电信息处理方法主要包括如下步骤:
[0058] 步骤110,心电工作站接收心电监测设备输出的心电图数据;
[0059] 具体的,心电监测设备具体可以是单导联或多导联的心电监测仪,每台心电检测设备都有唯一的设备ID,从而能够对测得的数据进行标记,以表明该数据是由哪台设备获得的。
[0060] 心电工作站在本发明中是指具有心电图数据分析处理功能的且能够提供用户进行信息交互的设备,能够实现数据传输、用户管理和数据管理以及心电图数据的报告输出管理等功能。
[0061] 它与心电监测设备可以集成于一体,也可以是二者通过有线方式或无线网络进行连接进行数据传输。其中无线网络包括无线但不限于基于IEEE802.11b标准的无线局域网(WIFI),蓝牙,3G/4G/5G移动通信网络,物联网等方式。在本实施例中的心电监测设备,侧重于心电信号采集的功能实现,输出心电图数据由心电工作站进行处理。
[0062] 心电监测设备通过无创心电图检查的方式对心脏细胞电生理活动产生的信号以单导联或多导联的形式进行采集记录,得到心电图数据发送到心电工作站。心电图数据中包括被测对象ID、心电检测设备的设备ID和检测时间信息。
[0063] 步骤120,对心电图数据进行心电数据分析,生成报告数据并进行存储;
[0064] 考虑到在心电信号的记录过程中同时还会记录到其他非心源性的电信号,比如骨骼肌活动带来的肌电信号干扰等等,因此我们认为需要对心电信号进行有效的干扰识别和排除,才能够有效降低因为干扰信号造成的误报。
[0065] 此外,心电信号是心肌电活动过程的体现,因此心电信号除了可以用来检测心率以外,还可以体现出大量的心脏状态的信息。在心脏状态出现问题的时候,心电信号会出现相应的改变。在对业内现有的心电信号处理方法的研究中我们发现,目前只对心电信号进行了非常有限的分析和报警。对此,除了对心电信号进行有效的干扰识别和排除,以降低因为干扰信号造成的误报之外,我们认为还可以从以下几点进行改进:
[0066] 第一,在心搏特征提取中需要对P波、T波进行准确识别,可以避免心搏检测的多检和漏检,比如对一些特殊心电图信号,例如心律比较缓慢患者的高大T波,或者T波肥大的信号的多检。
[0067] 第二,对心搏的分类进行更加细致的划分,而不能仅停留在窦性、室上性和室性这三种分类,从而满足临床心电图医生复杂全面的分析要求。
[0068] 第三,准确识别房扑房颤和ST-T改变,从而能够有助于提供对ST段和T波改变对心肌缺血分析的帮助。
[0069] 第四,对心搏和心电事件的准确识别。
[0070] 在本发明中,我们针对上述几点,通过对心电图数据的分析计算,特别是引入人工智能(AI)技术,对采集的数字信号进行心律失常分析、长间歇停搏,扑动和颤动,传导阻滞,早搏和逸搏,心动过缓,心动过快,ST段改变检测、心电事件的分析与归类,以达到产生准确报警信号的目的,从而有效的进行病人生命体征的监护。
[0071] 基于上述几点,本发明的心电图数据的处理过程,采用了基于人工智能自学习的心电图自动分析方法,是基于人工智能卷积神经网络(CNN)模型来实现的。CNN模型是深度学习中的监督学习方法,就是一个模拟神经网络的多层次网络(隐藏层hidden layer)连接结构,输入信号依次通过每个隐藏层,在其中进行一系列复杂的数学处理(Convolution卷积、Pooling池化、Regularization正则化、防止过拟合、Dropout暂时丢弃、Activation激活、一般使用Relu激活函数),逐层自动地抽象出待识别物体的一些特征,然后把这些特征作为输入再传递到高一级的隐藏层进行计算,直到最后几层的全连接层(Full Connection)重构整个信号,使用Softmax函数进行逻辑(logistics)回归,达到多目标的分类。
[0072] CNN属于人工智能中的监督学习方法,在训练阶段,输入信号经过多个的隐藏层处理到达最后的全连接层,softmax逻辑回归得到的分类结果,与已知的分类结果(label标签)之间会有一个误差,深度学习的一个核心思想就是通过大量的样本迭代来不断地极小化这个误差,从而计算得到连接各隐藏层神经元的参数。这个过程一般需要构造一个特别的损失函数(cost function),利用非线性优化的梯度下降算法和误差反向传播算法(backpropagation algorithm,BP),快速有效地极小化整个深度(隐藏层的层数)和广度(特征的维数)都十分复杂的神经网络结构中所有连接参数。
[0073] 深度学习把需要识别的数据输入到训练模型,经过第一隐藏层、第二隐藏层、第三隐藏层,最后是输出识别结果。
[0074] 在本发明中,对心电图数据进行波群特征识别、干扰识别、心搏分类等都是基于人工智能自学习的训练模型来得到输出结果,分析速度快,准确程度高。
[0075] 具体的,该步骤通过对心电图数据进行波群特征识别,得到心电图数据的特征信号,根据特征信号对心电图数据进行心搏分类,结合心电图基本规律参考数据得到心搏分类信息,根据心搏分类信息处理生成心电图事件数据,并最终生成报告数据来实现。进一步的,该过程具体可以通过如图2所示的如下步骤来实现。
[0076] 步骤1201,将心电图数据的数据格式经过重采样转换为预设标准数据格式,并对转换后的预设标准数据格式的心电图数据进行第一滤波处理;
[0077] 具体的,心电图数据的格式适配读取,对不同的设备有不同的读取实现,读取后,需要调整基线、根据增益转换成毫伏数据。经过数据重采样,把数据转换成全流程能够处理的采样频率。然后通过滤波去除高频,低频的噪音干扰和基线漂移,提高人工智能分析准确率。将处理后的心电图数据以预设标准数据格式保存。
[0078] 通过本步骤解决不同在使用不同导联,采样频率和传输数据格式的差异,以及通过数字信号滤波去除高频,低频的噪音干扰和基线漂移。
[0079] 数字信号滤波可以分别采用高通滤波器,低通滤波器和中值滤波,把工频干扰、肌电干扰和基线漂移干扰消除,避免对后续分析的影响。
[0080] 更具体的,可以采用低通、高通巴特沃斯滤波器进行零相移滤波,以去除基线漂移和高频干扰,保留有效的心电信号;中值滤波则可以利用预设时长的滑动窗口内数据点电压幅值的中位数替代窗口中心序列的幅值。可以去除低频的基线漂移。
[0081] 步骤1202,对第一滤波处理后的心电图数据进行心搏检测处理,识别心电图数据包括的多个心搏数据;
[0082] 每个心搏数据对应一个心搏周期,包括相应的P波、QRS波群、T波的幅值和起止时间数据。本步骤中的心搏检测由两个过程构成,一是信号处理过程,从所述第一滤波处理后的心电图数据中提取QRS波群的特征频段;二是通过设置合理的阈值确定QRS波群的发生时间。在心电图中,一般会包含P波、QRS波群、T波成分以及噪声成分。一般QRS波群的频率范围在5到20Hz之间,可以通过一个在此范围内的带通滤波器提出QRS波群信号。然而P波、T波的频段以及噪声的频段和QRS波群频段有部分重叠,因此通过信号处理的方法并不能完全去除非QRS波群的信号。因此需要通过设置合理的阈值来从信号包络中提取QRS波群位置。具体的检测过程是一种基于峰值检测的过程。针对信号中每一个峰值顺序进行阈值判断,超过阈值时进入QRS波群判断流程,进行更多特征的检测,比如RR间期、形态等。
[0083] 在心电信息的记录过程中心搏信号的幅度和频率时时刻刻都在变化,并且在疾病状态下,这种特性会表现的更强。在进行阈值设定时,需要根据数据特征在时域的变化情况动态的进行阈值调整。为了提高检测的准确率和阳性率,QRS波群检测大多采用双幅度阈值结合时间阈值的方式进行,高阈值具有更高的阳性率,低阈值具有更高的敏感率,在RR间期超过一定时间阈值,使用低阈值进行检测,减少漏检情况。而低阈值由于阈值较低,容易受到T波、肌电噪声的影响,容易造成多检,因此优先使用高阈值进行检测。
[0084] 对于不同导联的心搏数据都具有导联参数,用以表征该心搏数据为哪个导联的心搏数据。因此在得到心电图数据的同时也就可以根据其传输来源确定了其导联的信息,将此信息作为心搏数据的导联参数。
[0085] 步骤1203,根据心搏数据确定每个心搏的检测置信度;
[0086] 具体的,置信度计算模块在心搏检测的过程中,根据QRS波群的幅度以及RR间期内噪声信号的幅度比例可以提供针对QRS波群检测置信度的估计值。
[0087] 步骤1204,根据干扰识别二分类模型对心搏数据进行干扰识别,得到心搏数据是否存在干扰噪音,以及用于判断干扰噪音的一个概率值;
[0088] 因为在长时间记录过程中易受多种影响出现干扰现象,导致获取的心搏数据无效或不准确,不能正确反映受测者的状况,同时也增加医生诊断难度及工作量;而且干扰数据也是导致智能分析工具无法有效工作的主要因素。因此,将外界信号干扰降到最低显得尤为重要。
[0089] 本步骤基于以深度学习算法为核心的端到端二分类识别模型,具有精度高,泛化性能强的特点,可有效地解决电极片脱落、运动干扰和静电干扰等主要干扰来源产生的扰动问题,克服了传统算法因干扰数据变化多样无规律而导致的识别效果差的问题。
[0090] 具体可以通过如下方法来实现:
[0091] 步骤A,对心搏数据使用干扰识别二分类模型进行干扰识别;
[0092] 步骤B,识别心搏数据中,心搏间期大于等于预设间期判定阈值的数据片段;
[0093] 步骤C,对心搏间期大于等于预设间期判定阈值的数据片段进行信号异常判断,确定是否为异常信号;
[0094] 其中,异常信号的识别主要包括是否为电极片脱落、低电压等情况。
[0095] 步骤D,如果不是异常信号,则以预设时间宽度,根据设定时值确定数据片段中滑动取样的起始数据点和终止数据点,并由起始数据点开始对数据片段进行滑动取样,至终止数据点为止,得到多个取样数据段;
[0096] 步骤E,对每个取样数据段进行干扰识别。
[0097] 以一个具体的例子对上述步骤A-E进行说明。对每个导联的心搏数据以设定的第一数据量进行切割采样,然后分别输入到干扰识别二分类模型进行分类,获得干扰识别结果和对应结果的一个概率值;对心搏间期大于等于2秒的心搏数据,先判断是否是信号溢出,低电压,电极脱落;如果不是上述情况,就按照第一数据量,从左边心搏开始,向右连续以第一数据量不重叠滑动取样,进行识别。
[0098] 输入可以是任一导联的第一数据量心搏数据,然后采用干扰识别二分类模型进行分类,直接输出是否为干扰的分类结果,获得结果快,精确度高,稳定性好,可为后续分析提供更有效优质的数据。
[0099] 因为干扰数据往往是由外界扰动因素的作用而引起的,主要有电极片脱落、低电压、静电干扰和运动干扰等情况,不但不同扰动源产生的干扰数据不同,而且相同扰动源产生的干扰数据也是多种多样;同时考虑到干扰数据虽然多样性布较广,但与正常数据的差异很大,所以在收集干扰的训练数据时也是尽可能的保证多样性,同时采取移动窗口滑动采样,尽可能增加干扰数据的多样性,以使模型对干扰数据更加鲁棒,即使未来的干扰数据不同于以往任何的干扰,但相比于正常数据,其与干扰的相似度也会大于正常数据,从而使模型识别干扰数据的能力增强。
[0100] 本步骤中采用的干扰识别二分类模型可以如图3所示,网络首先使用2层卷积层,卷积核大小是1x5,每层后加上一个最大值池化。卷积核数目从128开始,每经过一次最大池化层,卷积核数目翻倍。卷积层之后是两个全连接层和一个softmax分类器。由于该模型的分类数为2,所以softmax有两个输出单元,依次对应相应类别,采用交叉熵做为损失函数。
[0101] 对于该模型的训练,我们采用了来源于30万病人近400万精确标注的数据片段。标注分为两类:正常心电图信号或者是有明显干扰的心电图信号片段。我们通过定制开发的工具进行片段标注,然后以自定义标准数据格式保存干扰片段信息。
[0102] 在训练过程,使用两台GPU服务器进行几十次轮循训练。在一个具体的例子中,采样率是200Hz,数据长度是300个心电图电压值(毫伏)的一个片段D[300],输入数据是:InputData(i,j),其中,i是第i个导联,j是导联i第j个片段D。输入数据全部经过随机打散才开始训练,保证了训练过程收敛,同时,控制从同一个病人的心电图数据中收集太多的样本,提高模型的泛化能力,既真实场景下的准确率。训练收敛后,使用100万独立的测试数据进行测试,准确率可以到达99.3%。另有具体测试数据如下表1。
[0103]
[0104]
[0105] 表1
[0106] 步骤1205,根据检测置信度确定心搏数据的有效性,并且,根据确定有效的心搏数据的导联参数和心搏数据,基于干扰识别的结果和时间规则合并生成心搏时间序列数据,并根据心搏时间序列数据生成心搏分析数据;
[0107] 具体的,由于心电图信号的复杂性以及每个导联可能受到不同程度的干扰影响,依靠单个导联检测心搏会存在多检和漏检的情况,不同导联检测到心搏结果的时间表征数据没有对齐,所以需要对所有导联的心搏数据根据干扰识别结果和时间规则进行合并,生成一个完整的心搏时间序列数据,统一所有导联心搏数据的时间表征数据。其中,时间表征数据用于表示每个数据点在心电图数据信号时间轴上的时间信息。根据这个统一的心搏时间序列数据,在后续的分析计算时,可以使用预先设置好的阀值,对各导联心搏数据进行切割,从而生成具体分析需要的各导联的心搏分析数据。
[0108] 上述每个导联的心搏数据在合并前,需要根据步骤1203中获得的检测置信度确定心搏数据的有效性。
[0109] 具体的,导联心搏合并模块执行的心搏数据合并过程如下:根据心电图基本规律参考数据的不应期获取不同导联心搏数据的时间表征数据组合,丢弃其中偏差较大的心搏数据,对上述时间表征数据组合投票产生合并心搏位置,将合并心搏位置加入合并心搏时间序列,移动到下一组待处理的心搏数据,循环执行直至完成所有心搏数据的合并。
[0110] 其中,心电图活动不应期可以优选在200毫秒至280毫秒之间。获取的不同导联心搏数据的时间表征数据组合应满足以下条件:心搏数据的时间表征数据组合中每个导联最多包含一个心搏数据的时间表征数据。在对心搏数据的时间表征数据组合进行投票时,使用检出心搏数据的导联数占有效导联数的百分比来决定;若心搏数据的时间表征数据对应导联的位置为低电压段、干扰段以及电极脱落时认为该导联对此心搏数据为无效导联。在计算合并心搏具体位置时,可以采用心搏数据的时间表征数据平均值得到。在合并过程中,本方法设置了一个不应期来避免错误合并。
[0111] 在本步骤中,通过合并操作输出一个统一的心搏时间序列数据。该步骤同时能够降低心搏的多检率和漏检率,有效的提高心搏检测的敏感度和阳性预测率。
[0112] 步骤1206,对心搏分析数据进行信号质量分析,评估心搏分析数据的信号质量,得到心搏分析数据的信号质量评价参数。
[0113] 如果监测的心电图数据是静态心电图数据,那么信号质量会相对较好,有效信号的比例比较高,这种情况下可以不用进行信号质量评估。而如果监测的是动态心电图数据,则在监测过程中会发生各种扰动,导致无效信号的产生会相对较多,为了避免无效信号影响最终的结果计算,需要进行信号质量评估,降低无效信号对最终结果的影响。
[0114] 具体的,通过提取心搏分析数据中的RR间期信号,对RR间期信号进行第二滤波处理和包络计算,确定噪声信号强度,并计算相对于相应的心搏时间序列数据的最大振幅的信号噪声比,确定信号质量评价参数。其具体步骤可以包括:
[0115] 步骤A,提取心搏分析数据中QRS波群的位置信息和宽度信息;
[0116] 步骤B,提取相邻两个QRS波群信号之间的RR间期的信号;
[0117] 步骤C,对RR间期的信号进行滤波处理,并对滤波处理后的信号进行包络计算,得到RR间期的噪声信号的平均功率;其中,RR间期的噪声信号的平均功率为RR间期内包络幅度的均值。
[0118] 步骤D,根据噪声信号的平均功率和QRS波群信号的功率得到信号质量评价参数;
[0119] 进一步具体的,信号质量评价参数可以由RR间期内相对于QRS波群的噪声水平来表示。具体通过根据QRS波群的功率和噪声信号的平均功率计算得到。
[0120] 以公式表示为:
[0121] 其中,Si为第i个QRS波群信号的幅度,Ni,t为第i个RR间期区间内第t个样本点的幅值,T为RR间期长度。
[0122] 步骤1207,根据心搏分类模型对心搏分析数据进行幅值和时间表征数据的特征提取和分析,得到心搏分析数据的一次分类信息;
[0123] 具体的,该步骤在步骤1205之后执行。不同心电监测设备在信号测量、采集或者输出的导联数据等方面存在的差异,因此可以根据具体情况,使用简单的单导联分类方法,或者是多导联分类方法。多导联分类方法又包括导联投票决策分类方法和导联同步关联分类方法两种。导联投票决策分类方法是基于各导联的心搏分析数据进行导联独立分类,再把结果投票融合确定分类结果的投票决策方法;导联同步关联分类方法则采用对各导联的心搏分析数据进行同步关联分析的方法。单导联分类方法就是对单导联设备的心搏分析数据,直接使用对应导联模型进行分类,没有投票决策过程。下面对以上所述几种分类方法分别进行说明。
[0124] 单导联分类方法包括:
[0125] 根据心搏时间序列数据,将单导联心搏数据进行切割生成单导联的心搏分析数据,并输入到训练得到的对应该导联的心搏分类模型进行幅值和时间表征数据的特征提取和分析,得到单导联的一次分类信息。
[0126] 导联投票决策分类方法可以具体包括:
[0127] 第一步、根据心搏时间序列数据,对各导联心搏数据进行切割,从而生成各导联的心搏分析数据;
[0128] 第二步、根据训练得到的各导联对应的心搏分类模型对各导联的心搏分析数据进行幅值和时间表征数据的特征提取和分析,得到各导联的分类信息;
[0129] 第三步、根据各导联的分类信息和导联权重值参考系数进行分类投票决策计算,得到所述一次分类信息。具体的,导联权重值参考系数是基于心电数据贝叶斯统计分析得到各导联对不同心搏分类的投票权重系数。
[0130] 导联同步关联分类方法可以具体包括:
[0131] 根据心搏时间序列数据,对各导联心搏数据进行切割,从而生成各导联的心搏分析数据;然后根据训练得到的多导联同步关联分类模型对各导联的心搏分析数据进行同步幅值和时间表征数据的特征提取和分析,得到心搏分析数据的一次分类信息。
[0132] 心搏数据的同步关联分类方法输入是动态心电图设备所有导联数据,按照心搏分析数据统一的心搏位点,截取各导联上相同位置和一定长度的数据点,同步输送给经过训练的人工智能深度学习模型进行计算分析,输出是每个心搏位置点综合考虑了所有导联心电图信号特征,以及心搏在时间上前后关联的心律特征的准确心搏分类。
[0133] 本方法充分考虑了心电图不同导联数据实际上就是测量了心脏电信号在不同的心电轴向量方向传递的信息流,把心电图信号在时间和空间上传递的多维度数字特征进行综合分析,极大地改进了传统方法仅仅依靠单个导联独立分析,然后把结果汇总进行一些统计学的投票方式而比较容易得出的分类错误的缺陷,极大地提高了心搏分类的准确率。
[0134] 本步骤中采用的心搏分类模型可以如图4所示,具体可以为基于人工智能深度学习的卷积神经网络AlexNet,VGG16,Inception等模型启发的端对端多标签分类模型。具体的讲,该模型的网络是一个7层的卷积网络,每个卷积之后紧跟一个激活函数。第一层是两个不同尺度的卷积层,之后是六个卷积层。七层卷积的卷积核分别是96,256,256,384,384,384,256。除第一层卷积核有两个尺度分别是5和11外,其他层卷积核尺度为5。第三、五、六、七层卷积层后是池化层。最后跟着两个全连接层。
[0135] 本步骤中的心搏分类模型,我们采用了训练集包含30万病人的1700万数据样本进行训练。这些样本是根据动态心电图分析诊断的要求对数据进行准确的标注产生的,标注主要是针对常见心律失常,传导阻滞以及ST段和T波改变,可满足不同应用场景的模型训练。具体以预设标准数据格式保存标注的信息。在训练数据的预处理上,为增加模型的泛化能力,对于样本量较少的分类做了小幅的滑动来扩增数据,具体的说,就是以每个心搏为基础,按照一定步长(比如10-50个数据点)移动2次,这样就可以增加2倍的数据,提高了对这些数据量比较少的分类样本的识别准确率。经过实际结果验证,泛化能力也得到了改善。
[0136] 在一个实际训练过程使用了两台GPU服务器进行几十次轮循训练,训练收敛后,使用500万独立的测试数据进行测试,准确率可以到达91.92%。
[0137] 其中,训练数据的截取的长度,可以是1秒到10秒。比如采样率是200Hz,以2.5s为采样长度,取得的数据长度是500个心电图电压值(毫伏)的一个片段D[500],输入数据是:InputData(i,j),其中,i是第i个导联,j是导联i第j个片段D。输入数据全部经过随机打散才开始训练,保证了训练过程收敛,同时,控制从同一个病人的心电图数据中收集太多的样本,提高模型的泛化能力,既真实场景下的准确率。训练时候,同步输入所有导联对应的片段数据D,按照图像分析的多通道分析方法,对每个时间位置的多个空间维度(不同心电轴向量)的导联数据进行同步学习,从而得到一个比常规算法更准确的分类结果。
[0138] 步骤1208,对一次分类信息结果中的特定心搏的心搏分析数据输入到ST段和T波改变模型进行识别,确定ST段和T波评价信息;
[0139] ST段和T波评价信息具体为心搏分析数据对应的ST段和T波发生改变的导联位置信息。因为临床诊断要求对于ST段和T波的改变定位到具体的导联。
[0140] 其中,一次分类信息的特定心搏数据是指包含窦性心搏(N)和其它可能包含ST改变的心搏类型的心搏分析数据。
[0141] ST段和T波改变导联定位模块将一次分类信息的特定心搏数据,按照每个导联依次输入到一个为识别ST段和T波改变的人工智能深度学习训练模型,进行计算分析,输出的结果说明导联片段的特征是否符合ST段和T波改变的结论,这样就可以确定ST段和T波改变发生的在具体那些导联的信息,即ST段和T波评价信息。具体方法可以是:把一次分类信息中结果是窦性心搏的各导联心搏分析数据,输入给ST段和T波改变模型,对窦性心搏分析数据进行逐一识别判断,以确定窦性心搏分析数据是否存在ST段和T波改变特征以及发生的具体导联位置信息,确定ST段和T波评价信息。
[0142] 本步骤中采用的ST段和T波改变模型可以如图5所示,具体可以为基于人工智能深度学习的卷积神经网络AlexNet和VGG16等模型启发的端对端分类模型。具体的讲,该模型是一个7层的网络,模型包含了7个卷积,5个池化和2个全连接。卷积使用的卷积核均为1x5,每层卷积的滤波器个数各不相同。第1层卷积滤波器个数为96;第2层卷积和第3层卷积连用,滤波器个数为256;第4层卷积和第5层卷积连用,滤波器个数为384;第6层卷积滤波器个数为384;第7层卷积滤波器个数为256;第1、3、5、6、7层卷积层后是池化。随后是两个全连接,最后还采用Softmax分类器将结果分为两类。为了增加模型的非线性,提取数据更高维度的特征,故采用两个卷积连用的模式。
[0143] 因为带有ST段和T波改变的心搏在所有心搏中的占比较低,为了兼顾训练数据的多样性及各个类别数据量的均衡性,选取无ST段和T波改变以及有ST段和T波改变的训练数据比例约为2:1,保证了模型在分类过程中良好的泛化能力且不出现对训练数据占比较多一类的倾向性。由于心搏的形态多种多样,不同个体表现的形态不尽相同,因此,为了模型更好估计各分类的分布,能有效提取特征,训练样本从不同年龄,体重,性别和居住地区的个体收集;另外,因为单个个体在同一时间段内的心电图数据往往是高度相似的,所以为了避免过度学习,在获取单个个体的数据时,从所有数据中随机选取不同时间段的少量样本;最后,由于患者的心搏形态存在个体间差异大,而个体内相似度高的特点,因而在划分训练、测试集时,把不同的患者分到不同的数据集,避免同一个体的数据同时出现在训练集与测试集中,由此,所得模型测试结果最接近真实应用场景,保证了模型的可靠性和普适性。
[0144] 步骤1209,根据心搏时间序列数据,对心搏分析数据进行P波和T波特征检测,确定每个心搏中P波和T波的详细特征信息;
[0145] 具体的,详细特征信息包括幅值、方向、形态和起止时间的数据;在对心搏信号的分析中,P波、T波以及QRS波中的各项特征也是心电图分析中的重要依据。
[0146] 在P波和T波特征检测模块中,通过计算QRS波群中切分点位置,以及P波和T波的切分点位置,来提取P波、T波以及QRS波群中的各项特征。可以分别通过QRS波群切分点检测、单导联PT检测算法和多导联PT检测算法来实现。
[0147] QRS波群切分点检测:根据QRS波群检测算法提供的QRS波群段功率最大点以及起止点,寻找单个导联中QRS波群的R点,R’点,S点以及S’点。在存在多导联数据时,计算各个切分点的中位数作为最后的切分点位置。
[0148] 单导联P波、T波检测算法:P波和T波相对QRS波群幅度低、信号平缓,容易淹没在低频噪声中,是检测中的难点。本方法依据QRS波群检测的结果,在消除QRS波群对低频频段的影响后,使用低通滤波器对信号进行第三滤波,使PT波相对幅度增高。之后通过峰值检测的方法在两个QRS波群之间寻找T波。因为T波是心室复极产生的波群,因此T波和QRS波群之间有明确的锁时关系。以检测到的QRS波群为基准,在每个QRS波群到下一个QRS波群间期取中点(比如限制在第一个QRS波群后400ms到600ms之间的范围)作为T波检测结束点,在此区间内选取最大的峰作为T波。再在剩余的峰值内选择幅度最大的峰为P波。同时也根据P波和T波的峰值与位置数据,确定P波和T波的方向和形态特征。优选的,低通滤波的截止频率设置为10-30Hz之间。
[0149] 多导联P波、T波检测算法:在多导联的情况中,由于心搏中各个波的产生时间相同,空间分布不同,而噪声的时间空间分布不同,可以通过溯源算法来进行P、T波的检测。首先对信号进行QRS波群消除处理并使用低通滤波器对信号进行第三滤波以去除干扰。之后通过独立成分分析算法计算原始波形中的各个独立成分。在分离出的各个独立成分中,依据其峰值的分布特征以及QRS波群位置,选取相应的成分作为P波和T波信号,同时确定P波和T波的方向和形态特征。
[0150] 步骤1210,对心搏分析数据在一次分类信息下根据心电图基本规律参考数据、P波和T波的详细特征信息以及ST段和T波评价信息进行二次分类处理,得到心搏分类信息;
[0151] 具体的,心电图基本规律参考数据是遵循权威心电图教科书中对心肌细胞电生理活动和心电图临床诊断的基本规则描述生成的,比如两个心搏之间最小的时间间隔,P波与R波的最小间隔等等,用于将心搏分类后的一次分类信息再进行细分;主要根据是心搏间RR间期以及不同心搏信号在各导联上的医学显著性;心搏审核模块依据心电图基本规律参考数据结合一定连续多个心搏分析数据的分类识别,以及P波和T波的详细特征信息将室性心搏分类拆分更细的心搏分类,包括:室性早搏(V)、室性逸搏(VE)、加速性室性早搏(VT),将室上性类心搏细分为室上性早搏(S)、房性逸搏(SE)、交界性逸搏(JE)和房性加速性早搏(AT)等等。
[0152] 此外,通过二次分类处理,还可以纠正一次分类中发生的不符合心电图基本规律参考数据的错误分类识别。将细分后的心搏分类按照心电图基本规律参考数据进行模式匹配,找到不符合心电图基本规律参考数据的分类识别,根据RR间期及前后分类标识纠正为合理的分类。
[0153] 具体的,经过二次分类处理,可以输出多种心搏分类,比如:正常窦性心搏(N)、完全性右束支阻滞(N_CRB)、完全性左束支阻滞(N_CLB)、室内阻滞(N_VB)、一度房室传导阻滞(N_B1)、预激(N_PS)、室性早搏(V)、室性逸搏(VE)、加速性室性早搏(VT)、室上性早搏(S)、房性逸搏(SE)、交界性逸搏(JE)、加速性房性早搏(AT)、房扑房颤(AF)、伪差(A)等分类结果。
[0154] 通过本步骤,还可以完成基础心率参数的计算。其中基础计算的心率参数包括:RR间期、心率、QT时间、QTc时间等参数。
[0155] 随后,根据心搏二次分类结果,按照心电图基本规律参考数据进行模式匹配,可以得到分类对应于心电图事件数据的以下这些典型的心电图事件,包括但不限于:
[0156] 室上性早搏
[0157] 室上性早搏成对
[0158] 室上性早搏二联律
[0159] 室上性早搏三联律
[0160] 房性逸搏
[0161] 房性逸搏心律
[0162] 交界性逸搏
[0163] 交界性逸搏心律
[0164] 非阵发性室上性心动过速
[0165] 最快室上性心动过速
[0166] 最长室上性心动过速
[0167] 室上性心动过速
[0168] 短阵室上性心动过速
[0169] 心房扑动-心房颤动
[0170] 室性早搏
[0171] 室性早搏成对
[0172] 室性早搏二联律
[0173] 室性早搏三联律
[0174] 室性逸搏
[0175] 室性逸搏心律
[0176] 加速性室性自主心律
[0177] 最快室性心动过速
[0178] 最长室性心动过速
[0179] 室性心动过速
[0180] 短阵室性心动过速
[0181] 二度I型窦房传导阻滞
[0182] 二度II型窦房传导阻滞
[0183] 一度房室传导阻滞
[0184] 二度I型房室传导阻滞
[0185] 二度II型房室传导阻滞
[0186] 二度II型(2:1)房室传导阻滞
[0187] 高度房室传导阻滞
[0188] 完全性左束支阻滞
[0189] 完全性右束支阻滞
[0190] 室内阻滞
[0191] 预激综合症
[0192] ST段和T波改变
[0193] 最长RR间期
[0194] 步骤1211,将心搏分析数据根据心搏分类信息和心电图基本规律参考数据生成心电图事件数据;根据信号质量评价参数对心电图事件数据进行筛选,得到报告结论数据和报告表项数据;根据每种心电图事件数据中的典型数据片段,生成报告图形数据。
[0195] 根据参考信号质量评价参数,剔除心电图事件数据中不可信事件,计算各种心率参数,统计事件的数量和发生时间等,得到报告结论数据和报告表项数据。
[0196] 具体的,心率参数计算包括计算平均心率、及最大、最小心率等。在计算最大和最小心率时,以固定长度片段为统计单位,逐个心搏进行全程扫描和统计比较。片段的长度一般为8-10秒,也可以根据需要自由设定。计算心率时,针对窦性心率占主体和异位心率占主体采用不同的心搏类型统计计算方法。在计算最大最小心率时:针对窦性心率占主体的心电图,仅计算窦性分类心搏;针对房扑房颤类占主体的心电图,仅计算房扑房颤类心搏及窦性心搏;针对非房扑房颤的其他异位心搏占主体的心电图,除伪差外所有类型心搏均参与计算。
[0197] 对心电图事件数据,根据信号质量评价参数进行质量评估,选取数据信号质量最高的事件片段,同时分析片段中的包含的事件种类数量,优先选取最具代表性的片段,优选片段的开始位置,尽量保证事件心搏位于所选取片段的中部,生成报告图形数据。
[0198] 在优选的方案中,心电图事件的选择规则可以具体如下例子所述:
[0199] 对于一般心电图事件,选取单个片段。当片段第一个心搏心率大于等于100时,片段起始点位置距离第一个心搏距离为0.3秒。当片段第一个心搏心率小于等于45时,片段起始点位置距离第一个心搏距离为0.37秒。
[0200] 对于有多个片段的心电图事件,需要对多个片段进行质量评估,依据信号质量评价参数计算截取片段的无干扰信号占比,当无干扰信号占比达到设定的阈值(优选的在60%-95%范围中确定阈值),片段符合筛选条件,从中获得最优典型数据段。
[0201] 根据被测对象ID,报告结论数据、报告表项数据和报告图形数据相关联,存储为报告数据。因此在查询调用时,可以根据被测对象ID直接获取到该被测对象ID相关的各种报告数据。报告数据中还相应的包括有报告数据的检测时间信息。这个信息应当至少包括心电图数据的获取时间/时间段的信息,还可以包括报告数据最后更新的时间。因为考虑到可能对报告数据进行修改,所以也可以对该时间进行记录。
[0202] 步骤130,接收用户输入的报告数据查询指令,根据用户的用户ID查询相应的报告数据,并生成报告数据查询结果列表数据,进行显示输出;
[0203] 具体的,心电工作站能够向用户提供人机交互界面,通过人机交互界面,用户可以进行登录,并查询报告数据。
[0204] 在用户登录时,心电工作站根据用户的登录信息进行权限验证,并根据用户权限信息对应的用户ID进行数据查询权限管理,以获取相应的报告数据。然后对报告数据进行数据提取,得到报告数据查询结果列表数据进行输出。报告数据查询结果列表数据至少包括查询得到的一个或多个报告数据的被测对象ID和检测时间信息。
[0205] 下面以具体的例子来进行说明,此处仅为举例,并不限定其具体实现方式。
[0206] 比如,用户为某科室主治医生,在其登录心电工作站后,进行患者报告数据查询操作时,心电工作站根据其权限获取该科室的患者的ID,根据患者的ID去查询匹配所有被测对象ID,得到该主治医生有权限查阅的患者的报告数据,优选的可以是设定时间段内的报告数据。然后对报告数据进行数据提取,至少提取其中的被测对象ID和检测时间信息,生成报告数据查询结果列表数据,优选的以列表方式在心电工作站的人机交互界面进行显示。其中,被测对象ID具体可以是姓名或患者档案号等。列表的展示顺序可以按照被测对象ID顺序排列,或者按照检测时间信息顺序/逆序排列。
[0207] 又如,用户为某患者,在其登录心电工作站后,进行患者报告数据查询操作时,心电工作站根据其权限获取该患者ID相关的所有或设定时间段内的报告数据。同样的,对报告数据进行数据提取,至少提取其中的被测对象ID和检测时间信息,生成报告数据查询结果列表数据,并以列表方式在心电工作站的人机交互界面进行显示。
[0208] 步骤140,接收用户输入的选择指令,根据选择指令获取被选择的报告数据;
[0209] 具体的,用户通过人机交互界面进行选择输入,从而确定索要选择的报告数据。
[0210] 基于不同的操作目的,支持对报告数据的单个处理操作或批处理操作。
[0211] 比如需要对报告数据进行输出查看、编辑、修改等操作,可以从报告数据查询结果列表数据选择单个查询结果以获取相应的一个报告数据。
[0212] 如果是对报告数据进行打印、传送、下载等操作时,可以从报告数据查询结果列表数据同时选择多个查询结果以一次性的获取相应的多个报告数据。这样可以简化操作。
[0213] 通过心电工作站,可以对用户进行操作权限管理,比如可以设定用户的用户类别信息,例如为医生、普通工作人员、患者等,对于不同类别用户的权限设定为不同。比如用户类别信息为医生,则可以对报告数据进行查询、修改、下载、转发等操作,如果为普通工作人员或患者,只能对报告数据进行查询和打印。
[0214] 在选择报告数据之后,可以对报告数据执行输出(下述步骤150)、修改(下述步骤160)等操作。
[0215] 步骤150,接收用户输入的报告输出指令,根据报告输出指令确定输出模式信息和输出格式信息,并且,根据输出模式信息选择性输出报告结论数据、报告表项数据和/或报告图形数据中的部分数据或全部数据,以及根据输出格式信息,将部分数据或全部数据进行数据格式转换,生成报告输出数据。
[0216] 具体的,当用户在报告数据查询结果列表数据中选择报告数据并请求对报告数据执行输出时,心电工作站根据用户的选择指令获取被选择的报告数据,并根据报告输出模式信息和报告输出格式信息响应的生成报告输出数据。
[0217] 同时,心电工作站获取报告输出模式信息和输出格式信息。报告输出模式信息是指报告以哪种格式输出,可以根据用户权限的不同对应有不同的报告输出模式,比如用户类别信息为患者的用户,仅输出报告数据中的设定的部分数据。报告输出模式还包括输出的数据展示方式。在图7a-7c和图8a-8g中分别展示了不同的报告输出模式,其中图7a-7c为一种静态心电监测数据的报告输出模式,图8a-8g为一种动态心电检测数据的报告输出模式,用户可以根据需要,输入或选择相应的报告输出模式信息,以使心电工作站输出相应输出模式的报告数据。
[0218] 报告的输出格式信息可以是根据不同用途而进行选择的输出格式,用以对报告数据进行格式转换,转换为所需要的数据格式再进行输出。具体格式可以包括:可扩展标记语言(XML)、心电图数据记录与传输的标准通信协议(SCP)、便携式文档格式(PDF)、联合图像专家组(JPEG)、医学数字成像和通信(DICOM)3.0、HL7组织制定的心电图数据注释格式(HI7)等多种格式。
[0219] 心电工作站中预设有默认的报告输出模式信息和输出格式信息,在用户不进行指定时,心电工作站可以按照默认格式进行将报告数据转换为报告输出数据进行输出。
[0220] 报告输出数据的输出包括在心电工作站的人机交互界面上输出,在心电工作站中集成的或连接的打印机进行打印输出等。
[0221] 步骤160,接收用户输入的报告结论修改数据和/或报告表项修改数据;根据报告结论修改数据更新报告结论数据,根据报告表项修改数据更新报告表项数据。
[0222] 具体的,在用户具有报告数据修改权限时,还可以通过心电工作站进行报告数据的修改。其中具体包括对报告结论的修改,以及对于测试数据的修改。在实际应用中,这一功能主要对医生开放。
[0223] 在获取被选择的报告数据之后,如果心电工作站接收到报告结论修改数据和/或报告表项修改数据,首先获取报告数据,并通过人机交互界面进行显示。此时,报告数据的格式为可读写格式。
[0224] 在用户根据报告数据确定需要修改的内容后,通过人际交互界面接收用户对原报告数据中部分数据的删除,并记录用户新输入的数据,这里具体可以包括报告结论数据和报告表项数据,在接收到输入完毕的数据更新指令后,根据用户输入的数据,对原报告数据进行更新。优选的,在报告数据中生成一条记录,记录相应的数据更新的时间和进行这一操作的用户ID。
[0225] 图6为本发明实施例提供的一种心电工作站的结构示意图,该心电工作站包括:处理器和存储器。存储器可通过总线与处理器连接。存储器可以是非易失存储器,例如硬盘驱动器和闪存,存储器中存储有软件程序和设备驱动程序。软件程序能够执行本发明实施例提供的上述方法的各种功能;设备驱动程序可以是网络和接口驱动程序。处理器用于执行软件程序,该软件程序被执行时,能够实现本发明实施例提供的方法。
[0226] 需要说明的是,本发明实施例还提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时,能够实现本发明实施例提供的方法。
[0227] 本发明实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得处理器执行上述方法。
[0228] 本发明实施例提供的基于人工智能自学习的心电信息处理方法及设备,通过数据的预处理,心搏特征检测,干扰信号检测,信号质量评估与导联合并,心搏分类,心搏审核的二次分类,心电图事件分类和心电图参数的分析计算,最终自动输出报告数据的一个完整快速流程的自动化分析方法。本发明的自动分析方法,还可以记录对自动分析结果的修改信息,并收集这些修改的数据反馈给深度学习模型继续训练,不断地改进和提升自动分析方法的准确率。
[0229] 专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。
专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0230] 结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0231] 以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。