发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于混合卷积网络获取胎儿四腔心切面心动周期视频的方法,其目的在于,解决现有胎儿心脏检测方法存在的检测工作量大、操作难度大、对超声医师的经验和专业性要求极高、难以保证检测准确性的技术问题,以及需要采集大量的视频数据所导致的相当占用存储资源的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于混合卷积网络获取胎儿四腔心切面心动周期视频方法,包括以下步骤:
(1)获取胎儿心脏超声视频;
(2)对步骤(1)获得的胎儿心脏超声视频进行预处理,以得到预处理后的胎儿心脏超声图像序列;。
(3)将步骤(2)预处理后的胎儿心脏超声图像序列输入训练好的混合卷积网络模型中,以得到完整的四腔心切面心动周期视频。
优选地,步骤(1)具体包括以下子步骤:
(2-1)对于获取的胎儿心脏超声视频中的每一帧胎儿心脏超声图像,对该图像进行全采样处理,以得到全采样后的图像;
(2-2)对全采样后的每一帧图像进行3/4均匀下采样,以得到下采样后的图像;
(2-3)有经验的医师将对图片序列进行标注,具体是标注三个周期的图片,分别是收缩末期,舒张末期,其他周期;
(2-4)使用小波变换法对下采样后的每一帧图像进行去噪,以得到去噪后的图像;
(2-5)对步骤(2-4)得到的去噪后的每一帧图像进行归一化处理,以获得归一化后的图像,所有图像构成预处理后的胎儿心脏超声图像序列。
优选地,混合卷积网络模型包括顺次连接的3D卷积神经网络、2D卷积神经网络、特征融合部分、全连接层、以及Softmax分类器。
优选地,3D卷积神经网络的架构如下:
第一层是输入层:其输入为作为样本的、连续6帧大小为8*256*256*3的图像;.
第二层是第一卷积层,其接收来自输入层的6帧大小为256*256*3的图像,其采用64个大小为3*3*3的卷积核,卷积步长为1*1*1,后面接入RELU激活函数和批量正则化(Batch Normalization,简称BN),该层输出矩阵大小为6*256*256*64;
第三层是第一池化层,池化窗口尺寸为2*2*2,步长为1*2*2,输出矩阵的大小为6*128*128*64;
第四层是第二卷积层,该层采用128个大小为3*3*3的卷积核,卷积步长为1*1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为6*128*128*128;
第五层是第二池化层,池化窗口尺寸为2*2*2,步长为2*2*2,输出矩阵的大小为3*64*64*128;
第六层是第三卷积层,该层采用256个大小为3*3*3的卷积核,卷积步长为1*1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为3*64*64*256;
第七层是第四卷积层,该层采用256个大小为3*3*3的卷积核,卷积步长为1*1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为3*64*64*256;
第八层是第三池化层,池化窗口尺寸为2*2*2,步长为1*2*2,输出矩阵的大小为2*32*32*256;
第九层是第五卷积层,该层采用512个大小为3*3*3的卷积核,卷积步长为1*1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为2*32*32*512;
第十层是第六卷积层,该层采用512个大小为3*3*3的卷积核,卷积步长为1*1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为2*32*32*512;
第十一层是第四池化层,池化窗口尺寸为2*2*2,步长为1*2*2,输出矩阵的大小为2*16*16*512;
本模型中使用的2D卷积神经网络包括以下子部分:
第一层是输入层,输入为样本中的最后一帧大小为256*256*3的图像。
第二层是第一卷积层,其接收来自输入层的图像,其中采用32个大小为3*3的卷积核,步长为1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为256*256*32;
第三层是第二卷积层,采用64个大小为3*3的卷积核,步长为1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为256*256*64;
第四层是第一池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为128*128*64;
第五层是第三卷积层,采用128个大小为3*3的卷积核,步长为1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为128*128*128;
第六层是第二池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为64*64*128;
第七层是第四卷积层,采用256个大小为3*3的卷积核,步长为1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为64*64*256;
第八层是第三池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为32*32*256;
第九层是第五卷积层,采用512个大小为3*3的卷积核,步长为1*1,后面接入RELU激活函数和BN,该层输出矩阵大小为32*32*512;
第十层是第四池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为16*16*512;
优选地,步骤(3)具体包括以下子步骤:
(3-1)将胎儿心脏超声图像序列中的第一个样本(即第1帧到第6帧胎儿心脏超声图像)输入3D卷积神经网络,并将该样本中的最后一帧图像输入2D卷积神经网络;
(3-2)将3D卷积神经网络和2D卷积神经网络处理后得到的特征图输入特征融合部分,以得到融合后的特征图;
(3-3)将融合后的特征图先后输入全连接层和Softmax分类器,以得到该样本下一帧胎儿心脏超声图像的预测类别和分类概率;
(3-4)针对胎儿心脏超声图像序列中的剩余样本,重复上述(3-1)至(3-3),从而获得所有样本中每一个样本的下一帧胎儿心脏超声图像的预测类别和分类概率,所有样本中每一个样本的下一帧胎儿心脏超声图像共同构成新的图像序列;
(3-5)根据步骤(3-4)获取的新的图像序列中每个下一帧胎儿心脏超声图像的预测类别和分类概率分别确定当前收缩末期到下一个收缩末期的时间间隔T1的最大联合分类概率P1、以及当前舒张末期到下一个舒张末期的时间间隔T2的最大联合分类概率P2,取P1和P2中较大值对应的时间间隔作为周期,将该周期内的所有多帧胎儿心脏超声图像作为完整的四腔心切面心动周期视频输出。
优选地,根据步骤(3-4)获取的新的图像序列中每个下一帧胎儿心脏超声图像的预测类别和分类概率分别确定当前舒张末期到下一个舒张末期的时间间隔T1的最大联合分类概率P1这一过程包括以下子步骤:
(a)设置计数器i=1,并初始化最大联合分类概率P1=0;
(b)判断i是否大于n-10,如果是,则输出最大联合分类概率P1,过程结束,否则转入步骤(c);
(c)判断新的图像序列中第i个下一帧胎儿心脏超声图像的预测类别label(i)是否为0,如果是则进入步骤(d),否则设置i=i+1,并返回步骤(b);
(d)设置计数器j=i+1;
(e)判断j是否大于n,如果是,则设置i=i+1,并返回步骤(b),否则转入步骤(f);
(f)判断新的图像序列中第j个下一帧胎儿心脏超声图像的预测类别label(j)是否为2,如果是则进入步骤(g),否则设置j=j+1,并返回步骤(e);
(g)设置距离length_j=j-i,并判断length_j是否大于3并且小于15,如果是进入步骤(h),否则设置j=j+1,并返回步骤(e);
(h)设置计数器k=j+1;
(i)判断k是否大于n,如果是,则设置j=j+1,并返回步骤(e),否则转入步骤(j);
(j)判断新的图像序列中第k个下一帧胎儿心脏超声图像的预测类别label(k)是否为0,如果是则进入步骤(k),否则设置k=k+1,并返回步骤(i);
(k)设置距离length_k=k-j,并判断length_k是否大于3并且小于15,如果是进入步骤(l),否则设置k=k+1,并返回步骤(i);
(l)设置分类概率和P=P(i)+P(j)+P(k),其中P(i)表示新的图像序列中第i个下一帧胎儿心脏超声图像的分类概率,P(j)表示新的图像序列中第j个下一帧胎儿心脏超声图像的分类概率,P(k)表示新的图像序列中第k个下一帧胎儿心脏超声图像的分类概率;
(m)判断分类概率和P是否大于最大联合分类概率P1,如果是则设置P1=P,k=k+1,并返回步骤(i),否则设置k=k+1,并返回步骤(i)。
优选地,根据步骤(3-4)获取的新的图像序列中每个下一帧胎儿心脏超声图像的预测类别和分类概率分别确定当前舒张末期到下一个舒张末期的时间间隔T2的最大联合分类概率P2这一过程包括以下子步骤:
(a)设置计数器i=1,并初始化最大联合分类概率P1=0;
(b)判断i是否大于n-10,如果是,则输出最大联合分类概率P1,过程结束,否则转入步骤(c);
(c)判断新的图像序列中第i个下一帧胎儿心脏超声图像的预测类别label(i)是否为2,如果是则进入步骤(d),否则设置i=i+1,并返回步骤(b);
(d)设置计数器j=i+1;
(e)判断j是否大于n,如果是,则设置i=i+1,并返回步骤(b),否则转入步骤(f);
(f)判断新的图像序列中第j个下一帧胎儿心脏超声图像的预测类别label(j)是否为0,如果是则进入步骤(g),否则设置j=j+1,并返回步骤(e);
(g)设置距离length_j=j-i,并判断length_j是否大于3并且小于15,如果是进入步骤(h),否则设置j=j+1,并返回步骤(e);
(h)设置计数器k=j+1;
(i)判断k是否大于n,如果是,则设置j=j+1,并返回步骤(e),否则转入步骤(j);
(j)判断新的图像序列中第k个下一帧胎儿心脏超声图像的预测类别label(k)是否为2,如果是则进入步骤(k),否则设置k=k+1,并返回步骤(i);
(k)设置距离length_k=k-j,并判断length_k是否大于3并且小于15,如果是进入步骤(l),否则设置k=k+1,并返回步骤(i);
(l)设置分类概率和P=P(i)+P(j)+P(k),其中P(i)表示新的图像序列中第i个下一帧胎儿心脏超声图像的分类概率,P(j)表示新的图像序列中第j个下一帧胎儿心脏超声图像的分类概率,P(k)表示新的图像序列中第k个下一帧胎儿心脏超声图像的分类概率;
(m)判断分类概率和P是否大于最大联合分类概率P1,如果是则设置P1=P,k=k+1,并返回步骤(i),否则设置k=k+1,并返回步骤(i)。
优选地,混合卷积神经网络是通过如下步骤训练得到的:
(a1)获取数据集,将其发送给胎儿超声检查专家进行标注,并获取胎儿超声检查专家标注后的数据集;
(a2)对标注后的数据集进行预处理,以得到预处理后的数据集;
(a3)根据随机剃度下降法并使用步骤(a2)预处理后的数据集对混合卷积神经网络模型进行迭代训练,直到到达迭代次数为止,从而得到训练好的混合卷积神经网络。
优选地,迭代训练过程中的学习率lr=0.002,批量大小batchsize=64,冲量ξ=0.8,迭代次数为200。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)由于本发明采用了步骤(2),在标注工作量上,没有细胞级的标注,从而大幅度减少了医生标注的工作量;
(2)由于本发明采用了步骤(3),连续的图片序列用3D卷积网络可以提取时间趋势特征和空间特征,比起单张图片的检测,保留了时间特性;样本图片的最后一帧图像和下一帧图像的特征比较相似,用2D卷积网络提取最后一帧的图像的空间特征,加强了空间特征的提取;2D网络的特征图和3D网络的特征图融合,能够有效的将空间特征和时间特征都捕捉,加强视频序列预测的有效性,因此能够解决现有胎儿心脏检测方法存在的难以保证检测准确性的技术问题;
(3)由于本发明方法的实现完全不需要采集大量的视频数据,因此能够节省存储资源;
(4)本发明创新性的提出了联合概率的方式获取特征最明显的胎儿心动周期,为医生提供了临床决策支持。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的基本思路在于,提供一种基于混合卷积网络获取胎儿四腔心切面心动周期视频方法,其具体采用3D卷积网络和2D卷积网络来进行预测和抓取。具体是对于视频序列标记关键帧,关键帧包含三种类别,分别是胎儿四腔心切面收缩末期,胎儿四腔心切面舒张末期以及其他中间周期切面。定义胎儿四腔心切面一个完整的周期为一个四腔心切面收缩末期到下一个四腔心切面收缩末期,或者一个四腔心切面舒张末期到下一个四腔心切面舒张末期,在此中间包含其他中间周期切面;以其中一个以视频作为输入数据,采用视频帧序列作为模型输入,通过3D卷积网络来提取时间和空间的特征,2D卷积网络加强空间依赖特征,接着特征融合,最后预测下一帧为三种类别的分类概率和类别,最终统计在类别符合完整周期的情况下,通过连续类别最大的分类概率和来选取即完整又明显的胎儿四腔心切面周期。
如图6所示,本发明提供了一种基于混合卷积网络获取胎儿四腔心切面心动周期视频方法,包括以下步骤:
(1)获取胎儿心脏超声视频;
具体而言,本步骤是采取数据抽取方法,实时的从医疗超声装置获取胎儿心脏超声视频,视频的格式可以是avi、mp4、或wmv等。
(2)对步骤(1)获得的胎儿心脏超声视频进行预处理,以得到预处理后的胎儿心脏超声图像序列;。
本步骤具体包括以下子步骤:
(2-1)对于获取的胎儿心脏超声视频中的每一帧胎儿心脏超声图像,对该图像进行全采样处理,以得到全采样后的图像;
(2-2)对全采样后的每一帧图像进行3/4均匀下采样,以得到下采样后的图像;
具体而言,本步骤使用3/4均匀下采样不会对数据大幅度的降低,这样在首先保证了完整周期不会被过滤掉的同时,保证了胎儿心脏超声视频的时间特性,最终实现降低了1/4的数据量;
(2-3)有经验的医师将对图片序列进行标注,具体是标注三个周期的图片,分别是收缩末期,舒张末期,其他周期;
(2-4)使用小波变换法对下采样后的每一帧图像进行去噪,以得到去噪后的图像;
具体而言,由于医学超声图像自身成像机制的限制,医学超声图像的分辨率很低,而且噪声干扰严重,所以需要对下采样后的图像进行去噪处理,本步骤中采用小波变换去噪,主要是针对超声图像中的斑点噪声进行去噪。
(2-5)对步骤(2-4)得到的去噪后的每一帧图像进行归一化处理,以获得归一化后的图像,所有图像构成预处理后的胎儿心脏超声图像序列。
预处理后的胎儿心脏超声图像序列是每6帧为一个样本,例如第一帧到第六帧是一个样本,第二帧到第七帧为第二个样本,以此类推。
(3)将步骤(2)预处理后的胎儿心脏超声图像序列输入训练好的混合卷积网络模型中,以得到完整的四腔心切面心动周期视频。
如图1所示,本发明中使用的混合卷积网络模型包括顺次连接的3D卷积神经网络、2D卷积神经网络、特征融合部分、全连接层、以及Softmax分类器。
本模型中使用的3D卷积神经网络的架构如下:
第一层是输入层:其输入为作为样本的、连续6帧大小为8*256*256*3的图像;.
第二层是第一卷积层,其接收来自输入层的6帧大小为256*256*3的图像,其采用64个大小为3*3*3的卷积核,卷积步长为1*1*1,该层输出矩阵大小为6*256*256*64;
第三层是第一池化层,池化窗口尺寸为2*2*2,步长为1*2*2,输出矩阵的大小为6*128*128*64;
第四层是第二卷积层,该层采用128个大小为3*3*3的卷积核,卷积步长为1*1*1,该层输出矩阵大小为6*128*128*128;
第五层是第二池化层,池化窗口尺寸为2*2*2,步长为2*2*2,输出矩阵的大小为3*64*64*128;
第六层是第三卷积层,该层采用256个大小为3*3*3的卷积核,卷积步长为1*1*1,该层输出矩阵大小为3*64*64*256;
第七层是第四卷积层,该层采用256个大小为3*3*3的卷积核,卷积步长为1*1*1,该层输出矩阵大小为3*64*64*256;
第八层是第三池化层,池化窗口尺寸为2*2*2,步长为1*2*2,输出矩阵的大小为2*32*32*256;
第九层是第五卷积层,该层采用512个大小为3*3*3的卷积核,卷积步长为1*1*1,该层输出矩阵大小为2*32*32*512;
第十层是第六卷积层,该层采用512个大小为3*3*3的卷积核,卷积步长为1*1*1,该层输出矩阵大小为2*32*32*512;
第十一层是第四池化层,池化窗口尺寸为2*2*2,步长为1*2*2,输出矩阵的大小为2*16*16*512;
本模型中使用的2D卷积神经网络包括以下子部分:
第一层是输入层,输入为样本中的最后一帧大小为256*256*3的图像。
第二层是第一卷积层,其接收来自输入层的图像,其中采用32个大小为3*3的卷积核,步长为1*1,该层输出矩阵大小为256*256*32;
第三层是第二卷积层,采用64个大小为3*3的卷积核,步长为1*1,该层输出矩阵大小为256*256*64;
第四层是第一池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为128*128*64;
第五层是第三卷积层,采用128个大小为3*3的卷积核,步长为1*1,该层输出矩阵大小为128*128*128;
第六层是第二池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为64*64*128;
第七层是第四卷积层,采用256个大小为3*3的卷积核,步长为1*1,该层输出矩阵大小为64*64*256;
第八层是第三池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为32*32*256;
第九层是第五卷积层,采用512个大小为3*3的卷积核,步长为1*1,该层输出矩阵大小为32*32*512;
第十层是第四池化层,池化窗口尺寸为2*2,步长为2*2,输出矩阵的大小为16*16*512;
步骤(3)具体包括以下子步骤:
(3-1)将胎儿心脏超声图像序列中的第一个样本(即第1帧到第6帧胎儿心脏超声图像)输入3D卷积神经网络,并将该样本中的最后一帧图像输入2D卷积神经网络;
(3-2)将3D卷积神经网络和2D卷积神经网络处理后得到的特征图输入特征融合部分,以得到融合后的特征图;
具体而言,在特征融合部分进行特征融合的过程中,由于2D卷积神经网络得到的特征图加上样本维度是4个维度,而3D卷积神经网络得到的特征图是5个维度,因此特征融合部分首先利用reshape函数对2D卷积神经网络得到的特征图加上样本维度进行扩充维度,然后,特征融合部分利用concatenate函数对扩充后的维度和3D卷积神经网络得到的特征图进行特征融合,以得到融合后的特征图;
(3-3)将融合后的特征图先后输入全连接层和Softmax分类器,以得到该样本下一帧胎儿心脏超声图像的预测类别和分类概率;
(3-4)针对胎儿心脏超声图像序列中的剩余样本,重复上述(3-1)至(3-3),从而获得所有样本中每一个样本的下一帧胎儿心脏超声图像的预测类别和分类概率,所有样本中每一个样本的下一帧胎儿心脏超声图像共同构成新的图像序列;
具体而言,第一个样本是从胎儿心脏超声图像序列中第一帧到第六帧,那么本步骤中,第一个样本的下一帧胎儿心脏超声图像就是第七帧;第二个样本是从胎儿心脏超声图像序列中第二帧到第七帧,那么本步骤中,第二个样本的下一帧胎儿心脏超声图像就是第八帧;第三个样本是从胎儿心脏超声图像序列中第三帧到第八帧,那么本步骤中,第二个样本的下一帧胎儿心脏超声图像就是第九帧。。。以此类推,最终,第七帧、第八帧、…共同构成新的图像序列。
一个完整的四腔心切面心动周期可以表示为当前收缩末期到下一个收缩末期的时间间隔,用T1表示,中间包含其他周期和舒张末期;或者,一个完整的四腔心切面心动周期也可以表示为当前舒张末期到下一个舒张末期的时间间隔,用T2表示,中间包含其他周期和收缩末期。
如图2所示,P(num)表示步骤(3-4)获得的新的图像序列中第num个图像(即胎儿心脏超声图像序列中第num个样本的下一帧胎儿心脏超声图像)的分类概率,其中num∈[1,n],其中n表示新的图像序列的长度,0、1、2分别表示步骤(3-4)获得的新的图像序列中第num个图像的预测类别,即四腔心切面收缩末期、舒张末期、以及其他周期;
(3-5)根据步骤(3-4)获取的新的图像序列中每个下一帧胎儿心脏超声图像的预测类别和分类概率分别确定当前收缩末期到下一个收缩末期的时间间隔T1的最大联合分类概率P1、以及当前舒张末期到下一个舒张末期的时间间隔T2的最大联合分类概率P2,取P1和P2中较大值对应的时间间隔(在本发明中是T1)作为周期,将该周期内的所有多帧胎儿心脏超声图像作为完整的四腔心切面心动周期视频输出。
具体而言,根据步骤(3-4)获取的新的图像序列中每个下一帧胎儿心脏超声图像的预测类别和分类概率分别确定当前舒张末期到下一个舒张末期的时间间隔T1的最大联合分类概率P1这一过程包括以下子步骤:
(a)设置计数器i=1,并初始化最大联合分类概率P1=0;
(b)判断i是否大于n-10,如果是,则输出最大联合分类概率P1,过程结束,否则转入步骤(c);
(c)判断新的图像序列中第i个下一帧胎儿心脏超声图像的预测类别label(i)是否为0,如果是则进入步骤(d),否则设置i=i+1,并返回步骤(b);
(d)设置计数器j=i+1;
(e)判断j是否大于n,如果是,则设置i=i+1,并返回步骤(b),否则转入步骤(f);
(f)判断新的图像序列中第j个下一帧胎儿心脏超声图像的预测类别label(j)是否为2,如果是则进入步骤(g),否则设置j=j+1,并返回步骤(e);
(g)设置距离length_j=j-i,并判断length_j是否大于3并且小于15,如果是进入步骤(h),否则设置j=j+1,并返回步骤(e);
(h)设置计数器k=j+1;
(i)判断k是否大于n,如果是,则设置j=j+1,并返回步骤(e),否则转入步骤(j);
(j)判断新的图像序列中第k个下一帧胎儿心脏超声图像的预测类别label(k)是否为0,如果是则进入步骤(k),否则设置k=k+1,并返回步骤(i);
(k)设置距离length_k=k-j,并判断length_k是否大于3并且小于15,如果是进入步骤(l),否则设置k=k+1,并返回步骤(i);
(l)设置分类概率和P=P(i)+P(j)+P(k),其中P(i)表示新的图像序列中第i个下一帧胎儿心脏超声图像的分类概率,P(j)表示新的图像序列中第j个下一帧胎儿心脏超声图像的分类概率,P(k)表示新的图像序列中第k个下一帧胎儿心脏超声图像的分类概率;
(m)判断分类概率和P是否大于最大联合分类概率P1,如果是则设置P1=P,k=k+1,并返回步骤(i),否则设置k=k+1,并返回步骤(i);
根据步骤(3-4)获取的新的图像序列中每个下一帧胎儿心脏超声图像的预测类别和分类概率分别确定当前舒张末期到下一个舒张末期的时间间隔T2的最大联合分类概率P2这一过程包括以下子步骤:
(a)设置计数器i=1,并初始化最大联合分类概率P1=0;
(b)判断i是否大于n-10,如果是,则输出最大联合分类概率P1,过程结束,否则转入步骤(c);
(c)判断新的图像序列中第i个下一帧胎儿心脏超声图像的预测类别label(i)是否为2,如果是则进入步骤(d),否则设置i=i+1,并返回步骤(b);
(d)设置计数器j=i+1;
(e)判断j是否大于n,如果是,则设置i=i+1,并返回步骤(b),否则转入步骤(f);
(f)判断新的图像序列中第j个下一帧胎儿心脏超声图像的预测类别label(j)是否为0,如果是则进入步骤(g),否则设置j=j+1,并返回步骤(e);
(g)设置距离length_j=j-i,并判断length_j是否大于3并且小于15,如果是进入步骤(h),否则设置j=j+1,并返回步骤(e);
(h)设置计数器k=j+1;
(i)判断k是否大于n,如果是,则设置j=j+1,并返回步骤(e),否则转入步骤(j);
(j)判断新的图像序列中第k个下一帧胎儿心脏超声图像的预测类别label(k)是否为2,如果是则进入步骤(k),否则设置k=k+1,并返回步骤(i);
(k)设置距离length_k=k-j,并判断length_k是否大于3并且小于15,如果是进入步骤(l),否则设置k=k+1,并返回步骤(i);
(l)设置分类概率和P=P(i)+P(j)+P(k),其中P(i)表示新的图像序列中第i个下一帧胎儿心脏超声图像的分类概率,P(j)表示新的图像序列中第j个下一帧胎儿心脏超声图像的分类概率,P(k)表示新的图像序列中第k个下一帧胎儿心脏超声图像的分类概率;
(m)判断分类概率和P是否大于最大联合分类概率P1,如果是则设置P1=P,k=k+1,并返回步骤(i),否则设置k=k+1,并返回步骤(i);
图5所示为周期T1内的多帧胎儿心脏超声图像构成的完整的四腔心切面心动周期视频。需要指出的是,由于实验中存在距离length_k和length_j小于3和大于15的情况,实际这是不符合实际情况的,所以本发明中加上限制条件过滤噪声,同时设置距离大于3小于15减少搜索量,用于加快搜索速度。在(2-2)步骤中,图像序列经过了3/4下采样,本发明中设置i<n-10,也是为了减少计算消耗,这是因为实际的完整的四腔心切面心动周期视频很少有15帧以下的。
具体地,本发明中使用的混合卷积神经网络是通过如下步骤训练得到的:
(a1)获取数据集,将其发送给胎儿超声检查专家进行标注,并获取胎儿超声检查专家标注后的数据集;
具体而言,数据集是从主流超声厂家(如迈瑞、凯立、大为等)超声设备中获取的胎儿四腔心超声视频800个,随机划分为3个部分,其中80%数据集用于训练模型,10%用于测试模型,10%数据集用于验证模型。
(a2)对标注后的数据集进行预处理,以得到预处理后的数据集;
具体而言,本步骤的预处理过程和前文步骤(2)所述的预处理过程完全相同,在此不再赘述。需要说明的是假设一个视频被3/4下采样后为150帧图片。如果每个样本的视频帧为6,则这个视频最后构成的是145个样本,每个样本为一个6帧的图片序列。第一个样本是第一帧到第六帧图片,第二个样本是第二帧到第七帧图片,以此类推。
(a3)根据随机剃度下降法(Stochastic gradient descent,简称SGD)并使用步骤(a2)预处理后的数据集对混合卷积神经网络模型进行迭代训练,直到到达迭代次数为止,从而得到训练好的混合卷积神经网络。
具体而言,迭代训练过程中的学习率lr=0.002,批量大小batchsize=64,冲量ξ=0.8,迭代次数为200。
图3和图4为本发明中输出的四腔心切面舒张末期图和四腔心切面收缩末期图。图5是一个以T1为周期的完整的四腔心切面心动周期视频,其中序号为(1)的图像表示第一个收缩末期的图像,序号为(9)的图像表示第一个舒张末期的图像,序号为(23)的图像表示第二个收缩末期的图像。
性能测试结果
以下我们利用80个视频进行模型测试,分别取3帧,4帧,5帧,6帧7帧和8帧的图片序列,作为样本,以准确率(Accuracy)来进行判断模型情况,如下表1所示。
样本 |
3帧 |
4帧 |
5帧 |
6帧 |
7帧 |
8帧 |
准确率 |
87.96% |
87.90% |
87.75% |
88.15% |
88.05% |
88.0% |
表1
通过上表1可以看出:在样本帧数为6帧的时候效果最好,准确率为88.15%。本发明测试的视频格式包括avi、mp4和wmv格式。不同的机器产生的视频可能格式不同,采样视频的帧速率(Frame per second,简称FPS)也可能不一样,但总体上,本发明的识别准确率还是相当理想。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。