VM-UNet: Vision Mamba UNet for Medical Image Segmentation

本文提出用于医学图像分割的VM-UNet模型,它基于纯Mamba架构,引入VSS块捕获上下文信息,构造非对称编码器 - 解码器结构。在ISIC17、ISIC18和Synapse数据集实验,结果显示其有竞争力,为纯SSM模型在该领域建立了基线。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VM-UNet: 基于纯 Mamba 架构的医学图像分割模型

在这里插入图片描述

论文地址:https://arxiv.org/abs/2402.02491
项目地址:https://github.com/JCruan519/VM-UNet

Abstract

在医学图像分割领域,基于CNN和基于Transformer的模型都得到了广泛的探索。然而,CNN在远程建模能力方面表现出局限性,而Transformer则受到二次计算复杂性的阻碍。最近,以Mamba为例的状态空间模型(SSM)作为一种很有前途的方法出现了。它们不仅在远程相互作用建模方面表现优异,而且保持了线性计算复杂度。本文利用状态空间模型,提出了一种用于医学图像分割的U-shaped架构模型,命名为视觉Mamba UNet (VM-UNet)。具体来说,引入了视觉状态空间(VSS)块作为基础块来捕获广泛的上下文信息,并构造了一个非对称的编码器-解码器结构。我们在ISIC17, ISIC18和Synapse数据集上进行了全面的实验,结果表明VM-UNet在医学图像分割任务中具有竞争力。据我们所知,这是第一个基于纯SSM模型构建的医学图像分割模型。我们的目标是建立一个基线,并为未来更高效和有效的基于SSM的细分系统的发展提供有价值的见解。

1 Introduction

自动医学图像分割技术帮助医生更快地进行病理诊断,从而提高患者护理的效率。近年来,基于CNN的模型和基于transformer的模型在各种视觉任务中表现出了显著的性能,特别是在医学图像分割方面。UNet[27]作为基于CNN的模型的代表,以结构简单、可扩展性强而闻名,后续的许多改进都是基于这种U型架构[11,37,28,29,30] 。TransUnet[10]是基于Transformer的模型中的先驱,它在编码阶段首先使用Vision Transformer (ViT)[13]进行特征提取,在解码阶段使用CNN,显示出重要的全局信息获取能力。随后,TransFuse[36]采用了ViT和CNN的并行架构,同时捕获局部和全局特征。此外,Swin-Unet[9]将Swin Transformer[21]与u型架构相结合,首次引入了纯基于Transformer的U型模型。

然而,基于CNN的模型和基于Transformer的模型都有固有的局限性。基于CNN的模型受到其局部接受域的限制,极大地阻碍了它们捕捉远程信息的能力。这通常会导致提取不充分的特征,从而导致次优分割结果。尽管基于Transformer的模型在全局建模方面表现出优异的性能,但自注意机制在图像大小方面要求二次复杂度,导致计算负担很高[31,13],特别是对于需要密集预测的任务,如医学图像分割。目前这些模型的缺点迫使我们开发一种新的医学图像分割架构,能够捕获强远程信息并保持线性计算复杂度。

近年来,状态空间模型(SSM)引起了研究人员的极大兴趣。在经典SSM[18]研究的基础上,现代SSM(如Mamba[16])不仅建立了长距离依赖关系,而且在输入大小方面表现出线性复杂性。此外,基于SSM的模型在许多领域都得到了大量的研究,包括语言理解[17,16]、通用视觉[38,20]等。特别是,U-Mamba[24]最近引入了一种新的SSM-CNN混合模型,这标志着它在医学图像分割任务中的首次应用。SegMamba[35]在编码器部分采用SSM,而在解码器部分仍然使用CNN,提出了一种SSM-CNN混合模型用于三维脑肿瘤分割任务。虽然上述工作已经将SSM用于医学图像分割任务,但纯粹基于SSM的模型的性能还有待探索。

受VMamba[20]在图像分类任务中取得成功的影响,本文首次引入了Vision Mamba UNet (VM-UNet),这是一种纯粹基于SSM的模型,旨在展示其在医学图像分割任务中的潜力。具体来说,VM-UNet由三个主要部分组成:编码器、解码器和跳跃连接。编码器由VMamba的VSS块组成,用于特征提取,以及用于下采样的patch merging 操作。相反,解码器包括VSS块和patch expanding操作,以恢复分割结果的大小。对于跳跃连接模块,为了突出最原始的纯SSM模型的分割性能,我们采用了最简单的加法运算形式。

在器官分割和皮肤病变分割任务上进行了全面的实验,以证明纯SSM模型在医学图像分割中的潜力。具体来说,我们在Synapse[19]、ISIC17[8]和ISIC18[12]数据集上进行了大量的实验,结果表明VM-UNet可以达到有竞争力的性能。此外,重要的是要注意VM-UNet代表了纯基于SSM的分段模型的最基本形式,因为它不包括任何专门设计的模块。

