?
目錄
一、論文結構概述
二、創新點詳解
三、創新點結構與原理
(1)Vision-FAN Block:全局與周期特征的融合引擎
(2)FANLayer2D:周期性建模的核心
四、代碼復現思路
五、仿真結果分析
(1)SOTA模型對比
(2)消融實驗
六、應用場景
總結
一、論文結構概述
本文采用經典學術論文框架:
- ?摘要(ABSTRACT)??:概述FAN-UNet的核心貢獻——結合Vision-FAN Block與U-Net,解決長程依賴和周期性建模問題。
- ?引言(Introduction)??:闡述醫療圖像分割的重要性,分析CNN和Transformer的局限性,并引出FAN在周期性建模的優勢。
- ?預備知識(Preliminaries)??:介紹傅里葉分析基礎,為方法部分奠定數學基礎。
- ?方法(Method)??:詳解FAN-UNet架構,包括Vision-FAN Block和FANLayer2D的設計。
- ?實驗(Experiment)??:在ISIC2017/2018數據集上對比SOTA模型,并進行消融實驗驗證組件有效性。
- ?結論(Conclusion)??:總結模型優勢,并展望未來方向。
該結構邏輯清晰,層層遞進,從問題定義到解決方案再到實證驗證。
二、創新點詳解
FAN-UNet的三大核心創新:
- ?Vision-FAN Block?:首次將傅里葉分析層(FANLayer2D)與自注意力機制結合,同時捕捉長程依賴和周期性特征。
- ?醫療分割首次應用?:這是FAN模型在醫療圖像分割領域的首次探索,填補了周期性建模的空白。
- ?高性能與輕量化?:實驗顯示,FAN-UNet在mIoU(78.99%)、DSC(88.25%)、Accuracy(96.30%)等指標上優于主流模型(如HC-Mamba、TransFuse),且模型復雜度可控。
這些創新解決了醫療圖像中病變區域周期性模式(如皮膚紋理重復性)的建模難題,顯著提升分割魯棒性。
三、創新點結構與原理
(1)Vision-FAN Block:全局與周期特征的融合引擎
Vision-FAN Block是FAN-UNet的核心模塊,其結構如圖1(B)所示。它通過多階段處理整合全局和局部信息:
- ?位置編碼(Positional Embed)??:為特征圖添加位置信息,增強空間關系理解。
- ?窗口自注意力(Window-based Self-Attention)??:計算特征圖不同位置的交互,捕捉長程依賴。例如,在皮膚病變分割中,病變區域可能跨越多個空間位置,自注意力能有效關聯這些區域。
- ?FANLayer2D?:基于傅里葉分析,顯式編碼周期性特征(原理見下文)。
- ?殘差連接與層歸一化?:確保訓練穩定性,避免梯度消失。
該模塊的數學表達為:
# 偽代碼示意
def Vision_FAN_Block(input): x = positional_embed(input) # 位置編碼 x = window_self_attention(x) # 自注意力 x = FANLayer2D(x) # 傅里葉分析層 x = layer_norm(x + input) # 殘差連接與歸一化 return x
(2)FANLayer2D:周期性建模的核心
FANLayer2D是Vision-FAN的關鍵組件,其結構如圖2所示。原理基于傅里葉級數展開:
- ?數學基礎?:將輸入函數分解為正余弦分量(見公式5):
fS?(x)=B+Wccos(Winx)+Wssin(Winx)
其中?B,Win,Wc,Ws?為可學習參數,T?為周期。 - ?處理流程?:
- ?步驟1?:計算周期分量?P=Wp??X+bp??和非線性分量?G=Wg??X+bg?。
- ?步驟2?:對?G?應用非線性激活(如ReLU),生成?Gact?=?(G)。
- ?步驟3?:對?P?應用傅里葉激活,得到?Pcos?=cos(P)?和?Psin?=sin(P)。
- ?步驟4?:沿通道維度拼接?Pcos?、Psin??和?Gact?,形成輸出特征。
- ?優勢?:顯式學習周期性模式(如醫學圖像中組織的重復紋理),提升模型泛化能力。
?
四、代碼復現思路
基于PyTorch實現FAN-UNet的關鍵步驟:
- ?整體架構?:繼承U-Net的編碼器-解碼器結構,在跳躍連接處插入Vision-FAN Block。
- ?FANLayer2D實現?:
import torch
import torch.nn as nn class FANLayer2D(nn.Module): def __init__(self, in_channels, out_channels): super().__init__() self.conv_p = nn.Conv2d(in_channels, out_channels // 2, kernel_size=3, padding=1) # 周期分量卷積 self.conv_g = nn.Conv2d(in_channels, out_channels // 2, kernel_size=3, padding=1) # 非線性分量卷積 self.act = nn.ReLU() # 非線性激活 def forward(self, x): P = self.conv_p(x) # 周期分量 G = self.conv_g(x) # 非線性分量 G_act = self.act(G) # 激活 P_cos = torch.cos(P) # 余弦激活 P_sin = torch.sin(P) # 正弦激活 return torch.cat([P_cos, P_sin, G_act], dim=1) # 通道拼接
- ?損失函數?:組合Dice Loss和交叉熵:
def combined_loss(input, target, alpha=0.5): ce_loss = nn.CrossEntropyLoss()(input, target) dice_loss = 1 - (2 * (input * target).sum() / (input.sum() + target.sum() + 1e-5)) return (1 - alpha) * ce_loss + alpha * dice_loss
五、仿真結果分析
實驗基于ISIC2017/2018皮膚病變數據集,關鍵結果如下:
(1)SOTA模型對比
數據集 模型 mIoU(%) DSC(%) Accuracy(%) ?ISIC17? FAN-UNet ?78.99? ?88.25? ?96.30? HC-Mamba 77.88 87.38 95.17 ?ISIC18? FAN-UNet ?78.74? ?88.11? 94.31 Med-TTT 78.59 88.01 94.30 - ?結論?:FAN-UNet在mIoU和DSC上全面領先,尤其在ISIC17上Accuracy達96.30%,證明其在復雜病變分割中的魯棒性。
- ?結論?:Vision-FAN Block貢獻最大(mIoU提升0.88%),位置編碼次之,驗證了周期性建模和空間關系的關鍵性。
-
(2)消融實驗
配置 mIoU(%) DSC(%) 完整FAN-UNet(Proposed) ?78.74? ?88.11? 移除Vision-FAN Block 77.86 87.55 移除位置編碼 78.42 87.89
?
六、應用場景
FAN-UNet在以下醫療場景潛力突出:
- ?皮膚病變分割?:如ISIC數據集中的黑色素瘤,其邊界紋理常呈周期性,FANLayer2D能精準捕捉此類模式。
- ?腫瘤分析?:腦瘤(論文提及MRI數據)的形狀變異大,但內部紋理有重復性,Vision-FAN Block可聯合建模全局結構和局部周期特征。
- ?多模態醫療圖像?:未來可擴展至CT、MRI等多模態數據,傅里葉分析對噪聲魯棒性強,適合低質量臨床圖像。
實際部署時,需針對特定數據集微調周期參數?T,以適配不同器官的紋理尺度。
總結
FAN-UNet通過傅里葉分析 + 自注意力機制的創新融合,解決了醫療圖像分割中的長程依賴和周期性建模難題。實驗證明其在精度和泛化性上的顯著優勢,代碼復現也較為直觀。未來可探索其在3D分割或實時診斷中的應用。
?論文地址:https://arxiv.org/pdf/2410.02675