FAN-UNET:用于生物醫學圖像分割增強模型

?

目錄

一、論文結構概述

二、創新點詳解

三、創新點結構與原理

(1)Vision-FAN Block:全局與周期特征的融合引擎

(2)FANLayer2D:周期性建模的核心

四、代碼復現思路

五、仿真結果分析

(1)SOTA模型對比

(2)消融實驗

六、應用場景

總結


一、論文結構概述

本文采用經典學術論文框架:

  1. ?摘要(ABSTRACT)??:概述FAN-UNet的核心貢獻——結合Vision-FAN Block與U-Net,解決長程依賴和周期性建模問題。
  2. ?引言(Introduction)??:闡述醫療圖像分割的重要性,分析CNN和Transformer的局限性,并引出FAN在周期性建模的優勢。
  3. ?預備知識(Preliminaries)??:介紹傅里葉分析基礎,為方法部分奠定數學基礎。
  4. ?方法(Method)??:詳解FAN-UNet架構,包括Vision-FAN Block和FANLayer2D的設計。
  5. ?實驗(Experiment)??:在ISIC2017/2018數據集上對比SOTA模型,并進行消融實驗驗證組件有效性。
  6. ?結論(Conclusion)??:總結模型優勢,并展望未來方向。

該結構邏輯清晰,層層遞進,從問題定義到解決方案再到實證驗證。


二、創新點詳解

FAN-UNet的三大核心創新:

  1. ?Vision-FAN Block?:首次將傅里葉分析層(FANLayer2D)與自注意力機制結合,同時捕捉長程依賴和周期性特征。
  2. ?醫療分割首次應用?:這是FAN模型在醫療圖像分割領域的首次探索,填補了周期性建模的空白。
  3. ?高性能與輕量化?:實驗顯示,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的關鍵步驟:

  1. ?整體架構?:繼承U-Net的編碼器-解碼器結構,在跳躍連接處插入Vision-FAN Block。
  2. ?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)  # 通道拼接  
  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-Mamba77.8887.3895.17
    ?ISIC18?FAN-UNet?78.74??88.11?94.31
    Med-TTT78.5988.0194.30
  2. ?結論?:FAN-UNet在mIoU和DSC上全面領先,尤其在ISIC17上Accuracy達96.30%,證明其在復雜病變分割中的魯棒性。
  3. ?結論?:Vision-FAN Block貢獻最大(mIoU提升0.88%),位置編碼次之,驗證了周期性建模和空間關系的關鍵性。
  4. (2)消融實驗
    配置mIoU(%)DSC(%)
    完整FAN-UNet(Proposed)?78.74??88.11?
    移除Vision-FAN Block77.8687.55
    移除位置編碼78.4287.89

?

六、應用場景

FAN-UNet在以下醫療場景潛力突出:

  1. ?皮膚病變分割?:如ISIC數據集中的黑色素瘤,其邊界紋理常呈周期性,FANLayer2D能精準捕捉此類模式。
  2. ?腫瘤分析?:腦瘤(論文提及MRI數據)的形狀變異大,但內部紋理有重復性,Vision-FAN Block可聯合建模全局結構和局部周期特征。
  3. ?多模態醫療圖像?:未來可擴展至CT、MRI等多模態數據,傅里葉分析對噪聲魯棒性強,適合低質量臨床圖像。

實際部署時,需針對特定數據集微調周期參數?T,以適配不同器官的紋理尺度。

總結

FAN-UNet通過傅里葉分析 + 自注意力機制的創新融合,解決了醫療圖像分割中的長程依賴和周期性建模難題。實驗證明其在精度和泛化性上的顯著優勢,代碼復現也較為直觀。未來可探索其在3D分割或實時診斷中的應用。

?論文地址:https://arxiv.org/pdf/2410.02675

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/92094.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/92094.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/92094.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于SpringBoot的籃球運動員體測數據分析及訓練管理系統論文

第1章 緒論 1.1 課題背景 互聯網發展至今,無論是其理論還是技術都已經成熟,而且它廣泛參與在社會中的方方面面。它讓信息都可以通過網絡傳播,搭配信息管理工具可以很好地為人們提供服務。所以各行業,尤其是規模較大的企業和學校等…

矩陣算法題

矩陣算法題1、矩陣置零2、螺旋矩陣3、旋轉圖像4、搜索二維矩陣1、矩陣置零 解題思路:這道題核心是要確定哪些行和哪些列要置零。所以定義兩個數組,一個記錄要置零的行,一個記錄要置零的列。遍歷整個矩陣,如果當前位置是0的話&…

Spring底層(二)Spring IOC容器加載流程原理

一、怎么理解SpringIoc IOC:Inversion Of Control,即控制反轉,是一種設計思想。之前對象又程序員自己new自己創建,現在Spring注入給我們,這樣的創建權力被反轉了。 所謂控制就是對象的創建、初始化、銷毀。 創建對象…

UDP中的單播,多播,廣播

文章目錄UDP 簡單回顧一、單播(Unicast)定義特點應用舉例二、廣播(Broadcast)定義特點應用三、多播(Multicast)定義特點應用UDP 單播、廣播、多播的對比總結額外說明代碼簡要示例(C)…

數據庫練習3

