上一篇分享了VNet改进模型DualAttentionVNet(DAVNet)网络,今天尝试将DualAttention和AttentionGated相结合成DualAttentionGatedVNet(DAGVNet)。
1、VNet模型
大家看过我之前的文章,肯定对VNet模型已经非常熟悉了,该结构出自2016年发表的一篇论文《V-Net:Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation》,关于该网络具体的细节可以之前的文章,我这里就不多说了。
2、Attention Gate模块
Attention Gate模块来自2018年发表的论文《Attention U-Net:Learning Where to Look for the Pancreas》,该文章提出一种注意力门模型(AG),在分割模型中加入该模块进行训练,可以抑制学习与任务无关的特征,同时加强学习与任务有关的特征,关于该网络具体的细节可以阅读原文。
3、PositionAttention和ChannelAttention模块
PositionAttention和ChannelAttention模块的设计来自2019年发表的论文《Dual Attention Network for Scene Segmentation》,其中PositionAttention模块引入了自注意机制来捕获特征图中任意两点位置的空间依赖性;ChannelAttention模块也引入自注意机制来捕获通任意两通道图的通道依赖性,并对所有通道图加权求和来更新每个通道图。关于该网络具体的细节可以阅读原文。
4、DualAttentionGatedVNet(DAGVNet)网络
DAGVNet网络是在AttentionGatedVNet基础上,在跳跃连接处在增加DualAttention模块,如图所示,黑色的圈就是DualAttention模块所添加的。
5、DualAttentionGatedVNet肾器官分割训练效果
我是在1080ti显卡上跑的,所以batchsize设置成2,如果大家出现OOM错误,请修改该参数,如果显存比11G还大的话,也可以设置大一些。下面是训练loss结果及精度结果。
6、在测试数据上分割结果
前面也说过,训练是用0-199例数据来训练,测试是在200-209上来测试。在测试的时候,我们直接输入原始图像大小,例如512x512x32,将训练好的模型导入后,将512x512xn(可能是几百)的输入按z方向取32,不断输入到模型中得到最后肾器官分割结果。分割结果如下面视频所示,红色轮廓是金标准结果,蓝色轮廓是预测结果。平均dice值为0.9382,相比较VNet结果,结果没有明显提升。