专栏首页最新医学影像技术Tensorflow入门教程(四十)——ACUNET

Tensorflow入门教程(四十)——ACUNET

今天将分享Unet的改进模型ACUNet,改进模型来自2020年的论文《ACU-NET:A 3D ATTENTION CONTEXT U-NET FOR MULTIPLE SCLEROSIS LESION SEGMENTATION》,通过理解该模型思想,在VNet基础上可以做同样的改进。

1、ACUNet优点

Unet虽然在医疗分割领域获得了成功,但是其无效地使用上下文信息和特征表示,很难在MS病变上得到精准分割。为了解决该问题,文章提出了3D上下文注意力Unet结构(ACUNet),用来分割MS病变,包括3D空间注意模块,在解码阶段其用于丰富空间细节和病变特征表达。此外,在解码和编码阶段,3D上下文引导模块用来扩大感受野和引导局部信息和周围信息。

2、ACUNet结构

2.1、3D上下文引导模块

MS受大脑组织周围结构和形状的影响,所以病变周围体素包含病变的一些信息。为了充分利用周围信息,设计了3D上下文引导模块,如下图所示。在该模块中结合了低维局部信息,高维局部信息和周围信息,其中低维局部信息是输入特征图,高维局部信息是经过卷积操作获得的,周围信息是通过空洞卷积获得的,其输入是将低维局部信息和高维局部信息相结合后再经过空洞比率为2所得到结果,最后输出将这三者进行拼接输出。

2.2、3D空间注意力模块

空间细节经常会在高维输出结果中丢失,这是由于级联卷积和非线性引起的。这使得很难减少对尺寸和位置高度可变对象的错误检测。3D空间注意力模块可以解决该问题,其在每个体素上产生空间注意力系数。最后的输出是输入特征与空间注意力系数元素相乘,如下图所示。为了减少模块的复杂性,首先将输入特征图采用间隔为2的卷积操作来降采样,缩小图像一半的分辨率。门控向量用来决定病变区域的每个体素。在ACUNet中,输入特征图x是在解码阶段中的低阶特征,而门控向量a代表了在编码阶段中高阶特征。整个过程:a经过3x3x3卷积,x经过间隔为2的3x3x3卷积,然后两者求和后经过relu激活函数合并输入信息和门控信息,再经过1x1x1卷积,再经过sigmoid激活函数,再上采样到原始输入特征图分辨率大小,最后在于原始输入特征图进行矩阵元素相乘得到最后的输出。

2.3、损失函数

考虑到医学图像的不平衡性,采用Focal Tversky损失函数。文章中最佳参数是alpha=0.7,beta=0.3,gama=0.75.

2.4、3D上下文注意力Unet

与3DUnet不同之处,在编码阶段引入了3D上下文引导模块,在解码阶段引入了3D上下文引导模块和空间注意力模块。3D上下文引导模块用来扩大感受野和引导上下文信息。空间注意力模块用来丰富空间细节和病灶特征表达。此外,在解码阶段还引入了深监督机制,其有两个优势:保证每个尺度中间层都有语义差异,确保3D空间注意力模块可以影响图像前景内容。

2.5、评价指标

采用dice相似系数,正确预测比率,病变阳性比率,病变假阳性比率。

3、实验与结果

3.1、采用的数据是ISBI2015的MS病变分割挑战赛数据,训练集包含5例病人,测试集是14例病人。每个病人都有T1,T2,PD和FLAIR四个序列图像。

3.2、使用的是GTX2080Ti的显卡,采用随机梯度下降法作为优化器,学习率为0.03,衰减参数是1e-6,动量是0.9。MRI图像采用固定大小181x217x181,在训练的时候裁切到160x192x160大小。数据增强采用旋转和翻转手段。T1,T2,PD和FLAIR模态图像组合构成四个通道的输入数据。训练了80epoch,使用batch大小是1。

3.3、结果比对,相比于现有的方法,ACUNet可以得到更好的综合结果。

本文分享自微信公众号 - 最新医学影像技术(MedicalHealthNews),作者:最新医学影像技术

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Tensorflow入门教程(十二)——用Tensorflow构建神经网络实现手写数字分类

    前面已经介绍了很多Tensorflow的基础知识了,我们从现在开始利用它来进行Mnist手写体识别应用。我们采用卷积神经网络来实现分类。

    用户7498388
  • 医学图像处理案例(六)——生成血管三维模型

    在前面的文章中,已经分享了人体肋骨和肺组织分割生成三维模型的例子。今天将继续分享人体脑部血管分割并生成三维模型的案例。

    用户7498388
  • TN-SCUI2020挑战赛详细讲解

    今天将分享甲状腺超声结节二值分割和二值分类的完整实现过程并提供训练好的模型和在测试数据上的提交结果成绩,为了方便大家学习理解整个流程,将整个流程步骤进行了整理,...

    用户7498388
  • 无人驾驶技术课——定位(2)

    本节将介绍自动驾驶汽车的定位技术下,包括:激光雷达定位和视觉定位,以及Apollo框架是如何解决定位问题的。

    刘盼
  • 关于FF下截取后省略号的问题

    今天在用到text-overflow的ellipsis属性得时候,突然发现原来FF下是没有省略号得(才发现,汗)。不想把这个问题交给后台或者用JS来做了,于是...

    练小习
  • 隐私泄漏严重,只通过手机号可能获取你的所有信息

    上面这句话绝不是危言耸听,只要你是一个现代人,需要通过手机来注册一系列的社交软件和网站,那你的身份信息泄露的几率就会非常之高。

    华章科技
  • SAP 财务客户主数据维护操作

    用户5495712
  • Android Jetpack: ViewModel | 中文教学视频

    Android Jetpack 是一系列助力您更容易打造卓越 Android 应用的工具和组件。这些组件能帮助您遵循最佳实践、免除编写繁复的样板代码并简化复杂任...

    Android 开发者
  • 怎样提高博客的页面访问量

    看到别人翻译的一篇文章,是讨论如何提高博客访问量的,提到的有几个方法蛮有新意,不过不赞成原文的“在聚合中只输出摘要”的方法。

    Debug客栈
  • [Go] gocron源码阅读-go语言中的切片和类型综合

    在gocron.go文件的main函数中,有下面这一句,从这句代码中可以学习到切片和类型的综合运用

    陶士涵

扫码关注云+社区

领取腾讯云代金券