学习记录——EGE-UNet、CFNet

news2024/11/13 16:21:39

EGE-UNet: an Efficient Group Enhanced UNet for skin lesion segmentation

上海交大 2023 MICCAI

  基于 U-Net 进行魔改,用于解决医学图像(尤其是皮肤病变)分割中面临的问题。由于它是针对移动健康应用开发的,解决了当前许多模型所面临的高参数和计算负载问题。
EGE-UNet融合了两个主要模块:

  • Group multi-axis Hadamard Product Attention module (GHPA)
  • Group Aggregation Bridge module (GAB)

  GHPA 利用哈达玛积注意力机制(HPA),通过将输入特征进行分组,对不同轴进行 HPA 操作,从多个视角提取病变信息。这种方法是受到多头自注意力机制(MHSA)的启发,而 HPA 则可以减少模型大小,因为它的复杂性被设计为线性的,而且不同于 MHSA 的二次复杂性。
什么是哈达玛积? 转
  GAB 通过分组聚合将不同规模的高级语义特征和低级细节特征以及解码器生成的掩码进行融合,从而有效提取多尺度信息,这对医学图像的分割至关重要。
在这里插入图片描述

GHPA 模块

  HPA采用可学习权值,并对输入进行标准乘积运算以获得输出。随后,受MHSA中的多头模式的启发,我们提出了GHPA,它将输入分成不同的组,并在每个组中执行HPA。然而,值得注意的是,我们在不同的组中对不同的轴进行HPA,这有助于进一步从不同的角度获得信息。另一方面,对于GAB,由于医学图像中分割目标的大小和形状不一致,需要获取多尺度信息[19]。因此,GAB基于分组聚合将大小不同的高层和低层特征集成在一起,并在此基础上引入掩码信息辅助特征融合。通过将上述两个模块与UNet相结合,我们提出了EGE-UNet,它以极低的参数和计算量获得了优异的分割性能。

GAB

它接受三个输入:

  • 低级特征
  • 高级特征
  • 掩码
    在这里插入图片描述
      首先,使用深度可分卷积(DW)和双线性插值调整高级特征的大小,以匹配低级特征的大小。其次,我们将两个特征图沿着通道维度划分为四个组,并将低级特征的一组与高级特征的一组连接起来,得到四组融合特征。对于每组融合特征,掩码被连接。接下来,对不同的组应用带有3个核大小和不同扩张率的扩张卷积,以便提取不同尺度的信息。最后,沿着通道维度连接四个组,然后应用核大小为1的普通卷积以实现不同尺度特征之间的交互。

CFNet: Cascade Fusion Network for Dense Prediction

一种新颖的多尺度融合方法
CVPR 2023

  现有的SOTA方法通常先通过主干网络提取多尺度特征,然后通过轻量级模块(如 FPN)融合这些特征。然而,我们认为通过这样的范例来融合多尺度特征可能是不够充分,因为与重量级主干网络相比,分配给特征融合的参数是有限的。
  为此,我们提出了一种名为级联融合网络(CFNet)的新架构用于提升密集预测性能。除了用于提取初始高分辨率特征的主干和几个模块外,我们还引入了几个级联stage,使得CFNet能够生成更丰富的多尺度特征。每个stage都包括一个用于特征提取的子主干和一个用于特征集成的轻量级的转换模块。这种设计使得可以更深入有效地融合特征与整个主干的大部分参数。 最后,我们在目标检测、实例分割和语义分割等任务中验证了CFNet 的有效性。
