APP下载

全卷积深度迁移网络的联合分割

2021-01-11岩,刘

计算机工程与应用 2021年1期
关键词:掩码卷积深度

李 岩,刘 俊

1.智能信息处理与实时工业系统湖北省重点实验室(武汉科技大学),武汉430065

2.武汉科技大学 计算机科学与技术学院,武汉430065

血凝块的形成是对损伤的基本反应,它会使血液由溶胶状态变为凝胶状态,但是血凝块也是许多血管疾病的根本原因,包括心肌梗塞、中风、肺栓塞和深静脉血栓等。但是以往的治疗方法大都具有显著的缺点[1]。例如,药物是非局部给药的,可引起过多的出血。导管或血栓溶解剂可以直接破坏凝块来溶解血栓,但是可能会对脉管系统造成意外的损伤和感染。

超声以前已经被证明可以诱导溶栓,其本身可以与药物或超声造影剂一起诱导溶栓[2-3],现在高强度超声已被证明是体外和体内有效的血栓溶解方法[4],并具有非侵入性和快速治疗等显著的益处。在这些研究中,溶栓作用归因于空化效应。空化效应能够在超过超声压力阈值的300 s 内完全破坏凝块。当发生溶栓时,会在凝块表面产生细小的碎片颗粒。在治疗期间,剩余的凝块将自然地朝向焦点移动,使得整个凝块可以在不移动换能器的情况下被侵蚀[5]。

超声治疗需要同步获取血管和血栓位置,以此来决定超声的聚焦点和聚焦程度,如何从获取的超声图像中分割出血管和血栓的位置成为了一个急需解决的问题。图像分割在医学超声图像的定量、定性分析中均扮演着重要的角色,它直接影响到后续的分析、处理工作。正确的分割是从超声图像中为临床应用准确提取诊断信息的保证,也是临床中进行定量分析和计算机辅助操作中重要的一环。超声成像相较于其他成像方法具有无损性、实时性及廉价性的优点,而且在超声治疗中使用超声成像的方法,可以保证设施的一致性。

1 相关工作

1.1 传统分割方法

传统图像分割算法指的是通过主动寻找图像中不同的灰度、颜色、纹理和形状特征,把图像划分成若干互不交迭的区域,并使这些特征在同一区域内呈现出相似性,而在不同区域间呈现出明显的差异性。

常见的传统分割方法有诸如基于阈值的分割方法、基于边缘的分割方法和基于区域的分割方法等,传统的分割方法大都方法简单,运行速度快,并且能很好地适应某些数据,但是当边界灰度及纹理特征不明显时,传统方法就很难奏效。

例如,选基于灰度信息与ROI区域的初始轮廓获取方法[6]。其根据超声图像的灰度特征对其进行自适应阈值分割以及面积滤波,然后获得分割轮廓点集进而得到snake初始轮廓点集,并完成最终的分割。

还有基于稀疏表示框架和动态方向主动轮廓模型的超声血管分割[7],该方法先通过稀疏表示框架中的提取初始轮廓,并使用主动轮廓模型将初始轮廓朝着感兴趣的边界传播。最后,基于图像边界的钙化区域,对提取的轮廓进行细化。

但是这些传统方法,调整参数及其繁琐,而且得到的结果很难令人满意,虽然能在训练数据上取得较好的结果,但是分割真实图像时,往往很难得到一个较好的结果。

1.2 神经网络模型

神经网络的兴起为自动分割提供了一个新的方向。针对超声血管图像,有人工神经网络方法[8],该方法通过稀疏自动编码器和softmax 分类器分割血管层,再用另一个人工神经网络优化第一个网络的结果。最后,使用主动轮廓模型应用于平滑边界。该方法通过使用传统的CNN改进模型,对图片进行像素级分类,但是该方法在小数据集上无法收敛。

还有结合堆叠沙漏网络和有条件生成对抗网络用于分割图像内膜和中外膜边界的方法[9],该方法能通过对抗网络,能有效地解决过拟合的问题,并利用阔值处理检测最终边界,很好地处理内外膜差异性问题,但是其在边界分割法在面对异常区域时难以适用,使用该方法在识别被阻塞的血管时,难以得到较好的结果。

