方法文章

用于医学图像分割的多视角视觉Mamba U形网络框架

DOI:

10.3791/72616

2026年8月7日

本文内容

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本方案描述了如何构建、训练和评估一种多视角视觉Mamba U形网络框架,用于医学图像分割,通过标准化的数据集准备、模型实现和性能评估,实现皮肤病变和腹部器官的可重复分割。

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

医学图像分割需要计算方法能够准确捕捉全局上下文、局部边界以及多尺度解剖结构,同时在不同应用中保持可重复性。本文介绍了一种用于二维医学图像分割的多视图视觉Mamba U形网络框架的构建、训练与评估方案。该方案提供了一个可重复的工作流程,包括公开数据集获取、图像与掩膜预处理、网络构建、模型训练、检查点选择,以及定量与定性性能评估。该框架引入多视图特征扫描,以捕获互补的空间、轮廓、尺度和边界信息,并在U形编码器-解码器架构中应用多阶段特征融合,以提升分割过程中的特征整合能力。本方案通过公开的皮肤病变和腹部器官分割数据集进行演示。在所述的实现工作流程下,该框架在标准评估指标上表现出具有竞争力的分割性能。通过遵循本方案中提供的步骤,研究人员可复现模型实现,使用既定的实验设置训练网络,评估分割性能,并将该工作流程适配于需要可重复的基于深度学习分析的相关医学图像分割任务。

引言

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

医学图像分割是计算机视觉和医学图像分析领域的基本任务1,2,3。该任务旨在将图像划分为多个区域或对象,以便进行进一步的分析和处理。这项技术在医学影像中尤为重要,因为它有助于临床医生识别和定位病灶区域,从而提高诊断准确性和治疗规划水平。随着磁共振成像(MRI)、计算机断层扫描(CT)和正电子发射断层扫描(PET)等医学成像技术的发展,对精确医学图像分割技术的需求持续增长。目前的医学图像分割方法大致可分为三类:基于卷积神经网络(CNN)的方法4、基于Transformer的方法5,以及基于状态空间模型(SSM)的方法6,7。基于CNN的方法通常采用U形网络架构进行医学图像分割。该类别中最广泛使用的架构是U-Net8,其验证了U形编码器-解码器架构在生物医学图像分割中的有效性。U-Net3+结合了UNet++9中的密集跳跃连接和全尺度跳跃连接,以增强多尺度特征聚合能力。然而,基于CNN的方法在捕捉长距离依赖关系方面能力有限,因此可能无法有效建模长距离上下文信息。

基于Transformer的方法通过自注意力机制有效捕捉长距离依赖关系,该机制支持并行计算,并为不同感兴趣区域分配不同的注意力权重。UNETR++10引入了高效配对注意力(Efficient Paired Attention, EPA)模块,以减少参数数量和计算成本。nnFormer11结合了交错的卷积操作与自注意力操作,并提出了一种基于局部-全局体数据的自注意力机制,用于学习三维(3D)医学图像分割中的体素表示。H2Former12提出了一种高效的分层混合视觉Transformer,其在编码器中将注意力机制与基于CNN的特征提取相结合。然而,随着序列长度的增加,基于Transformer的方法表现出二次方的计算复杂度,导致计算成本显著升高。图1展示了MVM-UNet的设计动机,并将所提出的多视图扫描策略与现有的基于SSM的分割框架进行了比较。

MV4D 和 SS2D SSM 编码器-解码器结构图,用于 MFusion Mamba 架构。
图 1.MVM-UNet 与现有纯基于状态空间模型(SSM)的分割架构的比较。 传统纯基于状态空间模型(SSM)的分割框架与所提出的多视图 Mamba U-Net(MVM-UNet)架构之间的对比。上方面板展示了 MVM-UNet,其中多视图四方向(MV4D)模块利用锯齿形、分层、螺旋形和径向扫描对提取互补特征,并通过空间融合 Mamba(SFusion Mamba)进行整合,而多阶段融合 Mamba(MFusion Mamba)在解码前聚合多尺度编码器特征。下方面板展示了一种使用二维选择性扫描(SS2D)模块并结合交叉扫描的典型纯 SSM 架构。该图突出了传统基于 SSM 的分割网络与所提出的 MVM-UNet 之间的结构差异。请点击此处查看此图的放大版本。

基于SSM的方法结合了Transformer的全局建模能力与线性计算复杂度。Mamba架构利用选择性状态空间模型(Selective-SSM)选择性地处理输入信息,使模型能够根据输入动态调整参数,同时过滤无关信息并突出重要特征。Vim13 和 VMamba14 将Mamba架构适配于计算机视觉任务。U-Mamba15 采用混合CNN–SSM架构,探索SSM在医学图像分割中的应用,而Mamba-UNet16 则采用完全基于SSM的编码器-解码器架构进行医学图像分割。这些方法在使用显著更少参数的同时,达到了具有竞争力的性能。然而,当前基于SSM/Mamba的方法主要通过简单的图像块和SS2D扫描策略提取图像特征,这在医学图像分割中存在若干局限性。首先,SS2D和基于图像块的技术主要针对通用计算机视觉任务设计。Local Mamba17 和 Motion Mamba18 的研究表明,SS2D扫描策略并不适用于所有视觉任务,因为不同的扫描策略捕获不同类型的视觉信息。其次,SS2D扫描策略相对简单,仅依赖水平和垂直方向的扫描,因此可能无法充分捕捉复杂的空间关系和精细的结构细节。医学图像分割需要同时建模全局空间上下文和精确的局部解剖特征。此外,当前基于SSM/Mamba的方法在编码器与解码器之间的特征融合能力有限。UNet++和FATNet等架构通过增强特征融合提高了分割精度,凸显了有效特征整合在医学图像分割中的重要性。

为解决这些局限性,本文提出了一种基于 Mamba 的新型医学图像分割框架,称为 MVM-UNet。如图1所示,所提出的多视角四方向(MV4D)模块是 MVM-UNet 的核心特征提取组件,通过融合四种不同扫描策略的信息,专为医学图像分割而设计。每种扫描策略提取互补的图像特征,并表示输入图像的不同视角。之字形扫描19在每一行或列的末端交替遍历方向,从而平衡局部与全局空间信息。相比之下,螺旋和径向扫描策略20通过从中心向外扩展或从边缘向内延伸,实现全面覆盖。分层扫描18在多个尺度上捕获局部和全局特征。为提高每种扫描策略的鲁棒性,在输入至 S6 Block 前先将扫描对进行合并。随后,扫描视角融合 Mamba(SFusion Mamba)模块整合来自四种扫描模式提取的特征。为有效利用多尺度编码器特征,本文进一步提出多尺度 Mamba 融合模块(MFusion Mamba),该模块在将融合特征传递给解码器之前,累积并融合每个编码器阶段的输出。MVM-UNet 在 ISIC 2017、ISIC 2018 和 Synapse 数据集上进行了评估。实验结果表明,MVM-UNet 在 ISIC 2017、ISIC 2018 和 Synapse 数据集上均取得了具有竞争力的分割性能。

具有代表性的分割架构进一步推动了医学图像分割的发展。U-Net 已成功应用于细胞计数、检测和形态计量等生物医学图像分析任务21。基于注意力机制增强的卷积神经网络架构(如 CA-Net22)通过综合性的注意力机制提升了特征表示能力。典型的基于 Transformer 的分割框架,包括 TransUNet23、Pyramid Medical Transformer24、Swin U-Net25、TransAttUNet26 和 TransCUNet27,进一步证明了基于注意力的全局特征建模在医学图像分割中的有效性。

MVM-UNet 的设计源于现有基于 SSM/Mamba 的分割方法存在的两个局限性。首先,当前许多视觉 Mamba 模型依赖于简单的二维扫描策略,这在处理包含不规则病灶边界、小目标区域和多尺度解剖结构的医学图像时可能表现不足。其次,传统的 U 形编码器-解码器架构主要通过对应的跳跃连接传递特征,限制了解码过程中对多阶段编码器信息的直接利用。因此,MVM-UNet 引入了 MV4D 以增强多视角空间建模能力,并提出 MFusion Mamba 以显式聚合多阶段编码器特征。该设计旨在将基于 Mamba 的长距离建模能力更好地适配于医学图像分割的具体需求。

尽管MVM-UNet基于通用的编码器-解码器范式和基于Mamba的序列建模,其创新之处在于这些组件如何针对医学图像分割任务进行适应性改造与集成。该框架并非简单地将标准Mamba模块嵌入U形网络主干,而是通过多个面向任务的扫描对分支重新设计空间建模过程,引入SFusion Mamba以融合特定扫描的表征,通过残差和投影路径增强MVV模块,并在编码器与解码器之间插入MFusion Mamba模块,以在解码前聚合多阶段的编码器特征。这种架构层面的设计旨在应对医学图像中常见的不规则边界、小目标区域以及多尺度解剖结构。

该方案最适合用于需要同时建模长距离上下文信息、不规则物体边界以及多尺度解剖结构的二维医学图像分割任务。与基于卷积神经网络(CNN)的分割方法相比,基于Mamba的编码器-解码器设计在保留医学图像分割研究人员所熟悉的U形工作流程的同时,提供了有效的上下文建模机制。与基于Transformer的方法相比,所提出的框架避免了二次自注意力机制的直接使用,适用于希望利用相对高效的序列建模机制实现全局上下文建模的研究人员。因此,该方案适用于皮肤病变分割、腹部器官分割,以及其他对全局结构信息和局部边界细节均重要的二维医学图像分割任务。

该方案在使用前也存在一些需要考虑的局限性。对于相对简单的分割任务,若轻量级卷积神经网络(CNN)已能提供足够性能,则可能无需采用本方案。此外,若不进行架构上的调整,本方案并非直接适用于完整的三维体积分割。对于标注数据极为有限、图形处理器(GPU)资源有限,或需要高度可解释的传统模型的研究人员,也应在应用本方案前充分考虑这些限制条件。总体而言,本方法适用于希望复现并评估基于 Mamba 的 U 形分割框架的研究人员,该框架在长距离上下文建模、局部边界表征和多阶段特征融合之间实现了平衡。

主要贡献如下:

1. 本文提出了一种基于 Mamba 的新型医学图像分割框架,称为 MVM-UNet。与直接引入现有基于 SS2D 或标准 Mamba 模块的方法不同,MVM-UNet 引入了 MV4D 模块,从四种互补的扫描配对视角对医学图像特征进行建模,包括之字形、分层式、螺旋形和径向扫描。

2. 本文设计了SFusion Mamba和MVV模块,用于整合特定扫描的表征并增强特征变换。SFusion Mamba融合了来自不同扫描配对分支提取的特征,而MVV模块内的残差分支和上下投影分支则提供了互补的特征通路,以稳定并丰富特征表征。

3. 本文在编码器与解码器之间引入MFusion Mamba作为中间多阶段融合模块。与主要传递同阶段特征的传统跳跃连接不同,MFusion Mamba通过从粗到细的融合方式显式聚合多阶段编码器特征,为解码过程提供更丰富的信息。

4. 大量实验结果表明,所提出的 MVM-UNet 在 ISIC 2017 和 ISIC 2018 数据集上实现了具有竞争力的分割性能,在 Synapse 多器官分割数据集上表现出色。此外,全面的消融实验验证了 MVM-UNet 中各个组件的贡献。

