徐昌佳,易見(jiàn)兵,曹 鋒,方旺盛
(江西理工大學(xué) 信息工程學(xué)院,江西 贛州 341000)
結(jié)直腸癌(Colorectal Cancer,CRC)發(fā)病率多年來(lái)位居癌癥發(fā)病率的世界第三[1]。因此,如何預(yù)防結(jié)直腸癌已成為世界范圍內(nèi)的公共衛(wèi)生問(wèn)題。有研究指出,95%的結(jié)直腸癌是由結(jié)直腸息肉病變引起的,及時(shí)發(fā)現(xiàn)并切除結(jié)直腸息肉可大大降低結(jié)直腸癌的發(fā)病率,當(dāng)前預(yù)防結(jié)直腸癌最有效的方式就是定期進(jìn)行結(jié)腸鏡檢查并及時(shí)進(jìn)行息肉切除手術(shù)。隨著無(wú)痛結(jié)腸鏡的出現(xiàn)和普及,人們對(duì)這項(xiàng)檢查的接受度越來(lái)越高。然而,過(guò)去息肉的檢測(cè)都是通過(guò)內(nèi)窺鏡醫(yī)生人工觀察判斷的,很大程度上依賴于醫(yī)生的經(jīng)驗(yàn)和能力并且需要大量時(shí)間和精力,且許多腸道息肉在結(jié)腸鏡檢查時(shí)因醫(yī)生長(zhǎng)時(shí)間工作時(shí)視覺(jué)疲勞導(dǎo)致誤診或漏診。計(jì)算機(jī)輔助檢測(cè)系統(tǒng)可以實(shí)時(shí)地在結(jié)腸鏡視頻中顯示息肉的位置,輔助內(nèi)窺鏡醫(yī)師進(jìn)行判斷[2],從而可以減少息肉被漏診或誤診的概率。
傳統(tǒng)的分割方法是通過(guò)提取顏色、形狀和紋理等特征,然后使用分類器將息肉與其周圍非息肉區(qū)域進(jìn)行區(qū)分。2014年,Mamonov等人[3]提出依據(jù)從結(jié)腸鏡視頻幀中提取到的形狀和紋理特征,使用二值分類器將視頻幀標(biāo)記為包含或不包含息肉,并假定息肉的特征是突出且大部分為圓形的,再選擇合適的球半徑作為分類器的決策參數(shù)。2015年,Tajbakhsh等人[4]提出一種利用上下文信息來(lái)移除非息肉結(jié)構(gòu)信息從而定位息肉的方法,該方法首先采用Canny邊緣檢測(cè)算法獲得粗糙的邊緣特征,再通過(guò)特殊的特征提取和邊緣分類方法去除其中不是息肉的邊緣,然后定位息肉。但是息肉的形狀、大小、顏色和紋理各異,所以使用傳統(tǒng)方法仍然有很高的漏檢率,難以準(zhǔn)確地將息肉分割出來(lái)。
近年來(lái),利用深度學(xué)習(xí)進(jìn)行醫(yī)學(xué)圖像分割[5]和語(yǔ)義分割任務(wù)[6-7]取得很大進(jìn)展,其中基于深度學(xué)習(xí)的結(jié)直腸息肉分割方法也屢見(jiàn)不鮮[8-9]。雖然這些方法已經(jīng)取得了優(yōu)于傳統(tǒng)方法的效果,但它們大多使用邊界框來(lái)檢測(cè)息肉,因此不能準(zhǔn)確定位息肉的邊界。為了解決這個(gè)問(wèn)題,Brandao等人[10]使用帶有預(yù)訓(xùn)練模型的全卷積網(wǎng)絡(luò)[11]來(lái)檢測(cè)和分割息肉。Ronneberger等人[12]提出一種完全對(duì)稱的編碼器-解碼器結(jié)構(gòu)的UNet網(wǎng)絡(luò),受UNet網(wǎng)絡(luò)成功應(yīng)用于生物醫(yī)學(xué)圖像分割的啟發(fā),越來(lái)越多人使用UNet的變體結(jié)構(gòu)來(lái)進(jìn)行息肉分割。Zhang等人[13]提出了深度殘差結(jié)構(gòu)的U型網(wǎng)絡(luò)ResUNet,將殘差連接引入U(xiǎn)Net的每一個(gè)卷積模塊,可以提取到更深層次的圖像特征,從而輸出更精準(zhǔn)的分割結(jié)果。Zhou等人[14]提出了UNet++,通過(guò)減少未知的網(wǎng)絡(luò)深度,重新設(shè)計(jì)跳躍連接,并且設(shè)計(jì)了一個(gè)對(duì)網(wǎng)絡(luò)進(jìn)行剪枝的方案來(lái)提高UNet++的性能。Fan等人[15]提出了一種平行反向注意力網(wǎng)絡(luò)PraNet用于息肉的精確分割。Jha等人[16]提出了DoubleUNet網(wǎng)絡(luò),通過(guò)將兩個(gè)變體UNet結(jié)構(gòu)級(jí)聯(lián)組成雙網(wǎng)結(jié)構(gòu),使整個(gè)網(wǎng)絡(luò)具有更強(qiáng)的特征提取能力,更大的接收域,并將squeeze-and-excite(SE)、空間卷積池化金字塔(Atrous Spatial Pyramid Pooling,ASPP)等附加模塊插入到網(wǎng)絡(luò)中以產(chǎn)生邊界更加清晰的息肉分割結(jié)果。
與傳統(tǒng)方法比較,利用深度學(xué)習(xí)進(jìn)行息肉分割的效果有了大幅提升,但是針對(duì)實(shí)際應(yīng)用場(chǎng)景還存在一些問(wèn)題:醫(yī)療圖像的獲取相對(duì)比較困難,訓(xùn)練時(shí)的數(shù)據(jù)量偏小導(dǎo)致訓(xùn)練得到的模型過(guò)擬合,分割效果欠佳;在通過(guò)結(jié)腸鏡檢查拍攝息肉圖片時(shí),息肉周圍的粘膜及腸道粘液會(huì)形成反光從而影響最后的分割結(jié)果[17];息肉圖像背景復(fù)雜,息肉很容易受其它正常區(qū)域影響,導(dǎo)致因編碼器提取特征能力不夠,無(wú)法提取出有效的特征;部分息肉圖像類別不均衡,息肉區(qū)域像素在圖像中比例較小,網(wǎng)絡(luò)訓(xùn)練較為困難導(dǎo)致出現(xiàn)漏檢的情況。針對(duì)以上問(wèn)題,本文提出了一種改進(jìn)的DoubleUNet網(wǎng)絡(luò)的結(jié)直腸息肉分割算法,主要包括以下幾點(diǎn)工作:
(1)在數(shù)據(jù)預(yù)處理和后處理階段,首先對(duì)結(jié)直腸息肉圖像進(jìn)行去反光處理,消除圖像反光區(qū)域?qū)Ψ指罱Y(jié)果產(chǎn)生的影響;并通過(guò)數(shù)據(jù)擴(kuò)增方法將訓(xùn)練數(shù)據(jù)集進(jìn)行擴(kuò)大,以解決本算法中訓(xùn)練圖片數(shù)據(jù)量小的問(wèn)題;最后采用條件隨機(jī)場(chǎng)方法和測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的推理方式精細(xì)化最后的分割結(jié)果。
(2)通過(guò)在DoubleUNet網(wǎng)絡(luò)兩個(gè)子網(wǎng)的解碼器部分引入注意力模塊,使網(wǎng)絡(luò)在提取特征時(shí)更集中關(guān)注于息肉區(qū)域,并將低層次的信息與高層次的信息進(jìn)行有效融合;將網(wǎng)絡(luò)中的ASPP模塊替換為DenseASPP模塊并移除擴(kuò)張率為24的空洞卷積層,以提高網(wǎng)絡(luò)提取圖像特征的能力。
(3)針對(duì)本文分割的目標(biāo)在圖像中比例較小的問(wèn)題,提出利用Focal Tversky Loss作為算法的損失函數(shù)以降低簡(jiǎn)單樣本的權(quán)重,提高小目標(biāo)樣本的分割精度。
醫(yī)學(xué)圖像分割是對(duì)醫(yī)學(xué)圖像中感興趣的目標(biāo)部分進(jìn)行像素級(jí)分類,大量基于深度學(xué)習(xí)的圖像分割算法已被證明其有效性,其中基于編碼器-解碼器的方法,例如Unet及其變體是解決當(dāng)前醫(yī)療圖像分割問(wèn)題的流行策略。DoubleUNet是近期提出的用于醫(yī)療圖像分割任務(wù)的網(wǎng)絡(luò),也屬于Unet網(wǎng)絡(luò)的一種變體,它是一個(gè)雙網(wǎng)結(jié)構(gòu),由兩個(gè)U型結(jié)構(gòu)相互疊加組合而成,具有兩個(gè)編碼器和兩個(gè)解碼器。如圖1所示,DoubleUNet的第一個(gè)子網(wǎng)以帶預(yù)訓(xùn)練的VGG19作為編碼器提取圖像的特征,然后通過(guò)ASPP模塊中不同擴(kuò)張率的并行空洞卷積捕獲該特征空間信息,最后通過(guò)解碼器得到第一個(gè)子網(wǎng)的輸出。然后將輸入圖像與第一個(gè)子網(wǎng)產(chǎn)生的掩模(Output1)相乘,作為第二個(gè)子網(wǎng)的輸入產(chǎn)生另一個(gè)掩模(Output2),第二個(gè)子網(wǎng)和UNet的區(qū)別僅僅在于使用了ASPP和SE模塊,所有其它組成部分保持不變,其中SE模塊[18]添加在第一個(gè)子網(wǎng)的編碼器和第二個(gè)子網(wǎng)的編碼器和解碼器的卷積操作之后。
圖1 DoubleUNet算法網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network architecture of DoubleUNet algorithm
本文提出了一種改進(jìn)的DoubleUNet網(wǎng)絡(luò)的結(jié)直腸息肉分割算法,該算法的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,算法在網(wǎng)絡(luò)結(jié)構(gòu)中引入DenseASPP模塊,以密集連接的方式連接一組不同擴(kuò)張率的空洞卷積,從而獲得了更大范圍的感受野,上述工作在沒(méi)有顯著增加模型大小的情況下提高了網(wǎng)絡(luò)提取特征的能力。在子網(wǎng)1和子網(wǎng)2的解碼階段引入注意力機(jī)制,并且結(jié)合UNet結(jié)構(gòu)的跳躍連接,將腸道息肉圖像的淺層特征與深層特征進(jìn)行特征融合,降低了噪聲帶來(lái)的影響,使網(wǎng)絡(luò)在進(jìn)行特征提取時(shí)更關(guān)注于病變的息肉區(qū)域,提升了結(jié)直腸息肉分割精度。
圖2 改進(jìn)的DoubleUNet算法網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Network architecture of improved DoubleUNet algorithm
本文提出的算法由兩個(gè)級(jí)聯(lián)的變體UNet結(jié)構(gòu)子網(wǎng)絡(luò)1和子網(wǎng)絡(luò)2組成,兩個(gè)子網(wǎng)絡(luò)又分別包含編碼階段、DenseASPP和解碼階段。將經(jīng)過(guò)數(shù)據(jù)預(yù)處理后的結(jié)直腸息肉數(shù)據(jù)輸入子網(wǎng)1的編碼部分(該部分是在ImageNet數(shù)據(jù)集上預(yù)訓(xùn)練的VGG19),該部分的架構(gòu)和UNet類似;上述步驟提取到深層次結(jié)直腸息肉特征之后接入一個(gè)DenseASPP模塊,該模塊以密集連接一組擴(kuò)張率分別為3、6、12、18的空洞卷積,從而獲取多尺度信息并進(jìn)行融合,在增大感受野的同時(shí)不損失信息,使網(wǎng)絡(luò)能夠提取更多目標(biāo)和更小的息肉特征。解碼部分由注意力機(jī)制、上采樣層、卷積層和SE模塊組成,其結(jié)構(gòu)如圖3所示。
圖3 解碼器結(jié)構(gòu)Fig.3 Architecture of the decoder
為了恢復(fù)在編碼階段丟失的特征并使網(wǎng)絡(luò)特征提取時(shí)更關(guān)注于息肉區(qū)域,本文在上采樣操作前引入注意力機(jī)制,上采樣層是一個(gè)2×2雙線性上采樣模塊,能夠使輸入特征映射的維數(shù)加倍,再通過(guò)跳躍連接與編碼部分的特征進(jìn)行連接,不僅保持了空間分辨率而且還提高了輸出特征映射的質(zhì)量,連接后再進(jìn)行2次3×3的卷積操作,每次卷積后都進(jìn)行批處理歸一化且連接Re-LU激活函數(shù),之后使用SE模塊顯式建模通道之間的關(guān)系以增強(qiáng)重要特征,最后應(yīng)用一個(gè)具有sigmoid激活函數(shù)的1×1卷積層生成相應(yīng)的掩模。子網(wǎng)1的輸出與原始輸入逐元素相乘作為子網(wǎng)2的輸入,子網(wǎng)2與子網(wǎng)1的區(qū)別僅僅在于編碼器部分,經(jīng)過(guò)級(jí)聯(lián)的子網(wǎng)2后輸出最終結(jié)直腸息肉的分割結(jié)果。
注意力機(jī)制[19]最早在自然語(yǔ)言處理領(lǐng)域中廣泛應(yīng)用,隨后在計(jì)算機(jī)視覺(jué)領(lǐng)域中進(jìn)一步發(fā)展,當(dāng)前在圖像分類和語(yǔ)義分割任務(wù)中應(yīng)用較多,在語(yǔ)義分割任務(wù)中可以對(duì)圖像進(jìn)行像素級(jí)預(yù)測(cè)[20]。注意力機(jī)制決定了在神經(jīng)網(wǎng)絡(luò)中哪些部分需要更多的關(guān)注則分配更大的權(quán)重,降低將每個(gè)結(jié)直腸息肉圖像中的信息編碼為一個(gè)固定維數(shù)向量所需要的計(jì)算成本,其結(jié)構(gòu)簡(jiǎn)單,可以應(yīng)用于任何大小的輸入,并能提高網(wǎng)絡(luò)特征提取性能。計(jì)算機(jī)視覺(jué)中的注意力機(jī)制包括空間注意力和通道注意力,SE模塊能夠顯示各建模通道之間的關(guān)系,增強(qiáng)重要特征,抑制無(wú)用的特征。在基礎(chǔ)網(wǎng)絡(luò)中SE模塊已經(jīng)應(yīng)用于第一個(gè)子網(wǎng)的編碼器和第二個(gè)子網(wǎng)的編碼器與解碼器。為使網(wǎng)絡(luò)在提取特征時(shí)更集中關(guān)注于息肉區(qū)域,并將低層次的信息與高層次的信息進(jìn)行有效融合,減少在編碼階段連續(xù)下采樣所導(dǎo)致的息肉信息丟失,同時(shí)抑制上采樣帶來(lái)的噪聲影響,提升最后腸道息肉分割的準(zhǔn)確率,本文在兩個(gè)子網(wǎng)的解碼器部分都加入了注意力模塊[21]。
本文提出的注意力機(jī)制內(nèi)部結(jié)構(gòu)如圖4所示,圖中g(shù)表示與解碼器對(duì)應(yīng)的同級(jí)編碼器輸出的低層次信息,x表示上一層解碼器的輸出信息。g信號(hào)首先進(jìn)行批處理歸一化且連接ReLU激活函數(shù),然后經(jīng)過(guò)一個(gè)3×3的卷積操作,之后連接一個(gè)大小為2×2,步長(zhǎng)為2的最大池化層并輸出gpool信號(hào),以上操作的目的是將結(jié)直腸息肉的特征圖縮小一半的尺寸,從而匹配x信號(hào)經(jīng)過(guò)相同卷積操作得到的特征圖大小。之后gpool再與xconv逐元素相加,輸出的gxsum信號(hào)融合了淺層和深層特征。最后,gxsum信號(hào)再通過(guò)一個(gè)與之前相同的3×3的卷積層,得到的特征圖與初始x信號(hào)逐元素相乘得到特征圖f。
圖4 注意力機(jī)制內(nèi)部結(jié)構(gòu)Fig.4 Internal architecture of attention mechanism
谷歌團(tuán)隊(duì)在DeepLab[22]系列工作中結(jié)合多尺度信息和擴(kuò)張卷積的特點(diǎn)提出了ASPP模塊,該模塊將不同擴(kuò)張率的空洞卷積特征結(jié)合到一起。在DoubleUNet網(wǎng)絡(luò)中引入ASPP結(jié)構(gòu)連接兩個(gè)子網(wǎng)絡(luò)的編碼器和解碼器來(lái)獲取多尺度的卷積特征,但是息肉圖片背景復(fù)雜,ASPP模塊在尺度軸上特征分辨率還不夠密集,獲取的感受野還不夠大,因此本文引入DenseASPP模塊[23]來(lái)代替ASPP模塊。該模塊的網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示,其能夠以更密集的方式連接一組空洞卷積,獲得更大范圍的擴(kuò)張率,在沒(méi)有顯著增加模型大小的情況下提高了網(wǎng)絡(luò)提取特征的能力。由于使用擴(kuò)張率過(guò)大的空洞卷積會(huì)導(dǎo)致卷積退化,造成特征提取性能的降低,因此本文移除了擴(kuò)張率為24的空洞卷積層。
圖5 DenseASPP網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Network architecture of DenseASPP
在研究基于深度學(xué)習(xí)的圖像分割問(wèn)題時(shí),常采用交叉熵?fù)p失函數(shù)來(lái)刻畫(huà)該類問(wèn)題,但在醫(yī)學(xué)領(lǐng)域中,檢測(cè)和分割目標(biāo)通常只占據(jù)整個(gè)圖像中的很小一部分病變區(qū)域,這種不平衡的數(shù)據(jù)可能導(dǎo)致訓(xùn)練效果不佳,而Focal Tversky Loss函數(shù)[24]在小目標(biāo)的檢測(cè)中效果較好,因此本文采用Focal Tversky Loss代替交叉熵?fù)p失函數(shù),該函數(shù)表達(dá)式如式(1):
其中:TIc表示tversky指數(shù),γ的取值范圍是[1,3]。TIc的計(jì)算公式如式(2):
其中:pic為像素i屬于病變類別c的概率,為像素i屬于非病變類別的概率,gic為標(biāo)簽中像素i對(duì)應(yīng)的值,為標(biāo)簽中像素i對(duì)應(yīng)1-gic的值,在二分類任務(wù)中g(shù)ic只有0和1兩種取值,0表示像素i屬于非病變類別,1表示像素i屬于病變類別c,ε為光滑因子。通過(guò)調(diào)節(jié)超參數(shù)α和β,可以在類別不均衡的情況下改變權(quán)重以提高召回率,本文分別設(shè)置α=0.7,β=0.3,γ=1.33。
為驗(yàn)證算法的有效性、泛化性和普適性,本文算法在五個(gè)公共數(shù)據(jù)集上進(jìn)行了相關(guān)實(shí)驗(yàn),第一個(gè)數(shù)據(jù)集是Kvasir-SEG數(shù)據(jù)集[25],由挪威奧斯陸大學(xué)醫(yī)院的內(nèi)窺鏡專家采集并標(biāo)注,該數(shù)據(jù)集包含1 000張息肉圖片和其對(duì)應(yīng)的標(biāo)簽,圖片像素大小為256×256;第二個(gè)數(shù)據(jù)集是CVC-ClinicDB數(shù)據(jù)集[26],由醫(yī)學(xué)圖像計(jì)算與計(jì)算機(jī)輔助干預(yù)國(guó)際會(huì)議(MedicalImage Computing and Computer-Assisted Intervention,MICCAI)于2015年發(fā)布,該數(shù)據(jù)集包含31個(gè)結(jié)腸鏡序列的612張圖片和其對(duì)應(yīng)的標(biāo)簽,圖片像素大小為384×288;第三個(gè)數(shù)據(jù)集是ETIS-Larib數(shù)據(jù)集[27],由MICCAI息肉自動(dòng)檢測(cè)子挑戰(zhàn)賽[28]在2017年發(fā)布,該數(shù)據(jù)集包含196張從結(jié)腸鏡視頻中提取的息肉圖片和其對(duì)應(yīng)的標(biāo)簽,圖片像素大小為1 255×966;第四個(gè)數(shù)據(jù)集ISIC數(shù)據(jù)集[29]是由國(guó)際皮膚成像協(xié)作組織(International Skin Imaging Collaboration,ISIC)提供的皮膚鏡圖像數(shù)據(jù)集,該數(shù)據(jù)集包括2 594張圖片,圖片有多種不同尺寸;第五個(gè)數(shù)據(jù)集是DSB數(shù)據(jù)集,由數(shù)據(jù)科學(xué)碗(Data Science Bowl)挑戰(zhàn)賽在2018年發(fā)布,該數(shù)據(jù)集包含670張細(xì)胞核圖片及其對(duì)應(yīng)的標(biāo)簽,圖片有多種不同尺寸。
在進(jìn)行結(jié)腸鏡檢查拍攝息肉圖片的過(guò)程中,由于光源被反射,息肉周圍的粘膜以及腸道的黏液處在圖片中會(huì)顯示出高光,這些圖像特征會(huì)對(duì)感知圖像質(zhì)量產(chǎn)生負(fù)面影響[30]。此外,對(duì)于進(jìn)行圖像分割任務(wù)的算法來(lái)說(shuō),息肉表面的高光會(huì)影響從息肉表面獲得的紋理特征,嚴(yán)重干擾算法的有效性。為降低圖片高光區(qū)域?qū)λ惴ǖ挠绊?,本文在?shù)據(jù)預(yù)處理階段對(duì)原息肉圖像進(jìn)行去反光處理。首先對(duì)圖片進(jìn)行反光檢測(cè):第一步使用顏色平衡自適應(yīng)閾值來(lái)確定圖片中很明顯的高光區(qū)域,若某部分顯示強(qiáng)度過(guò)強(qiáng),則屬于高光。然而顏色通道可能因顏色平衡而產(chǎn)生強(qiáng)度偏移,同時(shí)高光的實(shí)際強(qiáng)度可能高于所有三個(gè)顏色通道的飽和點(diǎn),因此將圖像的綠色和藍(lán)色通道cG和cB進(jìn)行歸一化,計(jì)算灰度強(qiáng)度cE,具體為cE=0.2989·cR+0.5870·cG+0.1140·cB,其中cR為 紅色通道。之所以使用灰度強(qiáng)度作為參考,而不是主要的紅色通道,是因?yàn)樵诮Y(jié)腸鏡圖像中,接近飽和的紅色通道強(qiáng)度不僅出現(xiàn)在反光區(qū)域,圖像大部分區(qū)域都顯示為較強(qiáng)的紅色。按如下方法計(jì)算顏色平衡比:
其中,P95(·)表示顏色強(qiáng)度值超過(guò)95%的數(shù)值。當(dāng)息肉圖像中像素x0滿足以下條件時(shí),則被標(biāo)記為高光:
其中,T1=240,表示灰度閾值。第二步對(duì)這些高光區(qū)域用其周圍一圈半徑為2和4像素的圓形區(qū)域像素平均值進(jìn)行填充,得到填充圖像;第三步對(duì)填充后的圖像做中值濾波(中值濾波器窗口大小w=30),得到“平滑非反光區(qū)域顏色像素”,中值濾波后的圖像稱為“平滑非反光區(qū)域顏色圖像”,將圖片中的每個(gè)像素與之進(jìn)行比較,得到反光區(qū)域。確定圖片中被判定為反光的區(qū)域后,立即對(duì)其進(jìn)行反光修復(fù),即用反光檢測(cè)中的填充方法將反光區(qū)域進(jìn)行填充,然后對(duì)填充圖片進(jìn)行高斯模糊(高斯核σ=8)得到一副非反光強(qiáng)平滑的圖像,最后結(jié)合原圖和高斯模糊的圖像進(jìn)行修復(fù)得到去反光圖像,如圖6所示去反光前后圖像。由于醫(yī)學(xué)數(shù)據(jù)集的獲取和標(biāo)注比較困難,現(xiàn)有數(shù)據(jù)集包含的樣本數(shù)較少,這使得在該數(shù)據(jù)集上訓(xùn)練出來(lái)的模型容易過(guò)擬合且效果欠佳。針對(duì)訓(xùn)練樣本較少的問(wèn)題,本文提出利用數(shù)據(jù)擴(kuò)增的方法來(lái)增加樣本數(shù)量。首先分別將Kvasir-SEG、CVC-ClinicDB、ISIC和DSB四個(gè)數(shù)據(jù)集進(jìn)行訓(xùn)練集、驗(yàn)證集、測(cè)試集的劃分,在數(shù)據(jù)集中的所有數(shù)據(jù)中隨機(jī)選取80%的數(shù)據(jù)作為訓(xùn)練集,10%的數(shù)據(jù)作為驗(yàn)證集,10%的數(shù)據(jù)作為測(cè)試集,ETIS-Larib數(shù)據(jù)集僅作為測(cè)試集不參與數(shù)據(jù)集劃分;接著對(duì)訓(xùn)練集數(shù)據(jù)采用數(shù)據(jù)擴(kuò)增的方法增加樣本數(shù)量,包括中心裁剪、隨機(jī)旋轉(zhuǎn)、高斯模糊、彈性變換和RGB平移等,單張圖片可以擴(kuò)增成26張不同的圖片,Kvasir-SEG、CVC-ClinicDB、ISIC和DSB四個(gè)數(shù)據(jù)集的訓(xùn)練集擴(kuò)增后樣本數(shù)依次為20 800、12 740、53 976和13 936張圖片;最后對(duì)數(shù)據(jù)集中的所有圖片,包括擴(kuò)增圖片進(jìn)行尺寸調(diào)整,將ETIS-Larib數(shù)據(jù)集中的圖片調(diào)整為384×288,ISIC和DSB數(shù)據(jù)集中的圖片調(diào)整為256×256,Kvasir-SEG和CVC-ClinicDB數(shù)據(jù)集中的圖片保持不變。
圖6 去反光前后圖像Fig.6 Image before and after de-reflective
經(jīng)過(guò)分割模型預(yù)測(cè)得到的分割息肉圖片經(jīng)常會(huì)包含一些噪聲,比如邊緣不夠光滑和病變息肉區(qū)域不連通等問(wèn)題。本文采取了兩種后處理方法:一是條件隨機(jī)場(chǎng)(CRF)模型方法[31],條件隨機(jī)場(chǎng)為基于概率的無(wú)向圖模型,常用于像素級(jí)的圖像分割中,具有相似位置和顏色特征的兩個(gè)像素,其大概率被賦予相同類別標(biāo)簽,其被分割的可能性小,對(duì)應(yīng)了條件隨機(jī)場(chǎng)中的概率模型。目標(biāo)圖像的像素為圖的頂點(diǎn),頂點(diǎn)作為狀態(tài)特征,將圖中頂點(diǎn)進(jìn)行連接作為邊,邊作為轉(zhuǎn)移特征,求解像素標(biāo)簽時(shí)考慮圖像中其余像素對(duì)該像素的影響,精細(xì)化分割和標(biāo)記,使分割結(jié)果在邊緣處更加準(zhǔn)確平滑[32];二是測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的推理預(yù)測(cè)方法,該方法在進(jìn)行推理預(yù)測(cè)時(shí)首先將輸入圖片進(jìn)行水平翻轉(zhuǎn)和垂直翻轉(zhuǎn)的數(shù)據(jù)擴(kuò)增,再將三張圖片一起進(jìn)行預(yù)測(cè),得到的中間結(jié)果進(jìn)行翻轉(zhuǎn)逆處理后輸出最后的預(yù)測(cè)結(jié)果,最后取三個(gè)預(yù)測(cè)結(jié)果的平均值作為分割的最終結(jié)果。
在表1和表2中,方法a表示完成圖像預(yù)處理后的改進(jìn)DoubleUNet網(wǎng)絡(luò)方法;方法b表示同時(shí)采用方法a與條件隨機(jī)場(chǎng)方法;方法c表示同時(shí)采用方法a與測(cè)試時(shí)數(shù)據(jù)擴(kuò)增推理方法;方法d表示同時(shí)采用方法a與兩種后處理方法。表1展示了在Kvasir-SEG數(shù)據(jù)集上各種方法的實(shí)驗(yàn)結(jié)果,可以看出采用條件隨機(jī)場(chǎng)模型方法和測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的推理預(yù)測(cè)方法都能夠進(jìn)一步提高分割精度。表2展示了在DSB數(shù)據(jù)集上各方法的實(shí)驗(yàn)結(jié)果,可以看出采用條件隨機(jī)場(chǎng)模型方法會(huì)降低在該數(shù)據(jù)集上的分割精度,這是由于該數(shù)據(jù)集的圖片樣本分割目標(biāo)較多且分割目標(biāo)間有堆疊情況,加入條件隨機(jī)場(chǎng)方法進(jìn)行后處理會(huì)將多個(gè)堆疊的分割目標(biāo)連通為一個(gè)整體,從而影響分割精度;而測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的推理預(yù)測(cè)方法能夠進(jìn)一步提高分割精度。
表1 Kvasir-SEG數(shù)據(jù)集上各處理方法性能Tab.1 Performance of different processing methods on the Kvasir-SEG dataset
表2 DSB數(shù)據(jù)集上各處理方法性能Tab.2 Performance of different processing methods on the DSB dataset
圖7和圖8分別為Kvasir-SEG數(shù)據(jù)集無(wú)后處理分割結(jié)果和進(jìn)行后處理操作,圖9和圖10分別為DSB數(shù)據(jù)集無(wú)后處理分割結(jié)果和進(jìn)行后處理操作。在圖7和圖9中,金標(biāo)準(zhǔn)表示專家標(biāo)注的分割結(jié)果,輸出圖為無(wú)后處理結(jié)果。在圖8和圖10中,(a)圖表示單獨(dú)采用條件隨機(jī)場(chǎng)后處理方法的輸出結(jié)果,(b)圖表示單獨(dú)采用測(cè)試時(shí)數(shù)據(jù)擴(kuò)增方法的輸出結(jié)果,(c)圖表示同時(shí)采用條件隨機(jī)場(chǎng)和測(cè)試時(shí)數(shù)據(jù)擴(kuò)增方法的輸出結(jié)果。如圖8所示,加入條件隨機(jī)場(chǎng)方法進(jìn)行后處理將原始輸出圖中一些不連通的區(qū)域和邊緣部分被錯(cuò)誤預(yù)測(cè)的像素進(jìn)行修正,精細(xì)化了分割結(jié)果;而采用測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的推理預(yù)測(cè)方法將原始圖及其經(jīng)過(guò)多種變換后的圖共同輸入模型進(jìn)行預(yù)測(cè),可以避免因原始圖中的某些重要特征被忽略而導(dǎo)致錯(cuò)誤分割,提高了算法的魯棒性和防止過(guò)擬合的能力,但可能會(huì)略微增加模型推理的時(shí)間,降低算法的實(shí)時(shí)性。如圖10所示,在細(xì)胞核這類分割目標(biāo)較多且分割目標(biāo)間有堆疊情況的數(shù)據(jù)集上,加入條件隨機(jī)場(chǎng)方法進(jìn)行后處理會(huì)將多個(gè)堆疊的細(xì)胞核連通為一個(gè)整體,從而影響分割的準(zhǔn)確性;而采用測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的推理預(yù)測(cè)方法依然能夠提高分割精度,因此針對(duì)該數(shù)據(jù)集本文僅采用測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的后處理方法。
圖7 Kvasir-SEG無(wú)后處理分割結(jié)果Fig.7 Segmentation results without post-processing on Kvasir-SEG dataset
圖8 Kvasir-SEG數(shù)據(jù)集上進(jìn)行后處理操作Fig.8 Post-processing on Kvasir-SEG dataset
圖10 DSB數(shù)據(jù)集上進(jìn)行后處理操作Fig.10 Post-processing on DSB dataset
本文算法運(yùn)行環(huán)境的硬件設(shè)備參數(shù)為:CPU主頻為3.6 GHz,顯卡為英偉達(dá)2080ti,內(nèi)存為32 GHz;軟件環(huán)境為:操作系統(tǒng)為Windows 10,深度學(xué)習(xí)框架為TensorFlow+Keras。為方便與DoubleUNet[16]原始算法模型性能進(jìn)行對(duì)比,本文采用的實(shí)驗(yàn)參數(shù)基本與DoubleUNet算法相同:所有實(shí)驗(yàn)采用的初始學(xué)習(xí)率均為0.000 01,連續(xù)20個(gè)批次驗(yàn)證集損失不再上升時(shí)把學(xué)習(xí)率降低到原來(lái)的0.1倍,采用Nadam優(yōu)化器,其中ISIC數(shù)據(jù)集和DSB數(shù)據(jù)集使用Adam優(yōu)化器。開(kāi)始訓(xùn)練時(shí)的批處理大?。╞atch size)設(shè)置為4,訓(xùn)練總輪次為300,當(dāng)驗(yàn)證集精度連續(xù)50輪不再變好,則提前終止訓(xùn)練。
本文采用四個(gè)評(píng)價(jià)指標(biāo)對(duì)息肉分割的性能進(jìn)行評(píng)估,分別是Dice系數(shù)(Dice)、平均交并比(MIoU)、召回率(Recall)、準(zhǔn)確率(Precision)。
其中:X為預(yù)測(cè)得到的分割結(jié)果中息肉區(qū)域的像素集合,Y為原息肉圖片金標(biāo)準(zhǔn)息肉區(qū)域的像素集合,TP為分割結(jié)果中被正確分割的像素?cái)?shù)目,F(xiàn)P為分割結(jié)果中被錯(cuò)誤分割的背景像素?cái)?shù)目,F(xiàn)N為分割結(jié)果中被錯(cuò)誤預(yù)測(cè)為背景的息肉像素?cái)?shù)目。
4.3.1 算法中每個(gè)改進(jìn)步驟的作用
為了驗(yàn)證算法中每個(gè)改進(jìn)步驟的有效性,本文分別在Kvasir-SEG和CVC-ClinicDB數(shù)據(jù)集上對(duì)每個(gè)改進(jìn)步驟的性能效果進(jìn)行了測(cè)試。分別驗(yàn)證本文算法在DoubleUNet算法基礎(chǔ)上完成改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)、替換損失函數(shù)、完成圖像預(yù)處理及后處理時(shí)對(duì)分割結(jié)果的影響。表3為在Kvasir-SEG數(shù)據(jù)集上的測(cè)試結(jié)果,表4為在CVCClinicDB數(shù)據(jù)集上的測(cè)試結(jié)果。在表3和4中,“改進(jìn)網(wǎng)絡(luò)”步驟是在“DoubleUNet”算法的基礎(chǔ)上完成的相應(yīng)操作;“損失函數(shù)”步驟是在“改進(jìn)網(wǎng)絡(luò)”步驟基礎(chǔ)上完成的相應(yīng)操作;“圖像預(yù)處理”步驟是在“損失函數(shù)”步驟基礎(chǔ)上完成的相應(yīng)操作;本文方法即“后處理”步驟,是在“圖像預(yù)處理”步驟基礎(chǔ)上完成的后處理過(guò)程。從表3和4中可以發(fā)現(xiàn),在DoubleUNet算法基礎(chǔ)上,每個(gè)改進(jìn)步驟對(duì)算法的Dice系數(shù),平均交并比,召回率的性能都有一定程度的提升;且算法模型改進(jìn)(包括“改進(jìn)網(wǎng)絡(luò)”和“損失函數(shù)”步驟)和“后處理”步驟對(duì)準(zhǔn)確率的提升明顯。
表3 Kvasir-SEG數(shù)據(jù)集上各改進(jìn)步驟的分割結(jié)果Tab.3 Segmentation results of each improvd step on the Kvasir-SEG dataset
表4 CVC-ClinicDB數(shù)據(jù)集上各改進(jìn)步驟的分割結(jié)果Tab.4 Segmentation results of each improved step on the CVC-ClinicDB dataset
圖11為CVC-ClinicDB數(shù)據(jù)集和Kvasir-SEG數(shù)據(jù)集的驗(yàn)證集部分息肉圖片的分割結(jié)果,其中第1、2行為CVC-ClinicDB數(shù)據(jù)集的分割結(jié)果,第3、4行為Kvasir-SEG數(shù)據(jù)集的分割結(jié)果。從分割結(jié)果來(lái)看,本文算法能夠在背景復(fù)雜的息肉圖片中提取到重要特征,并且對(duì)于圖片中的小目標(biāo)分割結(jié)果也十分理想,極少出現(xiàn)漏分割和錯(cuò)誤分割的情況。
圖11 CVC-ClinicDB和Kvasir-SEG數(shù)據(jù)集上的分割結(jié)果Fig.11 Segmentation results on CVC-ClinicDB and Kvasir-SEG datasets
4.3.2 不同算法分割性能對(duì)比實(shí)驗(yàn)
為了檢驗(yàn)本文算法在Kvasir-SEG、CVCClinicDB數(shù)據(jù)集上的分割性能,本文在兩個(gè)數(shù)據(jù)集上分別和五個(gè)經(jīng)典算法進(jìn)行了對(duì)比實(shí)驗(yàn),具體為UNet[11]、ResUNet[12]、ResUNet-Mod[12]、UNet++[13]、ParNet[14]算法。實(shí)驗(yàn)結(jié)果分別如表5和表6所示。
表5 Kvasir-SEG數(shù)據(jù)集上不同算法分割結(jié)果Tab.5 Segmentation results of different algorithms on the Kvasir-SEG dataset
表6 CVC-Clinic DB數(shù)據(jù)集上不同算法分割結(jié)果Tab.6 Segmentation results of different algorithms on the CVC-ClinicDB dataset
由表5和表6可以發(fā)現(xiàn),本文算法在Kvasir-SEG數(shù)據(jù)集的測(cè)試中Dice系數(shù)、平均交并比、召回率和準(zhǔn)確率分別為0.919 6、0.853 8、0.853 7、0.953 0;在CVC-ClinicDB數(shù)據(jù)集的測(cè)試中Dice系數(shù)、平均交并比、召回率、準(zhǔn)確率分別為0.954 3、0.913 0、0.899 0、0.964 2;并且從表中可以看出本文算法在四個(gè)評(píng)價(jià)指標(biāo)上相對(duì)于其它5個(gè)算法都有較大提高。實(shí)驗(yàn)結(jié)果表明本文算法的分割效果較好,準(zhǔn)確率較高,在醫(yī)學(xué)影像方面,對(duì)腸道息肉圖像處理有一定的應(yīng)用價(jià)值。
4.3.3 不同算法模型的泛化性能對(duì)比實(shí)驗(yàn)
為進(jìn)一步驗(yàn)證本文算法模型的泛化性能,本文在CVC-ClinicDB和ETIS-Larib數(shù)據(jù)集上進(jìn)行了相關(guān)實(shí)驗(yàn)。在實(shí)驗(yàn)中,本文將CVC-ClinicDB數(shù)據(jù)集按9∶1分成兩部分,分別作為訓(xùn)練集和驗(yàn)證集,ETIS-Larib數(shù)據(jù)集作為測(cè)試集,對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練并得到相應(yīng)模型,并與FCN-VGG[10]、Mask RCNN[33]、UNet[11]、DoubleUNet[16]四 種 算法進(jìn)行了對(duì)比。圖12為算法在ETIS-Larib數(shù)據(jù)集上的部分分割結(jié)果,從圖中可以看到,本文算法在小目標(biāo)樣本上的分割效果較好,但在某些復(fù)雜場(chǎng)景下會(huì)出現(xiàn)小范圍誤分割。
圖12 ETIS-Larib數(shù)據(jù)集上的分割結(jié)果Fig.12 Segmentation results on ETIS-Larib datasets
表7為在ETIS-Larib數(shù)據(jù)集上的測(cè)試結(jié)果,與其它方法的對(duì)比,從中可以看到本文算法的平均交并比、召回率和準(zhǔn)確率依次為0.632 7、0.723 5、0.815 7高于其它算法,而在Dice系數(shù)指標(biāo)上與DoubleUNet算法基本相當(dāng)。以上實(shí)驗(yàn)表明本文算法的泛化性能較好,在未知數(shù)據(jù)集上的適應(yīng)能力較強(qiáng)。
表7 ETIS-Larib數(shù)據(jù)集上不同算法分割結(jié)果對(duì)比Tab.7 Comparison of segmentation results of different algorithms on the ETIS-Larib dataset
為驗(yàn)證本文算法在通用醫(yī)學(xué)圖像分割任務(wù)上的有效性,本文在ISIC和DSB數(shù)據(jù)集上分別做 了 相 應(yīng) 實(shí) 驗(yàn) 驗(yàn) 證,并 與UNet[11]、Multi-ResUNet[34]、DoubleUNet[16]、UNet++[14]深 度 學(xué) 習(xí) 基準(zhǔn)模型進(jìn)行了對(duì)比實(shí)驗(yàn)。由于ISIC和DSB數(shù)據(jù)集上的圖片沒(méi)有反光的影響,本文算法在上述數(shù)據(jù)集中沒(méi)有進(jìn)行去反光處理。DSB數(shù)據(jù)集中圖片包含多個(gè)分割目標(biāo)且分割目標(biāo)有堆疊情況,采用條件隨機(jī)場(chǎng)的后處理方法時(shí)會(huì)導(dǎo)致分割精度下降,所以該數(shù)據(jù)集只采用測(cè)試時(shí)數(shù)據(jù)擴(kuò)增的預(yù)測(cè)推理方法進(jìn)行后處理,而在ISIC數(shù)據(jù)集上使用了兩種后處理方法。圖13和圖14分別表示在ISIC數(shù)據(jù)集和DSB數(shù)據(jù)集上的分割結(jié)果,從中可以看出本文算法在通用醫(yī)學(xué)圖像公開(kāi)數(shù)據(jù)集的分割效果也較好。
圖13 ISIC數(shù)據(jù)集上的分割結(jié)果Fig.13 Segmentation results on ISIC datasets
圖14 DSB數(shù)據(jù)集上的分割結(jié)果Fig.14 Segmentation results on DSB datasets
表8表示在ISIC數(shù)據(jù)集上本文算法與其它算法的實(shí)驗(yàn)結(jié)果,從表中可以看到本文算法的Dice系數(shù)、平均交并比、召回率和準(zhǔn)確率分別為0.909 5、0.847 3、0.903 7、0.950 3,其中四個(gè)指標(biāo)分別比DoubleUNet算法提高了0.013 3、0.026 1、0.025 7和0.004 4。表9表示在DSB數(shù)據(jù)集上本文算法與其它算法的實(shí)驗(yàn)結(jié)果,本文算法的Dice系數(shù)、平均交并比、召回率和準(zhǔn)確率分別為0.919 6、0.852 4、0.665 5、0.964 1,本文算法在Dice系數(shù)、召回率和準(zhǔn)確率三個(gè)指標(biāo)上達(dá)到對(duì)比算法中的最佳。
從表8和表9的實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn)本文提出的算法在ISIC和DSB兩個(gè)數(shù)據(jù)集上的分割精度對(duì)比其它分割算法整體上都有一定的提升。以上實(shí)驗(yàn)結(jié)果表明本文算法能夠較好地完成通用醫(yī)學(xué)圖像的分割任務(wù),能夠適應(yīng)較多的醫(yī)學(xué)應(yīng)用場(chǎng)景。
表8 ISIC數(shù)據(jù)集上不同算法分割結(jié)果Tab.8 Segmentation results of different algorithms on the ISIC dataset
表9 DSB數(shù)據(jù)集上不同算法分割結(jié)果Tab.9 Segmentation results of different algorithms on the DSB dataset
本文針對(duì)結(jié)直腸息肉的大小、顏色和質(zhì)地各異,息肉與周圍粘膜的邊界不清晰,且息肉區(qū)域像素在圖像中比例較小導(dǎo)致出現(xiàn)分割準(zhǔn)確率低等問(wèn)題,提出了一種改進(jìn)的DoubleUNet網(wǎng)絡(luò)結(jié)直腸息肉分割算法。本文算法在Kvasir-SEG和CVC-ClinicDB數(shù)據(jù)集的測(cè)試中,Dice系數(shù)、平均交并比、召回率和準(zhǔn)確率相對(duì)于其它經(jīng)典算法都有較大提升,其中在CVC-ClinicDB數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果相較于基準(zhǔn)網(wǎng)絡(luò),四個(gè)評(píng)價(jià)指標(biāo)分別提升了0.030 4、0.051 9、0.053 3、0.005 0。表明本文算法在結(jié)直腸息肉圖像上分割精度較高,能夠輔助醫(yī)生對(duì)結(jié)直腸息肉進(jìn)行診斷,減少臨床時(shí)的漏診和誤診,對(duì)結(jié)直腸息肉圖像的處理和分析具有借鑒意義。為驗(yàn)證算法的泛化性和普適性,本文在ETIS-Larib、ISIC、DSB數(shù)據(jù)集上進(jìn)行了相關(guān)實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果驗(yàn)證了本文算法在未知數(shù)據(jù)集上的適應(yīng)能力較強(qiáng),且算法在通用醫(yī)學(xué)圖像上的分割效果也較好。