謝云霞,黃海于,胡建斌
(1. 西南交通大學信息科學與技術學院,成都611756; 2. 愛爾眼科成都東區(qū)愛爾眼科醫(yī)院,成都610056)
糖尿病視網(wǎng)膜病變(Diabetic Retinopathy,DR)是糖尿病患者易發(fā)于眼部的病變,簡稱糖網(wǎng),晚期會導致患者失明[1]。本文選擇使用Davis 分類法[2]作為糖網(wǎng)分期規(guī)則。糖網(wǎng)在每一期都有新的病灶出現(xiàn),而區(qū)分這些病灶特征將成為劃分糖網(wǎng)期數(shù)的重要依據(jù)。近年來多位研究學者提出了多種算法去實現(xiàn)糖網(wǎng)的多級劃分,但注意力網(wǎng)絡聚焦可疑區(qū)域的算法無法避免小病灶被忽略[3],以全局圖像作為輸入的算法會因病灶特征的遺失而影響準確率[4-8]。單一檢測出血點或滲出物雖然得到了很好的效果[9-12],但單一病灶的檢測用于糖網(wǎng)分期具有局限性。糖網(wǎng)病灶檢測和分期現(xiàn)在面臨三個難點:
1)病灶在高分辨率眼底圖像中占比小。
2)難易樣本不均衡。
對目標檢測網(wǎng)絡而言,可以通過設置正負樣本的比例來解決正負樣本不均衡的問題,但如果難易樣本在這個隨機選擇的過程中由簡單樣本來主導損失(loss),那么這個模型將不會學習到更多有用的特征。
3)視網(wǎng)膜部分組織影響病灶的識別。
視網(wǎng)膜上的部分組織以局部視角來看,其顏色、邊緣紋理都與個別病灶相似,導致假陽性的出現(xiàn)。如圖1 所示,視盤的局部區(qū)域和軟性滲出病灶極易混淆。
圖1 易混淆的病灶和區(qū)域Fig.1 Confusing lesions and regions
針對以上問題,本文提出了將視網(wǎng)膜切割成多個子圖并記錄視盤區(qū)域坐標的方法,以可接受的時間代價換取更高的準確率。使用更深層次的網(wǎng)絡可學習到更豐富的病灶特征。在線困難樣本挖掘(Online Hard Example Mining,OHEM)方法可使模型聚焦難例樣本,有利于模型的優(yōu)化。綜合以上思路,本文提出了基于改進的基于快速區(qū)域的卷積神經(jīng)網(wǎng)絡(Faster Region-based Convolutional Neural Network,F(xiàn)aster R-CNN)和子圖分割相結合的糖網(wǎng)分期方法。對現(xiàn)有數(shù)據(jù)集中符合DR圖像采集標準的共17 919張?zhí)蔷W(wǎng)圖像進行實驗,得到了0期的精確率為94.83%,1期的精確率為86.84%,2期的精確率達到94.00%,3 期的精確率達到87.21%,4 期的精確率達到82.96%,表明了本文所提出方法的有效性。
當將整張?zhí)蔷W(wǎng)圖像作為卷積神經(jīng)網(wǎng)絡的輸入時,是基于圖像的全局信息提取特征,很難在全局圖像中聚焦到局部的病灶信息;并且通用的特征提取網(wǎng)絡都會對圖像尺寸做出等比例壓縮的處理,這個過程會導致病灶的特征被模糊甚至丟失,故提出以子圖分割的方法將糖網(wǎng)圖像劃分為N個不重疊的子圖像,如圖2所示。
圖2 子圖分割結果Fig.2 Result of subgraph segmentation
由于糖網(wǎng)眼底圖像的視盤區(qū)域極易干擾病灶的識別,所以在進行子圖分割時會記住視盤區(qū)域的坐標,識別時會判斷該子圖中的軟性滲出病灶是否出現(xiàn)在視盤區(qū)域的坐標范圍內(nèi)。本文方法的流程如圖3所示。
1.2.1 使用更深層的特征提取網(wǎng)絡
Faster R-CNN[13]的第一個模塊是特征提取模塊,而網(wǎng)絡層數(shù)越多的特征提取網(wǎng)絡能夠提取到越多的不同層次(level)的特征,并且詳細的目標特征有助于提高目標的識別率。為了提取糖網(wǎng)眼底圖像樣本中更加本質(zhì)的特征,本文采用更深層次的網(wǎng)絡ResNet101。它的核心在于殘差學習模塊,如圖4所示,假設該網(wǎng)絡的原始輸入為x,期望輸出是H(x),即可將原始的映射關系轉換為F(x) =H(x) -x。He 等[14]通過實驗證明了ResNet能有效地促進網(wǎng)絡的優(yōu)化。
圖3 本文方法流程Fig.3 Flowchart of the proposed method
圖4 神經(jīng)網(wǎng)絡模塊Fig.4 Modules of neural network
1.2.2 在線困難樣本挖掘
為了解決Faster R-CNN 在感興趣區(qū)域(Region of Interest,ROI)生成時正負樣本不平衡的問題,本文將在線困難樣本挖掘(OHEM)機制[15]引入了該網(wǎng)絡框架中來進行糖網(wǎng)病灶檢測,如圖5所示。
圖5 改進的Faster R-CNN框架Fig.5 Improved Faster R-CNN framework
OHEM 機制在該網(wǎng)絡框架里將ROI 網(wǎng)絡擴展成了兩個結構相似的ROI 網(wǎng)絡。第一個原始ROI 網(wǎng)絡是前向傳播網(wǎng)絡,在這部分選擇出所有候選區(qū)域中l(wèi)oss 值較高的區(qū)域作為困難樣本,并將這些困難樣本作為第二個ROI網(wǎng)絡的輸入。
候選區(qū)域的損失函數(shù)計算公式如式(1)所示。
分類模塊的損失函數(shù)Lcls定義如式(2)所示:
定位模塊的損失函數(shù)Lreg定義如式(3)所示:
其中R是smooth L1函數(shù),smooth L1函數(shù)如式(4)所示:
第二個ROI 網(wǎng)絡輸出共享了第一個ROI 的參數(shù),并輸出了識別的病灶邊界框坐標和病灶分類結果。該算法對病灶的定位和識別更具有針對性,能進一步提高病灶檢測的準確性。
糖網(wǎng)眼底圖像樣本來自于EyePACS 數(shù)據(jù)集和愛爾眼科醫(yī)院提供的數(shù)據(jù),基于此數(shù)據(jù)集人工標注了病灶樣本,構建了樣本數(shù)據(jù)集,數(shù)據(jù)分布情況如表1所示。
表1 糖網(wǎng)數(shù)據(jù)集分布Tab. 1 Distribution of diabetic retinopathy datasets
為了評估本文構建的多分類模型的性能,本文采用了精確率、靈敏度、特異度三種評價指標。精確率計算公式如(5)所示。
靈敏度和特異度的計算公式如式(6)和(7)所示。
靈敏度是病變DR 圖像不被漏判為正常DR 圖像的概率,特異度是正常DR圖像不被誤判為病變DR圖像的概率。
在具體的糖網(wǎng)分期上,本文采用了三階段多分類的策略,在第一階段中使用12 層的卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)將所有眼底圖像二分類為第4期糖網(wǎng)眼底圖像和其他眼底圖像,以去除第4 期病灶無法標記病灶的干擾;在第二階段中將視盤區(qū)域與其他區(qū)域分類出來,以去除視盤區(qū)域?qū)浶詽B出病灶的干擾;在第三階段檢測四類病灶目標。最終,依據(jù)四類病灶的檢測結果并參照糖網(wǎng)分期的標準進行糖網(wǎng)分期。檢測結果如圖6所示。
圖6 檢測結果Fig.6 Results of detection
為了驗證子圖分割的有效性,分別使用了多種尺寸的分割方法進行對比實驗,實驗結果如表2所示。
表2 子圖分割實驗結果對比Tab. 2 Experimental results comparison of subgraph segmentation
圖像前景區(qū)域尺寸在2 500 × 2 500至3 000 × 3 000范圍,不重疊子圖按照等分區(qū)域分割。由表2 的結果可得,輸入圖像的分辨率對糖網(wǎng)分期結果有影響,具體影響是在改變大?。╮esize)階段對病灶特征信息的保留上,在全圖中占比越小的病灶特征越容易丟失,但分割的子圖過多只會以更多的時間代價換取很小的性能上升。
由表3 的結果可得,本文模型對各病灶的檢測能力不同?;鹧鏍畛鲅m然精確率較高,但樣本不多,在測試集中所占比例較小。而軟性滲出受視盤區(qū)域的影響而導致誤判率較高,但在最后聯(lián)合決策時會排除此區(qū)域的干擾,所以在對糖網(wǎng)第3期分類時更加依賴于軟性滲出的判斷。糖網(wǎng)病灶檢測結果得到之后會對整張圖像進行聯(lián)合決策,每一期的糖網(wǎng)眼底圖像的分類結果如表4所示。
表3 糖網(wǎng)病灶檢測結果 單位:%Tab. 3 Lesion detection results of diabetic retinopathy unit:%
由表4 的結果可得,糖網(wǎng)各期分類效果受到病灶檢測效果的影響。輕度DR 以點狀出血病灶作為分類依據(jù),其檢測靈敏度較高,但因存在其他期數(shù)的病灶無法檢測出來時而歸類到輕度DR 的情況,所以特異度降低。重度DR 以多個病灶作為最后的聯(lián)合決策依據(jù),雖然模型對火焰狀出血和軟性滲出病灶的檢測能力不高,但因兩個病灶同為本期的分類依據(jù),所以重度DR 的靈敏度和特異度都較高,不過由于受到增殖性DR 分開檢測的影響,所以精確率不高。中度DR 以硬性滲出作為主要的分類依據(jù),受到重度DR 病灶標注時未能標注全部醫(yī)學癥狀的局限,有概率將重度DR誤判為中度DR,因此特異度較低。
表4 糖網(wǎng)各期分類結果 單位:%Tab. 4 Classification results of different stages of diabetic retinopathy unit:%
使用兩種算法的檢測效果如圖7 所示。對同一張圖的檢測可以看出,圖7(a)對比圖7(b)出現(xiàn)了漏檢和錯檢。
圖7 檢測效果對比Fig.7 Test effect comparison
根據(jù)對比結果,在采用ResNet101 特征提取網(wǎng)絡、引入在線困難樣本挖掘機制、切割子圖、分開檢測第4 期圖像等改進策略后,本文算法與不結合子圖分割、不分開檢測第4 期圖像的原始Faster R-CNN 算法相比,在精確度指標中0 期提升了11.36 個百分點 ,1 期提升了 34.11 個百分點,2 期提高 了19.35 個百分點,3 期提高了 15.54 個百分點,4 期提高了 1.93個百分點;在靈敏度指標中0 期提高了6.94 個百分點,1 期提高了7.14 個百分點,2 期提高了4.84 個百分點,3 期提高了2.04 個百分點;在特異度指標中0 期提高了5.11 個百分點,1期提高了 9.51 個百分點,2 期提高了 33.13 個百分點,3 期提高了35.85 個百分點,4 期提高了41.54 個百分點。除了第4期靈敏度有所降低外,其他各項指標都有所上升,證明了基于改進的Faster R-CNN 結合子圖分割、分開檢測第4 期的方法的有效性。
針對糖網(wǎng)病分期問題進行深入的研究,本文提出了基于改進的Faster R-CNN 結合子圖分割的方法,能從局部病灶檢測的角度提升糖網(wǎng)病分期的準確度。該方法一方面考慮了病灶特征作為小目標難以學習到特征對網(wǎng)絡檢測性能的影響,利用更深層的網(wǎng)絡提取特征,并切割子圖、避開噪聲影響以解決此問題;另一方面也考慮了病灶正負樣本失衡的問題,引入了在線困難挖掘機制。實驗結果表明本文提出的方法能有效地提升糖網(wǎng)病分期準確度,并能依據(jù)病灶特征識別具體病灶。由于該網(wǎng)絡模型對各類糖網(wǎng)病灶的檢測能力有較大差異,未來將進行進一步的探討,以提高模型對各類糖網(wǎng)病灶的通用檢測能力。