MA-Net:用于肝脏和肿瘤分割的多尺度注意力网络

news2024/11/25 12:34:13

摘要

近年来为了提高医学图像分割的性能,提出了大量基于多尺度特征融合的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结合起来

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/89237.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Netty使用篇:自定义编解码器

我们今天还是继续Netty,Netty的编码器和解码器就是Netty对Handler这个组件的一种使用场景而已,SpringWebFlex就是基于这个Netty来做的,在往上引深一层GateWay服务网关就是SpringWebFlex的实现,所以SpringCloud当中明确说明了&…

DPDK源码分析之DPDK基础概览

本文主要介绍一下DPDK这项技术的基础概览,包括什么是DPDK,为什么有它存在的必要,它的框架是怎样的,使用了哪些技术实现,DPDK的应用场景有哪些,最后在centos7服务器上实装一个dpdk环境做一个简单的数据包收发…

C++ VTK鼠标网格表面绘制曲线

程序示例精选 C VTK鼠标表面绘制曲线 如需安装运行环境或远程调试,见文章底部微信名片,由专业技术人员远程协助! 前言 C VTK鼠标表面绘制曲线,功能完善,代码整洁,规则,易读。 文章目录 一、所需…

基于Android的招聘求职网站的设计与实现

毕业设计 基于Android的招聘求职网站的设计与实现 1.课题意义及目标 在二十一世纪求职方式跟以前是不同的,与在各个用人单位和招聘会上寻找理想的工作,基于安卓的招聘系统能够提供最好的最丰富及时的招聘信息。。 通过对该系统的研究设计…

【人工智能与机器学习】——决策树与集成学习(学习笔记)

📖 前言:决策树(Decision Tree)是一种通过对历史数据进行测算,实现对新数据进行分类和预测的算法。机器学习中,决策树是一个预测模型,代表的是对象属性与对象值之间的一种映射关系。该算法由于逻…

django计算机毕业设计基于安卓Android的移动电商平台系统APP-商品购物商城app

项目介绍 网络的广泛应用给生活带来了十分的便利。所以把移动电商平台与现在网络相结合,利用python技术建设移动电商平台APP,实现移动电商平台的信息化。则对于进一步提高移动电商平台发展,丰富移动电商平台经验能起到不少的促进作用。 移动电商平台APP能够通过互联网得到广泛的…

如何向gitlab发布的附件里上传文件

gitlab 发布后在附件里会有打包好的源码,类似下图 笔者想把构建好的文件也打包放在这个附件里,经过研究可行,步骤分享如下 注:笔者用的gitlab版本为12.10.3 创建Access Token 登录gitlab,点击右上角图像,点击Settin…

Linux基本命令(3)

Linux基本命令(3) 📟作者主页:慢热的陕西人 🌴专栏链接:Linux 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 本博客主要讲解了最后一部分常用的Linux指令和一些热…

1年时间,从小公司到美团测试开发,我做对了这些事情....

📌 博客主页: 程序员二黑 📌 专注于软件测试领域相关技术实践和思考,持续分享自动化软件测试开发干货知识! 📌 公号同名,欢迎加入我的测试交流群,我们一起交流学习! 我的…

优化cv2.findContours()函数提取的目标边界点,使语义分割进行远监督辅助标注

优化cv2.findContours()函数提取的目标边界点 假设我们想要提取的目标边界长这样: 我们先使用以下代码查看效果 import cv2 import numpy as np import osif __name__ __main__:# 图像可以选择自己的image_filepath ./landslide/image/20221129112713.png# 读取…

Java并发和多线程编程学习(二) Java内存模型

并发编程中需要处理的两个重要问题是线程之间如何通信以及线程之间如何同步,Java的并发采用的是共享内存模型,且线程之间的通信总是隐式执行,所以需要我们深入学习从而避免复杂的内存可见性问题 内存模型的抽象结构 在Java中,所…

java计算机毕业设计ssm基于H5的音乐播放管理系统

项目介绍 该系统是基于H5,使用Vue、JavaScript、CSS技术开发而成。系统服务器使用Tomcat,利用MySQL存储数据、用JDBC实现数据的访问。管理员在系统部署阶段将所有用户对应权限进行分配。正式投入使用时,用户通过登录模块进入系统。根据权限控制管理,每个用户角色的操作界面也有…

【轻量级开源ROS 的机器人设备(4)】--(2)通信实现

前文链接 【轻量级开源ROS 的机器人设备(4)】--(1)通信模块_无水先生的博客-CSDN博客 三、 通信概要 概述 ROS 的通信层是 ros_comm 堆栈的一部分,遵循发布/订阅范式,如图 2.2 所示。网络,也称…

(设计模式) (李建忠 C++) 23种设计模式

文章目录前言组件协作模板方法 Template Method动机模式定义结构代码情景版本1版本2变化原理要点总结个人小结策略模式 Strategy动机模式定义结构代码情景版本1版本2要点总结个人小结观察者模式 Observer动机模式定义结构代码场景版本1版本2版本2要点总结个人小结单一职责装饰模…

斐波那契问题——上台阶问题

题目: 给定整数N,代表台阶数,一次可以跨2个或者1个台阶,返回有多少种走法。 举例: N3,可以三次跨一个台阶,也可以先跨2再跨1,也可以先跨1再跨2,共三种走法。 思路&…

上海还有哪些比较好的IB学校?

今天我们就一起来盘点沪上几所办学成绩比较好的IB学校,快来看看哪所学校才是孩子的最好选择! Promise 上海民办平和学校 上海市民办平和学校(Shanghai Pinghe School)是由上海金桥(集团)有限公司于1996年9月…

常用Java接单平台一览

不少主攻Java的程序员兄弟除了工作,还会在空闲时间选择接单来增加自己的收入;对于那些生活在二三线的程序员兄弟们,通过接单,来获得与一线城市对等的收入。具体该怎么做,且听我娓娓道来。接下来干货满满,先…

前端—新增的嵌入多媒体元素与交互性元素

新增的嵌入多媒体元素与交互性元素 新增的嵌入多媒体元素有video和audio元素,分别是用来插入视频和声音的。值得注意的是,可以在开始标签和结束标签之间放置文本内容,这样旧版本的浏览器就可以显示出不支持该标签的信息。例如下面的代码。HT…

Qt Visual Studio添加Qt ui和编译注意事项

文章目录背景新建Widget 对象UIC程序生成ui_xxxx.h文件编译出错设置QtWidgetsTestClass.h的属性总结背景 工程中需要新的界面VS中新建Qt的ui文件,然后需要生成对应的.cpp 和 .h 文件 新建Widget 对象 生成对应的三个文件.ui, xxx. cpp, xxx.h 但是此时在QtWidget…

IDEA报错问题:If you already have a 64-bit JDK installed 解决方法【杭州多测师_王sir】【杭州多测师】...

启动IDEA的时候突然报错: 第一步:首先进入到C:\Users\用户名\.IdeaIC2019.3\config这个目录下面找到idea64.exe.vmoptions文件 第二步:通过notepad打开,进入编辑 第三步:然后修改配置如下:把Xms和Xmx的参数…