方案

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究仅使用了公开且去标识化的医学图像数据集,包括 ISIC 2017、ISIC 2018 和 Synapse。本研究未收集任何新的受试者、动物实验对象或可识别的私人医疗记录。本研究使用的 ISIC 2017 数据集为 ISIC 2017 挑战赛皮肤病变分割数据集,来源于国际皮肤影像协作组织官方挑战赛数据存储库(https://challenge.isic-archive.com/data/#2017)。本研究所用数据集版本对应于 ISIC 2017 病变分割任务,包含官方提供的训练集、验证集和测试集划分。该数据集于 2024 年 3 月 15 日下载。本研究使用的 ISIC 2018 数据集为 ISIC 2018 挑战赛任务 1 病变边界分割数据集,来源于国际皮肤影像协作组织官方挑战赛数据存储库(https://challenge.isic-archive.com/data/#2018)。本研究所用数据集版本对应于 ISIC 2018 任务 1:病变边界分割。该数据集于 2024 年 7 月 8 日下载。

本研究使用的 Synapse 数据集为来自 Synapse 数据库的“颅外多图谱标注腹部 CT 数据集”(Multi-Atlas Labeling Beyond the Cranial Vault abdominal CT dataset),获取自编号为 syn3193805 的数据条目(https://www.synapse.org/Synapse:syn3193805)。本研究所用数据集对应于常用的 30 例腹部 CT 多器官分割数据集。下载的压缩包为 Abdomen/RawData.zip,位于编号 syn3193805 下。数据库在下载时未提供独立的版本号、发布标签或带日期的发布标记。按照先前研究中采用的标准划分方式,18 例用于训练,12 例用于测试。数据划分遵循 TransUNet23 所使用的病例列表。具体而言,训练病例为 case0031、case0007、case0009、case0005、case0026、case0039、case0024、case0034、case0033、case0030、case0023、case0040、case0010、case0021、case0006、case0027、case0028 和 case0037,测试病例为 case0008、case0022、case0038、case0036、case0032、case0002、case0029、case0003、case0001、case0004、case0025 和 case0035。该数据集下载于 2024 年 7 月 9 日。由于本研究仅使用公开可用的去标识化数据集,未涉及新的人类受试者数据收集或可识别的私人信息,因此本方案中所述的计算实验无需机构审查委员会批准。本研究未获取正式的书面机构豁免认定。若当地机构政策有要求,研究人员应在对公开可用数据集进行二次分析前,获取机构豁免认定。本研究无可用的机构伦理豁免编号或正式豁免文件。

1. 数据集的准备

  1. 从国际皮肤影像协作组织(International Skin Imaging Collaboration)的官方仓库下载 ISIC 2017 皮肤病变分割数据集。使用官方提供的训练集、验证集和测试集划分。确认该数据集包含 2,000 张训练图像、150 张验证图像和 600 张测试图像。
  2. 从国际皮肤影像协作组织(International Skin Imaging Collaboration)的官方仓库下载 ISIC 2018 皮肤病变分割数据集。使用官方提供的训练集、验证集和测试集划分。确认该分割数据集包含 2,594 张训练图像、100 张验证图像和 1,000 张测试图像。
  3. 下载 Synapse 多器官分割数据集。使用标准划分方式:训练集包含 18 个病例(共 2,212 个轴向切片),测试集包含 12 个病例(共 1,567 个轴向切片)。不引入独立的验证集。
    1. 仅将 12 个测试病例用于最终评估。不得将测试病例用于模型训练、超参数调优或模型选择。该分割任务包含八个腹部器官:主动脉、胆囊、脾脏、左肾、右肾、肝脏、胰腺和胃。
    2. 使用以下 Synapse 数据集划分方式:18 个训练病例为 case0031、case0007、case0009、case0005、case0026、case0039、case0024、case0034、case0033、case0030、case0023、case0040、case0010、case0021、case0006、case0027、case0028 和 case0037;12 个测试病例为 case0008、case0022、case0038、case0036、case0032、case0002、case0029、case0003、case0001、case0004、case0025 和 case0035。
  4. 将每个数据集分别组织为独立的图像和掩码文件夹。确保每张图像都有一个对应且病例标识相同的分割掩码。
    1. 将每个皮肤病变掩码转换为二值前景-背景分割图。对 Synapse 数据集保留原始的多类别器官标签。
    2. 对于 ISIC 2017 和 ISIC 2018 数据集,在二值掩码转换后,将背景像素的标签值设为 0,病变(前景)像素的标签值设为 1。原始掩码值大于 0 的像素视为前景并转换为 1,原始掩码值等于 0 的像素视为背景并保持为 0。对于 Synapse 数据集,保留原始整数标签值,其中 0 表示背景类别,1–8 表示八个前景器官类别。
  5. 将 ISIC 2017 和 ISIC 2018 的图像和掩码调整为 256 × 256 像素,不保持原始宽高比。不进行裁剪或填充操作。
    1. 将每个 Synapse CT 切片及其对应的标签图调整为 224 × 224 像素。对 RGB 图像使用双线性插值,对 CT 切片使用三阶样条插值,对分割掩码使用最近邻插值。
    2. 在 Python 中进行图像缩放。
      1. 对于 ISIC 2017 和 ISIC 2018 数据集,使用 utils.py 中实现的自定义 myResize 变换,调用 torchvision.transforms.functional.resize 将图像和掩码张量均调整为 256 × 256 像素。在此变换中不指定显式的插值模式或抗锯齿参数。
      2. 对于 Synapse 数据集,在 datasets/dataset.py 中使用 scipy.ndimage.zoom。使用三阶样条插值(order = 3)将 CT 图像切片调整为 224 × 224 像素,使用最近邻插值(order = 0)调整标签图。在缩放过程中不应用单独的抗锯齿操作或设置 anti_aliasing=True。
  6. 在张量转换前,使用数据集特定的均值和标准差(SD)对每个 ISIC RGB 图像进行归一化处理,使用 公式 1 如下:
    归一化公式 \(x_{norm}=\frac{x-\mu}{\sigma}\);统计分析过程。 (1)
    随后使用最小-最大归一化将归一化后的图像重新缩放到 0–255 范围。
    1. ISIC 2017 训练集使用 µ = 159.922 和 σ = 28.871;ISIC 2017 验证集和测试集使用 µ = 148.429 和 σ = 25.748。ISIC 2018 训练集使用 µ = 157.561 和 σ = 26.706;ISIC 2018 验证集和测试集使用 µ = 149.034 和 σ = 32.022。
    2. 将每个归一化后的图像转换为形状为 3 × 256 × 256 的张量。将每个二值掩码转换为形状为 1 × 256 × 256 的张量。
    3. 在完成数据集特定的均值-标准差归一化后,对每张图像独立进行最小-最大归一化。具体而言,从每张图像中减去数据集特定的均值,并除以对应的标准差。
    4. 根据归一化后图像的最小和最大强度值,使用每张图像自身的最小值和最大值将图像重新缩放到 0–255 范围。此最小-最大重缩放步骤中不得使用整个数据集的全局最小值和最大值。
  7. 将每个 Synapse CT 切片准备为二维灰度图像。将每个 CT 切片转换为 float32 类型,并添加一个单通道维度,得到形状为 1 × 224 × 224 的输入张量。
    1. 将每个 Synapse 标签图保留为单通道整数掩码,形状为 224 × 224。在数据加载器中不应用额外的数据集级别均值-标准差归一化。
    2. 使用提供的预处理后的 Synapse 文件,训练切片为 .npz 格式,测试体数据为 .npy.h5 格式。在训练期间直接从每个 .npz 文件加载图像和标签数组,在测试期间直接从每个 .npy.h5 文件加载。在发布的数据加载器中不应用额外的强度截断、CT 窗宽处理、数据集级别归一化或原始体数据重采样。
    3. 在模型训练过程中,将每个加载的二维切片转换为 float32 类型,使用 scipy.ndimage.zoom 将其调整为目标空间尺寸(图像切片使用 order = 3,标签图使用 order = 0),然后将调整后的数组转换为带单通道维度的张量。
  8. 仅对训练集应用数据增强。对于 ISIC 2017 和 ISIC 2018 数据集,应用随机水平翻转(p = 0.5)、随机垂直翻转(p = 0.5)和随机旋转(p = 0.5),旋转角度从 0° 到 360° 中随机采样。
    1. 对每对图像-掩码应用相同的几何变换。在验证和测试阶段,仅应用缩放、归一化和张量转换。
    2. 对于 Synapse 数据集,在训练期间应用随机旋转和随机翻转。对每对图像-标签随机旋转 k × 90°(其中 k ∈ {0,1,2,3}),或沿一个空间轴随机翻转,或以 −20° 到 20° 范围内随机采样的角度进行旋转。
    3. 在测试阶段不应用随机增强。
    4. 使用 RandomGenerator 变换中实现的互斥分支对 Synapse 数据集应用数据增强。
      1. 对于每个训练样本,首先判断条件 random.random() > 0.5。若条件成立,则应用 random_rot_flip,即先进行随机 90° 旋转(k = 0, 1, 2, 或 3),再沿一个空间轴进行随机翻转。
      2. 若第一个分支未被选中,则判断第二个条件 random.random() > 0.5。若该条件成立,则应用 random_rotate,旋转角度在 −20° 到 20° 之间随机选择。若两个条件均不成立,则不对该样本应用随机增强。
      3. 对输入图像和对应的标签图应用相同的变换。
  9. 在数据集加载、预处理和训练之前设置随机种子。主比较实验使用随机种子 1、52 和 100,消融研究使用种子 100,除非另有说明。
    1. 在构建数据加载器之前,初始化 Python、NumPy、PyTorch CPU、PyTorch CUDA 和 cuDNN 的随机数生成器。在所有种子运行中保持数据集划分、预处理流程、增强设置、归一化参数、缩放策略和评估预处理不变。
    2. 对于 ISIC 和 Synapse 实验均设置 num_workers = 0,以在主进程中执行数据加载。在构建数据集和创建 DataLoader 之前,使用 set_seed 函数初始化全局随机种子,以设置 Python、NumPy、PyTorch CPU、PyTorch CUDA 和 cuDNN 的随机数生成器。不定义单独的 worker_init_fn 或 DataLoader 特定的随机生成器,因为这些在发布的实现中未使用。

2. MVM-UNet 架构的构建

  1. 采用U形编码器-解码器架构构建所提出的多视图视觉Mamba UNet(MVM-UNet)。
  2. 将输入图像的维度设为 H × W × 3,并将其传入图像块嵌入层。
    1. 使用卷积核大小为 4 × 4、步长为 4、输入通道数为 3、输出通道数为 96 的二维卷积实现图像块嵌入层。
    2. 将输入特征图转换为空间分辨率为 H/4 × W/4、通道数 C = 96 的输出特征图。
  3. 构建四个编码器阶段和四个解码器阶段。在每个编码器阶段后,将空间分辨率降低一半,同时将通道维度加倍。
  4. 采用对称的编码器-解码器结构。在编码器和解码器中设置 MVV Block 的数量为 {2, 2, 2, 2}。
    1. 在每个编码器阶段和每个解码器阶段中均放置两个 MVV Block。
  5. 在每个编码器和解码器阶段中插入一个 MVV Block,并在每个 MVV Block 内部使用 MV4D 模块作为核心特征提取模块。
  6. 在编码器与解码器之间插入 MFusion Mamba 模块,用于在解码前融合多阶段编码器特征。
  7. 配置整体 MVM-UNet 工作流程:在整个编码器中使用 MV4D 进行特征提取。
    1. 保留编码器输出作为跳跃连接,并将编码器输出传递至对应的解码器阶段。
    2. 在解码前将编码器特征传入 MFusion Mamba 模块。通过解码器逐步上采样融合后的表示,并利用分割头生成最终的分割图。
  8. 将输入图像 ∈ ℝB×H×W×3 传入图像块嵌入层,得到 神经网络研究中张量形状的数学符号公式图示。,其中 C = 96。
    1. 生成编码器特征图:E∈ ℝB×H/4×W/4×CE∈ ℝB×H/8×W/8×2CE∈ ℝB×H/16×W/16×4C,以及 E∈ ℝB×H/32×W/32×8C。在每个编码器阶段中使用包含 MV4D 的 MVV Block。
    2. 保留每个编码器特征以用于对应的跳跃连接,并将所有编码器特征传入 MFusion Mamba 模块进行多阶段特征融合。
    3. 在 MFusion Mamba 模块中进行粗粒度与细粒度融合前,先将编码器特征对齐至统一的特征空间,再将融合后的表示传递至解码器。
    4. 逐步上采样解码器的表示,并在 H/16 × W/16 处与 E3 融合,在 H/8 × W/8 处与 E 融合,在 H/4 × W/4 处与 E1 融合。
    5. 将最终的解码器特征上采样至原始图像分辨率,生成预测图 静力平衡公式图示,ΣFx=0,ΣFy=0,力矩分析,教育用物理概念。 ∈ ℝB×H×W×K。其中,K = 1 表示二值病灶分割,K = 8 表示 Synapse 多器官分割。
    6. 参见 图 2 查看整体网络架构,参见 补充表 1 查看完整的逐层架构说明,包括各阶段的操作、主要参数及输出特征维度。
    7. 编码器-解码器过渡层
      1. 使用图像块合并过渡层对编码器特征进行下采样。在每次过渡中,从 2 × 2 邻域中采样四个空间交错的特征组,沿通道维度进行拼接,应用层归一化(LayerNorm),并通过无偏置的线性层将得到的 4C 维特征投影至 2C 个通道。该操作将空间分辨率降低 2 倍,同时将通道维度加倍。
      2. 使用图像块扩展过渡层对解码器特征进行上采样。先应用无偏置的线性投影,再对扩展后的特征进行空间重排以使分辨率提高 2 倍,并在空间扩展后应用 LayerNorm。重复该操作,逐步将特征图从 H/32 × W/32 重建至 H/16 × W/16、H/8 × W/8 和 H/4 × W/4。
      3. 在 MFusion Mamba 模块中,通过双线性插值(align_corners = False)将编码器特征调整至目标空间分辨率,再应用可学习的线性通道投影,随后进行特征融合。
    8. 分割头
      1. 使用最终的图像块扩展层将最终解码器特征图从 H/4 × W/4 上采样至原始图像分辨率(H × W)。应用线性投影,以 4 倍扩展因子进行空间重排,并应用 LayerNorm。
      2. 将重建后的特征图转换为通道优先格式后,使用 1 × 1 卷积将其投影至 K 个输出通道。
      3. 在评估阶段,对二值病灶分割应用 Sigmoid 激活函数,对 Synapse 多器官分割应用 Softmax 激活函数后接 argmax 操作,生成最终预测结果。分割头内部不应用激活函数。

图像分割过程示意图,展示图像块嵌入、合并、扩展阶段及融合方法。
图 2.多视角 Mamba U-Net(MVM-UNet)的整体架构。本文提出的多视角 Mamba U-Net(MVM-UNet)架构概览。输入图像被转换为图像块嵌入,并通过四个编码器阶段进行处理,各阶段由图像块合并操作分隔的多视角视觉(MVV)模块组成。编码器特征由多阶段融合 Mamba(MFusion Mamba)聚合,并通过跳跃连接传递至解码器。解码器利用图像块扩展操作逐步恢复空间分辨率,并通过投影层生成最终的分割图。请点击此处查看该图的放大版本。

MV4D 模块的构建

  1. 使用 MV4D 模块作为 MVV Block 中的基本特征提取单元。将输入的特征块送入四个扫描对分支。有关空间展平、扫描对索引构建、序列收集、S6/Mamba 处理、逆向空间重排序、扫描对融合、SFusion Mamba 融合、投影及输出重塑的完整伪代码,请参见 Algorithm 1, Supplementary File 1
  2. 使用在 models/mvmunet/core.py 中实现的精确的之字形(zigzag)、分层式(hierarchical)、螺旋形(spiral)和径向(radial)扫描索引生成过程。对于每种扫描策略,将前向扫描顺序与其反向顺序组成一个双向扫描对。
  3. 构建之字形扫描对。在每一行或列的末端以交替方向遍历图像特征。使用此扫描模式以平衡局部与全局空间信息。
  4. 构建分层式扫描对。在多个空间尺度上捕获特征。使用此扫描模式以增强局部与全局表征的提取能力。
  5. 构建螺旋形扫描对。从图像中心向边界或从边界向中心扫描图像特征。使用此扫描模式以增强全局轮廓信息的提取。
  6. 构建径向扫描对。沿多个径向方向扫描图像特征。使用此扫描模式以增强局部边界与边缘细节的提取。
  7. 在将合并后的序列送入 S6 模块之前,先合并每个扫描对。采用成对设计以提高每种扫描策略的鲁棒性,同时保持计算效率。
  8. 将每个扫描对分支的输出序列送入一个 S6 模块。获得对应于之字形、分层式、螺旋形和径向扫描视角的四个特征表征。
  9. 使用 SFusion Mamba 模块融合四个提取的特征表征。采用两条并行融合路径。在第一条路径中,通过逐元素相加的方式融合四个特征。
  10. 在第二条 SFusion Mamba 路径中,将四个特征进行拼接。使用 Conv1d 和 Mamba 处理拼接后的表征。通过投影层降低通道维度,使其与 S6 模块的输出维度一致。
  11. 使用特征维度 C 作为模型维度来配置 S6/Mamba 模块。在融合前,使用投影层将每个合并后的扫描对特征映射回通道维度 C。
  12. 在 SFusion Mamba 中,第一条路径执行逐元素相加操作;在第二条路径中,先对四个扫描视角的特征进行拼接,再进行 Conv1d、Mamba 和线性投影。使用与 MV4D 相关的归一化、线性投影、深度可分离卷积和激活操作,具体如步骤 4 所述。
  13. 将两条融合路径的输出相加以获得 MV4D 模块的最终输出。
  14. 构建四个互补的扫描对分支,而非仅使用水平和垂直扫描方向。使用之字形扫描以强调连续的空间遍历,使用分层式扫描以增强多尺度表征,使用螺旋形扫描以捕获从中心到边界的轮廓信息,使用径向扫描以增强面向边界的局部细节提取。
  15. 独立处理每个扫描对分支。使用 SFusion Mamba 融合所得特征。在融合前,将每个处理后的序列映射回其原始空间顺序。
  16. 给定输入特征图 ∈ ℝB×H×W×C,将其展平为 Xseq ∈ ℝB×L×C,其中 L = H × W
  17. 根据每个扫描对分支的扫描索引对展平后的序列进行重排序。使用 S6 模块处理每个重排序后的序列,并将处理后的序列恢复至原始空间顺序。
  18. 通过加法路径和 SFusion Mamba 路径融合四个扫描视角的特征,以获得 MV4D 模块的最终输出。有关 MV4D 架构,请参见 图 3;有关完整的张量级实现流程,请参见 Algorithm 1, Supplementary File 1
  19. 使用 models/mvmunet/core.py 中的完整软件实现。该文件包含扫描索引生成器、PairwiseScanMamba、SequenceS6、SFusion Mamba 以及 MV4D 封装模块。
  20. 生成多视角扫描索引
    1. 按照 models/mvmunet/core.py 中发布的实现生成扫描索引。对于空间尺寸为 H × W 的输入特征图,使用以下公式将每个像素位置展平为一维索引:index = r × W + c,其中 r 和 c 分别表示行和列坐标。
    2. 通过遍历满足 r + c 为常数的图像对角线生成之字形扫描。收集每条对角线上的有效像素索引,并通过反转每条偶数编号对角线的顺序来交替遍历方向。
    3. 通过递归地将图像划分为四个象限生成分层式扫描。依次访问左上、右上、左下和右下象限,直到子区域的高度或宽度不超过 2 个像素,然后以行优先顺序遍历剩余像素。
    4. 通过从左到右沿顶行、从上到下沿右列、从右到左沿底行、从下到上沿左列遍历外层图像边界,并逐步向图像中心收缩边界,生成螺旋形扫描。
    5. 通过将每个像素按照其到图像中心的平方距离排序,然后根据使用 atan2 函数计算的极角进行排序,生成径向扫描。
    6. 通过反转相应前向扫描顺序生成每种扫描策略的反向扫描。在将扫描对送入 MV4D 模块之前,将前向和反向扫描序列组合成每种扫描策略的一个扫描对。

显示扫描对和SFusion Mamba图像块合并与分析过程的MV4D示意图。
图3.多视角四方向(MV4D)模块的架构。多视角四方向(MV4D)特征提取模块的结构。输入图像块通过四个互补的扫描对分支进行处理,包括之字形、层次化、螺旋形和径向扫描。从这四个分支提取的特征被合并后,利用状态空间模块进行处理,并通过空间融合Mamba(SFusion Mamba)整合,以生成输出特征表示。请点击此处查看该图的放大版本。

4. MVV 区块的构建

  1. 使用一个主分支和两个辅助分支构建 MVV 模块。采用 图4 所示的整体结构。
  2. 对主分支中的输入特征应用层归一化。将归一化后的特征输入至线性层。将变换后的特征传递给深度可分离卷积。
  3. 使用深度可分离卷积处理变换后的特征。应用 GELU 激活函数。将激活后的特征输入至 MV4D 模块。
  4. 将第一个辅助分支构造成恒等残差连接。将输入特征直接连接至最终输出。使用该分支以保留原始表示并稳定训练过程。
  5. 将第二个辅助分支构造成投影下采样-上采样分支。使用下投影层压缩输入特征。使用上投影层恢复特征维度。
  6. 合并主分支和两个辅助分支的输出,得到最终的 MVV 模块输出。完整架构请参考图4。
  7. 设置主分支的隐藏维度等于输入通道维度 Cs。在主线性投影前应用 LayerNorm(Cs),并使用维度为 CsCs 的线性层。采用由 3×3 深度卷积(填充为1,groups = Cs,无偏置)后接 1×1 逐点卷积(无偏置)组成的深度可分离卷积。
  8. 在深度可分离卷积之后应用 GELU 激活函数。将激活后的特征输入 MV4D,并应用维度为 CsCs 的输出线性投影。配置投影下采样-上采样分支:使用 LayerNorm(Cs)、投影比为4、下投影 CsCs/4、GELU 激活函数,以及上投影 Cs/4→Cs
  9. 通过逐元素相加的方式融合恒等分支、投影下采样-上采样分支以及经过 drop-path 处理的主分支,得到最终的 MVV 模块输出。

神经网络架构示意图;包含 SiLU、MV4D、DW-Conv、Layer Norm 等层;数据流。
图 4.多视角视觉(MVV)模块的架构。多视角视觉(MVV)模块的结构。该模块包含一个主特征提取分支,其中集成了多视角四方向(MV4D)模块,并结合了深度可分离卷积、归一化和线性投影层。一个辅助的上下投影分支通过逐元素相乘实现门控特征调制,随后与主分支进行残差相加以生成输出特征表示。请点击此处查看该图的放大版本。

5. MFusion Mamba 的构建

  1. 收集所有编码器阶段的特征图。在必要时通过调整大小或投影,将编码器特征对齐到统一的表示空间。有关完整的张量级实现流程,请参见补充文件1中的算法2
  2. 在必要时将编码器特征调整至目标空间分辨率。将具有不同通道维度的特征投影到相同的通道维度。在多阶段融合之前对齐所有编码器特征。
  3. 将对齐后的编码器特征输入至粗融合(Coarse Fusion)组件。使用哈达玛积(Hadamard product)执行粗融合。生成粗融合表示。
  4. 将粗融合表示输入至细融合(Fine Fusion)组件。构建两条并行的细融合通路。独立处理两条通路。
  5. 使用线性层处理第一条细融合通路。使用上投影、一维卷积(Conv1d)、Mamba 模块和下投影处理第二条细融合通路。在下投影后恢复特征维度。
  6. 使用哈达玛积合并两条细融合通路的输出。应用最终的线性层。获得 MFusion Mamba 输出。
  7. 将 MFusion Mamba 输出输入至解码器。结合编码器-解码器跳跃连接特征,解码融合后的多阶段表示。生成最终的分割图。
  8. 在粗融合之前,将来自不同阶段的编码器特征对齐到统一的特征空间。使用粗融合和细融合阶段处理对齐后的特征表示。有关 MFusion Mamba 架构的示意图,请参见图5,有关完整的张量级实现流程,请参见补充算法2。
  9. 按如下方式设置 MFusion Mamba 的实现参数:对于每个编码器特征 Ei,将通道维度从 Ci 投影至 Ct。在必要时,使用双线性插值(align_corners=False)将投影后的特征调整至目标空间尺寸。
  10. 使用哈达玛积对对齐后的编码器特征执行粗融合。配置第一条细融合通路:使用维度为 C→ Ct 的线性层。配置第二条细融合通路:使用上投影 C→ 2Ct、一维卷积(Conv1d)、模型维度为 2Ct、单扫描方向、状态维度为 16 的 Mamba/S6 模块,以及下投影 2C→ Ct
  11. 使用哈达玛积融合细融合通路的输出。应用维度为 CtCt 的最终线性投影。将融合后的多阶段表示输入至解码器。
  12. 使用 MFusion Mamba 融合多阶段编码器特征
    1. 收集来自全部四个编码器阶段的特征(E1、E2、E3 和 E4),并将其作为 MFusion Mamba 模块的输入。不要仅选择对应阶段的编码器特征用于解码器融合。
    2. 将所有编码器特征对齐至当前解码器阶段所需的空间分辨率。在特征融合前,将编码器特征调整至目标分辨率,并投影至所需的通道维度。
    3. 对每个解码器阶段重复执行特征对齐过程。当解码器在 H/16 × W/16、H/8 × W/8 和 H/4 × W/4 尺度下运行时,将 E1、E2、E3 和 E4 调整并投影至相应的目标特征空间。
    4. 使用 MFusion Mamba 模块中的粗融合和细融合操作融合对齐后的多阶段编码器特征,并将融合后的表示与对应尺度的解码器特征结合。
    5. 根据 models/mvmunet/core.py 中发布的实现执行特征投影、调整大小和融合操作。

神经网络示意图;使用哈达玛积进行特征融合;粗粒度与细粒度处理步骤。
图 5.多阶段融合 Mamba(MFusion Mamba)模块的架构。 多阶段融合 Mamba(MFusion Mamba)模块的结构。多尺度编码器特征首先通过粗粒度融合进行合并,随后经由精细融合模块进一步优化,该模块包含线性投影、一维卷积(Conv1d)、一个 Mamba 模块以及特征投影层,最终生成解码器所使用的融合特征表示。请点击此处查看该图的放大版本。

6. 模型训练

  1. 在搭载 Linux 内核版本 6.8.0 的 Ubuntu 22.04.1 系统上训练 MVM-UNet。使用配备 13 代英特尔酷睿 i9-13900K CPU 和 NVIDIA A800 GPU 的工作站。在整个训练与评估过程中使用相同的硬件配置。
  2. 使用 PyTorch 2.0.1 与 CUDA 11.8 实现并训练模型。在训练前安装所有必需的软件依赖项。
  3. 使用 AdamW 优化器,初始学习率为 3 × 10−5,β1 = 0.9,β2 = 0.999,ε = 1 × 10−8,权重衰减为 0.01。除非另有说明,批大小设置为 32。
  4. 每个模型训练 300 个轮次。使用余弦退火学习率调度策略,ηmin = 1 × 10−5。对于 ISIC 2017 和 ISIC 2018 数据集,输入图像尺寸设为 256 × 256;对于 Synapse 数据集,设为 224 × 224。
  5. 主比较实验使用三个独立的随机种子(1、52 和 100)。对每个种子重复完整的训练与评估流程。最终定量结果以三次运行的均值 ± 标准差(SD)形式报告。
  6. 所有消融研究使用固定的随机种子 100,除非另有说明。在所有消融实验中保持数据集划分、预处理策略、网络架构、优化器、学习率、批大小和训练轮次数不变。
  7. 对 ISIC 2017 和 ISIC 2018 上的二分类病灶分割任务使用 BCE-Dice 损失函数,BCE 和 Dice 损失权重均设为 1.0。对 Synapse 数据集使用 CE-Dice 损失函数,交叉熵和 Dice 损失权重均设为 1.0。
  8. 使用第 1 步中描述的预处理流程对 ISIC 2017 和 ISIC 2018 的训练图像进行缩放、归一化和数据增强。对 Synapse 训练图像应用第 1 步中描述的缩放、随机旋转和随机翻转操作。所有训练过程中使用相同的预处理设置。
  9. 根据各数据集特定的验证协议选择模型检查点。对 ISIC 2017 和 ISIC 2018 保存验证性能最佳的检查点,并每 30 个轮次进行一次验证。Synapse 训练 300 个轮次,不使用验证集,测试时采用最终训练结束时的检查点。
  10. 仅对 ISIC 2017 和 ISIC 2018 使用官方验证集进行模型选择。不得将 Synapse 测试集用于训练、超参数调优或检查点选择。所有测试数据仅保留用于最终评估。
  11. 为确保可重复性,使用以下训练参数:所有数据集的批大小设为 32。使用 AdamW 优化器,初始学习率为 3 × 10−5,β1 = 0.9,β2 = 0.999,ε = 1 × 10−8,权重衰减为 1 × 10−2
  12. 对 ISIC 2017 和 ISIC 2018,配置余弦退火学习率调度器,Tmax = 50,ηmin = 1×10−5;对 Synapse,Tmax = 100,ηmin = 1×10−5。所有重复实验中保持调度器配置不变。
  13. 所有模型均使用全精度 FP32 算术进行训练。禁用自动混合精度训练。优化过程中不应用梯度裁剪。
  14. 在所有比较实验、消融研究和可重复性运行中,保持精度设置、梯度更新策略、优化器配置、学习率调度和随机种子协议不变。
  15. 选择最佳模型检查点
    1. 对 ISIC 2017 和 ISIC 2018 数据集,在每个训练轮次结束后在验证集上评估模型。
    2. 计算每个验证批次的二元交叉熵(BCE)-Dice 损失,并在整个验证集上计算平均验证损失。
    3. 当平均验证损失低于此前记录的最小验证损失时,将当前模型保存为最佳检查点。
    4. 在验证过程中仅用于性能监控,记录平均交并比(mIoU)、Dice 相似系数(DSC)、准确率(Acc)、特异性(Spe)和敏感性(Sen)。这些指标不作为检查点选择的标准。

7. 模型评估

  1. 使用每个数据集的官方测试集评估训练好的模型。测试集仅用于最终性能评估。
  2. 对于 ISIC 2017 和 ISIC 2018,计算 mIoU、DSC、Acc、Sen 和 Spe。所有计算均基于像素级别的真阳性(TP)、假阳性(FP)、真阴性(TN)和假阴性(FN)。
  3. 对 ISIC 2017 和 ISIC 2018 的模型输出应用 sigmoid 激活函数。使用 0.5 的阈值将概率图转换为二值分割掩码。使用 公式 2–6 计算评估指标:
    mIoU 公式;用于模型评估的机器学习指标;图像分割准确率计算。 (2)
    Dice 系数公式,Dice=2TP/(2TP+FP+FN),统计分析方程。 (3)
    准确率公式:(TP+TN)/(TP+TN+FP+FN),用于评估模型性能的方程。 (4)
    灵敏度公式,TP/(TP+FN),统计分析的计算方法。 (5)
    特异度公式,TN/(TN+FP),用于统计分析和诊断测试评估。 (6)
  4. 对于 Synapse 数据集,对模型输出应用 softmax 激活函数。通过 argmax 操作将每个像素或体素分配给概率最高的类别。计算每个前景器官的 DSC 和 95% 百分位豪斯多夫距离(HD95),并报告所有测试样本上的平均值。
  5. 将 MVM-UNet 与具有代表性的基于 CNN、基于 Transformer 以及基于状态空间模型(SSM)的分割方法进行比较。所有方法使用相同的数据集划分、预处理流程、输入分辨率和评估指标。
  6. 对 ISIC 2017 和 ISIC 2018 使用官方的训练、验证和测试划分。对 Synapse 使用标准划分,即 18 个训练样本和 12 个测试样本。将 ISIC 数据集和 Synapse 数据集的输入分辨率分别设置为指定值。
  7. 尽可能使用基线方法的官方实现进行复现。报告多次运行结果的均值 ± 标准差(SD)。保留文献中原始报告的数值,并在相应表格注释中予以区分。
  8. 除非另有说明,消融实验使用固定的随机种子 100。在所有消融实验中保持数据集划分、预处理流程、输入分辨率、优化器、学习率调度、批量大小、训练轮数、损失函数和评估指标不变。
  9. 评估 MV4D、SFusion Mamba、MVV 模块中的上下投影分支、MFusion Mamba、输入图像尺寸、dropout 值以及编码器-解码器层数配置的贡献。每次消融实验仅修改目标组件或参数。
  10. 对 ISIC 2017 和 ISIC 2018 使用成对的逐图像结果,对 Synapse 使用成对的逐样本结果,执行 Wilcoxon 符号秩检验。将 p 值小于 0.05 视为具有统计学显著性。
  11. 在相同的硬件环境和输入分辨率下评估所有方法的计算效率。测量每训练轮次的时间、每张图像的推理时间、训练期间的峰值 GPU 显存占用、模型参数数量以及浮点运算次数(FLOPs)。通过单次前向传播计算 FLOPs。
  12. 仅在完成模型评估后,从测试集中选取具有代表性的定性示例。在所有方法中使用相同的测试样本,比较原始图像、真实掩码和预测掩码。选择包含小目标、不规则边界、模糊边界以及典型多器官结构的代表性示例。
  13. 计算评估指标并进行统计分析
    1. 使用 Python 中的 NumPy 和 sklearn.metrics.confusion_matrix 计算 ISIC 2017 和 ISIC 2018 数据集的分割指标。将预测的概率图以 0.5 为阈值进行二值化,获取像素级别的 TP、FP、TN 和 FN,并基于这些值计算 mIoU、DSC、Acc、Sen 和 Spe。
    2. 使用 medpy.metric.binary.dc 和 medpy.metric.binary.hd95 分别计算 Synapse 数据集的 DSC 和 HD95。在计算评估指标前,先对模型输出应用 softmax 再进行 argmax 操作。
    3. 使用 thop.profile 通过单次前向传播计算 FLOPs 数量和可训练参数数量。
    4. 使用 Python 中的 scipy.stats.wilcoxon 执行 Wilcoxon 符号秩检验。对 ISIC 2017 和 ISIC 2018 数据集使用成对的逐图像指标值,对 Synapse 数据集使用成对的逐样本指标值。

8. 损失函数定义

  1. 对于多类别分割,使用标准的交叉熵(CE)损失函数;对于二分类分割,使用标准的二元交叉熵(BCE)损失函数。分割任务中采用标准的Dice损失公式。公式 7–11 定义了本实验方案中使用的损失函数。
    分类任务中的交叉熵损失公式 L_CE(x,y),教育内容。 (7)
    图像分割算法中的Dice损失公式 \(L_{Dice}(X,Y)\)。 (8)
    二元交叉熵损失公式;科研中的数学方程;损失计算方法。 (9)
    BCE-Dice损失函数公式:L_BCE-Dice=ϕ₁L_BCE+ϕ₂L_Dice。 (10)
    加权损失函数公式 \(L_{CE-Dice}=\phi_1L_{CE}+\phi_2L_{Dice}\),方程。 (11)
  2. 对于ISIC 2017和ISIC 2018数据集,将BCE损失和Dice损失的权重均设为1.0,即静力平衡 ΣFx=0 示意图;力学平衡系统;教育用物理概念1 = 1.0 且 静力平衡 ΣFx=0 示意图;力学平衡系统;教育用物理概念2 = 1.0。对于Synapse数据集,将CE损失和Dice损失的权重均设为1.0,即φ1 = 1.0 且 φ2 = 1.0。
  3. 在utils.py中实现损失函数。BCE项使用nn.BCELoss,CE项使用nn.CrossEntropyLoss。计算二元Dice损失时,需将每个预测掩码和真实掩码展平,分别计算每个样本的Dice损失,再对整个批次的损失取平均值。计算多类别Dice损失时,需将目标标签图转换为独热(one-hot)编码格式,对模型输出应用softmax函数,分别计算每个类别的Dice损失,再对所有类别的损失取平均值。
  4. 将二元Dice损失的平滑常数设为1,多类别Dice损失的平滑常数设为1×10−5。使用BceDiceLoss类实现BCE-Dice损失,其中wb = 1,wd = 1;使用CeDiceLoss类实现CE-Dice损失,其中loss_weight = [1, 1]。对于所有数据集、随机种子和实验,保持平滑常数、损失约简策略及软件实现方式不变。
  5. 配置损失函数的约简方式
    1. 实例化nn.BCELoss()和nn.CrossEntropyLoss()时,不显式指定reduction参数。
    2. 对两个损失函数均使用PyTorch默认的损失约简设置(reduction = "mean"),不得使用reduction = "sum"或未约简的损失输出。

9. 可重复性设置与执行

  1. 从 https://github.com/LIXUEGUANG002/MVM-UNet 下载已发布的实现版本。将该代码库与材料表中列出的软件包、数据集、硬件规格和计算资源一并使用。
  2. 通过运行 git clone https://github.com/LIXUEGUANG002/MVM-UNet.git,然后执行 cd MVM-Unet,克隆代码库并进入项目目录。
  3. 通过在 configs/config_setting.py 中设置数据集名称、数据集路径、输入尺寸、批量大小、训练轮数、损失函数、优化器、学习率调度器和随机种子,配置 ISIC 2017 或 ISIC 2018 实验。在代码库根目录下运行 python train.py 启动训练脚本。
  4. 通过在 configs/config_setting_synapse.py 中设置数据集名称、训练数据路径、测试数据体路径、列表目录、输入尺寸、类别数量、批量大小、训练轮数、损失函数、优化器、学习率调度器和随机种子,配置 Synapse 实验。在代码库根目录下运行 python train_synapse.py 启动训练脚本。
  5. 通过在相应配置文件中将 only_test_and_save_figs 设置为 True,best_ckpt_path 设置为已训练的检查点路径,img_save_path 设置为输出目录,执行仅推理评估。运行 python train.py(针对 ISIC 2017 或 ISIC 2018)或运行 python train_synapse.py(针对 Synapse),以生成预测结果和定性图像。
  6. 使用已发布的源代码版本
    1. 克隆已发布的 GitHub 代码库,并在配置数据集、训练脚本和评估设置之前,切换到主分支上的提交 ee891b42c2f083c4990eed72f1d4463adc5e103e。
    2. 使用该提交版本复现本研究中报告的实验结果。在稿件修订时,该代码库尚无已标记的发布版本。

结果

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

预期结果与解释
当本方案正确实施时,训练好的 MVM-UNet 模型应在多次重复运行中表现出稳定的分割性能,大多数评估指标在不同随机种子下的结果仅存在微小差异。对于 ISIC 2017 和 ISIC 2018 数据集,成功的实验结果表现为较高的 DSC、mIoU、Acc、Sen 和 Spe 数值,同时预测的病灶掩膜应与真实病灶边界高度吻合(图 6 和图 7)。对于 Synapse 数据集,成功的实验结果表现为前景器官的平均 DSC 值较高,且 HD95 值较低(图 8)。在方案执行过程中,应将定量指标与相应的定性分割结果结合进行解读。若模型虽取得较高的 DSC 值,但存在边界渗漏、小结构遗漏或预测结果碎片化等现象,则应视为仅部分成功,需重新核查预处理流程、检查点选择及推理设置。

皮肤病变分割结果;图像分析;黑色素瘤检测;示意图;皮肤病学研究。
图6。在ISIC 2017数据集上的代表性定性分割结果。 在国际皮肤影像协作联盟(International Skin Imaging Collaboration, ISIC)2017年皮肤病变分割数据集上获得的代表性定性分割结果。每个示例展示了原始皮肤镜图像(Image)、相应的真值分割掩膜(GT),以及MVM-UNet模型生成的预测结果(Pred)。代表性测试案例展示了模型对不同大小、形态及边界复杂度病变的分割性能。请点击此处查看该图的高清版本。

皮肤病变分割结果;皮肤科图像分析,真实标签与预测结果对比。
图7。在ISIC 2018数据集上的代表性定性分割结果。 在国际皮肤影像协作联盟(International Skin Imaging Collaboration, ISIC)2018年皮肤病变分割数据集上获得的代表性定性分割结果。每个示例展示了原始皮肤镜图像(Image)、对应的真实分割掩膜(GT),以及MVM-UNet模型生成的预测结果(Pred)。这些代表性测试案例展示了模型在不同病变外观和边界特征下的分割性能。 请点击此处查看该图的放大版本。

CT扫描分割对比;原始图像、真实标签、预测结果;医学图像分析。
图8。在Synapse多器官计算机断层扫描数据集上的代表性定性分割结果。 在Synapse多图谱标注超越颅腔数据集上获得的代表性定性多器官分割结果。每个示例展示了原始计算机断层扫描图像(图像)、对应的真实器官标注(GT)以及MVM-UNet生成的预测结果(Pred)。代表性示例表明,在多个腹部器官中,预测分割结果与参考标注之间具有良好的一致性。 请点击此处查看该图的放大版本。

MVM-UNet 在 ISIC 2017 上的性能
为评估 MVM-UNet 的可重复性,所有主要对比实验均使用三个独立的随机种子(1、52 和 100)重复进行,结果以均值 ± 标准差(mean ± SD)表示。统计学显著性基于 ISIC 2017 和 ISIC 2018 的成对逐图像结果以及 Synapse 数据集的成对逐病例结果,采用 Wilcoxon 符号秩检验进行评估。统计分析使用成对的指标值而非不同随机种子下的平均值进行。为确保公平比较,尽可能在相同的数据集划分、输入分辨率和评估指标下,使用各方法的官方实现来复现以均值 ± 标准差形式报告的结果;而单值结果则直接取自相应的原始出版物。

MVM-UNet 在 ISIC 2017 皮肤病变分割数据集上进行了评估,并与多种代表性分割方法进行了比较,包括 UNet8,21、TransUNet23、H-vmunet28、MISSFormer30、MaLUNet31、VM-UNet32、UNeXt-S33、HResFormer34、MedScale-Former35、MCAFT36 和 H2Former12表 1)。在三次独立运行中,MVM-UNet 达到了 80.94 ± 1.01% 的 mIoU、91.32% ± 0.68% 的 DSC、96.58% ± 0.27% 的准确率、98.31% ± 0.23% 的特异性以及 91.65% ± 0.77% 的敏感性。与所评估的方法相比,MVM-UNet 在 mIoU、DSC 和敏感性方面均取得了最高性能。代表性定性分割结果如 图 6 所示,其中预测的掩膜在多个代表性测试图像上均紧密贴合真实病变边界。

模型参考文献mIoU (%)DSC (%)准确率 (%)特异性 (%)敏感性 (%)
UNet876.9886.9995.6597.4386.82
TransUNet2375.3281.2391.4595.7782.63
MaLUNet3178.7888.1396.1898.4784.78
VM-UNet3280.2389.0396.2997.5889.90
UNeXt-S3378.2687.8095.9597.7487.04
HResFormer3479.89 ± 1.0588.82 ± 0.6596.25 ± 0.2497.73 ± 0.2287.72 ± 0.79
H-vmunet2880.34 ± 1.0290.68 ± 0.5596.42 ± 0.1898.23 ± 0.3288.97 ± 0.88
MISSFormer3080.16 ± 0.7889.27 ± 0.6194.36 ± 0.2897.52 ± 0.3887.71 ± 0.69
H2Former1280.35 ± 0.9588.56 ± 0.7296.61 ± 0.1998.15 ± 0.1488.21 ± 0.81
MedScale-Former3580.31 ± 0.8289.11 ± 0.5995.68 ± 0.3398.24 ± 0.2189.96 ± 0.92
MCAFT3680.59 ± 0.9389.27 ± 0.6396.42 ± 0.2097.95 ± 0.1790.05 ± 0.84
MVM-UNet(本文方法)80.94 ± 1.0191.32 ± 0.6896.58 ± 0.2798.31 ± 0.2391.65 ± 0.77

表1:在ISIC 2017皮肤病变分割数据集上的性能比较。 使用平均交并比(mIoU)、Dice相似性系数(DSC)、准确率(Acc.)、特异性(Spe.)和敏感性(Sen.)对MVM-UNet与具有代表性的基于卷积神经网络(CNN)、Transformer和状态空间模型(SSM)的分割方法进行比较。MVM-UNet的结果以三次独立随机种子实验的均值±标准差形式报告。以单一数值报告的结果均来自相应原始文献的复现。

定性示例进一步表明,MVM-UNet 能够准确分割具有不规则边界的较小病灶和较大病灶。在这些代表性示例中,预测的掩膜与相应的真值标注高度一致,并在极小渗漏或碎片化的情况下保留了病灶边界。

为了进一步评估观察到的改进是否具有统计学显著性,采用配对的逐图像分割结果进行了Wilcoxon符号秩检验。在mIoU指标上,MVM-UNet相较于MCAFT表现出具有统计学意义的显著提升,p值为0.0114。在DSC指标上,MVM-UNet也显著优于H-vmunet,p值为0.0031。这些结果表明,在ISIC 2017数据集上观察到的性能提升不太可能归因于随机变异。

总体而言,在ISIC 2017数据集上,MVM-UNet在mIoU、DSC和敏感性指标上均取得了相比其他方法最高的性能(表1)。图6中展示的定性分割示例与这些定量结果一致。

在 ISIC 2018 上的性能表现
MVM-UNet 在 ISIC 2018 皮肤病变分割数据集上进一步进行了评估,并与一系列具有代表性的分割方法进行了比较,包括 UNet8,21、UNet++9、UTNetV237、SANet38、MaLUNet31、VM-UNet32、H-vmunet28、MISSFormer30、H2Former12、HResFormer34、MedScale-Former35 和 MCAFT36表 2)。在三次独立运行中,MVM-UNet 取得了 82.47% ± 1.28% 的 mIoU、90.65% ± 0.94% 的 DSC、96.02% ± 0.36% 的准确率、97.06% ± 0.31% 的特异性以及 91.80% ± 0.82% 的敏感性。这些结果表明,MVM-UNet 在不同随机种子下均保持了稳定的性能表现。代表性定性分割结果如 图 7 所示。

