基于超声四腔心切面智能获取胎儿心动周期图像的方法
技术领域
本发明属于计算机辅助诊断技术领域,更具体地,涉及一种基于超声四腔心切面智能获取胎儿心动周期图像的方法。
背景技术
胎儿心脏疾病早期筛查可以大大提高新出生婴儿的健康率,也有利于心脏疾病的及时治疗。心脏超声因其价格低廉、实时性强、无有害辐射等优点,是目前普遍使用的胎儿心脏疾病早期筛查手段。目前广泛采用的心脏超声是三维和四维超声,其虽说比较直观,但却依赖二维超声图像,因而二维超声图像是对胎儿做出诊断的基本依据,最终的检查结论也主要以二维超声图像推导而来。
然而,基于二维超声图像的心脏超声技术存在一些不可避免的技术问题:第一、其操作复杂性和专业性决定了二维超声图像必须由受过严格学习与培训的专业超声医师解读以用于后期的诊断,从而影响了该技术的使用广泛性;第二、不同医生针对现有心脏超声技术获取的同一对象的心脏相关指标的诊断结果会存在差异,甚至同一个医生针对同一对象的诊断结果也会存在前后差异,这会很大程度影响最终诊断结果的准确性。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于超声四腔心切面智能获取胎儿心动周期图像的方法,其目的在于,解决现有基于二维超声图像的心脏超声技术中存在的上述技术问题,同时可以辅助超声医师精准定位胎儿四腔心标准面的舒张末期与收缩末期,以此截取完整的一个心动周期,方便后续的智能分析与相关数据测量,从而不仅可以显著减少人为原因造成的胎儿心脏诊断结果偏差较大的状况,还能够得到一个更为客观、科学、稳定的诊断,还可以大大减轻超声医师的工作负担。
为实现上述目的,按照本发明的一个方面,提供了一种基于超声四腔心切面智能获取胎儿心动周期图像的方法,包括以下步骤:
(1)实时获取胎儿心脏超声心动图像;
(2)将步骤(1)中获取的超声心动图像输入训练好的基于单帧图像目标检测的YOLO v3模型中,以获取四腔心切面以及该切面下的心脏框选部位;
(3)将步骤(2)中得到的四腔心切面下的心脏框选部位输入训练好的YOLO v3模型的DarkNet53网络中提取特征,将提取的特征输入训练好的SVM分类器,以获取连续多帧初始帧图像,并将这连续多帧初始帧图像中最中间的一帧作为粗定位的心脏收缩末期帧图像。
(4)将步骤(3)中得到的粗定位的心脏收缩末期帧图像的前后多帧初始帧图像、以及该粗定位的心脏收缩末期帧图像一起输入训练好的GRU网络,以获取这些帧图像属于心脏收缩末期帧图像的概率,所有概率组成概率数组;
(5)将步骤(4)得到的概率数组中获取最大概率对应的帧图像,作为当前心脏收缩末期帧图像,即当前分界帧;
(6)重复执行上述步骤(1)至(4)一次,将得到的概率数组中最大概率对应的帧图像作为下一分界帧,将该下一分界帧、步骤(5)得到的当前分界帧、以及这两帧之间的多个帧图像作为心动周期图像输出。
优选地,步骤(2)中使用的基于单帧图像目标检测的YOLO v3模型是通过以下步骤训练得到的:
(2-1)获取胎儿心脏超声图像数据集,并将其划分为训练数据集和测试数据集;
(2-2)对YOLO v3模型中的DarkNet-53网络进行预训练,以得到参数,并对该参数进行冻结处理;
(2-3)对步骤(2-1)中得到的训练数据集中的每一帧胎儿心脏超声图像进行预处理操作,以得到预处理后的训练数据集;
(2-4)将步骤(2-3)预处理后的训练数据集输入YOLO v3模型进行训练。
优选地,步骤(2-2)具体为,首先获取ImageNet数据集,使用ImageNet数据集中的分类训练任务对DarkNet-53网络和SVM的组合进行预训练,使其具备强大的特征提取能力,在预训练完成后,丢掉DarkNet-53网络中最后的全卷积层以及SVM,冻结其训练出的参数作为图2所示模型中的DarkNet-53网络,用于提取输入图像的特征。
优选地,步骤(2-3)的预处理操作首先是对每一帧胎儿心脏超声图像进行数据增广操作,然后对数据增广操作后的每一帧胎儿心脏超声图像进行归一化和灰度化处理,以得到预处理后的训练数据集。
优选地,步骤(2-4)具体为,首先将步骤(2-3)预处理后的训练数据集输入DarkNet53网络,以提取不同尺度的特征,然后将提取的特征分别输入YOLO v3模型的上中下三个不同尺度的分支中,其中中间尺度的分支还融合了上面分支的特征,下面分支融合中间分支特征,随后三个分支都经过一个DBL模块处理和一个二维卷积操作,随后输出三个不同尺寸张量:y1(13*13*30)、y2(26*26*30)以及y3(52*52*30),其中的DBL模块包括一个卷积层、一个BN层和一个激活函数变体层。
优选地,步骤(3)中使用的SVM分类器是通过以下步骤训练得到的:
(3-1)获取已经标记过的四腔心切面超声图像;
(3-2)将步骤(3-1)中四腔心切面超声图像的心脏框选部位输入已经冻结参数的DarkNet53网络中,以获取特征。
(3-3)使用SVM分类器的Lib-SVM库对步骤(3-2)提取的特征做二分类训练。
优选地,步骤(4)具体为,首先是将粗定位的心脏收缩末期帧图像的前后多帧初始帧图像、以及该粗定位的心脏收缩末期帧图像的心脏框选部位输入YOLO v3模型的DarkNet53网络中提取特征,然后将提取的特征输入双向GRU模块以输出一个含有多个元素的概率数组,分别代表不同的帧图像属于心脏收缩末期帧图像的概率。
优选地,步骤(4)中,如果得到的概率数组中的元素比较均匀,则重复执行步骤(1)到(4),直到概率数组中的元素不均匀为止,然后进入步骤(5)。
优选地,步骤(6)中,如果得到的概率数组中的元素比较均匀,则重复执行上述步骤(1)到(4),直到概率数组中的元素不均匀为止,再将得到的概率数组中最大概率对应的帧图像作为下一分界帧,将该下一分界帧、步骤(5)得到的当前分界帧、以及这两帧之间的多个帧图像作为心动周期图像输出。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、本发明由于采用了步骤(2),其自动精确地定位到胎儿四腔心标准切面,十分利于心动周期的标准化采集,因此能够解决现有基于二维超声图像的心脏超声技术使用广泛性差的技术问题,让基层医疗机构也能进行标准化胎儿心动周期的超声采集。
2、本发明由于采用了步骤(3)和步骤(4),其基于初步定位与精细定位结合的方式寻找胎儿心脏四腔心的收缩末期,并在所找相邻收缩末期间隔与胎儿心动周期频率上基本吻合或合理的前提下,以此确定一个完整的心动周期(两个相邻的收缩末期以及他们中间的所有帧组成)。因此标准化心动周期视频的采集能够解决(至少减少)现有基于二维超声图像的心脏超声技术由于同一对象的诊断结果会存在前后差异,这会很大程度影响最终诊断结果的准确性的技术问题。
3、本发明将深度学习技术应用于实时超声心动周期的自动化截取、智能分析与智能测量工作,实现了超声心动关键性数据—标准切面下的心动周期的自动标准化采集,为心脏发育与疾病诊断提供最直接有效的参考信息。
4、本发明自动化程度高,自动识别四腔心标准切面(也包括其他重要切面),并能提示医师,之后自动提取基于此标准切面的心动周期,有利于后续的智能化分析心动周期,以及智能化测量相关指标,比如心脏大小等等。
5、本发明属于辅助自动化工具,能大大简化超声医师的工作量,简化原有的工作流程,无额外操作,门槛极低,可依附于各类超声设备,并广泛应用于各大妇幼医院的胎儿超声检查。
附图说明
图1是本发明基于超声四腔心切面智能获取胎儿心动周期图像的方法的整体流程示意图;
图2是本发明方法的步骤(2)中使用的基于单帧图像目标检测的YOLOv3模型的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明基于深度学习的胎儿四腔心切面实时动态视频获取方法将深度学习技术应用到胎儿超声心脏检测中,能够实现二维超声心动周期视频数据采集的最小化、有效化以及规范化,且保存的都是最有效的资源,在大大节省硬盘资源的同时,也为后续的诊断提供了第一手最有效、最精简的资料。
本发明的基本思路在于,提供一种基于超声四腔心切面智能获取胎儿心动周期图像的方法,其实时采集含有若干周期的胎儿四腔心切面超声心动视频集;使用经过训练的基于单帧图像目标检测的网络模型检测出的超声视频帧中的四腔心切面收缩末期;下一步将此帧前后多帧输入能处理时间序列的深度学习模块进一步优化选择,继而得到更为精确合理的四腔心切面收缩末期所对应的帧;这样,两相邻收缩末期以及中间的所有帧即为一个心动周期,均匀提取其中的四到五帧即为最终输出。
如图1所示,本发明基于超声四腔心切面智能获取胎儿心动周期图像的方法包括以下步骤:
(1)实时获取胎儿心脏超声心动图像;
具体而言,本步骤中是从深圳妇幼保健院的超声设备(主要是西门子、三星、迈瑞DC等公司生产的系列超声设备)实时获取的胎儿超声心动图像;
(2)将步骤(1)中获取的超声心动图像输入训练好的基于单帧图像目标检测的YOLO v3模型中,以获取四腔心切面以及该切面下的心脏框选部位;
如图2所示,其示出了本步骤中使用的基于单帧图像目标检测的YOLO v3模型,该模型经过训练,能在超声医师扫描胎儿心脏时,自动识别出四腔心切面并给出提示,然后定位到此切面下的心脏部位。
本步骤中使用的基于单帧图像目标检测的YOLO v3模型是通过以下步骤训练得到的:
(2-1)获取胎儿心脏超声图像数据集,并将其划分为训练数据集和测试数据集;
具体而言,本发明中使用的胎儿心脏超声图像数据集是深圳妇幼保健院超声医师专业标注的55000张图像,分为5类(本发明可以适用于不同切面下的心动周期截取任务,这里以四腔心切面为例,所以其他切面也标注很完备):四腔心切面(特别标出了心脏收缩末期)、左室流出道切面(特别标出了心脏收缩末期)、右室流出道切面(特别标出了心脏收缩末期)、3VT切面(特别标出了心脏收缩末期)、以及其他类别,并且所有图像中都被标注出了心脏部分用于目标检测的定位,其中每种类别有10000张图像用于训练,剩余的5000张图像用于测试。由于心脏收缩末期的确定是一个动态过程,单从一张静态图像上很难确定(目标检测技术是基于静态图像),所以标注时将心脏收缩末期附近的约10帧图像都看做心脏收缩末期进行标记(具体看是否难以区分)。
(2-2)对YOLO v3模型中的DarkNet-53网络进行预训练,以得到参数,并对该参数进行冻结处理;
具体而言,本步骤首先是获取ImageNet数据集,使用ImageNet数据集中的分类训练任务对DarkNet-53网络和支持向量机(Support vector machine,简称SVM)的组合进行预训练,使其具备强大的特征提取能力,在预训练完成后,丢掉DarkNet-53网络中最后的全卷积层以及SVM,冻结其训练出的参数作为图2所示模型中的DarkNet-53网络,用于提取输入图像的特征。
需要注意的是,以上步骤(2-1)和(2-2)均是训练前的准备,没有严格的先后顺序之分。
(2-3)对步骤(2-1)中得到的训练数据集中的每一帧胎儿心脏超声图像进行预处理操作,以得到预处理后的训练数据集;
具体而言,预处理操作首先是对每一帧胎儿心脏超声图像进行诸如随机翻转、旋转(-30°、-15°、15°、30°等)、明暗调节等的数据增广操作,然后对数据增广操作后的每一帧胎儿心脏超声图像进行归一化(即将每一帧胎儿心脏超声图像中的每个像素点值映射到[-1,1])和灰度化处理(如有彩图,则将其全部转化为灰度图),以得到预处理后的训练数据集。
本步骤的目的,是使得训练模型更稳定,且都是在线预处理,并未在处理后存储到硬盘上,而是直接输入后续网络训练。
(2-4)将步骤(2-3)预处理后的训练数据集输入YOLO v3模型进行训练。
具体而言,本步骤首先将步骤(2-3)预处理后的训练数据集输入DarkNet53网络,以提取不同尺度的特征(此DarkNet53网络的参数加载自步骤(2-2)中预训练得到的参数,加载后即刻冻结,不再更新),然后将提取的特征分别输入YOLO v3模型的上中下三个不同尺度的分支中(如图2所示),其中中间尺度的分支还融合了上面分支的特征,下面分支融合中间分支特征,随后三个分支都经过一个DBL模块处理和一个二维卷积操作,其中的DBL模块由一个卷积(convolution,简称conv)层、一个批量归一化(batch normalization,简称BN)层和一个激活函数变体层(leaky-Relu)组成,随后输出三个不同尺寸张量:y1(13*13*30)、y2(26*26*30)以及y3(52*52*30),其中y1对应分支(对应张量尺寸为13*13)负责检测大型目标,而y3对应分支(对应张量尺寸为52*52)检测较小的目标,y2对应分支(对应张量尺寸为26*26)检测中等尺寸目标。因为分类目标有5类:四腔心切面、左室流出道切面、右室流出道切面、3VT切面以及其他,总共需要的分类类型数为5。这里设定每个网格单元预测3个框(box),所以每个框需要有(x,y,w,h,confidence)五个基本参数,其中(x,y,w,h)标识框的中心位置以及大小,confidence表示分类概率,加上5个类别的概率分量,所以输出的y1、y2和y3的第三个维度等于3*(5+5)=30,如图2右端输出所示。
(3)将步骤(2)中得到的四腔心切面下的心脏框选部位输入训练好的YOLO v3模型的DarkNet53网络中提取特征,将提取的特征输入训练好的SVM分类器,以获取连续多帧初始帧图像,并将这连续多帧初始帧图像中最中间的一帧作为粗定位的心脏收缩末期帧图像。
通常情况下,由于收缩末期的判断需要动态确定,所以SVM分类器会判定连续多帧图像都是心脏收缩末期对应的初始帧图像,基于心动的周期性,取这些连续初始帧图像的中间1帧图像作为粗定位的心脏收缩末期帧图像是合理的,且这里是粗定位。
具体而言,送入SVM分类器前,需要先用之前已经训练过的DarkNet53提取特征,然后将提取的特征送入SVM分类器识别。还要特别注意的是,只有检测到当前处于四腔心切面的前提下才会做以后的SVM识别操作。
本步骤中使用的SVM分类器是通过以下步骤训练得到的:
(3-1)获取已经标记过的四腔心切面超声图像;
具体而言,获取的四腔心切面超声图像已经被框出心脏部位,且已经被标记出是否为心脏收缩末期超声图像,此四腔心切面超声图像是由深圳妇幼保健院提供,共10000张,其中收缩末期超声图像5000张,其他状态超声图像5000张。
(3-2)将步骤(3-1)中四腔心切面超声图像的心脏框选部位(即心脏部分)输入已经冻结参数的DarkNet53网络中,以获取特征。
没有整张图像输入,是为了排除心脏以外其他部位对分类的影响,标记框大小不同,放缩到统一尺寸,再训练即可。
(3-3)使用SVM分类器的Lib-SVM库对步骤(3-2)提取的特征做二分类训练。
(4)将步骤(3)中得到的粗定位的心脏收缩末期帧图像的前后多帧初始帧图像、以及该粗定位的心脏收缩末期帧图像一起输入训练好的双向门控循环单元(GatedRecurrent Unit,简称GRU)网络,以获取这些帧图像属于心脏收缩末期帧图像的概率,所有概率组成概率数组;
本步骤的优点在于,考虑连续多帧帧图像之间的动态时序信息,便于精确定位四腔心切面下的心脏收缩末期帧图像。
在本实施方式中,本步骤中的前后多帧是前3帧和后3帧。
具体而言,本步骤首先是将粗定位的心脏收缩末期帧图像的前后多帧初始帧图像、以及该粗定位的心脏收缩末期帧图像的心脏框选部位输入YOLO v3模型的DarkNet53网络中提取特征,然后将提取的特征输入双向GRU模块(这样便能双向考虑时序信息,有利于按照时间前后双向推理确定收缩末期),最后输出一个含有多个元素(该元素数量与输入的帧图像的数量相同)的概率数组,分别代表不同的帧图像属于心脏收缩末期帧图像的概率。
训练时,此概率数组的训练目标是通过医生对该帧图像的标记来确定(只有标记为心脏收缩末期帧图像所对应的元素概率值为1,其他都为0),然后利用交叉熵损失函数训练即可。
如果本步骤中得到的概率数组中的元素比较均匀,则重复执行步骤(1)到(4),直到概率数组中的元素不均匀为止,然后进入步骤(5);
本发明中所说的“比较均匀”,是指概率数组中不存在一个元素,其比剩余所有元素都大0.1;“不均匀”,指的就是概率数组中存在至少一个元素,其比剩余所有元素都大0.1。
(5)将步骤(4)得到的概率数组中获取最大概率对应的帧图像,作为当前心脏收缩末期帧图像,即当前分界帧;
(6)重复执行上述步骤(1)至(4)一次,将得到的概率数组中最大概率对应的帧图像作为下一分界帧,将该下一分界帧、步骤(5)得到的当前分界帧、以及这两帧之间的多个帧图像作为心动周期图像输出。
如果本步骤中得到的概率数组中的元素比较均匀,则重复执行上述步骤(1)到(4),直到概率数组中的元素不均匀为止,再将得到的概率数组中最大概率对应的帧图像作为下一分界帧,将该下一分界帧、步骤(5)得到的当前分界帧、以及这两帧之间的多个帧图像作为心动周期图像输出。
一般地,分界帧中间的帧图像过多无助于产前诊断,所以这里只均匀采样4到5个中间帧,并与相邻分界帧一起合并为心动周期图像输出。
特别地,从当前状态开始,再次回到当前状态的时刻为止为一个完整心动周期。由于收缩末期状态特征比较明显,故这里选择心脏收缩末期帧图像为分界帧。
本发明还公开了一种基于超声四腔心切面智能获取胎儿心动周期图像的***,包括:
第一模块,用于实时获取胎儿心脏超声心动图像;
第二模块,用于将第一模块获取的超声心动图像输入训练好的基于单帧图像目标检测的YOLO v3模型中,以获取四腔心切面以及该四腔心切面下的心脏框选部位;
第三模块,用于将第二模块得到的四腔心切面下的心脏框选部位输入训练好的YOLO v3模型的DarkNet53网络中提取特征,将提取的特征输入训练好的SVM分类器,以获取连续多帧初始帧图像,并将这连续多帧初始帧图像中最中间的一帧作为粗定位的心脏收缩末期帧图像;
第四模块,用于将第三模块得到的粗定位的心脏收缩末期帧图像的前后多帧初始帧图像、以及该粗定位的心脏收缩末期帧图像一起输入训练好的GRU网络,以获取这些帧图像属于心脏收缩末期帧图像的概率,所有概率组成概率数组;
第五模块,用于将第四模块得到的概率数组中获取最大概率对应的帧图像,作为当前心脏收缩末期帧图像,即当前分界帧;
第六模块,用于重复执行上述步骤第一模块至第四模块一次,将得到的概率数组中最大概率对应的帧图像作为下一分界帧,将该下一分界帧、第五模块得到的当前分界帧、以及这两帧之间的多个帧图像作为心动周期图像输出。
测试结果
这里先分别列出标准切面检测、SVM分类与GRU模块的性能指标,再评价最终的心动周期分割的准确性:
(1)标准切面检测
单独测试时,利用具体实施方式中(2-1)收集的5000张图像做测试。
如下表1所示,其示出了本发明方法中使用的YOLO v3目标检测模型在四腔心标准切面识别定位任务上的准确率(Accuracy)、精确率(Precision)、召回率(Recall)以及检测帧速率(Frame per second,简称FPS):
准确率 |
精确率 |
召回率 |
检测帧速率 |
96.96% |
97.90% |
94.25% |
45 |
表1
通过上表1可以看出:
(a)YOLO V3对于标准面的识别与定位都很准确;
(b)在Nvidia Tesla P100上运行的帧速率达到约45帧/秒,达到实时。
(2)SVM分类
收集1000张四腔心切面超声图作为测试图像,且已经框出心脏部位以及标记出收缩末期,由已训练的SVM分类正确率可达99.50%。
(3)GRU模块
收集50个四腔心切面超声视频作为测试集,且已经框出心脏部位以及标记出收缩末期,由已训练的GRU定位正确率可达90.50%,即使不正确,确定的帧也基本在标记帧的前后2帧范围内,总的来说,效果比较理想。
(4)总体准确率
直接输入已标记的视频帧(收集的测试视频帧大概有100段视频,四种不同切面与其他情况各20段,每段视频包含5-10个左右心动周期),计算四腔心切面下由模型确定准确的收缩末期与所有标记的收缩末期数量比例。经运行测试,识别准确率为90.88%,其中即使所确定的不完全正确的帧,也在标记帧的前后3帧以内,由此基本保证了最终的心动周期的准确性。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。