在这里插入图片描述
  近几年,CNN和Transformer在许多计算机视觉任务中取得了令人满意的成果,包括图像分类、目标检测、语义分割等任务。对于图像分类任务,CNN和transformer网络在架构设计中均遵循逐渐减小特征图的空间大小的方式,来获取最高级语义特征进行预测。然而,对于许多密集预测任务,例如检测和分割,则需要多尺度特征来处理不同尺度的目标。
  众所周知,特征金字塔网络 (FPN) 被广泛用于多尺度特征提取和融合,如上图(a)所示。然而,我们认为使用这样的范例可能不足以融合多尺度特征,因为与重量级主干网络相比,分配给特征融合的参数是有限的。例如,考虑基于主干 ConvNeXt-S 构建的 FPN,融合模块与主干的参数比例小于 10%。
  那么,在计算资源不变的情况下,如果我们想为特征融合分配更多的参数,一个直观的方法是使用更小的主干并扩大融合模块。然而,使用较小的主干意味着整个模型从大规模预训练(例如 ImageNet 分类预训练)中获益较少,这对于训练数据有限的下游任务至关重要。那么我们如何分配更多的参数来实现特征融合,同时保持一个简单的模型架构,使得模型仍然可以最大程度地受益于大规模的预训练权重呢?
  先回顾一下FPN的融合模块。为了融合多尺度特征,来自相邻层的特征首先通过逐元素相加进行整合,然后使用单个 3×3 卷积对求和特征进行变换。我们将这两个步骤命名为特征集成和特征转换。很明显,我们可以堆叠更多的卷积来转换集成特征,但它同时也引入了更多的参数,为主干留下的参数更少。从另一个角度思考,我们是否可以将特征整合操作插入主干,以便利用它之后的所有参数来转换整合后的特征。

  CFNet主要思想是将特征集成操作插入至骨干网络中,使得更多参数能够用于特征融合,极大地增加了特征融合的丰富度。 本文提出的CFNet方法的主要贡献如下:

  • 本文提出的CFNet能够有效改善密集任务(检测、分割)性能;
  • 由于CFNet架构的简易性,能够轻松从大规模预训练权重中获益;
  • 在目标检测和实例分割任务上超越ConvNeXt以及Swin Transformer 1~2%精度。
    在这里插入图片描述

  上图展示了CFNet网络架构。输入一张尺寸大小为 的 RGB 图像,经过一个 stem 和 N 个连续的块(block)处理,提取到的高分辨率特征。stem 由两个步幅(stride)为 2 的 卷积层组成,每个卷积层后面跟着一个 LayerNorm 层和一个 GELU 单元。CFNet 中的块(block)可以是之前的一些研究中提出的任何设计,例如 ResNet 瓶颈块、ConvNeXt 块、Swin Transformer 块等。

  在CFNet 的多级结构中,高分辨率的特征经过一个步幅(stride)为 2 的 卷积层降采样后,被送入 个级联的stage中。所有的stage都共享相同的结构,但是它们可能具有不同数量的块(block)。在每个stage的最后一个块组中,应用了关注块(focal block)。值得注意的是,每个阶段输出带有步幅为 8、16、32 的特征 P3、P4、P5,但只有 P3 特征被送入后续stage。最后,由最后一个阶段输出的融合特征 P3、P4 和 P5 用于密集预测任务。

在这里插入图片描述
  转换块用于整合每个stage中不同尺度的特征。如上图所示,我们提出了三种简单的转换块。

  • Add: 首先使用1×1卷积将C4和C5的通道数量降低以与C3对齐。在执行逐元素相加之前,使用双线性插值操作对齐特征的空间大小。

  • Concat: 直接上采样C4和C5的特征以与C3的空间大小对齐,然后拼接这些特征,接着使用1×1卷积来减少通道数。

  • Sequentially Add: 将不同尺度的特征逐步上采样和组合。这个设计类似于FPN中的融合模块,不同之处在于没有额外的卷积来转换相加的特征。

