賈蒙麗,李振偉,楊曉利,許夢(mèng)瑩
(河南科技大學(xué)醫(yī)學(xué)技術(shù)與工程學(xué)院,河南 洛陽(yáng) 471000)
眼底的血管網(wǎng)是人體唯一能直接觀察到微循環(huán)的部位。視網(wǎng)膜血管結(jié)構(gòu)包含多種重要信息,其形態(tài)的改變與某些病理特征密切相關(guān),對(duì)視網(wǎng)膜疾病的檢測(cè)和治療有重大意義。因此,眼底血管分割對(duì)于某些疾病的診斷和治療非常重要。傳統(tǒng)的手工分割是一項(xiàng)漫長(zhǎng)而艱巨的任務(wù),它需要大量的實(shí)踐、技能和訓(xùn)練[1]。因此,從眼底圖像中實(shí)現(xiàn)視網(wǎng)膜血管的自動(dòng)分割成為醫(yī)學(xué)成像領(lǐng)域研究的熱點(diǎn)。
近年來(lái),國(guó)內(nèi)外學(xué)者提出了許多分割眼底圖像的算法。自動(dòng)分割分為兩類(lèi):無(wú)監(jiān)督學(xué)習(xí)和有監(jiān)督學(xué)習(xí)。無(wú)監(jiān)督方法如匹配濾波器[2]、基于模型[3]等,這些方法分割精度低。有監(jiān)督方法如Orlando 等人[4]提出一種特殊模型來(lái)分割血管,在DRIVE 和 CHASE_DB1 數(shù)據(jù)集上實(shí)驗(yàn)的靈敏度分別為:0.7897 和0.7277。Alom等人[5]使用U-Net實(shí)現(xiàn)醫(yī)學(xué)圖像的分割過(guò)程,包括視網(wǎng)膜血管的分割,結(jié)果表明該方法在分割方面是優(yōu)越的。Suryani等人[6]利用自組織圖人工神經(jīng)網(wǎng)絡(luò)的主要方法對(duì)血管進(jìn)行分割。提出的分割方法分為三個(gè)階段,即預(yù)處理,分割和性能分析。Upadhyay等人[7]提出了一種基于規(guī)則的視網(wǎng)膜血管分割算法。結(jié)合局部方向小波變換和全局曲線變換,以新穎的方式實(shí)現(xiàn)了血管的增強(qiáng)和分割。徐光柱等人[8]提出了一種無(wú)監(jiān)督與有監(jiān)督相結(jié)合分割新方法。耿磊等人[9]提出一種將分離卷積與通道加權(quán)結(jié)合的血管分割方法。李大湘等人[10]通過(guò)在U-Net網(wǎng)絡(luò)中引入Inception、空洞卷積與注意力機(jī)制等模塊對(duì)血管進(jìn)行分割。但所提出的算法仍無(wú)法準(zhǔn)確分割出細(xì)小血管,且存在噪聲。
針對(duì)現(xiàn)有算法在細(xì)小血管及低對(duì)比度血管的分割能力不足的問(wèn)題,本文在原有的U型網(wǎng)絡(luò)基礎(chǔ)上進(jìn)行改進(jìn)優(yōu)化,旨在進(jìn)一步改善微小血管的分割準(zhǔn)確率。首先,通過(guò)一系列的圖像預(yù)處理方法對(duì)原始眼底圖像進(jìn)行增強(qiáng)和降偽處理;其次,使用殘差網(wǎng)絡(luò)和U型網(wǎng)絡(luò)相結(jié)合的方式增強(qiáng)圖像特征提取能力,解決過(guò)擬合問(wèn)題,從而更好地分割出微小血管;最后,使用ELU激活函數(shù)代替網(wǎng)絡(luò)中原有的ReLU激活函數(shù),進(jìn)一步提高網(wǎng)絡(luò)的泛化能力。該方法可以實(shí)現(xiàn)難以識(shí)別的視網(wǎng)膜血管邊緣和對(duì)比度較低的小血管分割。
DRIVE[11]總共有40幅眼底圖像,分辨率為565×584,其中訓(xùn)練集和測(cè)試集分別有20幅,每幅圖像都有金標(biāo)準(zhǔn),有專(zhuān)門(mén)掩沒(méi),是衡量視網(wǎng)膜血管分割方法性能常用的數(shù)據(jù)庫(kù)。
2.2.1 數(shù)據(jù)預(yù)處理
由于采集到的視網(wǎng)膜圖像中的光照不均勻,微血管與背景之間的對(duì)比度較低等因素,為了得到更好的數(shù)據(jù),需對(duì)圖像進(jìn)一步處理。具體步驟如下:
1)灰度轉(zhuǎn)換。如圖1所示,相比較其它兩通道,綠色通道的圖像對(duì)比度最高,背景與血管的差距最大,噪聲也最小,因此,輸入數(shù)據(jù)選擇此通道數(shù)據(jù)。
圖1 眼底圖像及不同通道的圖像
2)CLAHE。提高對(duì)比度同時(shí)抑制噪聲,因此可以更容易的關(guān)注到血管的結(jié)構(gòu)和特征。
3)伽馬變換。在不影響亮度較強(qiáng)部分的眼底圖像質(zhì)量的同時(shí)增強(qiáng)亮度較暗的血管部分。整個(gè)預(yù)處理的結(jié)果如圖2所示,可以看出處理后的圖像較原始圖像,其血管與背景的對(duì)比度有明顯的增強(qiáng)。
圖2 眼底圖像及預(yù)處理。
2.2.2 數(shù)據(jù)擴(kuò)增
深度學(xué)習(xí)需要大量的數(shù)據(jù)來(lái)擬合模型參數(shù),針對(duì)只有20張眼底圖像的DRIVE數(shù)據(jù)集,采用隨機(jī)切片的方式來(lái)對(duì)數(shù)據(jù)進(jìn)行擴(kuò)增,為防止數(shù)據(jù)擴(kuò)增時(shí)丟失細(xì)節(jié)信息,本文通過(guò)減少上采樣層和下采樣層的次數(shù)避免特征的細(xì)節(jié)丟失,以進(jìn)一步降低訓(xùn)練過(guò)程中的過(guò)擬合現(xiàn)象。根據(jù)原始眼底圖像的大小,將從數(shù)據(jù)庫(kù)提取的圖像大小設(shè)置為48×48,每個(gè)尺寸為48×48的貼片是通過(guò)整個(gè)圖像內(nèi)隨機(jī)選擇其中心獲得的,從訓(xùn)練集中提取出的圖像塊總數(shù)190000。圖3為局部切片示例。(a)中所有樣本塊包含數(shù)據(jù)庫(kù)中所有圖像,以擴(kuò)充數(shù)據(jù)量。(b)為對(duì)應(yīng)的金標(biāo)準(zhǔn)圖像。
圖3 局部切片示例
為了更好的分割出細(xì)小血管,引入了ResNet網(wǎng)絡(luò),以解決卷積運(yùn)算越多,網(wǎng)絡(luò)越深,網(wǎng)絡(luò)性能下降的問(wèn)題。使用激活函數(shù)ELU解決原始激活函數(shù)輸入值為負(fù)時(shí)所產(chǎn)生的神經(jīng)元失活問(wèn)題,使網(wǎng)絡(luò)性能得到進(jìn)一步提升。
2.3.1 U-Net模型
U形網(wǎng)絡(luò)[12]對(duì)于小數(shù)據(jù)集的圖像具有很好的分割性能。由收縮路徑和擴(kuò)展路徑構(gòu)成,通過(guò)4次上采樣和4次下采樣對(duì)圖像進(jìn)行分割。但是網(wǎng)絡(luò)通過(guò)收斂層后,無(wú)法復(fù)原圖像的詳細(xì)結(jié)構(gòu)信息,可能會(huì)引起微血管的分割和破壞現(xiàn)象。
2.3.2 ResNet模型
為增加網(wǎng)絡(luò)深度且不影響網(wǎng)絡(luò)訓(xùn)練,在U-Net 基礎(chǔ)上引入殘差網(wǎng)絡(luò),殘差網(wǎng)絡(luò)(ResNet)利用殘差單元模塊解決了隨網(wǎng)絡(luò)層次加深帶來(lái)的優(yōu)化問(wèn)題。殘差單元模塊通過(guò)將前向神經(jīng)網(wǎng)絡(luò)短路連接實(shí)現(xiàn),結(jié)構(gòu)如圖4所示。
圖4 殘差單元模塊
殘差結(jié)構(gòu)計(jì)算公式如式(1)(2)所示
yl=h(xl)+F(xl,wl)
(1)
xl+1=f(yl)
(2)
式中:xl和xl+1分別表示第l個(gè)殘差單元的輸入和輸出,F是殘差函數(shù),f是Relu激活函數(shù),h(xl)=xl是恒等映射。從淺層到深層的學(xué)習(xí)特征可以由(1)(2)求得,如(3)所示
(3)
利用鏈?zhǔn)揭?guī)則,可以得出反向過(guò)程的梯度,如式(4)所示
(4)
2.3.3 選取激活函數(shù)
U型網(wǎng)絡(luò)中使用的是常見(jiàn)的ReLU激活函數(shù),其定義如式5所示
f(x)=max(0,x)
(5)
如圖5所示,ReLU是線性函數(shù)計(jì)算速度快,輸入值為正時(shí)無(wú)梯度飽和問(wèn)題,但為負(fù)時(shí)神經(jīng)元不被激活,會(huì)導(dǎo)致神經(jīng)元失活。
圖5 ReLU與ELU函數(shù)
ELU函數(shù)是改進(jìn)型,其定義如式(6)所示:
(6)
如圖5所示,相比較ReLU,ELU輸入為負(fù)時(shí)有輸出,可以消除神經(jīng)元失活問(wèn)題。ELU函數(shù)也可以加速訓(xùn)練并且可以提高分類(lèi)的準(zhǔn)確率,使用ELU激活函數(shù)替換ReLU函數(shù)。
2.3.4 血管分割的網(wǎng)絡(luò)模型
考慮到現(xiàn)有的卷積神經(jīng)學(xué)習(xí)網(wǎng)絡(luò)的缺點(diǎn),例如高存儲(chǔ)成本和低計(jì)算效率,本文提出了U型網(wǎng)絡(luò)和ResNet組合的新網(wǎng)絡(luò)結(jié)構(gòu)(命名為RU-Net),如圖6所示。結(jié)合兩種模型的優(yōu)點(diǎn),提高了網(wǎng)絡(luò)性能的訓(xùn)練,在訓(xùn)練時(shí)間減少的同時(shí)使得網(wǎng)絡(luò)特性都得到利用,從而更好地解決了眼底圖像的偽影干擾,能保持更多的血管特性信息,獲得更多小血管,在訓(xùn)練集較少時(shí)不發(fā)生過(guò)擬合現(xiàn)象,測(cè)試集分割精度提高,具有較強(qiáng)的魯棒性。
圖6 改進(jìn)的網(wǎng)絡(luò)結(jié)構(gòu)RU-Net
為了解決數(shù)據(jù)量較少引起的過(guò)擬合問(wèn)題,本文將原始的U型網(wǎng)絡(luò)結(jié)構(gòu)改為3個(gè)上采樣層和3個(gè)下采樣層,且保留收縮路徑和擴(kuò)張路徑之間的跳躍鏈接。
網(wǎng)絡(luò)的左半部分為下采樣部分,根據(jù)ResNet所構(gòu)建,其核心為4組conv 與 MaxPooling,第一組采用了卷積核數(shù)為32的2個(gè)3×3卷積運(yùn)算,第二組、第三組和第四組采用3個(gè)3×3卷積運(yùn)算,分別是64、128和256卷積核。
網(wǎng)絡(luò)的右半部分上采樣部分,與下采樣相對(duì)應(yīng),除了通過(guò)上一層采樣獲得的深度抽象特征外,每個(gè)conv輸入集還輸出淺層的局部特征。同時(shí)深度特征和淺層特征是通過(guò)Concat方法融合,以確??臻g信息維度不變。使用ELU函數(shù)優(yōu)化網(wǎng)絡(luò),最后通過(guò)softmax對(duì)血管與背景進(jìn)行分類(lèi),輸出血管分割結(jié)果。
本文的仿真平臺(tái)為PyCharm,使用tensorflow端口和keras開(kāi)發(fā)庫(kù),在DRIVE圖像庫(kù)上進(jìn)行實(shí)驗(yàn)。為了在訓(xùn)練過(guò)程中盡可能地獲得更多樣本,本文通過(guò)隨機(jī)提取圖像塊的方式增加樣本,將提取出的190000樣本送入網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,訓(xùn)練集和驗(yàn)證集的比例為9:1。最后使用測(cè)試集測(cè)試網(wǎng)絡(luò)模型的精度。
準(zhǔn)確度Acc、特異性Sp和靈敏度Sn是衡量視網(wǎng)膜眼底圖像血管分割的性能好壞的三個(gè)重要指標(biāo),ROC曲線性能是衡量算法優(yōu)越性的另一個(gè)重要指標(biāo)。視網(wǎng)膜眼底圖像血管分割后將劃分的結(jié)果和醫(yī)學(xué)專(zhuān)家手動(dòng)的金標(biāo)準(zhǔn)結(jié)合來(lái)判斷是否有效,結(jié)果如表1所示,可以分為四種情況[13]:第一種是分類(lèi)正確的血管點(diǎn),稱(chēng)之為真陽(yáng)性TP;第二種是分類(lèi)錯(cuò)誤的血管點(diǎn),稱(chēng)之為假陽(yáng)性FP;第三種是分類(lèi)正確的背景點(diǎn),稱(chēng)之為真陰性TN;第四種則是分類(lèi)錯(cuò)誤的背景點(diǎn),稱(chēng)之為假陰性FN。
表1 方法血管分割結(jié)果與金標(biāo)準(zhǔn)比較情況
利用上述數(shù)據(jù)可以得到三個(gè)衡量算法性能的指標(biāo),分別為準(zhǔn)確度Acc、特異性Sp和靈敏度Sn,公式如下
(7)
(8)
(9)
在需要進(jìn)行二分類(lèi)問(wèn)題的性能衡量時(shí),一般都使用ROC曲線。ROC曲線繪制是用靈敏度作為縱向坐標(biāo),用特異度作為橫向坐標(biāo)來(lái)描繪出一個(gè)曲線。當(dāng)劃分的結(jié)果越趨向于精準(zhǔn),ROC曲線就會(huì)越趨近于左上方。衡量血管劃分方法的另一個(gè)方法則用ROC曲線下部分的面積來(lái)表示,稱(chēng)之為AUC,其數(shù)值越接近于1時(shí),血管的劃分結(jié)果性能越好。
通過(guò)對(duì)比金標(biāo)準(zhǔn)圖像和文獻(xiàn)[14]與文獻(xiàn)[15]中的實(shí)驗(yàn)結(jié)果,從圖7中可以看出,本文算法能分割出細(xì)小血管,同時(shí)對(duì)低對(duì)比度的血管圖像也有較好的分割效果。
圖7 不同算法分解結(jié)果比較(a)原始圖像(b)金標(biāo)準(zhǔn)圖像(c)文獻(xiàn)[14](d)文獻(xiàn)[15](e)本文算法
為了證明該方法的可行性,將其與其它方法進(jìn)行了比較,其靈敏度,準(zhǔn)確度均得到了驗(yàn)證,結(jié)果如表2所示。
表2 不同文獻(xiàn)方法之間性能數(shù)據(jù)對(duì)比
為了證明該方法的可行性,將其與其它方法進(jìn)行了比較,其靈敏度,特異性和準(zhǔn)確度均得到了驗(yàn)證,結(jié)果如表2所示,本文算法的準(zhǔn)確率、特異性和AUC比現(xiàn)有算法略高,其中準(zhǔn)確率達(dá)到0.9738、特異性達(dá)到0.9892、AUC達(dá)到 0.9823。可以看出,該算法具有較好的綜合分割性能。
針對(duì)現(xiàn)有算法在細(xì)小血管及低對(duì)比度血管的分割能力不足的問(wèn)題,本文在原有的U型網(wǎng)絡(luò)基礎(chǔ)上,通過(guò)殘差網(wǎng)絡(luò)和U型網(wǎng)絡(luò)相結(jié)合的方式,使用ELU激活函數(shù)代替網(wǎng)絡(luò)中原有的ReLU激活函數(shù)對(duì)網(wǎng)絡(luò)進(jìn)行優(yōu)化。通過(guò)和現(xiàn)有算法的分割性能相比較,該方法不僅提高了分割準(zhǔn)確率,同時(shí)對(duì)于低對(duì)比度的細(xì)小血管的分割也有很好的效果。