MA-Net:用于肝脏和肿瘤分割的多尺度注意力网络
摘要
近年来为了提高医学图像分割的性能,提出了大量基于多尺度特征融合的UNet变体。与以往通过多尺度特征融合提取医学图像上下文信息的方法不同,本文提出了一种新的多尺度注意力网格(MA-Net)在这个网络方法中引入了自注意力机制,自适应的整合局部特征和全局依赖关系。基于这个注意力机制,MANet可以捕获丰富的上下文依赖关系。
在这个网络结构中设计了两个块结构即PAB(位置注意块)以及多尺度融合注意块(MFAB)。PAB用于在空间维度上对特征相互依赖进行建模,从而在全局视图中捕获像素之间的空间依赖关系。此外MFAB还通过多尺度语义特征融合来获取任意特征映射之间的通道依赖关系。
Introduction
以往通常使用不同大小的池化核来融合多尺度上下文特征信息,采用不同采样率的扩张卷积和池化操作来获得丰富的图像多尺度上下文信息,这进一步提高了分割性能。然而扩张卷积和池化操作无法利用全局视图中像素之间的空间和通道关系。此外使用池化操作很容易丢失特征映射信息中的细节。
本文提出的MA-Net具体来说,是使用了两个基于自注意机制的块来捕获特征图的空间依赖性和通道依赖性。一种是位置注意块(PAB),另一种是多尺度融合注意块(MFAB)。通过自注意机制,利用PAB算法获取特征图中像素之间的空间依赖关系。MFAB通过应用注意机制来捕获特征映射之间的通道依赖关系。除了考虑高级特征映射的通道依赖关系外,MFAB还考虑了低级特征映射的通道依赖关系。将高层和低层特征图的通道依赖关系以和的方式融合,利用注意机制获得丰富的多尺度特征图语义信息,提高网络性能。
总的来说就是PAB模块用于获取全局视图下像素之间的空间依赖关系,MFAB模块通过融合高低语义特征来获取任意特征映射之间的通道依赖关系。
方法
网络结构主要由三个模块构成Res-block,Position-wise Attention Block(PAB)和Multi-scale Fusion Attention Block(MFAB)
残差模块由3个3x3的卷积模块和残差连接组成用于提取高纬度的特征信息。位置注意块(PAB)用于捕获特征映射的空间依赖关系。多尺度融合注意块通过融合高低特征信息来聚合任意特征映射之间的通道依赖关系。
Res-Block
受残差连接的启发,我们使用3个3 × 3 Conv块和1个残差连接在编码器路径上捕获高维特征信息。1x1卷积是用来控制输入通道的数量的
Res-Block的结构图如下:
PAB-位置注意模块
为了在局部特征图上捕获丰富的上下文关系,我们使用PAB模块来捕获任意两个位置特征图之间的空间依赖关系。这个PAB来捕获任意两个位置特征图之间的空间依赖关系。PAB模块可以在局部特征图上建模更广泛的丰富的空间上下文信息。
PAB的架构图如下所示:
给定一个局部特征图I,将其输入到一个3x3的卷积当中得到I',然后利用1x1的卷积分别生成A,B,C.然后再对A,B进行重塑,然后在A,B之间进行矩阵乘法,之后利用Softmax得到空间注意特征图。同时我们将C也进行重塑。然后将空间注意特征图与C进行矩阵相乘。并将这个结果进行Reshape得到O'。然后我们在I'和O'之间进行逐元素求和。最后通过3x3的卷积得到最终的输出结果。这个最终的输出结果具有全局上下文视图
多尺度融合注意模块
MFAB模块的主要思想是, MFAB从没有额外空间维度的多层次特征图中学习每个特征通道的重要性,并根据重要性增强有用的特征图和抑制对肝脏和肿瘤分割任务贡献较小的特征图。具体地说,我们从低级特征映射和高级特征映射来描述特征通道的相互依赖性。高级特征具有丰富的图像语义信息,而跳过连接的低级特征具有更多的边缘信息。低级特征用于恢复图像的细节
MFAB结构如下图所示
分别对高级特征和低级特征应用通道级注意机制。目的是在分割任务中增加每个特征通道中重要信息的权重,忽略无用的特征信息。
如上图所示,首先将高级特征输入到1x1的卷积核3x3的卷积当中。XHinput和XLinput有相同数量的通道,V=[V1,V2,....Vc]是卷积核的集合其中Vc是第c个卷积核的参数。我们可以通过以下公式计算U
其中vc = [v1c, v2c,…], vcc]和Xinput = [x1, x2,…], xc], Xinput∈(XHinput或者XLinput)。这里*表示卷积。然后使用全局平均池化对每个特征进行压缩。Sc1和Sc2是通过缩小特征映射XHinput和XLinput来获得的。S1和S2的第c个元素计算如下
其中,H和W分别为高度和宽度,uc为各通道的特征图。然后使用具有两个全连接(FC)层和激活函数的瓶颈层来限制模型的复杂性,并捕获通道依赖性z1和z2。用公式表现如下:
其中P1和P2表示全连接层,δ1和δ2分别表示sigmoid函数和ReLU激活函数
然后我们将低级特征和高级特征相结合
XHoutput通过重新缩放具有激活V的T来获得:
损失函数
本文采用的是交叉熵损失函数和DiceLoss相结合的方法作为最终的损失函数。损失函数表示为
其中yi和pi表示ground truth和预测的feature map, N表示batch size
总结
本文在图像分割方法中引入了自注意机制。特别地,我们利用自注意机制获取特征图的空间和通道依赖关系,并基于特征图之间的通道依赖关系考虑多尺度语义信息。此外,我们还采用了一种新的损失函数,它将交叉熵和Dice结合起来
MA-Net:用于肝脏和肿瘤分割的多尺度注意力网络相关推荐
- FFA-Net: Feature Fusion Attention Network for Single Image Dehazing (AAAI 2020)用于单图像去叠的特征融合注意力网络
用于单图像去叠的特征融合注意力网络 https://arxiv.org/pdf/1911.07559.pdf Xu Qin1*Zhilin Wang2∗Yuanchao Bai1Xiaodong Xi ...
- U-Net编程实战——CT影像的肿瘤分割
本文将介绍如何使用tf2.0的keras框架实现典型的U-net网络,并以CT影像的肿瘤分割为案例进行讲解.本文将详细地介绍UNet肿瘤分割的实现过程,这将有助于读者快速掌握UNet这一网络, ...
- 基于神经网络的脑肿瘤分割
本文提出了一种基于深度神经网络的全自动脑肿瘤分割的方法.所提出的网络适用于胶质母细胞瘤(低级别和高级别)的MR图像.就其本质而言,这些肿瘤几乎以任何形状.大小和对比度出现在大脑的任何地方.因此促使我们 ...
- 计算机毕业设计(1)-- 基于UNet的肝脏肿瘤分割
基于UNet的肝脏肿瘤分割 文章地址:arxiv.org/pdf/1505.04597.pdf 1.UNet概述 UNet是一种用于图像分割的深度学习网络架构,最初由Olaf Ronneberge ...
- 【深度学习】腹部CT的肝脏肿瘤分割的探索
[深度学习]腹部CT的肝脏肿瘤分割的探索 文章目录 1 颜色翻转 2 背景 3 U-Net网络 4 Modified U-Net (mU-Net) 5 数据集 6 数据处理及增强 7 结果 8 基于深 ...
- 基于U-net的肝脏肿瘤分割实战(Pytorch实现)
这是我去年本科毕业设计的一部分,去年使用tensorflow去实现的,这几天就随手用Pytorch做了一下实现.肝脏肿瘤的分割是医学影像分割里面比较重要的一部分,实现从人的CT或MRI影像中将肝脏区域 ...
- 在BRATS挑战赛中用于脑肿瘤分割、预后评估和总体生存预测的最佳机器学习算法
胶质瘤是最常见的原发性脑恶性肿瘤,具有不同程度的侵袭性.不同的预后和不同的组织学亚区,即瘤周水肿/瘤周浸润侵犯组织,坏死组织,增生活跃的组织,非强化的组织.这种内在的异质性也表现在它们的影像学表型上, ...
- 医学图像分割 基于深度学习的肝脏肿瘤分割 实战(一)
在之前的一篇博客里:医学图像分割 unet实现(一),是学习并复现别人的实验.这篇将记录下自己毕设第一阶段的实验.毕设题目为:基于深度学习的肝脏肿瘤分割. 经过几番调整,最终确定:第一阶段分割出腹部图 ...
- 基于飞桨Res-Unet网络实现肝脏肿瘤分割任务
点击左上方蓝字关注我们 [飞桨开发者说]韩霖,PPDE飞桨开发者技术专家,吉林大学计算机科学与技术学院,主要研究医学影像方向. 项目背景 近年来,快速发展的深度学习技术已经渗透进了各行各业,医疗方面也 ...
- Extending nn-UNet for brain tumor Segmentation 扩展nn-UNet用于脑肿瘤分割
Extending nn-UNet for brain tumor Segmentation 扩展nn-UNet用于脑肿瘤分割 Pattern Recognition on November 01, ...
最新文章
- Redis 数据结构的底层实现 (二) dict skiplist intset
- Java实现队列 链式存储结构
- Ember 3.9 发布,3.8 升级为 LTS
- 家电换新就现在 国美发放“年中惠民消费大补贴”
- java 有什么方法可以动态或循环的生成对象名
- 对象入参指定泛型类型_如何得到正确的MethodInfo对象当一个类使用泛型和泛型类型参数...
- 覆盖17类面试题小结
- 在SPSS中将统计表格外观修改为三线表外观的步骤
- vue和bootstrap-switch结合坑
- 奶爸日记17 - 长兴岛橘子
- Android ContentObserver使用实现GPRS快捷开关
- 编程语言评价标准:冯诺伊曼体系
- shapefile数据下的 dbf shp shx sbn sbx mdb adf等类型的文件的解释
- D. Fixed Point Guessing
- java 接口重写_java如何实现接口中的重写
- 【Python】胡渊鸣的99行代码——冰雪奇缘
- SQL的左连接 ,右连接,内连接和全外连接的4者区别
- 2021全球与中国船舶电子导航系统市场现状及未来发展趋势
- 技术改造奖补,湖北省技术改造项目奖励补贴标准和申报
- 用原生js把数字转换成货币人民币表示带逗号表示方法
热门文章
- C++ Java 23种设计模式的uml图表示及通俗介绍
- 2015年4月自考计算机应用,2015年4月自考《计算机应用基础》真题回顾及参考答案...
- 登录以及权限系统,用户认证信息存储设计思维
- 【学习笔记】目标跟踪领域SOTA方法比较
- 安卓开发学习笔记01_布局
- 爬虫-图像批量下载实战
- 贵州平坝集圣中学2021高考成绩查询,安顺集圣中学平坝校区2021年排名
- 微软最大敌人就是自己 Windows7推出后会怎样?
- 使用嵌入式文档的一对一关系模型
- 如何轻松快速地处理掉“重复代码”