除了传统的CNN 模型,使用全卷积神经网络完成的图像分割的FCN[10]能更精准地完成图片的像素级分割。更进一步的,在全卷积神经网络上加上对称的扩展路径使其以实现精确定位的U 形深度卷积网络Unet[11],在处理小数据集的医学图像上,能获得比以往更好的分割结果。还有使用分解滤波器极大降低计算量的ENet,ENet独特的不对称网络及空洞卷积,能很好地提高分割精度。

但由于生物结构本身的多样性,以及医疗影像技术本身缺陷导致的低对比度和噪声等问题,这些方法在处理小数据集的超声图像时依然会存在问题,很难较好的识别边界信息,而且阻塞血管中的阻塞部分会给分割带来极大的难度,此研究就是通过基于全卷积神经网络的深度聚合和优化完成阻塞血管超声图像的分割。

FCN[12-14]已经证明了经过端到端、像素到像素训练的卷积网络超过以往的语义分割技术。FCN 没有任何全连接层,输出是与输入图像大小相同的类概率向量的图像。然而,在这些网络中,网络的准确性和上下文利用之间存在折衷。网络越深,使用更多的卷积层来促进上下文的使用;另一方面,这些卷积层丢失了网络的部分细节。

为了克服这些缺点,在此之后有很多人在此基础上进行改进[15-17]。这些方法基本都是通过改进网络中的聚合方式来获取更好的分割效果,但是大都是浅层聚合,难以提取更深层的特征与信息。本文通过进行深层次的卷积与聚合提取更多的特征,完成超声图像的分割。

对于一个神经网络,如果把权重或者参数都初始化为0,由于反向推导中的对称的隐含单元不改变,那么梯度下降将不会起作用。因此需要对参数矩阵进行始化。其中随机初始化的好处在于实现简单,但是需要不断试错,以此找到合适的数值,工作量较大,本文尝试使用迁移学习的方法,使用将标记数据作为掩码与原图结合,产生新的数据,用于初始化网络的参数矩阵,达到稳定实验结果的目的。

2 本文工作

2.1 全卷积聚合神经网络

2.1.1 深度与聚合

基于深度聚合的全卷积神经网络框架如图2所示,网络中的改进主要包含三个部分:连接局部细节和全局信息的跳跃连接、加深网络提取更多特征和全新的卷积聚合模式。

图像信息主要有两种:全局信息和细节信息。全卷积神经网络采用的是一个包含下采样和上采样的网络结构。下采样用来逐渐提取全局信息,而上采样的过程则是还原细节信息,并且逐步还原图像精度。

通过使用跳跃连接,连接下采样各层信息和上采样的输入信息,结合局部细节和全局信息,将收缩路径上提取出来的高像素特征连接到包含全局信息的新的特征图上,使得网络能更加高效地运行。

现在的深度学习网络结构的主要模块是卷积、池化、激活,这是一个标准的非线性变换模块。网络的本质就是通过这个模型来求解一个多维的问题,而更深的模型,意味着更好的非线性表达能力,可以学习更加复杂的变换,从而可以拟合更加复杂的特征输入。为此加深网络的广度或深度能有效地提升函数的深度,而大多数函数如果用一个深层结构刚刚好解决问题,那么就不可能用一个更浅的同样紧凑的结构来解决。

网络模型的深度对网络的效果提升与数据集有直接关系,对于不同的数据集,网络深度带来的影响各不相同,图像复杂的像素输入和像素输出需要的表达难度远超以往,因此需要更深层的网络来拟合输入输出。经过多次实验,测试出对于超声血管图像,单个块的卷积层应在8层左右,下采样中的总深度不应超过40。

但是同时深层网络带来的梯度不稳定,网络退化的问题始终都是存在的,可以缓解,没法消除。除此之外,模型加深还可能出现的一些问题是导致某些浅层的学习能力下降,限制了深层网络的学习,这就有可能出现网络加深,性能反而开始下降。因此,传统网络大都在30层以下。为了解决这个问题,残差卷积网络创新性的提出了残差结构用于连接上下文,能较为有效地处理网络深度问题,使得深层网络可以得到更好的结果与密集神经网络和残差网络的浅层连接不同,为了在更深的网络中提取到足够的信息,深度聚合网络中的聚合方式能更深层次的提取语义和全局的特征。

通过使用全新的聚合方法,不仅能防止梯度爆炸的问题,还可以更好地将信息向下传递。通过在下采样过程中,对卷积层使用的深度聚合,通过加深收缩路径获取更多的特征,并通过深度聚合将提取的特征连接起来,同时在深度和广度上提取有效信息。

