25/4/9 算法筆記 DBGAN+強化學習+遷移學習實現青光眼圖像去模糊1

整體實驗介紹

實驗主要是結合DBGAN對抗網絡+強化學習增強+遷移學習增強實現青光眼圖像去模糊。今天則是先完成了DBGAN板塊模型的訓練。

實驗背景介紹

青光眼的主要特征有:

視盤形態與杯盤比CDR:青光眼患者主要表現為視杯擴大,盤沿變窄。

視網膜神經纖維RNFL:RNFL的厚度與完整性也是一個特征,青光眼患者可見局部或彌漫性變薄透光性增加。

OCT影像可量化RNFL厚度,正常值與年齡相關,青光眼患者常出現RNFL厚度低于年齡匹配標準值(如<5%分位為黃色預警,<1%為紅色)

OCTA影像可顯示盤周微血管密度降低,與RNFL變薄區域相關。

實驗流程介紹

先整理得到的青光眼數據,青光眼的各個主要特征數據,之后訓練多分類多分割模型(能更好的將關鍵區域分割,青光眼分級,用來輔助判斷),然后遷移進DBGAN對抗微調,訓練去模糊模型。

數據介紹:

首先我先介紹一下我有的數據

Annotations_Merged:合并的標注文件夾。(這是在一開始做的整理合并工作)

Images:原始圖像文件夾。

Images_Cropped:裁剪后的圖像文件夾。

Images_Square:調整為方形的圖像文件夾。

Masks:掩膜文件夾,通常用于圖像分割。

Masks_Cropped:裁剪后的掩膜文件夾。

Masks_Square:調整為方形的掩膜文件夾。

Semi-automatic-annotations:半自動標注文件夾。

data_index.json:數據索引文件,包含數據集的元數據。

index_errors.log:索引錯誤日志文件,記錄索引構建過程中遇到的錯誤。

merged_labels.csv:合并的標簽文件,包含圖像的標簽信息。(在一開始合并的工作生成的,這是把下面兩個csv文件合并了)

origa_info.csv:包含圖像信息的CSV文件。

OrigaList.csv:包含圖像列表的CSV文件。

merged_labels.csv文件

  1. image_id:圖像的唯一標識符。

  2. CDR:杯盤比(Cup-to-Disc Ratio),是青光眼診斷中的一個重要指標,用于評估視神經的健康狀況。

  3. Ecc-Cup:視杯的偏心率,用于描述視杯的形狀特征。

  4. Ecc-Disc:視盤的偏心率,用于描述視盤的形狀特征。

  5. Glaucoma:是否為青光眼病例,0表示非青光眼,1表示青光眼。

  6. Eye:圖像來自左眼(OS)還是右眼(OD)。

預訓練模型介紹

一個是分類模型,一個是分割模型。

數據的驗證和整理

實驗代碼的一開始都是在做一些數據的驗證和整理

訓練多任務多分類模型

此模型能夠:

1.分類任務:判斷圖像是否顯示青光眼特征。2.分割任務:定位和分割視盤和視杯區域。

數據加載模塊 (ORIGADataset?類)

之后劃分訓練集驗證集(8:2),接著使用數據增強技術(如隨機旋轉、水平翻轉)來提高模型的泛化能力。

這里定義如何獲取數據集中的一項數據——(根據索引獲取圖像和掩膜的路徑。),方便后面數據的獲取

之后我將圖像和掩膜調整為統一尺寸,并將掩膜轉換為二值掩膜。

模型構建模塊 (MultiTaskModel?類)

定義了一個多任務學習模型,用于同時進行分類和分割任務。

使用 PyTorch 的預訓練模型 fcn_resnet50 作為基礎模型。

提取基礎模型的編碼器部分,用于特征提取。

定義分類器部分,將特征映射到兩個類別(青光眼或非青光眼)。

訓練流程模塊 (train_model?函數)

設置參數,開始訓練模型。

基于DBGAN的去模糊模型

代碼實現了一個深度學習模型,用于從模糊的醫學影像中恢復清晰圖像。該模型基于生成對抗網絡(GAN),包含生成器和判別器兩個主要組件。生成器負責將模糊圖像轉換為清晰圖像,而判別器則負責區分生成的圖像和真實的清晰圖像。通過對抗訓練,生成器學習到如何生成更真實的清晰圖像。


模型定義

生成器Generator

Generator:生成器采用U-Net架構,包含下采樣、瓶頸層和上采樣部分。下采樣部分通過卷積和池化操作提取圖像特征,瓶頸層進一步處理特征,上采樣部分通過反卷積操作恢復圖像尺寸。最終輸出去模糊后的圖像。

判別器

Discriminator:判別器采用PatchGAN架構,用于判斷輸入的圖像是真實的還是生成的。它接收模糊圖像和清晰圖像(或生成圖像)作為輸入,輸出判別結果。

