ZD2-基於深度學習之電腦斷層影像術後骨水泥區域自動圈選方法之研究

實習單位 :郭文嘉教授

指導老師 :郭文嘉教授

學生 : 1091732黃祺緯

專題內容

人體骨骼的骨量在20歲至30歲達到顛峰後,便會隨著年齡逐漸減少。若骨量流失過多,原本緻密的骨骼就會產生許多孔隙,使骨骼變得脆弱,也就是所謂的「骨質疏鬆症」,而脊椎壓迫性骨折是在骨質疏鬆症患者中最常見的骨折類型。現今的治療方法,多採用椎體成形術,將骨水泥從骨折處注入,以提升椎體強度與脊椎穩定性。在臨床上,醫師經常使用電腦斷層掃描來追蹤手術後的成效與後續評估。雖然現今的醫療技術進步許多,但是對於判讀CT影像上的骨水泥區域判讀,仍然是以人工的方式做判讀。本研究希望根據手術後病患的三維電腦斷層影像,使用ResUNet模型自動標示影像中的骨水泥區域,以追蹤骨水泥的形狀、周邊外露等變化。希望能夠讓電腦判斷的精準度優於人力觀察判斷的程度,降低醫事人員的時間與金錢成本,此外也提供醫師豐富的影像資訊,以利於後續的診斷、治療、評估治療效果與後續追蹤。


實驗結果

本計畫與北部某醫院醫師合作,共取得16位病患的CT影像資料。訓練集影像1277張(12cases)、驗證集320張(1case)、測試集49張(1case)。

ResUnet訓練了125個epoch,Train loss收斂至0.35


使用訓練110個Epoch的模型測試結果:


連續10張圈選結果圖,可看到骨水泥區域之變化:

學習


Python環境建置

本專題使用Python實作,為滿足實驗需求,在環境上安裝許多實驗需用到的封包,例如Numpy,Pydicom,Pytorch等等......


ResUnet模型

ResUnet透過增加層數來達到更好的低錯誤率的表現,並使用殘差單元與批量歸一化層來確保在深層網路部分不會發生梯度指數衰減或梯度消失。 此外,該模型還使用了殘差單元,若沒學到新的特徵,也不會讓模型退化。而且每一層都可以學到一些新的更複雜的特徵。

ResUnet模型架構圖


研究步驟

步驟一: 在進入訓練步驟前,先把原始的 CT 影像做前期處理,如調整影像大小、對比度等等…。

步驟二: 將處理過的 CT 影像,以 ResUnet 模型做訓練。

步驟三:利用訓練完成的模型做自動化圈選,使其能描繪出骨水泥的精確位置。

研究步驟流程圖

心得感想

這份專題需要使用到的技術,像是Python、影像分析、深度學習等技術,我都沒有學過。因此所有東西是從0開始學習,包括上網找資料學習、查找論文等等。 其中,我認為使我成長最多的機會是每周與指導教授開會的時間,因為我可以利用這段時間與老師討論,並找出問題、思考如何解決問題。透過每周的開會,也可以避免自己在進度上迷失方向。 我認為透過作專題使我自己成長許多!

程式碼實作圖

對系上的建議

為期一年的實習,很感謝系上的用心,許多重要資訊也及時告知我們。但是,作為專題生,這邊還是給系上一些建議,例如可以開設AI 相關的課程,或是跟專題內容較為相關的課程,可以讓專題生在執行研究前有更多的基礎。