单个聚合块的网络结构如图1所示,其中每一个卷积块都是一个多通道的特征图矩阵,通道大小为输入卷积块的两倍,特征图大小与输入卷积块大小相同。卷积都由与上一层通道数量相同的3×3卷积核进行卷积,通过卷积产生数量相同的特征矩阵。concatenate 通过将特征矩阵中的通道进行拼接,产生新的特征矩阵,并通过卷积将通道数恢复成原数量。

通过在拼接后对特征矩阵进行卷积,可以有效解决特征比重问题,越往后的卷积块拥有越多的信息,而且拥有之前部分卷积的所有信息,如果不进行卷积,会导致前面的卷积块占比过高,影响结果,而且Output 所占的比重过大可能会导致下采样与上采样图像拼接时的信息稀释。

图1 深度聚合模型

如图1所示,深度聚合结构通过组装树结构来连接不同的卷积层,这些连接交叉并合并各个阶段的信息,以聚合不同级别的表示。通过将中间的聚合部分路由回网络来加深聚合,并通过合并相同深度的连续聚合来提高效率。

n层卷积块的输出OUTn( )

x可以表示为:

其中x是输入的多维图片,convc 是指拼接后接卷积操作,并保持大小与原卷积块大小相同,conv指通道卷积。

2.1.2 全卷积网络的连接

如图2给出了基于全卷积聚合网络的结构图,下文给出详细描述:

(1)每一个下采样部分都由上文中的聚合卷积块组成,每个块都由8个3×3卷积接一个最大池化,并通过深度聚合的方式连接起来。上采样用于还原图片,每一个上采样层使用由2个3×3卷积层组成的卷积块。

(2)每次最大池化后图片大小变为上一层图像的四分之一,并通过卷积将通道数翻倍,同样的每次反卷积后图片的大小翻倍,并通过卷积将通道减半,提取图片分割目标。

(3)在下采样提取完特征后,获得了32×32 的特征图,再通过反卷积来还原图片细节,并将反卷积后的图像与下采样中对应路径的输出连接,重新获取下采样中丢失的部分信息。这些跳过层通过通道连接实现,它们允许对网络进行深度监督。因此,跳过层能很好地改善网络性能。

(4)在下采样的最后两层加入了dropout层,用于随机将部分隐含层节点的权重归零,由于每次迭代受归零影响的节点不同,因此各节点的“重要性”会被平衡,使得网络可以随机失活。

图2 深度聚合网络的连接模型

2.2 数据增强

医学图像大多并没有大量的训练数据,而由于深度神经网络具有非常强的学习能力,如果没有大量的训练数据,会造成过拟合,训练出的模型难以应用。因此对于一些没有足够样本数量的问题,可以通过已有的样本,对其进行变化,人工增加训练样本。为了应对医学图像数据集过小的问题,使用了合适的数据增强方式,并在实验中寻找合适的规律和方法。

2.2.1 图像形变

传统的数据增强方式主要有对图像进行旋转、移位等仿射变换,对象映射的镜像变换,保持原图特征的弹性变换等等。在经过对比实验后,本文则使用了一种基于移动最小二乘的图像刚性变换方法。

该方法通过在图像中制定控制点,并通过拖拽控制点来驱动图像变形。假设p为原图像中控制点的位置,q为拖拽后控制点的位置,利用移动最小二乘法来为原图像上的每个像素点v构建相应的仿射变换,并通过该变换来计算得到图像变形后的位置。

由于控制点个数与计算量成正比,因此不应太多,拖拽幅度也应该控制,太大了会导致图像特征难以获取,太小了会使网络很容易的陷入过拟合。

2.2.2 基于虚拟数据的级联深度迁移

神经网络类似于人类大脑的处理机制,它是一个迭代且连续的抽象过程。网络的前面层可被视为特征提取器,提取的特征是通用的。基于这个特点,本文通过将增强后的图片与对应掩码结合来构造几个全新的连续源域,通过这些连续的源域顺序学习图像特征,最终应用于对象图像。

