基于深度学习分割网络的ECG信号的R峰检测方法及系统

文档序号:28809329发布日期:2022-02-09 03:28阅读:750来源:国知局
基于深度学习分割网络的ECG信号的R峰检测方法及系统
基于深度学习分割网络的ecg信号的r峰检测方法及系统
技术领域
1.一种基于深度学习分割网络的ecg信号的r峰检测方法及系统,用于ecg信号的r峰检测,属于医学信号检测领域。


背景技术:

2.心电图(ecg)是利用心电图机从体表记录心脏每一心动周期所产生的电活动变化图形的技术。心电图信号(ecg信号)的r峰的准确检测对于心脏监测至关重要。最早期的r峰检测只是使用简单的数字滤波器组合。从那时起,已经有众多的尝试来提高r峰检测算法的准确性和计算效率。其中包括小波变换、经验模态分解(emd)、时序神经网络和相关混合方法。大多数上述方法评估其算法都是基于常用的公开数据集进行检测,如基于mitbih心律失常数据库等。然而,与常用公开数据集的数据不同,真实的临床场景更加的复杂多变,信号常常被噪声包裹,上述方法在充满噪声的数据集上表现往往差强人意。目前,准确高效鲁棒且自适应性强的r峰检测仍然是具有挑战性的任务。
3.综上所述,现有技术存在如下技术问题:
4.1.在复杂多变的场景下,ecg信号常常被噪声干扰,从而造成r峰的检测的准确性差;
5.2.在不同的数据来源下,ecg信号的采集设备,采集质量都有差异,由单个数据集训练的模型在其他数据集上准确性较差,模型的鲁棒性不强;
6.3.现有技术对终端设备有一定的内存要求,一般的硬件设备无法满足参数量巨大的深度学习模型。


技术实现要素:

