为什么是 FWMamba-UNet
医学图像分割长期由 U-Net 统治,它把编码器的层级特征通过 skip connection 逐级送回解码器,兼顾全局语义和局部定位。最近两年,Mamba / 状态空间模型(SSM)以线性复杂度的 token 混合能力挤进赛道——VM-UNet 把 Transformer 替换成 Mamba 块,推理更快,内存更省。
但 Mamba 有个被论文(Yu et al., 2024)点破的毛病:低频偏差——选择性扫描本质上是个“软低通滤波器”, 学低频平滑内容快,学高频边界细节慢。在皮肤病变这类边界糊的任务上,这直接翻译成分割边界不准。
FW-Mamba Block:从频率域补课
FWMamba-UNet 的核心是把每个 Mamba 块改造成双分支并行结构——一路照常跑 SS2D 负责全局语义(低频), 另一路用 DWT(Haar 小波)把特征图拆成 4 个频带:
- LL:低频近似,保留整体轮廓;
- LH / HL:水平 / 垂直方向的高频,对应边缘走向;
- HH:对角细节,最容易被低通丢掉的那部分。
三个高频带各自过一次 depthwise 卷积做“细节提纯”,然后用一个从全局平均池化 学出来的 α_low / α_high 权重做加权 IDWT 重建。最后和 Mamba 分支用 β(可学习标量,初值 0.1)融合回主干:
out = x + DropPath( f_mamba + β · f_freq )β 很小意味着“频率分支只做微调”——这个设计让网络可以按层自适应:浅层 边缘信号丰富时 β 自然被学大,深层语义为主时 β 降下去。
EAFF-Skip:边缘感知的 skip 融合
标准 U-Net 的 skip 就是把 encoder 特征直接加到 decoder 上。 FWMamba 把 skip 也升了级——对 encoder 特征再做一次 DWT, 把 {LH, HL, HH} 拼起来过 1×1 卷积 + sigmoid, 得到一张边缘注意力图(0~1),再做:
fused = dec + enc + edge_attn · enc直觉上:边缘处的 encoder 特征被额外加权一遍, decoder 在还原分辨率的时候更容易“对上轮廓”。
训练 & 指标(ISIC 2018)
上图的模型用 BCE+Dice + 轻量频率损失(λ_edge=0.1, λ_freq=0.02) 训了 36 个 epoch,在 ISIC 2018 验证集上 Dice 0.8957,相比 VM-UNet baseline 的 0.8883 提升 +0.74%,参数量代价 +10.1%。 下方展示的是验证集上的真实预测——每张样本都附带 Dice/IoU 数值和注意力热力图。
关于可视化方式
和上一个 CNN 可视化工具不同的是,FWMamba 有 30M 参数 + 自定义的 SS2D 算子,没法在浏览器里直接推理。所以这里采用预计算 + 交互式展示的做法:中间层激活是一次性从训练好的 checkpoint 里导出来的(hooks + matplotlib 烘焙成 PNG),前端只负责组织和交互。
本页面基于论文项目 FWMamba-UNet(ICIC 2026 投稿)的开源实现二次创作; FWMamba 的核心模块(FW-Block / EAFF-Skip / 轻量频率损失) 由本站作者的研究团队提出。底层 backbone 复用 VM-UNet(Ruan & Xiang, 2024)。