在这里插入图片描述

  在密集预测任务中,处理各种尺度的目标一直是一个巨大的挑战。通常采用的解决方案是生成不同分辨率的特征。例如,使用步幅为8、16、32、64、128的特征来检测相应尺度的目标。用于生成步幅较大的特征的神经元通常具有较大的感受野。在CFNet的每个stage中,有三个块组用于提取步幅为8、16、32的特征。理想情况下,我们可以提取另外两个分辨率的特征以整合更多的特征尺度,就像和FPN一样。然而,这会引入更多的参数,因为随着特征的空间尺寸缩小,后面的组的通道数量逐渐增加。因此,我们提出了聚焦块,用于扩大每个stage的最后一个块组中神经元的感受野。
  如上图所示,本文提出了两种聚焦块的设计,分别在ConvNeXt块和Swin Transformer块中引入了膨胀深度卷积和两个跳跃连接。聚焦块可以同时合并细粒度的局部特征和粗粒度的全局特征进行交互。最近,使用全局注意力或大卷积核来扩大感受野已经得到广泛研究。虽然取得了有竞争力的结果,但将这些操作应用于密集预测任务时,由于输入图像的尺寸过大,通常会引入大量的计算成本和内存开销。相比之下,本文提出的聚焦块仅引入了极少量的额外成本。

End

以上仅作个人学习记录使用

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

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

相关文章

docker下载镜像慢

下载镜像的方法 手动下载,然后再打开 此方法有局限,因为不是所有的镜像地址都支持http访问。 方法是打开此镜像市场网站,搜索自己想要的镜像,然后点击下载即可。 Linux一般是下载一个压缩包,解压之后docker load就可…

用于医学图像分类的双引导的扩散网络

文章目录 DiffMIC: Dual-Guidance Diffusion Network for Medical Image Classification摘要本文方法实验结果 DiffMIC: Dual-Guidance Diffusion Network for Medical Image Classification 摘要 近年来,扩散概率模型在生成图像建模中表现出了显著的性能&#xf…

【update】自动更新设计小记

前情纪要 老项目的一个更新迭代实例方式处理,从功能梳理,待流程设计,…了解功能,时序图,流程图记录 关系图梳理 流程图设计

ChatGPT及其工作原理;OpenAI申请注册商标GPT-5,引发关注

🦉 AI新闻 🚀 OpenAI申请注册商标GPT-5,引发关注 摘要:OpenAI已在上月18日申请注册商标GPT-5,显示该模型将提供文本生成、自然语言理解、语音转录、翻译、分析等功能。此前OpenAI曾表示尚未开始训练GPT-4的后继者GPT…

Java培训去哪?Java培训普遍花费贵吗?

随着Java开发语言1995年诞生到如今,跨越了20个春夏秋冬,是时下最热的开发语言之一,想要接触了解的人群越来越多。对绝大多数准备学习java这门的学员来讲,Java培训去哪是一个绕不开的问题。接下里笔者就和大家一起探讨一下。 普遍来…

解决有道云笔记自动更新问题 关闭有道云笔记自动更新 有道云笔记自动升级v7.2.8

解决有道云笔记自动更新问题 关闭有道云笔记自动更新 有道云笔记自动升级v7.2.8 一、背景 最近使用有道云笔记时,遇到bug问题: 打不开加密的笔记,发现是最新版本v7.2.8,切换到v7.2.7后,一切恢复正常。 在使用有道云笔…

质量指标如何发挥作用?构建质量能力是关键

本文首发于个人网站「BY林子」,转载请参考版权声明。 各个团队的质量管理不够规范,想要一套质量指标对其进行规范化的考核。 指标,总是受到管理者们的青睐,甚至有人绞尽脑汁研究出各种指标的计算方式,似乎利用指标来进…

windows创建不同大小的文件命令

打开命令窗口(windowsR输入cmd打开) 输入:fsutil file createnew C:\Users\Desktop\fileTran\10M.txt 10240000,创建10M大小的文件。 文件若存在需要先删除。

基于jsp的企业员工信息管理系统的设计与实现--【毕业论文】

文章目录 本系列校训毕设的技术铺垫文章主体层次摘要示例摘要的写法英文摘要: 选题目的和意义:与本课题相关的技术和方法综述:系统分析经济上的可行性技术上的可行性开发结构分析系统功能需求系统模型 系统概要设计:数据库设计系统…