7.针对上述研究的问题,本发明的目的在于提供一种基于深度学习分割网络的ecg信号的r峰检测方法及系统,解决现有技术在复杂多变的场景下,ecg信号常常被噪声干扰,从而造成r峰的检测的准确性差,鲁棒和自适应性效果差的问题。
8.为了达到上述目的,本发明采用如下技术方案:
9.一种基于深度学习分割网络的ecg信号的r峰检测方法,包括下述步骤:
10.步骤1.获取ecg信号数据集进行预处理;
11.步骤2.根据r峰标注制作一维信号响应图;
12.步骤3.搭建多分支多尺度特征融合的神经网络模型的结构;
13.步骤4.确定神经网络模型的损失函数,并基于一维信号响应图和预处理后的ecg信号训练神经网络模型,得到训练好的神经网络模型;
14.步骤5.基于训练好的神经网络模型对待检测的ecg信号进行预测,得到待检测的ecg信号的r峰。
15.进一步,所述步骤1的具体步骤为:
16.采集一定数量的ecg信号,得到ecg信号数据集,其中,一定数量为20至50个用户不
同时间段的ecg信号;
17.将ecg信号数据集中的ecg信号进行指定频率对齐;
18.指定频率对齐后,对ecg信号进行平滑处理,平滑处理后得到去除异常值的ecg信号;
19.使用均值和方差对平滑处理得到的ecg信号进行标准化处理;
20.标准化处理后,对得到的所有ecg信号进行等时间段分割。
21.进一步,所述步骤2是根据ecg信号人为的r峰标注以及r峰位置前后75ms的区间,标注r峰的标注区间,标注后得到一维信号响应图。
22.进一步,所述步骤3中的神经网络模型的结构在分割网络unet的基础上,将分割网络unet中的每一个卷积层修改为由多分支多尺度卷积核构成,即得到基于r峰分割的1d-unet,其中,多分支多尺度卷积核包含平行的一个身份分支和三个不同卷积核尺寸的分支,四个分支各自经过标准层后,依次通过通道拼接运算和注意力机制融合运算进行融合。
23.进一步,步骤4中的损失函数的表达式如下:
[0024][0025]
其中,yi表示当前采样点i的标签,属于r峰的位置为1,不属于为0,pi表示当前采样点i预测为r峰的概率,l表示神经网络模型的损失函数,n表示训练过程中神经网络模型一轮训练进行梯度下降的单一批次的样本数;
[0026]
在定义损失函数后,根据损失函数的误差值对神经网络模型进行反向传播来修改参数;
[0027]
参数修改后,基于一维信号响应图和预处理后的ecg信号对神经网络模型进行训练;
[0028]
若达到要求,即得到训练好的神经网络模型,否则,再次根据损失函数的误差值对神经网络模型进行反向传播来修改参数后进行训练。
[0029]
进一步,所述步骤5的具体步骤为:
[0030]
将预处理后的待检测的ecg信号输入训练好的神经网络模型进行预测,得出预测的一维信号响应图;
[0031]
按照给定的阈值判定一维信号响应图中的各位置是否满足要求,若满足,将相邻的r峰位置取中值进行合并,合并后得到r峰的最终预测位置,若不满足,则不处理。
[0032]
一种基于深度学习分割网络的ecg信号的r峰检测系统,包括:
[0033]
采集模块:获取ecg信号数据集进行预处理;
[0034]
响应图制作模块:根据r峰标注制作一维信号响应图;
[0035]
搭建模块:搭建多分支多尺度特征融合的神经网络模型的结构;
[0036]
训练模块:确定神经网络模型的损失函数,并基于一维信号响应图和预处理后的ecg信号训练神经网络模型,得到训练好的神经网络模型;
[0037]
检测模块:基于训练好的神经网络模型对待检测的ecg信号进行预测,得到待检测的ecg信号的r峰。
[0038]
进一步,所述采集模块的具体步骤为:
[0039]
采集一定数量的ecg信号,得到ecg信号数据集,其中,一定数量为20至50个用户不
同时间段的ecg信号;
[0040]
将ecg信号数据集中的ecg信号进行指定频率对齐;
[0041]
指定频率对齐后,对ecg信号进行平滑处理,平滑处理后得到去除异常值的ecg信号;
[0042]
使用均值和方差对平滑处理得到的ecg信号进行标准化处理;
[0043]
标准化处理后,对得到的所有ecg信号进行等时间段分割。
[0044]
进一步,所述响应图制作模块是根据ecg信号人为的r峰标注以及r峰位置前后75ms的区间,标注r峰的标注区间,标注后得到一维信号响应图。
[0045]
进一步,所述搭建模块中的神经网络模型的结构在分割网络unet的基础上,将分割网络unet中的每一个卷积层修改为由多分支多尺度卷积核构成,即得到基于r峰分割的1d-unet,其中,多分支多尺度卷积核包含平行的一个身份分支和三个不同卷积核尺寸的分支,四个分支各自经过标准层后,依次通过通道拼接运算和注意力机制融合运算进行融合;
[0046]
训练模块中确定的神经网络模型的损失函数的表达式如下:
[0047][0048]
其中,yi表示当前采样点i的标签,属于r峰的位置为1,不属于为0,pi表示当前采样点i预测为r峰的概率,l表示神经网络模型的损失函数,n表示训练过程中神经网络模型一轮训练进行梯度下降的单一批次的样本数;
[0049]
在定义损失函数后,根据损失函数的误差值对神经网络模型进行反向传播来修改参数;
[0050]
参数修改后,基于一维信号响应图和预处理后的ecg信号对神经网络模型进行训练;
[0051]
若达到要求,即得到训练好的神经网络模型,否则,再次根据损失函数的误差值对神经网络模型进行反向传播来修改参数后进行训练;
[0052]
检测模块的具体步骤为:
[0053]
将预处理后的待检测的ecg信号输入训练好的神经网络模型进行预测,得出预测的一维信号响应图;
[0054]
按照给定的阈值判定一维信号响应图中的各位置是否满足要求,若满足,将相邻的r峰位置取中值进行合并,合并后得到r峰的最终预测位置,若不满足,则不处理。
[0055]
本发明同现有技术相比,其有益效果表现在:
[0056]
一、本发明中构建了多分支多尺度特征融合的神经网络模型,在医学影像分割模型unet的基础上,对于基础卷积模块进行改进,融合了多尺度的特征,兼顾多种尺度特征的表现对于r峰信号检测的准确性有较大的提升,在常用的几个ecg公开数据集中,都达到了0.99的f1分数(f1分数是常用的准确度衡量指标)。
[0057]
二、本发明中构建的多分支多尺度特征融合的神经网络模型中的基础卷积,融合了多尺度的特征,对局部和整体的信息都有更好的学习,在跨数据集的测试上f1分数也能达到0.95,鲁棒性较强。
[0058]
三、本发明中构建的多分支多尺度特征融合的神经网络模型,是在一维卷积模型的基础结构上进行的设计,整个神经网络模型在占用空间较小,常规终端硬件设备即可满
足要求。
附图说明
[0059]
图1为本发明流程框架简图;
[0060]
图2为本发明中的神经网络模型的结构简图,其中,rmk模块卷积即指多分支多尺度卷积核;
[0061]
图3为本发明中多分支多尺度卷积核的结构示意图;
具体实施方式
[0062]
下面将结合附图及具体实施方式对本发明作进一步的描述。
[0063]
具体实施流程主要分为六步:获取ecg信号数据集进行预处理;根据r峰标注制作一维信号响应图;搭建多分支多尺度特征融合的神经网络模型的结构;确定神经网络模型对应的损失函数并训练神经网络模型;基于训练好的神经网络模型对待检测的ecg信号进行预测。
[0064]
一、获取ecg信号数据集
[0065]
采用已公开的数据集辅助模型训练是神经网络训练的通用方式,方便同领域方法间的对照,且能快速获取大量的规范信号数据。目前已有的常用ecg信号数据集为mitbih,cpsc2019,cpsc2020等数据集。其中mitbih数据集质量较高、噪声比较少,cpsc2019及cpsc2020数据集都是在不同临床环境下的数据集,数据质量较低。所有的单导联心电记录都以500赫兹采样,每个录音都是10秒长,我们使用上述三个数据集作为神经网络模型的输入,有助于训练完成的神经网络模型适应复杂的实际情况。
[0066]
二、ecg信号数据集中的数据(ecg信号)预处理
[0067]
对于上述选择的数据,我们对其进行预处理操作,主要有以下几个步骤:依次进行指定频率(500hz)的信号采样、信号标准化和信号分割(10s一段)。ecg信号数据集中数据由于采集设备及来源的不同,存在采集频率的差异,指定频率为不管数据输入的采样频率,都按照500hz的频率对其进行规则采样,使得其与神经网络模型指定的输入尺寸是一致的。信号标准化即为对异常值进行平滑处理后使用均值和方差对信号做标准化处理。信号分割即对标准化处理后得到的所有ecg信号进行等时间段分割,如每次输入模型的ecg信号长度都是10s,这方便训练预测的统一。
[0068]
三、根据r峰标注制作一维信号响应图
[0069]
对于预处理后得到的ecg信号,通常采样点为5千个,其中对应的r峰标注可能存在二十到三十个不等,如果将输出的标签只在r峰标注的位置,此位置的标注即为1,不接受预测结果的误差,这显然是不合理的,并且输出过于稀疏不利于神经网络模型的训练,根据相关的研究,我们将r峰前后75ms的采样点都认为是r峰的一部分,依此制作一维信号响应图。
[0070]
四、搭建多分支多尺度特征融合的神经网络模型的结构
[0071]
搭建多分支多尺度特征融合的神经网络模型的结构,是基于医学影像常用的分割网络unet,搭建基于r峰分割的1d-unet,同时基于ecg信号与图像在尺度及特征提取上的差异,将unet模型的各卷积层修改为多分支并行的结构,融合了多种尺度的特征,神经网络模型的结构图如图2所示。
[0072]
本发明使用python编程语言采用pytorch框架搭建神经网络模型。神经网络模型以长度为500hz,10s的ecg信号记录作为输入。图2的神经网络模型模型分为编码器与解码器两个部分。神经网络模型左半部分为编码器,如图2中输入5000的位置开始至312的位置。神经网络模型右半部分为解码器,如图2中256位置至1的位置。图2中输入信号通过编码器经过4次下采样(指图2中的两倍最大池化)和特征提取(指图2中的rmk模块卷积),抽象出高阶特征,此高阶特征再通过解码器经过四次上采样(指图2中的两倍上采样)和特征提取(指图2中的rmk模块卷积)以及与编码器对应尺寸特征的拼接对特征细节进行补充还原,最后输出与输入信号尺寸一致的响应图。
[0073]
神经网络模型的每一个卷积层都是由多分支多尺度卷积核构成的,多分支多尺度卷积核包含平行的一个身份分支和三个不同卷积核尺寸的分支(如大小为分别为9、15和21),四个分支各自经过标准层后,依次通过通道拼接运算和注意力机制融合运算进行融合,具体如图3所示。
[0074]
总的来说,针对该问题,本发明提供了创新性的多分支多尺度卷积融合的分割网络模型,即在医学影像分割模型unet的基础上,对于基础卷积模块进行改进,融合了多尺度的特征,兼顾多种尺度特征的表现对于r峰信号检测的鲁棒性有较大的提升。
[0075]
五、确定神经网络模型对应的损失函数并训练神经网络模型
[0076]
确定网络对应的损失函数并训练神经网络,对得到的多分支多尺度特征融合的神经网络模型定义损失函数,用于计算神经模型预测结果和真实标签的误差,其模型损失的表达式如下:
[0077][0078]
其中,yi表示当前采样点i的标签,属于r峰的位置为1,不属于为0,pi表示当前采样点i预测为r峰的概率,l表示神经网络模型的损失函数,n表示训练过程中神经网络模型训练的batch的样本数。
[0079]
在定义损失函数后,根据损失函数的误差值对神经网络模型进行反向传播来修改参数;
[0080]
参数修改后,基于一维信号响应图和预处理后的ecg信号对神经网络模型进行训练;
[0081]
若达到要求,即得到训练好的神经网络模型,否则,再次根据损失函数的误差值对神经网络模型进行反向传播来修改参数后进行训练。
[0082]
六、基于训练好的神经网络模型对待检测的ecg信号进行预测
[0083]
在模型预测阶段,对待检测的ecg信号先进行预处理,预处理后输入训练好的神经网络模型,训练好的神经网络模型输出预测的一维信号响应图,按照给定的阈值判定一维信号响应图中的各位置是否满足要求,若满足,将相邻的r峰位置取中值进行合并,合并后得到r峰的最终预测位置,若不满足,则不处理。
[0084]
以上仅是本发明众多具体应用范围中的代表性实施例,对本发明的保护范围不构成任何限制。凡采用变换或是等效替换而形成的技术方案,均落在本发明权利保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1