Segment Model Compare

SegMamba

Datasets

  • CRC-500:500个3D结直肠癌CT
  • BraTS 2023:1251个3D脑MRI
  • AIIB2023:120个纤维化肺病CT
  • 公开数据集加粗,下同

Model

SegMamba具有三部分:

  • 1)具有多个三向空间Mamba(TSMamba)块的3D特征编码器,用于以不同尺度对全局信息进行建模(正向、反向、切片间)
  • 2)基于卷积层的3D解码器,用于预测分割结果
  • 3)特征级不确定性估计(FUE)的跳跃连接用于特征增强。
  • 实际上就是把卷积块换成TSMamba块,逐个尺寸Res跳连。
  • 主干:k:7x7x7 p:3x3x3 s:2x2x2 –> 48 D/2 H/2 W/2
  • 代码中实际上把Stem作为下采样第一层,图示少了一次下采样。

SegMambaOverview

TSMamba块

  • Gated Spatial Convolution(谨慎学习这块内容,基本没用,代码部分会提到):weary:

    类似于门机制的信息传输,在mamba前捕获空间信息

GSC

  • Tri-orientated Mamba

    前向、反向、切片间,对高维特征的全局信息进行建模。

ToM

TSMamba

Feature-level Uncertainty Estimation(谨慎学习这块内容,作者没有给出)

​ 计算通道维度上的平均值,并进行归一化,增强低不确定性特征。

FUE

Loss & Train

参数:使用交叉熵损失,具有多项式学习率调度器的SGD优化器(初始学习率为1^e-2^,衰减为1^e-5^)。所有数据集运行1000个epoch

数据增强:加性亮度、伽马、旋转、缩放、镜像和弹性变形。

Code

https://github.com/ge-xing/SegMamba

吐槽下作者代码里实际上根本没有点乘,而是直接相加,加的位置也不对,和画的图/公式完全是俩玩意。其实就是基本两个3x3+1x1跳连的残差块,外边再1x1之后和原来的输入跳连,和门控不大沾边,浪费好久去看这个结构。git记录也是稍显抽象。然后FUE根本没给,在issue回复很模糊。

GSC实际代码

git

可学习的点:3D切片上ToM的正序反序、切片间顺序思路。

3D-ResUNet

Datasets

  • 三个非洲爪蟾肾胚胎样本

Model

和标准U-Net基本上一样。这篇比较早结构也比较简单,直接看代码吧。

3D-ResUNet

Code

没有找到原论文代码,找到类似的3D-ResUNet

https://github.com/safamathl/3D-ResUnet/tree/main/net

16→32→64→128,每级包含2-3个卷积层,找到的这个代码通过dilation在3、4层扩大感受野。concat合并通道,特征融合后接3个卷积层进行信息整合。3D相对原来的U-Net在z轴维度上的变化也没有额外处理。

以图中128+256作为例子,进行信息整合的3个卷积层:

层级 输入通道 输出通道 kernel_size stride padding dilation 激活函数 参数量 计算量(FLOPs)
第1层 128+64=192 128 3×3×3 1 1 1 PReLU 192×128×3³=663,552 128×192×D×H×W×27
第2层 128 128 3×3×3 1 1 1 PReLU 128×128×3³=442,368 128×128×D×H×W×27
第3层 128 128 3×3×3 1 1 2 PReLU 128×128×3³=442,368 128×128×D×H×W×27

可学习的点:适当的使用dilation,其他当做一种方法和最后我们的结果进行比较就好。

LISA

Datasets

  • Semantic Segmentation Dataset
  • Vanilla Referring Segmentation Dataset
  • Visual Question Answering Dataset

Model

LLM输出掩码,其中分割掩码表示为多边形序列,使分割掩码能够表示为纯文本。

仅需在现有LLM(如LLaVA)基础上新增一个 <SEG> 标记和简单的解码器结构,避免复杂模型重构。

LISAOverview

作为触发分割的指令信号,嵌入到LLM的词汇表中。当模型需要输出分割结果时,响应文本中会包含此标记。

->大模型理解文本需要提取的内容->投影层连接文字信息与图片特征信息->SAM分割->LLM输入掩码->叠加掩码生成分割结果

掩码生成过程

Loss & Train

Ltxt是用于文本生成的自回归交叉熵损失,Lmask是掩码损失。