模型参考文献mIoU (%)DSC (%)准确率 (%)特异性 (%)敏感性 (%)
UNet877.8687.5594.0596.6985.86
UNet++978.3187.8394.0295.7588.65
UTNetV23778.9788.2594.3296.4887.60
SANet3879.5288.5994.3995.9789.46
MaLUNet3180.2589.0494.6296.1989.74
VM-UNet3281.3589.7194.9196.1391.12
H-vmunet2881.93 ± 1.4590.46 ± 0.6295.19 ± 0.3096.82 ± 0.2188.37 ± 1.13
MISSFormer3080.27 ± 1.2189.91 ± 0.4694.76 ± 0.2797.22 ± 0.1590.84 ± 1.07
H2Former1280.40 ± 0.8390.26 ± 0.7394.89 ± 0.3896.98 ± 0.2591.57 ± 0.54
HResFormer3481.12 ± 1.1888.86 ± 0.8494.96 ± 0.3396.43 ± 0.2291.86 ± 1.01
MedScale-Former3580.97 ± 0.7490.47 ± 0.6895.02 ± 0.4195.89 ± 0.2690.65 ± 0.92
MCAFT3681.46 ± 1.0389.06 ± 0.7695.23 ± 0.2996.72 ± 0.1791.82 ± 0.57
MVM-UNet(本文方法)82.47 ± 1.2890.65 ± 0.9496.02 ± 0.3697.06 ± 0.3191.80 ± 0.82