掩码比例越高越容易学习,很容易确定图片的某些明显特征,并在网络中为构建适应模型,反之,当掩码比例降低时,更难找到分割对象,但是对细节的分析更接近真实,通过迁移学习的方式,传递训练好的模型,将高掩码源域的模型作为初始值传给低掩码源域,然后低掩码源域完善部分高掩码源域学习不到的细节,并继续向下传递。原图接收到掩码源域传递的模型后,对模型进行调整,完善所有细节。

如图3 所示,本文分别用0.2、0.15、0.1、0.05 的掩码与原图叠加,然后首先用0.2 掩码对应的训练图对初始模型进行训练,可以只用1 次全局训练即可,训练过深会影响后续的训练。模型训练完毕后,使用该模型训练低掩码的数据,依此训练得到最终的模型,将最终的模型作为实验的初始模型,对原始数据进行训练,得到训练结果。

本文的模型如图3 所示,分别使用与0.2、0.15、0.1、0.05与掩码相乘,加在原图上,产生4组对应的图像,然后产生一个随机的初始模型,使用从高到底的使用掩码图像对模型进行训练,最终得到模型4,并将模型4作为初始后的模型训练原始图片。

图3 迁移学习模型

2.3 联合网络

在分割血管阻塞部位的过程中,发现深度学习的方法很难收敛,由于图片质量和数量,并由于形态学特征不具有一致性,很难直接精准的识别血管的阻塞区域。

如果使用网络直接对血管阻塞部分进行分割,会有极大的误差。血管本身具有较为明显的形态学特征,只对血管分割,已经能得到较好的分割结果,如果将分割好的血管图片作为输入,同时考虑血管位置,能更好地找到阻塞区域,限制阻塞区域的位置。

为了解决这个问题,构建了两个全卷积聚合神经网络的模型,并将其联合起来。如图2所示,一个模型在另一个之上,训练端到端分割2D 轴向切片。上方的一个AMFCN将血管的轴向切片作为输入,通过计算每个像素在血管内的概率,输出血管的分割图。下方的AMFCN则同时将切片和血管分割图作为输入通过连接聚合,能有效的收敛阻塞区域,最后输出血管阻塞部分分割图。

3 实验

3.1 实验数据

这里采用其他实验室数据集,其中有30 个训练图像,在实验中,首先随机提取25 个图像,然后基于刚性形变的数据增强将其扩展为750张,将这些图像作为训练集添加到网络中,将剩下的5张作为测试集使用,为了保证实验的准确性,重复3次实验取平均值。网络中的每个卷积后接一个Relu 的激活函数,使用samepadding使得卷积前后的图像大小不会改变,使用带有动量项的优化器Adam(Adaptive Moment Estimation),并将其初始的学习率设为1E-5,使用二值交叉熵计算损失函数,并通过保存Loss最小的模型用于计算测试集的Label。

3.2 实验结果及分析

3.2.1 实验环境

本文实验系统环境:硬件环境为1 台PC 机,GPU 3.2 GHz;RAM 8 GB。软件环境为操作系统64 位Windows10;编程语言Python;编程工具Spyder3.6,Keras,Tensorflow3.6-GPU。

3.2.2 数据增强及扩展

在设置数据增强的基础参数的过程中,直接实验的情况下,部分数据效果过差,为了选取合适的参数,从数据集中选取了较为明显的血管图用于测试,在选取增强方法时,分两组做了测试实验;一组为普通的基础变换(旋转、缩放、翻折等)和基础形变(扭曲,伸缩,错位等),该方法在训练集上有较好的效果,但是在测试集上不收敛;第二组使用刚性形变,效果有较为明显的提升,可以通过深度学习方法得到训练结果,测试集与训练集的Loss较为一致。

对于设置刚性形变的幅度,先分别设置9、16、25、36个控制点均匀分布在图像上,随机设置拖拽方向和幅度,范围在(-30,30)间,经过实验,验证当随机点大于25以后,提升幅度极小,但生成图像的时间大幅上涨,因此本文增强方式将控制点确认为25。

再确认控制点后,修改拖拽幅度,分别采用(-30,30)和(-20,20),(-10,10)的随机数对控制点的横纵坐标进行拉扯。实验说明20像素的拉扯将改变图像的形态学特征,更加接近真实形变,如图4所示。

ROC 小于10 的情况下图像基本没有变化,难以发现特征差异,大于20 以后,图像将失去过多特征,图片会过去凌乱,因此将数据增强方式定位控制25 个控制点以幅度为20 像素的拉扯进行随机变换,每个训练图像生成30张增强后的图像。