损失

  • Can you segment the {class name} in this image? 语义分割数据集,输入图像和目标对象的名称

  • Can you segment {description} in this image?Vanilla参考分割数据集,输入图像和目标对象的显式简短描述

  • 视觉问题分类数据集,提高多模态LLM的问题分类(VQA)能力

    训练参数:微调LoRA,Fdec,embed tokens,Ilm head,投影层

    可以学习的点:LLM指导分割任务,LLM掩码处理。

Code

也是SAM作为predictor

可学习的点:结合SAM

HyperSeg

Datasets

图像分割

  • COCO Panoptic
  • RefCOCO系列
  • COCO-Interactive
  • ReasonSeg

视频分割

  • DAVIS 2017
  • Ref-Youtube-VOS
  • YouTube-VIS 2019
  • ReVOS

Model

把Vision Token(VLLM的CLIP)、FVP精细分割后的Fine-grained Token、视觉和文字的Prompt Token输入大模型,LoRA微调。

Prompt Token、Fine-grained Token和语义识别后的Mask Token一起输入分割预测器。

HyperSegOverview

VLLM

输入(V,P),由CLIP编码器得到特征fv,投影并与Fine-grained Token、Prompt Token级联得到输出。输出后的Hybrid Entity Reconition的语义增强掩码标记EQ是手动提取的。

VLLM Output

Prompt

PI:文本提示 PC:图片提示 具体设计看上面的Overview就可以了

Segmentation predictor

mj是掩码建议,zj是分类得分,ej进针对视频用不上。

分割结果输出

CLIP和FVP区别

CLIP单层简单结构,对细粒度感知效果不强。

CLIP/FVP块

Train & Loss

该模型可以使用统一损失L在多个任务上联合训练。Ltext采用自回归交叉熵,Lmask采用BCELoss和DiceLoss,Lcls交叉熵来分类,Lins用于视频暂时也用不上。

Loss

可学习的点:细粒度token的加入,prompt token的设计。

LLMSeg

Datasets

  • 981乳腺癌患者CT

  • 内部验证集,提供了一小部分具有相似特征的受试者样本,而不是完整的患者数据集,用于验证目的

  • https://github.com/tvseg/MM-LLMRO44。

Model

大概思路和上面的LLM指导分割任务差不多,用的3D ResUNet + Llama2-7B-chat + sam

LLMSeg Overview

主要有三个模块:

  • text prompt tuning

    vn:MxD矩阵,D与LLM的嵌入维度相同,进行随机初始化。

    t = vn + 诊断内容[TEXT] + 分割标记[SEG] (LISA也用到这个标记),输出gNxD

  • multimodal interactive alignment

    对齐g与图像嵌入,图像嵌入fl为图像编码器第l层输出,维度Hl x Wl x Sl x Cl

    逐层使用线性层对齐L与投影g,然后self-attention与cross-attention进行信息交互(这块就是SAM的双向注意力),最后得到fl^*^

  • CTV delineation

    SAM预测,用CE和Dice来计算损失,softmax出yhat

LLMSeg Model

Train

随机裁剪384 x 384 x 128的patch,训练冻结LLM,学习text prompt,对齐时的参数和SAM参数。

Code

代码中ResUnet和上文找到的ResUnet差不多,具体的大小如下:

ResUNet Param

5个下采样 + gNxD信息,为了对齐通道会减去N:

1
in_channels = feature_size * 4 - (args.n_prompts if args.align_score  else 0 if self.context  else 0)

Encoder用的monai给的Unetr块,Decoder前四块为加了残差的上采样+卷积,最后一块简单的用转置卷积实现上采样。使用了SAM的双向注意力来交互文字与图片信息。

可学习的点:不再是直接把text和image连接进sam,two ways attention加在ResUNet跳连部分,接着再去做decoder。

L&C

用4个MRI序列做多模态输入(T1、T1增强一组/T2、DWI一组互注意力)。

3DResUnet+(顺序切片间(这样是不是2D更好?))做分割模型,高层使用自适应dilation不减小尺寸扩大感受野。

Two ways Attention可以加在跳连/后处理门控?(加在Encoder、Decoder可能运算过大)


Segment Model Compare
http://pleinelune-r.github.io/2025/08/05/ModelCompare/
作者
Pleinelune
发布于
2025年8月5日
许可协议