腎病患者腦部磁振造影
影像分析研究
1092學期以建立模型為目標,在完成環境設定後開始訓練模型。
暑假期間則繼續改善模型,並對影像做前處理,統一輸入的影像格式。
研究背景
我的研究想利用腦部的磁振造影來輔助分析是否患有腎病,會利用深度學習中的densenetc和MRI腦部造影來研究。
腦部磁振(MRI)對腫瘤、血管、軟組織及骨骼、肌肉、韌帶有很好的分辨率,是現代醫學不可或缺的診斷工具。
本專題預期建立一套自動化電腦輔助診斷系統,使用MRI影像作為判斷依據,
目標為達到提升MRI腦部攝影疾病診斷準確度的作用。
模型及資料介紹
訓練資料
腦部磁振造影 (MRI)
資料讀取的是整份的腦部影像以及標籤,然後組合成資料集之後,會交給模型來判斷。有需要的話會進一步預處理。
深度學習模型
densenet
densenet是一個比較有效運用特徵的架構,只需要使用更少的參數,能讓向前傳遞的訊息和向後傳遞的梯度都保持得更好,且可以避免過度擬合。
monai 醫學框架
monai
MONAI是一個開源的醫療框架,有許多預先訓練過的模型,能加速訓練,也能夠更有效率處理磁振造影的圖片,較傳統的做法更容易尋找病灶。
研究流程
1. MRI影像由dcm轉為nifti格式
2. 腦部區域影像做大小的正規化
3. 影像匯入densenet模型中訓練
使用densenet201模型預測腎病
因為實驗結果不理想,精確度並非穩定上升後開始收斂,而是上下起伏、極不穩定。因為想解決此問題,也思考圖片應該要檢查是否統一。因先前放入的影像並非第一張切片就有大腦影像,而是因不同病人而有差異,所以中間花了點時間確認大腦掃描的圖片起始位置在哪裡,目的是輸入統一格式的資料,使得訓練效果比較好。結尾的黑色區域也要處理,然後去頭去尾後看看最中間的切片頭部影像比例有無一致。
確認後便利用程式去檢視黑色區域是否每個位置像素的值皆為0,將標準設定為檢查並去除超過99%皆為黑暗影像的,去除了部分影像的最前面及最後面不包含腦部影像的frames,僅留下有腦部影像的區段。除了做圖片處理,也試著調整參數,像是權重還有學習率,希望能有好一點的學習效果。每一次meeting,老師都會針對目前進度給出建議,也會指導我需要了解的重要概念,讓我學到很多思考的方法。
重新修正方法並訓練
我將訓練用的圖片更改為不同參數下的MRI影像,並針對這組影像的特性做前處理。
在初次實驗後發現預測錯誤的影像可能有對比度較低以及大腦區域大小不一致的問題,所以分別再將資料輸入模型前做了局部對比度增強和正規化。對比度的調整對於測試精度的影響並不顯著,而正規化則有稍微提高精度。
以下是目前實驗結果:
建立多個模型並採多數決預測結果
從影像資料可以看出每一份影像檔案都包含了36個腦部區域的影像,除了上述的使用固定某一個區域的影像來建立模型之外,也嘗試將這36個腦部影像都建立模型,並且使用train accuracy最高的5個模型分別對輸入的影像進行預測,再採多數決的方式決定最後的預測結果。