本文的主要贡献如下:

  1. 提出了VM-UNet,首次探索了纯粹基于SSM的模型在医学图像分割中的潜在应用。
  2. 在三个数据集上进行了综合实验,结果表明VM-UNet具有相当的竞争力。
  3. 我们为纯SSM模型在医学图像分割任务中建立了基线,为开发更高效、更有效的基于SSM的分割方法提供了有价值的见解。

2 Preliminaries

在现代基于SSM的模型中,即结构化状态空间序列模型(S4)和Mamba都依赖于一个经典的连续系统,该系统通过中间隐式状态 h ( t ) ∈ R N h(t)∈R^N h(t)RN将一维输入函数或序列映射为 x ( t ) ∈ R x(t)∈R x(t)R到输出 y ( t ) ∈ R y(t)∈R y(t)R。上述过程可以表示为线性常微分方程(ODE):
h ′ ( t ) = A h ( t ) + B x ( t ) y ( t ) = C h ( t ) (1) \begin{aligned}h'(t)&=\mathbf{A}h(t)+\mathbf{B}x(t)\\y(t)&=\mathbf{C}h(t)\end{aligned} \tag{1} h(t)y(t)=Ah(t)+Bx(t)=Ch(t)(1)
其中, A ∈ R N × N A∈R^{N×N} ARN×N表示状态矩阵, B ∈ R N × 1 B∈R^{N×1} BRN×1, C ∈ R N × 1 C∈R^{N×1} CRN×1表示投影参数。

S4和Mamba将这个连续系统离散化,使其更适合深度学习场景。具体来说,他们引入一个时间尺度参数∆,并使用固定的离散化规则将 A \mathbf{A} A B \mathbf{B} B转换为离散参数 A ˉ \mathbf{\bar{A}} Aˉ B ˉ \mathbf{\bar{B}} Bˉ。通常采用零阶保持器(ZOH)作为离散化规则,其定义如下:
A ‾ = exp ⁡ ( Δ A ) B ‾ = ( Δ A

### Mamba-UNet 架构及其在医学图像分割中的应用 Mamba-UNet 是一种基于纯视觉模型的架构设计,专为医学图像分割任务而优化。它继承了 U-Net 的经典编码器-解码器结构,并通过引入创新性的模块来提升性能和效率。 #### 1. Mamba-UNet 的核心架构特点 Mamba-UNet 结合了 Vision Transformer 和卷积神经网络的优势,在保持高效计算的同时增强了特征提取能力。其主要特性如下: - **双流特征融合机制** Mamba-UNet 利用了多尺度特征图之间的交互作用,通过跨层连接实现更深层次的信息传递[^1]。这种设计显著提升了模型对复杂边界区域的理解能力。 - **轻量化注意力模块** 在传统 U-Net 基础上,Mamba-UNet 集成了高效的自注意力机制,用于捕捉全局上下文信息。这使得模型能够更好地处理具有较大形变的目标对象。 - **渐进式下采样策略** 不同于标准 U-Net 中固定的池化操作,Mamba-UNet 使用了一种动态调整步幅的方法来进行逐级降维。这种方法可以减少不必要的细节损失并保留更多语义信息。 #### 2. 应用场景与优势分析 Mamba-UNet 主要应用于医疗领域内的高精度图像分割任务,例如肿瘤检测、器官轮廓描绘以及细胞分类等。以下是该方法的一些具体应用场景及对应优点: - **脑部 MRI 图像分割** 对于大脑组织切片数据集而言,由于不同灰质白质区域之间存在模糊过渡带,因此需要极高分辨率才能区分细微差异。Mamba-UNet 凭借强大的局部感知能力和长距离依赖建模功能成功解决了这一难题。 - **肺结节 CT 扫描识别** 肺部影像通常伴有大量噪声干扰项,这对任何算法都构成了严峻挑战。然而借助精心设计的空间金字塔池化单元,再加上残差学习路径的支持,最终实现了稳健可靠的预测效果。 ```python import torch from torchvision import models class MambaUNet(torch.nn.Module): def __init__(self, num_classes=1): super(MambaUNet, self).__init__() # Encoder layers with progressive downsampling strategy self.encoder = [ torch.nn.Conv2d(3, 64, kernel_size=3, stride=1, padding=1), ... ] # Decoder layers incorporating lightweight attention modules self.decoder = [ torch.nn.ConvTranspose2d(128, 64, kernel_size=2, stride=2), ... ] self.final_conv = torch.nn.Conv2d(64, num_classes, kernel_size=1) def forward(self, x): skip_connections = [] for layer in self.encoder: x = layer(x) skip_connections.append(x) for i, layer in enumerate(self.decoder): x = layer(x) x += skip_connections[-i-1] output = self.final_conv(x) return output ``` 上述代码片段展示了如何构建一个简化版的 Mamba-UNet 模型框架。实际部署过程中可能还需要进一步调优参数配置以适应特定需求环境下的表现指标要求。 #### 总结 综上所述,Mamba-UNet 提供了一个灵活且有效的解决方案来应对现代医学成像技术所带来的各种新问题。凭借独特的体系结构改进措施,不仅提高了整体运行速度还兼顾到了准确性方面的要求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值