基于V—Net的腹部多器官图像分割
来源:用户上传
作者:
摘要:基于深度學习的图像分割中,好的训练效果不仅仅是选择了合适的网络框架,损失函数的选择也同样重要。本文中我们实现一种全卷积神经网络的三维图像分割方法,该方法基于V-Net框架[1]。该网络是end-to-end的,的连接训练方案使用了PyTorch进行了实现,作为医学图像分割的基本实现。
关键词:3D;V-Net;Pytorch;器官分割;腹部
中图分类号:R814 文献标识码:A 文章编号:1007-9416(2019)01-0089-01
1 基本环境
我们将3D U-Net的一种实现V-Net检测框架[1]使用PyTorch进行了实现。在实现过程中,对其中的卷积核、损失函数以及部分stage做了修改或者增删。网络的基本配置如下:基础网络:网络结构基于V-Net[2],并对其做了一定的修改。数据集:这些数据来自一项名为“颅穹外多图谱标记”的在线挑战赛。在这个挑战赛中,任务是将13种不同的器官分割,这些器官分别是:(1)spleen(脾);(2)right kidney(右肾);(3)left kidney(左肾);(4)gallbladder(胆囊);(5)esophagus(食管);(6)liver(肝脏);(7)stomach(胃);(8)aorta(大动脉);(9)inferior vena cava(下腔静脉);(10)portal vein and splenic vein(门静脉和脾静脉);(11)pancreas(胰腺);(12)right adrenal gland(右肾上腺);(13)left adrenal gland(左肾上腺)。
训练/测试:训练集包含30个CT数据。我们将数据集扩充为210个,然后随机将其分为175个训练组和35个测试组,评估:我们使用一个基于DICE系数的损失函数[3]作为评估,使用这个函数能避免类别不平衡。
1.1 数据预处理与数据集扩充
首先,30例训练集中 3mm有17个,2.5mm有1个,5mm有12个,因此决定把轴向的spacing统一到3mm,然后进行灰度值截断。
其次,数据集扩充,为了尽量利用有限的训练数据,我们将通过一系列随机变换堆数据进行提升,这样我们的模型将看不到任何两张完全相同的图片,这有利于我们抑制过拟合,使得模型的泛化能力更好。第一步,将原始图像和已标注图像读入到内存中,第二步,在slice平面内随机选取48张slice。第三步,以0.5的概率在±3°范围内随机旋转图像。
1.2 网络结构
(1)我们将卷积核从5×5×5改为3×3×3。(2)在除了第一个和最后一个block中添加了dropout。(3)去掉了编码器的最后一个16倍降采样stage。(4)为了弥补以上操作带来的感受野损失,在编码器的最后两个stage添加了空洞卷积[4]。
1.3 DICE损失
在医学图像中,往往感兴趣的区域只占扫描的一个很小的比例。这通常会导致学习过程陷入损失函数的局部极小值,从而产生一个预测严重偏向于背景的网络。因此,前景区域经常丢失或者只能检测到部分图像。本文中使用的损失函数为一种基于DICE系数的函数,它的值在0和1之间,我们的目标是使其最大化。它的表达式如下:
其中为每一种器官的权重,权重的原则是,比较容易分割的器官的权重保持为1不变,分割效果不好的器官的权重大一些;为前景分割(金标准)结果;为前景标签预测分割结果。
1.4 训练测试
在将初始学习率设置为,在6块GTX 1080Ti上训练情况下,整个训练过程大约需要7个小时。
2 讨论
在图像配准和分割算法中,DICE系数和cross-entropy系数等标记区域重叠的度量方法被广泛应用。在深度学习框架中损失函数的选择非常重要,尤其在处理高度不平衡问题时。本文中所选的GDL损失函数在常见的几种损失函数中具有最强的鲁棒性[3]。同时在机器学习中,当一个参数过多的模型在小样本上训练的情况下,训练出来的模型通常在输出的测试数据上表现不佳。通过在每个训练案例中随机省略一半的特征检测器,这种“过拟合”现象大大减少[5]。过拟合问题在机器学习中很常见,提出的Dropout可以相对有效的缓解这个问题的出现,在一定程度上表现出正则化的效果。
参考文献
[1] iek ,Abdulkadir A,Lienkamp S S, et al.3D U-Net: Learning Dense Volumetric Segmentation from Sparse Annotation[J].arXiv preprint arXiv:1606.06650,2016.
[2] Milletari F,Navab N, Ahmadi S-A.V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation[C].International Conference on 3D Vision; IEEE International Conference on 3D Vision, et al. 2016 Fourth International Conference on 3D Vision:3DV 2016:25-28 October 2016, Stanford, California, USA : proceedings. Piscataway, NJ: IEEE,2016:565-571.
[3] Sudre C H,Li W,Vercauteren T,et al.Generalised Dice overlap as a deep learning loss function for highly unbalanced segmentations[J].arXiv preprint arXiv:1707.03237,2017.
[4] Yu F,Koltun V.Multi-Scale Context Aggregation by Dilated Convolutions[J].arXiv preprint arXiv:1511.07122,2015.
[5] Hinton G E,Srivastava N,Krizhevsky A,et al.Improving neural networks by preventing co-adaptation of feature detectors[J].arXiv preprint arXiv:1207.0580v1,2012.
Abstract:In the image segmentation based on deep learning, good training effect is not only the selection of appropriate network framework, but also the selection of loss function. In this paper, we implement a full convolutional neural network 3d image segmentation method based on the V-Net framework[1].The network is end-to-end, and PyTorch is used as the basic implementation of medical image segmentation.
Key words:3D;V-Net;Pytorch;organ segmentation;abdomen
转载注明来源:https://www.xzbu.com/8/view-14760568.htm