3.2.3 网络结构的选取及构建

在确认数据增强参数后,对在全卷积网络中分别加入聚合连接,深度加深后的网络进行比较,证明本文方法在处理小数据集上的图像分割有较大优势。

经过实验,得到如图5 所示的结果,其中原图及标注如图5。

图4 不同数据增强方式的实验结果

图5 不同网络的分割结果

3.2.4 实验结果分析

实验的Loss 和Accuracy 随Epoch 的变化,如图6 所示,为同时使用了8层卷积块的FCN与AMFCN的实验结果。将使用了深度聚合模块的结果与未使用深度聚合模块的结果进行对比,使用了深度聚合模块的模型加上deep。可以很容易看出,使用深度聚合模块的结果比未使用聚合模块的效果好很多。同时由于图像本身是经过增强的,但是基本特征并未增加,每一次Epoch 都使用了增强后的750 张图片,所以会很快地陷入过拟合。因此,本文最后实际使用50 次Epoch,并通过快速停止模型,当模型的val_loss 在5 次Epoch 后,依然没有下降时,停止运行,并保存在迭代过程中val_loss最低的参数模型结果。

为了实验的准确性,先在具有明显形态学特征的血管上进行分割,基础FCN由于缺乏对小数据集的识别,得不出结果,深度网络结构对较浅的网络的提升不明显,在有的情况下还有负面影响,如表1 所示,AMFCN及FCN 后面的数字代表每一个卷积块包含的卷积层数。通过多次实验求均值获得网络的分割结果。

图6 Unet8与AMFCN8的Loss及Accuracy的对比

表1 分割参数比较

其中分割精度为是分割准确的面积占实际分割图像中真实面积的百分比。过分割率为分割在图像真实分割面积之外的像素点占分割出图像的比率,欠分割率是指分割结果在标注图像参考面积之中欠缺的像素点占分割出图像的比率。

通过表1可以看出对血管分割而言,网络深度的增加的确可以加强分割效果,深度聚合网络在浅层网络中的应用效果一般,甚至有负面效果,但是当网络加深后,能很好地分割图像。

如图7所示,选取效果最好的Unet8和AMFCN8,对比其ROC曲线分布,证明本文方法不仅效果好,而且更为稳定。

图7 AMFCN8与Unet8的ROC曲线

同时,比较使用了迁移模型和未使用迁移模型的结果,虽然平均分割精度并没有太大改变,但单个图像分割精度的波动有所下降,多次实验的误差有所减小。

但是直接使用随机初始模型,每次实验的结果都会变化,部分情况会取得较差的结果,通过使用迁移学习,生成合适的初始模型,减少学习中的随机性。虽然大部分情况下两者差异不大,但是使用迁移学习网络模型的分割结果,其分割精度的均方差要小于未使用迁移学习的网络模型,比较结果如图8所示。

图8 使用迁移学习模型前后对比

而对血管阻塞部分的分割则需要通过联合网络来处理,将血管分割图像与超声图像共同作为输入,对血管阻塞部分进行分割,能有效地约束阻塞部分的分割区域,结果如图9所示。

图9 加入联合网络后对血管阻塞部位的分割结果

4 总结

本文提出了一种基于全卷积深度聚合迁移网络的模型,为了解决小型数据集的超声图像难以适应深度网络的问题,通过数据增强,变换并拖拽图片集,使其能很好地应用于深度网络,经过实验,找到合适的方法与参数,使得损失函数能获得很好的收敛。为了避免深度网络的问题,运用深度聚合方法,将全卷积聚合神经网络中的所有卷积块进行深度聚合处理,通过联合网络来进一步进行分割。为了解决随机初始化模型带来的不稳定性,使用迁移学习,通过掩码图像数据训练,产生合适的初始模型。通过实验对比,本文提出的方法在小数据集的超声图像上有较好的效果,能满足超声治疗的要求。

猜你喜欢

掩码卷积深度
基于3D-Winograd的快速卷积算法设计及FPGA实现
深度理解一元一次方程
从滤波器理解卷积
低面积复杂度AES低熵掩码方案的研究
深度观察
深度观察
深度观察
基于傅里叶域卷积表示的目标跟踪算法
基于布尔异或掩码转算术加法掩码的安全设计*
基于掩码的区域增长相位解缠方法