黃 碩 劉黎明 邢孟豪
(商丘師范學院電子電氣工程學院,河南 商丘 476000)
糖尿病視網膜病變(Diabetic Retinopathy,DR)是一種由糖尿病引發的眼底視網膜并發癥,是導致患者視力損害和失明的主要原因[1]。大量研究表明[2-4],糖尿病視網膜病變患者越早發現越有利于治療,且在病變的不同階段及時檢測有利于防治和控制病情,目前預防和檢測的有效手段是通過拍攝眼底照片進行檢測,醫生通過眼底圖像檢查進行病情診斷,這一過程耗費人力和物力,特別是病患太多,而醫院醫生有限,醫生進行檢查和診斷都需要經驗和時間,因此,設計一個基于人工智能進行DR 檢測的計算機輔助診斷系統,為一線醫生的診斷提供技術支持, 提供工作效率,也可用于DR 患者自查,以便及時關注病情變化,及時就醫。
根據國際通行標準,DR 在不同病變階段具有不同的病理特征,劃分為五個等級,分別是健康、輕度病變、中度病變、重度病變和增值性病變[5,6]。 目前,基于眼底圖像處理的DR 檢測主要有病變等級和病灶檢測,病變等級是基于全局圖像通過對整個眼底照片病變等級進行標注訓練, 從整體病變等級特征進行分析,實現DR 病變等級分類預測和判別;病灶檢測是根據眼底照片中不同病變階段所表現出的局部病灶特征不同,對病灶類型進行更細致的標注和訓練,在實現病灶檢測的同時, 進行DR 病變等級分類預測和判斷。 近年來,隨著深度學習的發展,在DR 眼底圖像病變分類和檢測領域已有大量成果出現[7],本文采用深度學習算法實現基于Web 的糖尿病視網膜病變分類自動檢測系統,使用戶能夠在Web 端通過瀏覽器上傳患者眼底圖片進行自動預測糖尿病視網膜病變等級。
糖尿病視網膜病變檢測系統是基于數據標注和深度學習算法完成的,通過對大量標注的數據利用深度學習算法訓練相應模型,為此針對國內和國際糖尿病視網膜病變的通行標準,開發了一套眼底圖片數據標注系統, 該標注系統基于Qt5 使用Python 開發完成,Qt 是一個跨平臺的C++開發庫, 主要用來開發圖形用戶界面(Graphical User Interface,GUI)程序,眼底圖片數據標注系統的UI 界面如圖1 所示。

圖1 眼底圖片數據標注系統
糖尿病視網膜病變分類檢測是基于深度學習算法實現對糖尿病視網膜病變眼底圖片進行自動分類。算法流程主要包括數據集、圖像預處理、模型構建、模型訓練、模型評價等,其中數據集分為公開數據集和私有數據集, 公開數據集選取IDRiD、Messidor 以及Kaggle 平臺提供的數據作為訓練數據樣本,私有數據集從某市第一人民醫院采集而來, 通過自主設計的DR 閱片圖像標注系統對眼底圖像進行人工手動標注,標注的數據用于模型的訓練與測試使用。
圖像預處理部分主要涉及圖像去噪、歸一化等操作,為進一步增強圖像特征,使用對比度有限自適應直方圖均衡方法實現DR 圖片背景與病變特征的局部對比度增強,從而獲取更多的病變特征信息。
模型構建基于Inception 模型利用遷移學習方法對網絡參數進行調整, 使其更適應于DR 病變的自動檢測和分類。 本模型采用的Inception 網絡結構如圖2所示,引入了1×1 層,目的是用來降維,減少計算量,同時使用3×3 和5×5 的卷積核,網絡深度的增加擴大了感受野,使得模型可以在不同尺度上進行特征的融合。 本文使用的Inception 模型結構中,在卷積之后利用激活函數增加網絡各層的非線性關系,提高了模型的泛化能力。 模型經過訓練后,再測試集中進行驗證,最終準確率達到80%以上。

圖2 Inception 網絡結構
基于B/S 架構搭建糖尿病視網膜病變分級診斷系統,通過深度學習Inception 網絡模型,自動預測眼底病變等級,使用戶能夠在Web 端通過瀏覽器上傳患者眼底圖片進行自動判定眼底病變等級, 流程如圖3所示。

圖3 糖尿病視網膜病變分類檢測系統流程圖
DR 自動分類檢測系統基于Django 框架開發完成,Django 作為一個開放的Web 應用框架能夠幫助開發人員快速實現功能。 該系統的數據庫共設計14 張表,如圖4 所示。

圖4 基于web 的糖尿病視網膜病變分類檢測系統數據庫表
該系統的Web 頁面的分類檢測和預測頁面,預測結果為正常的界面如圖5 所示,預測結果為病變等級的界面如圖6 所示。

圖5 預測正常頁面

圖6 預測病變頁面
本文利用深度學習算法實現了糖尿病視網膜病變圖像的自動檢測和分類預測。 鑒于糖尿病視網膜病變是一個逐漸變化的過程,患者如果不能夠及時檢查將導致病情惡化,從而失去最佳治療時機,因此本文通過公開數據集和自主眼底圖像標注系統對眼底圖像進行標注, 基于Inception 網絡結構進行模型訓練,實現了在Web 端通過瀏覽器對患者眼底圖片進行自動檢測和預測病變等級。 后續將進一步改進模型算法,提高模型檢測準確度。