一、建立product表,操作方式operate表要求:1.定義觸發器實現在產品表(product)中每多一個產品,就在操作表(operate)中記錄操作方式和時間以及編號記錄。注:操作說明:標記執行delete 、insert、 update2.定義觸發器實現在產品表(pr…

pycharm和anaconda安裝,并配置python虛擬環境

1、pycharm和anaconda安裝 PyCharm與Anaconda超詳細安裝配置教程_anaconda pycharm安裝-CSDN博客https://blog.csdn.net/qq_32892383/article/details/116137730 2、pycharm漢化 PyCharm漢化:簡單兩步搞定!PyCharm怎么設置中文簡體,為什么…

EP04:【Python 第一彈】函數編程

一、定義 函數指將一組語句的集合通過一個變量名封裝起來,調用這個函數變量名,就可以執行函數。 二、特點 減少重復邏輯代碼的編寫將程序中的邏輯可以進行擴展維護項目程序的代碼更簡單 三、創建 def 函數名():邏輯代碼1邏輯代碼2return 結果 函數名…

linux安裝Mysql后添加mysql的用戶和密碼

在 MySQL 中創建用戶并設置密碼的完整指南如下: 方法 1:使用 CREATE USER 語句(推薦) -- 創建新用戶并設置密碼 CREATE USER newuserlocalhost IDENTIFIED BY your_password;-- 授予權限(示例:授予所有數據…

React hooks——memo

一、簡介React.memo 是 React 提供的一個高階組件(Higher-Order Component),用于優化函數組件的渲染性能,它通過淺比較(shallow compare)props 的變化來決定是否重新渲染組件。1.1 基本用法const MyCompone…

leetcode15.三數之和題解:邏輯清晰帶你分析

介紹 題源 分析 1.雙指針固定一個數 首先明白一點,我們有三個數,我們想使用雙指針,那就必須固定一個數。 2.二分 本題還涉及二分,雙指針經常和二分結合使用(二分本質就是雙指針,仔細思考這思考這句話&…

exports使用 package.json字段控制如何訪問你的 npm 包

目錄 想象一下你正在開發一個 npm 包…… 術語 什么是exports領域? exports好處 保護內部文件 多格式包 將子路徑映射到dist目錄 子路徑導出 單一入口點 多個入口點 公開軟件包文件的子集 有條件出口 設置使用條件 默認條件 句法 針對 Node.js 和瀏…

AngularJS 安裝使用教程

一、AngularJS 簡介 AngularJS 是 Google 開發的一款前端 JavaScript 框架,采用 MVVM 架構,提供了數據雙向綁定、依賴注入、模塊化、路由管理等強大功能,適合構建單頁面應用(SPA)。注意:AngularJS&#xf…

基于python和neo4j構建知識圖譜醫藥問答系統

一、pyahocorasick1.安裝 pyahocorasick 包: pip install pyahocorasick -i https://pypi.tuna.tsinghua.edu.cn/simple/pip install pyahocorasick :安裝名為 pyahocorasick 的第三方庫👉 這個庫是一個 Aho-Corasick 多模匹配算法 的 Python…

片上網絡(NoC)拓撲結構比較

1. 拓撲結構拓撲結構延遲吞吐量跳數功耗面積開銷可擴展性容錯性布線復雜度適合通信模式Mesh(網格)低(O(√N))高(多路徑并行)O(√N)中高(路由器多)中高(規則布線&#xff…

git merge 命令有什么作用?具體如何使用?

回答重點git merge 命令主要用于將兩個分支的歷史和內容合并在一起。簡而言之,它會將一個分支的更改引入到當前分支中。常見的使用場景是將功能分支(feature branch)的修改合并回主分支(main branch)或者開發分支&…

【NLP輿情分析】基于python微博輿情分析可視化系統(flask+pandas+echarts) 視頻教程 - jieba庫分詞簡介及使用

大家好,我是java1234_小鋒老師,最近寫了一套【NLP輿情分析】基于python微博輿情分析可視化系統(flaskpandasecharts)視頻教程,持續更新中,計劃月底更新完,感謝支持。今天講解 jieba庫分詞簡介及使用 視頻在線地址&…

大模型的后訓練與邏輯能力

《DeepSeek原生應用與智能體開發實踐》【摘要 書評 試讀】- 京東圖書 在人工智能與機器學習領域,模型的后訓練階段不僅是技術流程中的關鍵環節,更是提升模型性能,尤其是數學邏輯能力的“黃金時期”。這一階段,通過對已初步訓練好…

pycharm安裝教程-PyCharm2025安裝步驟【MAC版】附帶安裝包

pycharm安裝教程-PyCharm2025安裝詳細步驟【MAC版】安裝安裝包獲取(文章末尾)今天來給大家分享 Mac 系統安裝 PyCharm,附帶安裝包資源安裝, PyCharm 相關就不敘述了,直接開始安裝! 安裝 2024版本、2025年…

【React Native】路由跳轉

Link 跳轉的路徑,就在href里寫/details。路徑都是相對于app目錄來寫的,也就是說app目錄就是/。很多時候,需要跳轉的組件比較復雜。比方說,要在里面要嵌套按鈕,或者其他東西。這種情況下,就可以在Link組件里…

使用 Spring Boot + AbstractRoutingDataSource 實現動態切換數據源

1. 動態切換數據源的原理AbstractRoutingDataSource 是 Spring 提供的一個抽象類,它通過實現 determineCurrentLookupKey 方法,根據上下文信息決定當前使用的數據源。核心流程如下:定義多數據源配置:注冊多個數據源。實現動態數據…