表2:在ISIC 2018皮肤病变分割数据集上的性能比较。 MVM-UNet与代表性基于CNN、Transformer和SSM的分割方法在平均交并比(mIoU)、Dice相似性系数(DSC)、准确率(Acc.)、特异性(Spe.)和敏感性(Sen.)指标上的比较。MVM-UNet的结果以三次独立随机种子实验的均值±标准差形式报告。以单个数值形式报告的结果均来自相应原始文献的复现。

与 H-vmunet 相比,MVM-UNet 将 mIoU 提高了 0.54%。与 MedScale-Former 相比,MVM-UNet 将 DSC 提高了 0.18%。MVM-UNet 在所有对比方法中也达到了最高的准确率。图7 所示的代表性定性示例展示了对典型皮肤病变的精确分割,包括小病灶区域以及边界不规则的病灶。

对于 ISIC 2018 数据集,采用 Wilcoxon 符号秩检验基于成对的逐图像分割结果来评估统计学显著性。在 mIoU 指标上,MVM-UNet 相较于 MCAFT 实现了具有统计学意义的显著提升,p 值为 < 0.001。这些结果表明,在 ISIC 2018 上观察到的性能提升不太可能归因于随机变异。

总体而言,在ISIC 2018数据集上,MVM-UNet在所比较的方法中取得了最高的mIoU、DSC和准确率(表2)。图7中展示的定性示例与这些定量结果的提升一致。

