今天将继续分享从网络结构上进行改进提出SEVNet模型来分割脑肿瘤。为了方便大家学习理解整个分割流程,我将整个流程步骤进行了整理,并给出每个步骤的结果,希望对大家有所帮助。

一、SENet模块介绍

Momenta 胡杰团队从特征通道之间的关系出发,提出了Squeeze-and-Excitation Networks(简称 SENet),来显式地建模特征通道之间的相互依赖关系,通过特征重标定来实现,具体来说,就是通过学习的方式来自动获取到每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征。

BraTS18——多模态MR图像脑肿瘤分割挑战赛续4_非零值

上图是作者提出的SE模块的示意图。给定一个输入x,其特征通道数为c1,通过一系列卷积等一般变换后得到一个特征通道数为c2的特征。与传统的CNN 不一样的是,接下来需要重标定前面得到的特征。首先是Squeeze 操作,按照空间维度来进行特征压缩,将每个二维的特征通道变成一个实数,这个实数某种程度上具有全局的感受野,并且输出的维度和输入的特征通道数相匹配。它表征着在特征通道上响应的全局分布,而且使得靠近输入的层也可以获得全局的感受野,这一点在很多任务中都是非常有用的。其次是Excitation操作,它是一个类似于循环神经网络中门的机制。通过参数W来为每个特征通道生成权重,其中参数W被学习用来显式地建模特征通道间的相关性。最后是一个Reweight的操作,将Excitation的输出的权重看做是经过特征选择后的每个特征通道的重要性,然后通过乘法逐通道加权到先前的特征上,完成在通道维度上的对原始特征的重标定操作。

作者也提到SE模块可以嵌入到现在几乎所有的网络结构中。通过在原始网络结构的building block单元中嵌入SE模块,可以获得不同种类的SENet。如SE-BN-Inception、SE-ResNet、SE-ReNeXt、SE-Inception-ResNet-v2 等等。

二、脑肿瘤图像分析与预处理

(1)、多模态MR脑肿瘤图像分析。

分析的过程基本上跟上一篇一致,这里就不多言了,直接从数据处理开始。

(2)、准备脑肿瘤分割数据。

首先将4个模态序列的MR原始图像进行合并生成4个通道的三维图像,原始图像大小都是(240x240x155x1),合并后大小是(240x240x155x4);

其次对Mask图像进行one-hot操作,将原始图像大小都是(240x240x155x1),生成大小是(240x240x155x4):通道0中非零值区域是背景区域,通道1中非零值是坏疽区域,通道2中非零值是浮肿区域,通道3中非零值是增强肿瘤区域;

最后对图像和Mask进行分块——取Patch操作,生成若干个(128,128,64)大小的图像和Mask,判断并输出非零的Mask和对应的图像。

三、脑肿瘤分割

(1)、搭建SEVNet3d模型,与VNet3d模型不同之处就是增加了SENet模块,网络输入大小是(128x128x64)。

BraTS18——多模态MR图像脑肿瘤分割挑战赛续4_非零值_02


(2)、loss采用的是多类Focalloss,具体实现可以点击原文链接查看具体代码。

(3)、训练的损失函数和精度如下图所示。

BraTS18——多模态MR图像脑肿瘤分割挑战赛续4_模态_03

BraTS18——多模态MR图像脑肿瘤分割挑战赛续4_显式_04

(4)、脑肿瘤分割推理过程:首先将原始flair,T1,T2,T1ce图像一起读取进来并进行z-score标准化操作,然后将四个模态图像合并成4通道三维图像(240x240x155x4),输入到网络中去,网络输入大小是(240x240x48x4),在z方向上分块输入并拼接最终得到(240x240x155)分割结果。

(5)、进行了结果测试,右边是金标准图像,左边是预测结果图像,如下所示。


BraTS18——多模态MR图像脑肿瘤分割挑战赛续4_模态_05

为了大家更好的学习,我把SEVNet网络代码分享到github上:

​https://github.com/junqiangchen/VNetFamily​