數據預處理

生成模糊圖像(作為判別器的輸入)。

SafeBlur:自定義的模糊處理類,用于在數據增強時對圖像進行高斯模糊。

DeblurDataset:自定義的數據集類,用于加載和預處理圖像數據。它從JSON文件中讀取數據索引,應用數據增強,并返回模糊圖像和對應的清晰圖像。

訓練模塊

DBGAN對抗訓練

這里先訓練了沒加入強化學習的一個DBGAN。

下面是模型的檢驗

  1. PSNR (32.83 dB)??

    超過30 dB的醫學影像處理基準線與頂級期刊《Medical Image Analysis》中青光眼圖像增強研究(平均PSNR 31.2 dB)相比,提升約5%
  2. ??SSIM (0.8827)??

    達到眼科設備廠商標準(如蔡司眼底相機軟件要求SSIM≥0.85)在血管分支處的結構相似性可達0.91,黃斑區域0.86

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

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

相關文章

智能復盤自動化系統搭建指南—基于DeepSeek API與Apple日歷的整合實踐

一、系統架構設計 本方案通過iOS快捷指令實現日歷數據與AI分析的自動化交互&#xff0c;核心流程包含&#xff1a; 日歷事件管理 創建每日循環的"AI復盤"日歷事項實現當日備注信息的動態更新 數據處理模塊時間日志標準化處理多維度數據特征提取 AI交互層對接DeepSeek…

01 位運算

12days 章節結構 00 算法前導課-編程基礎&#xff08;自學的視頻&#xff09; 01 位運算的奇巧淫技 02 查找與排序&#xff08;上&#xff09; 03 數組、查找與排序(下) 04 多維數組與矩陣 05 字符串專題 06 基本數學問題 06 遞歸、DFS、剪枝、回溯等問題 07 貪心策…

HDFS Full Block Report超限導致性能下降的原因分析

文章目錄 前言發現問題失敗的為什么是FBR塊匯報頻率的變化為什么FBR會反復失敗HDFS性能下降導致Yarn負載變高的形式化分析理解線程理解IO Wait理解HDFS性能下降導致Yarn負載和使用率增高 引用 前言 我們的Yarn Cluster主要用來運行一批由Airflow定時調度的Spark Job&#xff0…

【Kubernetes基礎--Pod深入理解】--查閱筆記2

深入理解Pod 為什么要有個Pod1. 容器協作與資源共享2. 簡化調度和資源管理3. 設計模式支持 Pod 基本用法Pod 容器共享 VolumePod 的配置管理ConfigMap 概述創建 ConfigMap 資源對象在 Pod 中使用 ConfigMap使用 ConfigMap 的限制條件 為什么要有個Pod Pod 的引入并非技術冗余&…

Margin和Padding在WPF和CSS中的不同

CSS和WPF中 margin 與 padding 在方向上的規定基本一致&#xff0c;但在使用場景和一些細節上有所不同。 CSS - 方向規定&#xff1a; margin 和 padding 屬性可以分別指定上、右、下、左四個方向的值。例如 margin:10px 20px 30px 40px; 表示上外邊距為10px、右外邊距為20…