python 异步Web框架sanic

我们继续学习Python异步编程,这里将介绍异步Web框架sanic,为什么不是tornado?从框架的易用性来说,Flask要远远比tornado简单,可惜flask不支持异步,而sanic就是类似Flask语法的异步框架。 github&#xff1…

Java并发----进程、线程、并行、并发

一、进程与线程 进程 程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理 IO 的 当一个程序被运行…

车载GPS模块有哪些部分构成?_GPS北斗模块定位原理

GPS模块硬件的常规性硬件有:主板或者电路板、芯片、天线等,这些都是必备的硬件。我们常说的GPS定位模块称为用户部分,它像“收音机”一样接收、解调卫星的广播C/A码信号,中以频率为1575.42MHz。 芯片是GPS模块里面的很重要的一部分…

IDEA项目实践——创建Java项目以及创建Maven项目案例、使用数据库连接池创建项目简介

系列文章目录 IDEA上面书写wordcount的Scala文件具体操作 IDEA创建项目的操作步骤以及在虚拟机里面创建Scala的项目简单介绍 目录 系列文章目录 前言 一 准备工作 1.1 安装Maven 1.1.1 Maven安装配置步骤 1.1.2 解压相关的软件包 1.1.3 Maven 配置环境变量 1.1.4 配…

解决项目加载时空白页面

背景&#xff1a;当前端项目加载时&#xff0c;遇到网络不稳定或更新项目时&#xff0c;出现长时间白屏情况&#xff0c;对用户体验非常不友好。 解决方法 CSN加速增加带宽前端页面修改 本文就第三点展开 index.html页面 &#xff08;public文件夹下&#xff09; <!DOCTYPE…

STM32F4_外部SRAM

目录 前言 1. SRAM控制原理 1.1 SRAM功能框图 1.2 SRAM读写时序 2. FSMC简介 2.1 FSMC架构 2.2 FSMC地址映射 2.3 FSMC控制SRAM时序 3. FSMC结构体 4. 库函数配置FSMC 5. 实验程序 5.1 main.c 5.2 SRAM.c 5.3 SRAM.h 前言 STM32F4自带了192K字节的SRAM&#xff1…

免费logo生成网官网分享,轻松生成专属logo

如果你正在寻找一种快速、廉价的方式来创建一个专业的商标&#xff0c;那么免费的logo生成器可能是你想要的。这些生成器可以帮助你在几分钟内创建一个标志&#xff0c;而无需花费大量的时间和金钱。 有些小伙伴会说自己没有设计的经验&#xff0c;对于logo设计也没有太多的构思…

如何能够高效实现表格中的分权限编辑功能

摘要&#xff1a;本文由葡萄城技术团队于CSDN原创并首发。转载请注明出处&#xff1a;葡萄城官网&#xff0c;葡萄城为开发者提供专业的开发工具、解决方案和服务&#xff0c;赋能开发者。 在表格类填报需求中&#xff0c;根据当前登录用户的不同等级&#xff0c;能填报的区域会…

基于SpringBoot+Vue的超市进销存系统设计与实现(源码+LW+部署文档等)

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

LRU缓存淘汰算法详解与实现

目录 1.什么是LRU算法 2.LRU算法原题描述 3.LRU算法设计 4.LRU算法细节分析 5.代码实现 1.什么是LRU算法 就是一种缓存淘汰策略。 计算机的缓存容量有限&#xff0c;如果缓存满了就要删除一些内容&#xff0c;给新内容腾位置。但问题是&#xff0c;删除哪些内容呢&#…

向专家学习:APP开发的成功窍门

尽管有诸多障碍&#xff0c;但 APP开发仍然是企业的最佳选择。开发一款成功的 APP应用程序是一项具有挑战性的工作&#xff0c;但您仍然可以在以下几个方面做出改进。 这是一个快速变化的行业&#xff0c;也是一个可以通过学习获得经验和知识的行业。如果您不知道如何解决问题…