在 Synapse 数据集上的性能
所提出的方法还在 Synapse 多器官分割数据集上进行了评估,并与若干代表性方法进行了比较,包括 UNet8,21、Attention U-Net39、TransUNet23、TransNorm40、Swin U-Net25、TransDeepLab41、MEW-UNet42、MISSFormer30、H2Former12、HResFormer34、MedScale-Former35 和 MCAFT36表 3)。Synapse 数据集包含八个腹部器官:主动脉、胆囊、脾脏、左肾、右肾、肝脏、胰腺和胃。按照标准实验协议,使用 18 个病例(2,212 张轴向切片)进行训练,12 个病例(1,567 张轴向切片)用于测试。未设置独立的验证集。测试病例仅用于最终评估,不参与模型训练、超参数调优或模型选择。典型的多器官分割定性结果如 图 8 所示,定量比较结果总结于 表 3 中。

模型参考文献DSCHD95主动脉胆囊左肾右肾肝脏胰腺脾脏
UNet876.8539.7889.0769.7277.7768.6993.4354.0186.6675.59
Att-UNet3977.7736.0289.5468.8877.9871.1193.5758.0487.3175.74
TransUNet2377.4831.6987.2363.1381.8777.0294.0855.8485.0675.62
TransNorm4078.430.2586.2365.1882.1878.6394.2255.3289.5376.02
Swin U-Net2579.1321.5585.4766.5383.2879.6194.2956.5890.6276.59
TransDeepLab4180.1621.2586.0469.1684.0879.8893.5361.1589.0178.36
MEW-UNet4278.9221.6886.6865.3282.8780.0293.6358.3890.1674.27
MISSFormer3080.92 ± 4.2320.09 ± 1.8986.43 ± 0.9869.81 ± 4.5684.29 ± 2.1181.03 ± 3.3493.85 ± 0.8961.11 ± 4.6790.05 ± 3.7880.62 ± 1.02
H2Former1281.05 ± 2.5620.13 ± 7.2386.61 ± 3.2169.32 ± 1.2385.12 ± 4.7882.01 ± 2.8994.09 ± 2.4561.16 ± 0.7689.97 ± 4.1280.94 ± 3.56
HResFormer3480.65 ± 4.0217.48 ± 6.8989.16 ± 2.7866.94 ± 0.7884.61 ± 4.3482.15 ± 2.5693.11 ± 1.3459.92 ± 4.1291.08 ± 3.4580.75 ± 2.01
MedScale-Former3580.78 ± 1.3420.02 ± 3.7888.79 ± 4.0269.82 ± 2.5685.13 ± 0.8781.63 ± 4.7894.10 ± 2.7860.72 ± 1.8990.14 ± 1.5680.93 ± 4.56
MCAFT3681.03 ± 3.4519.98 ± 5.1289.76 ± 0.7668.96 ± 3.8984.54 ± 2.5681.98 ± 3.1294.32 ± 4.0160.85 ± 3.6789.06 ± 4.8980.91 ± 1.78
MVM-UNet(本研究)81.26 ± 1.8918.72 ± 2.1688.53 ± 3.2269.84 ± 4.2385.37 ± 2.6982.67 ± 1.6794.41 ± 3.5661.02 ± 2.7890.19 ± 0.6781.48 ± 3.12