gravity`(控制 View 內部內容的對齊方式)

文章目錄 **1. 常用取值****示例** **2. layout_gravity&#xff08;控制 View 在父容器中的對齊方式&#xff09;****常用取值****示例** **3. gravity vs layout_gravity 對比****4. 注意事項****5. 總結** 作用對象&#xff1a;當前 View 的內部內容&#xff08;如 TextView…

Go:使用共享變量實現并發

競態 在串行程序中&#xff0c;步驟執行順序由程序邏輯決定&#xff1b;而在有多個 goroutine 的并發程序中&#xff0c;不同 goroutine 的事件先后順序不確定&#xff0c;若無法確定兩個事件先后&#xff0c;它們就是并發的。若一個函數在并發調用時能正確工作&#xff0c;稱…

Vue3 SSR Serverless架構革命:彈性計算與量子加速

一、全維度Serverless SSR架構 1.1 蜂巢式彈性調度系統 1.2 冷啟動時間優化表 優化策略Node.js冷啟(ms)Deno冷啟(ms)Bun冷啟(ms)裸啟動1800960420預編譯二進制650380210內存快照預熱22016090WASM實例池15011075量子狀態預載453832 二、邊緣渲染協議升級 2.1 流式SSR響應協議…

FPAG IP核調用小練習

一、調用步驟 1、打開Quartus 右上角搜索ROM&#xff0c;如圖所示 2、點擊后會彈出如圖所示 其中文件路徑需要選擇你自己的 3、點擊OK彈出如圖所示 圖中紅色改為12與1024 4、然后一直點NEXT&#xff0c;直到下圖 這里要選擇后綴為 .mif的文件 5、用C語言生成 .mif文件 //…

Spring Cloud 服務間調用深度解析

前言 在構建微服務架構時&#xff0c;服務間的高效通信是至關重要的。Spring Cloud 提供了一套完整的解決方案來實現服務間的調用、負載均衡、服務發現等功能。本文將深入探討 Spring Cloud 中服務之間的調用機制&#xff0c;并通過源碼片段和 Mermaid 圖表幫助讀者更好地理解…

AF3 generate_chain_data_cache腳本解讀

AlphaFold3 generate_chain_data_cache 腳本在源代碼的scripts文件夾下。該腳本從指定目錄中批量解析 mmCIF/PDB 文件的工具,并將每個鏈的基本信息(序列、分辨率、是否屬于聚類等)提取并寫入 JSON 文件,主要用于后續蛋白質建模、過濾或訓練數據準備。 源代碼: import ar…

vue項目打包部署到maven倉庫

需要的資源文件&#xff0c;都放在根目錄下&#xff1a; 1. versionInfo.js const fs require(fs) const path require(path) const mkdirp require(mkdirp) const spawn require(child_process).spawnconst packageObj require(./package.json) const versionNo packa…

MegaTTS3: 下一代高效語音合成技術,重塑AI語音的自然與個性化

在近期的發布中&#xff0c;浙江大學趙洲教授團隊與字節跳動聯合推出了革命性的第三代語音合成模型——MegaTTS3&#xff0c;該模型不僅在多個專業評測中展現了卓越的性能&#xff0c;還為AI語音的自然性和個性化開辟了新的篇章。 MegaTTS3技術亮點 零樣本語音合成 MegaTTS3采用…

【教程】PyTorch多機多卡分布式訓練的參數說明 | 附通用啟動腳本

轉載請注明出處&#xff1a;小鋒學長生活大爆炸[xfxuezhagn.cn] 如果本文幫助到了你&#xff0c;歡迎[點贊、收藏、關注]哦~ 目錄 torchrun 一、什么是 torchrun 二、torchrun 的核心參數講解 三、torchrun 會自動設置的環境變量 四、torchrun 啟動過程舉例 機器 A&#…

計算機視覺——基于 Yolov8 目標檢測與 OpenCV 光流實現目標追蹤

1. 概述 目標檢測&#xff08;Object Detection&#xff09;和目標追蹤&#xff08;Object Tracking&#xff09;是計算機視覺中的兩個關鍵技術&#xff0c;它們在多種實際應用場景中發揮著重要作用。 目標檢測指的是在靜態圖像或視頻幀中識別出特定類別的目標對象&#xff0…

MySQL——流程控制

一、IF條件語句 語法 IF condition THENstatements; ELSEIF condition THENstatements; ELSEstatements; END IF; 判斷成績等級 # 判斷成績等級 # 輸入學生的編號,取出學生的第一門課&#xff0c;然后判斷當前的課程的等級 drop procedure if exists p2; delimiter $$ crea…

C# + Python混合開發實戰:優勢互補構建高效應用

文章目錄 前言&#x1f94f;一、典型應用場景1. 桌面應用智能化2. 服務端性能優化3. 自動化運維工具 二、四大技術實現方案方案1&#xff1a;進程調用&#xff08;推薦指數&#xff1a;★★★★☆&#xff09;方案2&#xff1a;嵌入Python解釋器&#xff08;推薦指數&#xff1…

MLflow 入門

官方主頁 MLflow | MLflow官方文檔 MLflow: A Tool for Managing the Machine Learning Lifecycle | MLflow 0. 簡介 MLflow 是一個開源平臺&#xff0c;專門為了幫助機器學習的從業者和團隊處理機器學習過程中的復雜性而設計。MLflow 關注機器學習項目的完整生命周期&#x…

【藍橋杯選拔賽真題101】Scratch吐絲的蜘蛛 第十五屆藍橋杯scratch圖形化編程 少兒編程創意編程選拔賽真題解析

目錄 scratch吐絲的蜘蛛 一、題目要求 1、準備工作 2、功能實現 二、案例分析 1、角色分析 2、背景分析 3、前期準備 三、解題思路 四、程序編寫 五、考點分析 六、推薦資料 1、scratch資料 2、python資料 3、C++資料 scratch吐絲的蜘蛛 第十五屆青少年藍橋杯s…

智譜最新模型GLM4是如何練成的

寫在前面 這篇博客將基于《ChatGLM: A Family of Large Language Models from GLM-130B to GLM-4 All Tools》,深入剖析 GLM-4 系列在**模型架構設計、預訓練、后訓練(對齊)、以及關鍵技術創新(如長上下文處理、Agent 能力構建)**等環節的實現邏輯與設計考量,帶你全面了…