表3:在Synapse多器官分割数据集上的性能比较。 使用Dice相似系数(DSC)、95百分位Hausdorff距离(HD95)以及针对主动脉(Aor.)、胆囊(Gal.)、左肾(Kid. (L))、右肾(Kid. (R))、肝脏(Liv.)、胰腺(Pan.)、脾脏(Spl.)和胃(Sto.)的器官特异性Dice分数,对MVM-UNet与具有代表性的基于CNN、Transformer和SSM的分割方法进行比较。MVM-UNet的结果报告为三次独立随机种子实验的均值±标准差。以单个数值形式报告的结果均来自相应原始文献的复现。

MVM-UNet 在三次独立运行中取得了 81.26% ± 1.89% 的平均 DSC 和 18.72 ± 2.16 的平均 HD95。结果表明,该方法在 Synapse 数据集上具有稳定的分割性能。在所有被评估的方法中,MVM-UNet 达到了最高的平均 DSC 和第二低的平均 HD95。

对于突触,基于成对的每例DSC值,采用Wilcoxon符号秩检验评估统计学显著性。MVM-UNet相较于H2Former表现出具有统计学意义的提升,p值为0.026,表明分割性能的提升具有统计学显著性。

典型成功与次优结果
典型成功的定性结果如图6–8所示。成功的结果表现为预测的分割掩膜与真实标注高度一致,能够准确勾画主要病灶或器官的边界。次优结果可能出现在目标非常小、边界对比度低、病灶形状不规则、组织强度对比弱或解剖边界模糊的情况下,通常表现为分割不足、分割过度、边界渗漏或不连续的掩膜片段。当出现此类结果时,用户应确认图像缩放、归一化、掩膜插值、模型检查点选择、推理阈值化(针对ISIC数据集)或argmax预测(针对Synapse数据集)以及指标计算流程均与方案中所述一致。

MV4D 模块的消融研究
通过逐步添加之字形、分层、螺旋和径向扫描对,随后加入 SFusion Mamba 模块,评估了 MV4D 模块的贡献(表 4图 9)。仅使用之字形扫描对时,分割性能有限。加入分层扫描对后,性能显著提升,表明引入多尺度信息具有优势。进一步添加螺旋和径向扫描对,通过增强轮廓和边界表征,进一步提高了分割性能。引入 SFusion Mamba 模块后,在所有评估的配置中实现了最高的性能。

模型之字形扫描对分层扫描对螺旋扫描对径向扫描对SFusion MambaISIC 2017 mIoU (%)ISIC 2017 DSC (%)ISIC 2018 mIoU (%)ISIC 2018 DSC (%)
MVM-UNet56.7572.4658.0373.45
MVM-UNet72.3884.0173.4584.7
MVM-UNet75.6986.2076.9486.94
MVM-UNet76.4186.6178.2887.82
MVM-UNet80.9491.3282.4790.65

表4:多视角四方向(MV4D)模块的消融研究。 通过逐步将分层、螺旋和径向扫描对以及空间融合Mamba(SFusion Mamba)模块引入基线的之字形扫描对架构所获得的性能。性能指标在ISIC 2017和ISIC 2018数据集上以平均交并比(mIoU)和Dice相似性系数(DSC)报告。

比较扫描对方法的柱状图:Zigzag、Hierarchical、Spiral、Radial、SFusion;指标为mIoU和DSC。
图9.多视角四方向(MV4D)模块的消融研究。(A) 在基线架构中依次引入分层扫描对、螺旋扫描对、径向扫描对和空间融合Mamba(SFusion Mamba)后,平均交并比(mIoU)的变化情况。(B) 在基线架构中依次引入分层扫描对、螺旋扫描对、径向扫描对和空间融合Mamba(SFusion Mamba)后,Dice相似性系数(DSC)的变化情况。(C) 在第二种实验设置下,在基线架构中依次引入分层扫描对、螺旋扫描对、径向扫描对和空间融合Mamba(SFusion Mamba后,mIoU的变化情况。(D) 在第二种实验设置下,在基线架构中依次引入分层扫描对、螺旋扫描对、径向扫描对和空间融合Mamba(SFusion Mamba)后,DSC的变化情况。请点击此处查看该图的放大版本。

在ISIC 2017数据集上,完整的MV4D模块达到了80.94%的mIoU和91.32%的DSC。相应的mIoU和DSC性能趋势分别如图9A图9B所示。在ISIC 2018数据集上,完整的MV4D模块达到了82.47%的mIoU和90.65%的DSC。相应的性能趋势分别如图9C图9D所示。

除非另有说明,所有消融实验均使用固定的随机种子100进行,而主要比较结果则基于三个独立的随机种子(1、52和100)报告为均值±标准差。因此,消融实验的结果旨在在受控的单种子设置下比较各个组件的相对贡献,而非重现主要比较实验中报告的最终多种子性能。

总体而言,逐步引入额外的扫描配对以及 SFusion Mamba 模块持续提升了分割性能,完整的 MV4D 配置在两个数据集上均达到了最高的性能水平。

多视图视觉(MVV)模块的消融研究
通过将基线架构与引入上下投影分支的版本进行比较,对 MVV 模块进行了评估(表5)。在 ISIC 2017 数据集上,加入上下投影分支后,mIoU 从 78.83% 提升至 80.96%,DSC 从 88.15% 提升至 91.02%。在 ISIC 2018 数据集上,mIoU 从 80.32% 提高到 82.46%,DSC 从 89.15% 提高到 90.57%。

模型基线 MVV 模块上下投影ISIC 2017 mIoU (%)ISIC 2017 DSC (%)ISIC 2018 mIoU (%)ISIC 2018 DSC (%)
MVM-UNet78.8388.1580.3289.15
MVM-UNet80.9691.0282.4690.57

表5:多视角视觉(MVV)模块的消融研究。 基线多视角视觉(MVV)模块在有无上下投影分支情况下的性能对比。性能指标在ISIC 2017和ISIC 2018数据集上以平均交并比(mIoU)和 Dice 相似性系数(DSC)报告。

MVV模块消融实验采用固定的随机种子100进行。因此,包含上下投影分支的配置的性能反映了单种子控制条件下的消融设置,可能与主比较实验中报告的完整MVM-UNet模型的三种子平均性能略有差异。

总体而言,在两个数据集上,引入上下投影分支均持续提升了分割性能,mIoU 和 DSC 均有所提高。

多阶段融合Mamba(MFusion Mamba)模块的消融研究
通过比较不同的粗粒度融合策略与精细融合组件的组合,对MFusion Mamba模块进行了评估(表6图10)。在不使用MFusion Mamba的情况下,MVM-UNet在ISIC 2017数据集上的mIoU为75.47%,DSC为86.01%;在ISIC 2018数据集上的mIoU为77.49%,DSC为87.29%。在所评估的粗粒度融合策略中,Hadamard积实现了最大的性能提升。引入精细融合组件后,分割性能进一步提高。完整的MFusion Mamba配置在ISIC 2017数据集上达到了80.95%的mIoU和91.18%的DSC,在ISIC 2018数据集上达到了82.51%的mIoU和90.58%的DSC。

模型粗粒度融合逐元素最大值粗粒度融合逐元素相加粗粒度融合哈达玛积细粒度融合模块ISIC 2017 mIoU (%)ISIC 2017 DSC (%)ISIC 2018 mIoU (%)ISIC 2018 DSC (%)
MVM-UNet75.4786.0177.4987.29
MVM-UNet76.2186.4778.3587.82
MVM-UNet76.8386.8679.1188.30
MVM-UNet78.2687.8380.0688.96
MVM-UNet80.9591.1882.5190.58

表6:多阶段融合Mamba(MFusion Mamba)模块的消融研究。 不同粗粒度融合策略的性能比较,包括最大值融合(Max)、逐元素相加(⊕)和哈达玛积(⊙),并结合完整的细粒度融合模块。在ISIC 2017和ISIC 2018数据集上,采用平均交并比(mIoU)和Dice相似性系数(DSC)报告性能。

比较 MFusion、Mamba 和 Fine Fusion 性能的 mIoU 和 DSC 指标柱状图。
图 10.Multi-stage Fusion Mamba(MFusion Mamba)模块的消融研究。(A) 使用不同粗粒度融合策略(最大值、逐元素相加和哈达玛积)及完整 Fine Fusion 模块所获得的平均交并比(mIoU)变化。(B) 使用不同粗粒度融合策略(最大值、逐元素相加和哈达玛积)及完整 Fine Fusion 模块所获得的 Dice 相似系数(DSC)变化。(C) 在第二种实验设置下,使用不同粗粒度融合策略(最大值、逐元素相加和哈达玛积)及完整 Fine Fusion 模块所获得的 mIoU 变化。(D) 在第二种实验设置下,使用不同粗粒度融合策略(最大值、逐元素相加和哈达玛积)及完整 Fine Fusion 模块所获得的 DSC 变化。请点击此处查看该图的放大版本。

在ISIC 2017数据集上,完整的MFusion Mamba配置达到了80.95%的mIoU和91.18%的DSC。相应的mIoU和DSC性能趋势分别如图10A图10B所示。在ISIC 2018数据集上,完整的MFusion Mamba配置达到了82.51%的mIoU和90.58%的DSC。相应的性能趋势分别如图10C图10D所示。MFusion Mamba的消融实验采用固定的随机种子100进行。因此,完整的MFusion Mamba配置代表了单种子控制条件下的消融结果,可能与主比较实验中报告的完整MVM-UNet模型的三种子平均性能略有差异。

总体而言,逐步引入Hadamard积粗融合策略和精细融合组件持续提升了分割性能,完整的MFusion Mamba配置在两个数据集上均达到了最高性能。

消融实验总结
在各项消融实验中,逐步引入分层、螺旋和径向扫描对分支,并结合 SFusion Mamba 模块, consistently 提升了分割性能(表 4图 9)。同样,在 MVV Block 中引入上下投影分支后,在 ISIC 2017 和 ISIC 2018 数据集上的 mIoU 和 DSC 指标均得到改善(表 5)。完整的 MFusion Mamba 配置在所评估的多阶段特征融合策略中也达到了最高性能(表 6图 10)。

超参数的消融研究
在 ISIC 2017 和 ISIC 2018 数据集上评估了输入尺寸和丢弃率(dropout)值的影响(表7)。比较了三种输入分辨率(256 × 256、384 × 384 和 512 × 512)。在所评估的设置下,256 × 256 的输入分辨率在两个数据集上均实现了最高的分割性能。

模型输入尺寸 256 × 256输入尺寸 384 × 384输入尺寸 512 × 512Dropout 0.0Dropout 0.1Dropout 0.2Dropout 0.3ISIC 2017 mIoU (%)ISIC 2017 DSC (%)ISIC 2018 mIoU (%)ISIC 2018 DSC (%)
MVM-UNet80.0288.9181.7689.92
MVM-UNet79.9688.8780.9789.47
MVM-UNet77.4887.2878.7688.11
MVM-UNet79.3688.5381.1389.62
MVM-UNet80.9490.1582.4990.50
MVM-UNet79.7188.7180.4689.18

表7:输入图像尺寸和dropout值的消融研究。 使用不同输入图像尺寸和dropout值的MVM-UNet性能比较。在ISIC 2017和ISIC 2018数据集上,采用平均交并比(mIoU)和Dice相似性系数(DSC)报告分割性能。

还评估了不同的丢弃率值。在测试的配置中,丢弃率为0.2时在两个数据集上的分割性能最高,因此在主要实验中采用了该值。

编码器-解码器层配置的消融研究
评估了不同的编码器-解码器层配置,以考察网络深度对分割性能和计算成本的影响(表8)。在所评估的配置中,对称结构 {2, 2, 2, 2}-{2, 2, 2, 2} 在保持相对较低模型复杂度的同时,实现了最高的整体分割性能。将网络深度增加至 {2, 2, 9, 2}-{2, 9, 2, 2} 后,分割性能相当,但参数数量和计算成本均有所增加。

模型编码器-解码器层配置参数量(M)FLOPs(G)ISIC 2017 mIoU(%)ISIC 2017 DSC(%)ISIC 2018 mIoU(%)ISIC 2018 DSC(%)
MVM-UNet{2,2,2,1}-{2,2,2,2}28.224.1280.0288.9181.1689.64
MVM-UNet{2,2,2,2}-{2,2,2,2}28.364.3980.9590.1782.590.41
MVM-UNet{2,2,2,3}-{2,3,2,2}30.144.8879.8388.881.5689.85
MVM-UNet{2,4,2,2}-{2,2,4,2}33.465.3279.6588.781.4589.79
MVM-UNet{2,2,9,2}-{2,9,2,2}45.637.7880.9690.0982.4890.43

表8:编码器-解码器层配置的消融研究。 不同编码器-解码器层配置的性能比较。该表格报告了模型参数数量(Parameters)、浮点运算次数(FLOPs)、在ISIC 2017和ISIC 2018数据集上的平均交并比(mIoU)以及Dice相似性系数(DSC)。

计算成本比较
在相同的硬件环境和输入分辨率下,对最终的 MVM-UNet 模型与若干代表性基线方法(包括 HResFormer、H-vmunet、MISSFormer、H2Former、MedScale-Former 和 MCAFT)的计算效率进行了比较(表9)。评估指标包括每训练周期耗时、每张图像推理耗时、训练期间峰值 GPU 内存占用、可训练参数数量(Params)以及浮点运算次数(FLOPs)。训练时间指完成一个训练周期所需的时间,推理时间指每张测试图像的平均处理时间,FLOPs 则基于单次前向传播过程进行计算。

方法参考文献训练时间(秒/轮)推理时间(毫秒/图像)峰值 GPU 内存(GB)参数量(百万)FLOPs(G)
HResFormer34520213.0819.2117.00131.70
H-vmunet288827.005.010.748.97
MISSFormer3035592.8612.642.33109.45
H2Former1213029.028.833.7133.56
MedScale-Former358023.505.94.963.79
MCAFT3614534.008.730.0012.00
MVM-UNet (本研究)10426.807.928.364.39

表9:MVM-UNet 与代表性基线方法的计算成本比较。 在相同硬件环境和输入分辨率下计算效率的比较。报告的指标包括每训练周期耗时、每张图像推理耗时、训练期间图形处理器(GPU)峰值内存占用、模型参数数量(参数量)以及浮点运算次数(FLOPs)。对于有可用实现的方法,在可能的情况下均使用相同的实验环境进行评估。

表9所示,MVM-UNet 每个训练周期耗时104秒,每张图像推理耗时26.8毫秒,峰值GPU内存占用为7.9 GB,可训练参数数量为2836万,浮点运算量为4.39 GFLOPs。与HResFormer、MISSFormer、H2Former和MCAFT相比,MVM-UNet所需的训练时间更短、推理时间更短、峰值GPU内存占用更低,且FLOPs更少。与轻量级模型H-vmunet和MedScale-Former相比,MVM-UNet的训练时间和内存占用更高,但推理速度相当,同时保持了相对较低的计算复杂度。

数据与代码可用性
ISIC 2017 和 ISIC 2018 数据集可从国际皮肤影像协作组织(International Skin Imaging Collaboration, ISIC)档案库公开获取,Synapse 数据集可从 Synapse 仓库公开获取。数据集获取详情见伦理声明部分。简而言之,ISIC 2017 数据集来自 ISIC 2017 挑战赛官方数据仓库(https://challenge.isic-archive.com/data/#2017),ISIC 2018 数据集来自 ISIC 2018 挑战赛任务1官方数据仓库(https://challenge.isic-archive.com/data/#2018),Synapse 数据集来自 Synapse 仓库,登录编号为 syn3193805(https://www.synapse.org/Synapse:syn3193805)。相应的下载日期已在伦理声明中注明。MVM-UNet 源代码的初始公开版本可在 https://github.com/LIXUEGUANG002/MVM-UNet 获取。该代码仓库包含模型实现、主要网络模块、配置文件、数据集组织说明、训练脚本和评估脚本。完整的可重复性数据包,包括最终确定的配置文件、完整实验脚本、附加文档以及训练好的模型检查点,将在论文发表后公开提供。

补充表 1. 多视图视觉Mamba UNet(MVM-UNet)的逐层架构。 该表总结了MVM-UNet的顺序网络结构,包括输入层、图像块嵌入(patch embedding)、编码器阶段、多视图视觉(MVV)模块、图像块合并操作、多阶段融合Mamba(MFusion Mamba)、解码器阶段、最终上采样以及分割头。对于每个阶段,列出了相应的操作、主要参数和输出特征尺寸。E1–E4 表示用于多阶段特征融合的编码器阶段特征图。BHW 分别表示批量大小、图像高度和图像宽度,K 表示输出类别数(皮肤病变二分类分割任务中 K = 1,Synapse多类别分割任务中 K = 9,包含一个背景类和八个前景器官类)。MFusion Mamba生成融合后的多阶段编码器特征,并在解码器重建过程中与对应的解码器特征进行整合。请点击此处下载该文件。

补充文件1. 多视角四方向(MV4D)模块与多阶段融合Mamba(MFusion Mamba)的伪代码。 该补充文件展示了MVM-UNet中所使用的两个核心模块的算法流程。算法1描述了多视角四方向(MV4D)模块的完整处理流程,包括特征展平、四种扫描对序列(之字形、层次化、螺旋形和径向)的构建、选择性状态空间(S6)处理、扫描视图融合Mamba(SFusion Mamba)以及输出特征图的重建。算法2描述了多阶段融合Mamba(MFusion Mamba)模块,包括多阶段编码器特征对齐、粗粒度融合、细粒度融合、解码器集成以及融合后解码器输入特征的生成。算法中定义了变量和张量维度。请点击此处下载该文件。

补充代码文件 1。MVM-UNet 的源代码包(MVM-UNet-master)。 该补充 ZIP 压缩包包含本研究中使用的 MVM-UNet 完整源代码实现。该代码包包括网络架构、多视角四方向(MV4D)模块和多阶段融合 Mamba(MFusion Mamba)模块、配置文件、用于 ISIC 2017、ISIC 2018 和 Synapse 数据集的训练与评估脚本、工具函数,以及重现本方案所述实验所需的项目文档。该包还包含 README 文件,其中提供了安装说明、软件依赖项、数据集组织方式,以及训练和推理的工作流程。请点击此处下载该文件。

讨论

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本方案描述了一种基于 Mamba 架构的医学图像分割框架 MVM-UNet。该方法旨在解决现有分割模型的两个局限性。首先,传统的基于卷积神经网络(CNN)的方法在建模复杂医学图像中的长距离依赖关系和层次化上下文信息方面能力有限43。其次,基于 Transformer 的方法虽能建模全局上下文,但通常需要更高的计算成本23,25。MVM-UNet 采用 Mamba 架构13,14,15,16,17,18,19,20,以实现高效的长距离建模,并引入多视角扫描和多阶段特征融合策略以提升分割精度。从方案执行与可重复性的角度来看,若干步骤对于获得与本研究报道结果相当的效果至关重要。首先,数据集划分、图像缩放、掩码插值、归一化策略及通道转换应与本方案保持一致,因为预处理的差异可能直接影响输入分布和掩码边界。特别地,分割掩码应采用最近邻插值法进行缩放,以避免引入非整数标签值44。其次,在比较结果前,应核对训练配置,包括输入分辨率、批量大小、优化器设置、学习率调度、随机种子、损失权重系数、检查点选择规则以及推理阈值或 argmax 操作。若复现结果明显低于报道值,用户应首先验证数据集路径、标注格式、前景-背景标签约定、检查点加载、验证或测试集划分以及评估指标计算流程。边界泄漏、掩码碎片化或小结构缺失通常提示预处理、掩码插值、检查点选择或推理后处理过程中可能存在不一致。

MVM-UNet 的主要贡献在于 MV4D 模块。与以往基于状态空间模型的架构所采用的简单二维扫描策略14,15,16,17,18,19,20不同,MV4D 采用锯齿形、分层式、螺旋形和径向扫描对来捕获互补的视觉信息。锯齿形扫描对有助于平衡局部与全局空间信息,分层式扫描对增强了多尺度特征提取能力,螺旋形扫描对强化了全局轮廓表示,而径向扫描对则提升了局部边缘和边界特征的提取效果。随后,SFusion Mamba 对这些互补的扫描模态进行融合。代表性结果与消融实验(表4 和 表5图9)表明,扫描模式的多样性以及融合机制均有助于提升分割性能。另一个重要组件是 MFusion Mamba,它作为编码器与解码器之间的特征融合模块。传统的U形架构,包括 U-Net8,21、V-Net44以及许多后续变体9,23,25,主要通过逐阶段的跳跃连接传递信息。这种策略可能无法充分挖掘多阶段编码器表征之间的互补性。MFusion Mamba 通过在解码前采用粗粒度融合与细粒度融合相结合的方式整合编码器特征,从而克服了这一局限性。代表性结果(表6图10)显示,MFusion Mamba 能持续提升分割性能,表明显式的多阶段特征融合对医学图像分割具有积极意义。

MVM-UNet 的方法学贡献应被理解为一种架构层面的重新设计,而非从零开始发明每一项具体操作。U形编码器-解码器架构、残差连接、投影层以及Mamba/状态空间模型(SSM)模块在此前的研究中已被广泛探讨8,13,14,15,16,17,18,19,20,21,23,24,25,29,44。然而,直接组合这些组件并不一定能够解决医学图像分割所面临的特定挑战。MVM-UNet 的创新之处在于对三个方面进行协调设计。第一,MV4D 模块以四个互补的扫描对分支取代单一或有限的扫描模式,使模型能够捕捉空间连续性、多尺度结构、全局轮廓信息以及局部边界细节。第二,SFusion Mamba 与 MVV Block 在特征传递至下一网络阶段之前,对其进行特定扫描模式的融合与增强。第三,MFusion Mamba 在解码前显式聚合多阶段编码器特征,以补充传统的跳跃连接8,21,44,提升分层信息的利用效率。消融实验结果(表4–6图9和图10)进一步支持了该设计思路,表明多视角扫描、特定扫描模式的特征融合、上下投影分支以及多阶段特征融合均对分割性能的提升有所贡献。因此,MVM-UNet 的贡献在于针对医学图像分割任务,实验验证了一种基于 Mamba 的空间建模与编码器-解码器特征融合的专门化整合方案。

尽管MVM-UNet表现出较强的性能,但仍存在若干局限性。首先,分割性能并未随着输入图像尺寸的增大而持续提升,表明当前网络架构可能未能充分挖掘高分辨率图像中的信息。其次,该模型在高噪声或低对比度成像条件下的评估尚不充分,而这些情况在临床实践中经常出现,可能影响分割的鲁棒性。第三,尽管该模型在三个公开可用的数据集上表现良好,但仍需在更大规模、更多样化的医学影像数据集上进行进一步验证。本方案可适配于其他医学图像分割任务,但需谨慎实施若干修改。对于新的二分类分割任务,用户应修改数据集加载器、归一化参数、输入分辨率和前景阈值,同时保持二分类BCE-Dice损失函数及评估流程不变。对于新的多类别分割任务,用户应更新输出类别数量、类别索引映射、独热编码标签转换、CE-Dice损失函数配置以及按类别的评估指标44。对于灰度数据集,应根据具体实现方式,通过采用单通道输入投影或将灰度图像重复三次以构成三通道输入,使输入通道配置与模型架构相匹配。当目标结构极小、边界模糊或不清晰、图像对比度与训练数据差异较大,或目标数据集存在显著域偏移时,该方法可能表现欠佳。在此类情况下,用户可能需要调整输入分辨率、数据增强策略、类别平衡、损失权重或微调计划,同时保持相同的评估协议,以确保比较的公平性。

在 Synapse 数据集上,MVM-UNet 在常用的 18 例训练和 12 例测试划分下实现了较强的多器官分割性能。尽管本研究评估的代表性基线方法中,所提出的方法取得了最高的平均 DSC(表 3),但一些更新的方法在不同的训练设置和评估协议下报告了更高的 Synapse 性能29。因此,我们避免将 MVM-UNet 描述为在 Synapse 上实现了全面的最先进性能,而是将其描述为在所评估的实验设置下实现了较强的性能。这些结果表明,MVM-UNet 的性能源于基于 Mamba 的建模在医学图像分割任务中的任务特异性适应13,14,15,16,17,18,19,20。MVM-UNet 并不依赖单一的扫描策略,而是将视觉特征建模分解为多个互补的扫描视角,并通过 SFusion Mamba 进行融合。此外,MFusion Mamba 通过显式聚合多阶段编码器特征,超越了传统的跳跃连接,从而改善了编码器与解码器之间的信息流动8,21,44。该设计使所提出的模型在二值皮肤病变分割和多器官分割任务中均实现了较强的性能。

未来的研究应聚焦于改进MVM-UNet以实现更高分辨率的医学图像分割。更深层或自适应的多尺度架构可能使模型更有效地利用高分辨率图像信息。后续研究还应评估MVM-UNet在噪声、低对比度以及域偏移成像条件下的鲁棒性。此外,所提出的多视角扫描策略可拓展至其他医学图像分析任务,包括病灶检测4、器官定位、肿瘤分类以及三维分割10,11。综上所述,MVM-UNet为医学图像分割提供了一个高效且可重复的框架。MV4D模块与MFusion Mamba的结合使模型能够捕获互补的空间信息、多尺度上下文、全局轮廓信息、局部边界细节以及多阶段语义特征。在ISIC 2017、ISIC 2018和Synapse数据集上取得的代表性结果验证了所提出架构的有效性。本实验方案为致力于开发基于SSM/Mamba的高效医学图像分割架构的研究人员提供了实用的参考13,14,15,16,17,18,19,20

披露

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者声明不存在任何竞争性经济利益。

致谢

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究未获得外部资金支持。

材料

本文使用的材料清单
姓名公司目录编号评论
硬件 - GPU 工作站或 GPU 服务器机构计算平台 / 本地工作站自建本地 GPU 工作站;Ubuntu 22.04.1 操作系统,Linux 内核 6.8.0;Intel Core i9-13900K CPU;NVIDIA A800 GPU;128 GB 内存;512 GB 本地存储。用于训练、验证、测试、消融实验及仅推理实验的计算平台。
硬件 - 图形处理器(GPU)NVIDIA CorporationNVIDIA A800 GPU(80 GB 显存)。用于加速模型训练与推理。
硬件 - 中央处理器(CPU)Intel Corporation / AMD第 13 代 Intel Core i9-13900K CPU。用于数据加载、预处理和实验执行的主机处理器。
硬件 - 系统内存(RAM)机构计算平台 / 本地工作站128 GB 系统内存用于数据集加载、预处理和训练的内存空间。
硬件 - 存储设备机构计算平台 / 本地工作站2 TB NVMe 固态硬盘。用于存储数据集、检查点、日志和生成的预测图像。
软件环境 - 操作系统Canonical Ltd.推荐:Ubuntu 22.04.1 LTS计算环境所使用的操作系统。
软件环境 - Conda 环境Anaconda, Inc. / Miniconda环境名称:mvmunet用于安装和隔离依赖项的 Python 环境。
软件环境 - PythonPython Software FoundationPython 3.8用于实现和执行实验的编程语言。
软件环境 - CUDA 工具包NVIDIA CorporationCUDA Toolkit 11.8PyTorch 和 Mamba 相关包所需的 GPU 计算后端。
软件环境 - cuDNNNVIDIA CorporationcuDNN 8.7.0。通过 PyTorch 使用的 GPU 加速深度学习基础操作。
Python 包 - PyTorchPyTorchtorch == 2.0.1用于模型训练、损失计算、优化和推理的深度学习框架。
Python 包 - TorchvisionPyTorchtorchvision == 0.14.0在预处理和数据增强中使用的图像变换工具。
Python 包 - TorchaudioPyTorchtorchaudio == 0.13.0随推荐的 PyTorch 环境一同安装。
Python 包 - timmtimm 开发者timm == 0.4.12在代码仓库环境说明中列出的模型组件或工具依赖项。
Python 包 - tritonOpenAI / Triton 开发者triton == 2.0.0由 GPU 加速序列建模组件使用的依赖项。
Python 包 - causal-conv1dcausal-conv1d 开发者causal_conv1d == 1.0.0Mamba 实现所需的高效因果卷积依赖项。
Python 包 - mamba-ssmMamba SSM 开发者mamba_ssm == 1.0.1用于 Mamba/S6 相关组件的状态空间序列建模包。
Python 包 - NumPyNumPy 开发者NumPy 版本 1.24.3。用于数值计算和数组操作。
Python 包 - SciPySciPy 开发者SciPy 版本 1.10.1。科学计算包;在 utils.py 中导入了 scipy.ndimage.zoom。
Python 包 - SimpleITKInsight Software ConsortiumSimpleITK 版本 2.2.1。在 utils.py 中导入的医学图像输入/输出和预处理工具。
Python 包 - MedPyMedPy 开发者MedPy 版本 0.4.0。在 utils.py 中导入的医学图像度量计算包。
Python 包 - scikit-imagescikit-image 开发者scikit-image 版本 0.21.0。在 README 中列出的图像处理依赖项。
Python 包 - scikit-learnscikit-learn 开发者scikit-learn 版本 1.3.2。在 README 中列出的机器学习工具包。
Python 包 - matplotlibMatplotlib 开发者Matplotlib 版本 3.7.2。用于保存定性可视化图像。
Python 包 - h5pyh5py 开发者h5py 版本 3.9.0。为 Synapse 测试数据体提供 HDF5 文件支持。
Python 包 - thopTHOP 开发者THOP 版本 0.1.1.post2209072238。用于计算 FLOPs 和参数相关的计算成本。
Python 包 - packagingPython Packaging Authoritypackaging 版本 23.1。在 README 中列出的依赖项。
Python 包 - pytestpytest 开发者pytest 版本 7.4.0。在 README 中列出的依赖项。
Python 包 - chardetchardet 开发者chardet 版本 5.2.0。在 README 中列出的依赖项。
Python 包 - yacsYACS 开发者yacs 版本 0.1.8。在 README 中列出的配置工具依赖项。
Python 包 - termcolortermcolor 开发者termcolor 版本 2.3.0。在 README 中列出的日志/终端工具依赖项。
Python 包 - submititsubmitit 开发者submitit 版本 1.4.5。在 README 中列出的实验/任务工具依赖项。
Python 包 - tensorboardXtensorboardX 开发者tensorboardX 版本 2.6.2.2。在 README 中列出的训练日志可视化工具。
Python 包 - ml-collectionsml_collections 开发者ml-collections 版本 0.1.1。被 configs/config_setting_synapse.py 导入。
数据集 - ISIC 2017 挑战赛数据集国际皮肤影像协作组织ISIC 2017 皮肤病变分割数据集公开的、去标识化的皮肤镜下皮肤病变图像和掩码,用于二分类分割任务。
数据集 - ISIC 2018 挑战赛任务 1 数据集国际皮肤影像协作组织ISIC 2018 任务 1:病变边界分割公开的、去标识化的皮肤镜下皮肤病变图像和掩码,用于二分类分割任务。
数据集 - Synapse 多图谱标注(超出颅腔范围)数据集Synapse / Sage Bionetworks访问编号:syn3193805公开的腹部 CT 多器官分割数据集。
数据组织 - ISIC 2017 数据文件夹作者 / 代码仓库结构data/isic2017/预期的本地文件夹,包含训练和验证图像/掩码。
数据组织 - ISIC 2018 数据文件夹作者 / 代码仓库结构data/isic2018/预期的本地文件夹,包含训练和验证图像/掩码。
数据组织 - Synapse 数据文件夹作者 / 代码仓库结构data/Synapse/预期的本地文件夹,用于存放 Synapse 列表、train_npz 和 test_vol_h5。
源代码 - MVM-UNet 源代码仓库作者 / GitHub分支:master;Git 提交哈希:ee891b42c2f083c4990eed72f1d4463adc5e103e。本协议的完整源代码实现。
源代码 - ISIC 配置文件作者configs/config_setting.py用于 ISIC 风格二分类分割的配置文件。
源代码 - Synapse 配置文件作者configs/config_setting_synapse.py用于 Synapse 多器官分割的配置文件。
源代码 - ISIC 训练脚本作者train.pyISIC 风格二分类分割的训练和验证入口点。
源代码 - Synapse 训练脚本作者train_synapse.pySynapse 多类别分割的训练和验证入口点。
源代码 - ISIC 引擎文件作者engine.py用于 ISIC 风格实验的训练/验证引擎。
源代码 - Synapse 引擎文件作者engine_synapse.py用于 Synapse 实验的训练/验证引擎。
源代码 - 损失函数和工具函数作者utils.py实现随机种子设置、优化器/调度器工具、BCE-DICE 损失、CE-DICE 损失、Dice 损失、数据变换以及定性图像保存功能。
源代码 - MVM-UNet 架构实现作者models/mvmunet/mvmunet.pyMVM-UNet 网络的主要定义。
源代码 - 自定义模块实现作者models/mvmunet/core.py实现 MV4D、MVV Block、SFusion Mamba、MFusion Mamba、S6/Mamba 相关组件以及扫描索引生成器。
训练配置 - ISIC 损失函数作者 / PyTorchBceDiceLoss(wb=1, wd=1)用于皮肤病变二分类分割的组合 BCE-DICE 损失。
训练配置 - Synapse 损失函数作者 / PyTorchCeDiceLoss(num_classes=9, loss_weight=[1,1])用于多类别器官分割的组合 CE-DICE 损失。
训练配置 - 优化器PyTorchAdamW默认配置文件中使用的优化器。
训练配置 - ISIC 学习率调度器PyTorchCosineAnnealingLR默认 ISIC 配置中的学习率调度器。
训练配置 - Synapse 学习率调度器PyTorchCosineAnnealingLR默认 Synapse 配置中的学习率调度器。
训练配置 - 随机种子控制作者 / PyTorch / NumPyutils.py 中的 set_seed(seed)用于设置 Python、NumPy、PyTorch CPU、PyTorch CUDA 和 cuDNN 的确定性行为的函数。
训练配置 - 混合精度设置作者 / PyTorchamp = False自动混合精度训练标志。
输出 - 训练结果目录作者 / 代码仓库结构results/mvmunet_*用于存储检查点、日志和生成输出的目录。
输出 - 仅推理输出路径作者 / 配置文件img_save_path在仅推理评估期间保存定性预测图像的目录。
输出 - 最佳检查点路径作者 / 配置文件best_ckpt_path用于仅推理评估的检查点路径。

重印与许可

申请许可以重复使用本 JoVE 文章的文本或图表

申请许可

标签

234 234 SSM UNet

相关文章