謝宏彪,劉志勤,王慶鳳,黃 俊,陳 波,周 瑩
(1.西南科技大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,四川 綿陽 621010;2.綿陽市中心醫(yī)院,四川 綿陽 621010)
肝臟是人體內(nèi)最大的器官,在人體眾多部位有著無可比擬的地位,承擔(dān)著存儲、解毒和合成三個方面的功能。由于人們高壓力工作、作息不規(guī)律等原因,致使肝臟過度使用,因此肝臟疾病的發(fā)病率極高,并且具有多種類、多發(fā)性等特點,而這些肝臟疾病均具有較高幾率誘發(fā)肝癌,也叫做肝臟惡性腫瘤[1]。肝癌在全球癌癥中有著極高死亡率,每年約有84萬多新病例和78萬多死亡病例[2]。人類的生命健康正被肝癌等疾病摧殘著。
在臨床治療中,自動肝臟腫瘤分割[3-5]在CT(computed tomography)圖像中有著重要的研究價值,不但可以減少醫(yī)務(wù)人員在分析病情中所耗費的時間,有些還能模仿臨床手術(shù)操作,提高治療成功率。但自動肝臟腫瘤分割的準(zhǔn)確性在較大程度上依賴標(biāo)簽數(shù)據(jù)的質(zhì)量和數(shù)量[6-7],獲取這些肝臟區(qū)域標(biāo)注既需要醫(yī)學(xué)專家進行細致的手動勾畫,專家個人的主觀因素也會影響到標(biāo)注精度,會影響后續(xù)治療時間,降低效率[8]。并且CT圖像是三維圖像,一些分割方法[9-10]只利用了二維圖像,由于2D網(wǎng)絡(luò)結(jié)構(gòu)本身的不足,導(dǎo)致CT圖像的三維信息沒有得到很好的利用,對2D網(wǎng)絡(luò)結(jié)構(gòu)的各種改動也僅限于提高單張切片分割的準(zhǔn)確率,讓肝臟腫瘤的整體分割性能的提升受到限制。
對于以上問題,該文提出了一種基于半監(jiān)督協(xié)同訓(xùn)練的3D CT肝臟自動分割方法。主要有以下幾個方面的貢獻:
(1)為了更好地利用醫(yī)學(xué)分割圖像中少量的肝臟數(shù)據(jù),提出了半監(jiān)督協(xié)同訓(xùn)練方法。
(2)提出使用3D U-Net和3D Res U-Net方法可以更好地利用CT圖像的三維信息。
(3)用全連接條件隨機場(Dense Conditional Random Filed,Dense CRF)把預(yù)測得到的偽標(biāo)簽通過邊緣細化,提升偽標(biāo)簽的精確度。
深度學(xué)習(xí)[11]的發(fā)展推進了圖像分割性能的大幅提升,通過對標(biāo)注數(shù)據(jù)進行學(xué)習(xí),能夠自動提取大量的特征值,從而提升肝臟分割的準(zhǔn)確性。因為肝臟CT圖像邊界不清晰,準(zhǔn)確分割出肝臟又需要較多高分辨率信息;同時,人體器官的位置相對固定,分割有一定的規(guī)律,語義簡單清晰,所以對目標(biāo)器官的識別還需要低分辨率信息。Ronneberger等人[12]在2015年首次提出將U-Net應(yīng)用到醫(yī)學(xué)圖像分割中。U-Net在編碼器和解碼器之間加入跳躍連接,可以將低分辨率信息和高分辨率信息很好地結(jié)合起來,能夠更好地分割肝臟和肝腫瘤。跳躍連接雖然結(jié)合了低分辨率信息和高分辨率信息,但沒有篩選一些無用的低分辨率信息,使得低分辨率信息過多而導(dǎo)致圖像邊界模糊。為了解決這個問題,Seo等人[13]改進了網(wǎng)絡(luò)框架,提出了mU-Net,他們引入了一個剩余路徑,加到U-Net的跳躍連接部分,其中包含激活操作和反卷積操作,有效地加強了全局特征的提取能力和高分辨率的邊緣特征。Fan等人[14]提出了一種多尺度嵌套U-Net,優(yōu)化了跳躍連接區(qū)域,解決了跳躍連接傳遞過多低分辨率信息的問題。由于醫(yī)學(xué)CT圖像為3D圖像,使用2D網(wǎng)絡(luò)無法有效利用CT圖像的三維信息。Milletari等人[15]在2016年提出3D網(wǎng)絡(luò)V-Net,該方法解決了2D網(wǎng)絡(luò)無法利用CT圖像的三維信息的問題。緊接著,Jeong等人[16]提出一種深度三維注意力U-Net(3D attention U-Net)有效學(xué)習(xí)了各個形狀的肝臟。Jin等人[17]提出用于肝腫瘤分割的RA-UNet,在網(wǎng)絡(luò)中加入注意力剩余機制,可以較好地獲取并利用上下文信息。
以上肝臟自動分割的研究方法都需要大量的肝臟標(biāo)注數(shù)據(jù)進行全監(jiān)督學(xué)習(xí)訓(xùn)練,但獲取這些肝臟區(qū)域標(biāo)注需要醫(yī)學(xué)專家進行細致的手動勾畫,費時費力。因此有研究者提出了一種半監(jiān)督學(xué)習(xí),以減少對人工標(biāo)注的依賴。在2013年Lee等人[18]提出“偽標(biāo)簽”一詞,通過網(wǎng)絡(luò)自訓(xùn)練利用少量標(biāo)簽數(shù)據(jù)訓(xùn)練大量無標(biāo)注樣本,分割結(jié)果較好。Yang等人[19]提出了一個基于圖嵌入的半監(jiān)督學(xué)習(xí)網(wǎng)絡(luò)框架,可以共同預(yù)測偽標(biāo)簽和圖形中的鄰域上下文信息。但上述方法生成的偽標(biāo)簽部分效果欠佳,容易使網(wǎng)絡(luò)錯誤學(xué)習(xí)。在這個問題上,Zhou等人[20]提出從矢狀面、冠狀面和軸向平面等多個平面挖掘共識信息,采用多平面融合生成更可靠的偽標(biāo)簽,減少了偽標(biāo)簽中出現(xiàn)的誤差,有助于訓(xùn)練更好的分割網(wǎng)絡(luò)。Liu等人[21]提出使用全連接條件隨機場處理偽標(biāo)簽,提升偽標(biāo)簽精度,其改進了網(wǎng)絡(luò)的并行空間和激勵模塊,能更好地保留圖像邊緣信息。
該文充分利用少量帶有肝臟分割標(biāo)記的CT圖像來預(yù)測大量無標(biāo)記的肝臟CT圖像,提出一種基于協(xié)同訓(xùn)練[22]的肝臟CT圖像自動分割方法,包括全監(jiān)督訓(xùn)練、偽標(biāo)簽挑選和偽標(biāo)簽優(yōu)化三個階段。(1)將有標(biāo)簽數(shù)據(jù)輸入3D U-Net和3D Res U-Net進行全監(jiān)督訓(xùn)練,然后把得到的兩個分割模型分別對無標(biāo)簽圖像進行預(yù)測,得到多個偽標(biāo)簽;(2)利用兩種分割網(wǎng)絡(luò)之間的差異性,將得到的偽標(biāo)簽用Dice值進行挑選,挑選出Dice值較高的偽標(biāo)簽進行下一步處理;(3)把挑選后的偽標(biāo)簽用全連接條件隨機場進行細化處理,提高偽標(biāo)簽的準(zhǔn)確性。處理后的偽標(biāo)簽加入到訓(xùn)練集繼續(xù)訓(xùn)練,直到第二步Dice值不再增大后停止訓(xùn)練。所提方法可以減少分割模型對肝臟區(qū)域手動勾畫標(biāo)注數(shù)據(jù)的依賴,同時還可以提升CT肝臟器官的分割結(jié)果精度。半監(jiān)督分割網(wǎng)絡(luò)框架如圖1所示。具體方法如下所述。
圖1 網(wǎng)絡(luò)協(xié)同訓(xùn)練示意圖
實驗先把有標(biāo)簽數(shù)據(jù)分別輸入到3D U-Net和3D Res U-Net進行全監(jiān)督訓(xùn)練,訓(xùn)練網(wǎng)絡(luò)中損失函數(shù)均采用DiceLoss,如公式(1):
(1)
將無標(biāo)簽數(shù)據(jù)分別輸入基于3D U-Net和3D Res U-Net訓(xùn)練出的兩個分割模型中進行預(yù)測,預(yù)測結(jié)果作為偽標(biāo)簽集。在半監(jiān)督學(xué)習(xí)方法中,難點是如何選擇可靠的偽標(biāo)簽加入到訓(xùn)練集中以擴大訓(xùn)練集,該文選用常用的評估指標(biāo)Dice(Dice similarity coefficient)值的大小來判斷,如公式(2)所示。Dice值超過0.85的偽標(biāo)簽在下一步進行標(biāo)簽優(yōu)化。
(2)
式中,P1和P2分別代表3D U-Net與3D Res U-Net網(wǎng)絡(luò)對同一CT圖像的分割結(jié)果。
在網(wǎng)絡(luò)訓(xùn)練中,若有通過3D U-Net與3D Res U-Net協(xié)同網(wǎng)絡(luò)預(yù)測產(chǎn)生精度不高的偽標(biāo)簽,未作處理便加入訓(xùn)練集中進行訓(xùn)練,會導(dǎo)致迭代訓(xùn)練過程中網(wǎng)絡(luò)學(xué)習(xí)出錯,致使錯誤累積。Dense CRF可以優(yōu)化偽標(biāo)簽中粗糙和邊緣不確定的標(biāo)記,修補零星的區(qū)域,使其趨近于金標(biāo)簽。Dense CRF的能量函數(shù)[23]如下:
(3)
式中,τe(ki)為一元勢能,用于衡量像素點的類別概率,τe(ki)=-logP(fi),fi為經(jīng)過分割網(wǎng)絡(luò)后像素i得到的預(yù)測結(jié)果,P(fi)為f的概率;τf(ki,kj)為像素i和像素j上的預(yù)測結(jié)果ki,kj之間的二元勢能,解釋各個像素點之間的關(guān)系,表達式如下:
(4)
式中,ω1,ω2為線性組合權(quán)重;μ為標(biāo)簽兼容性函數(shù),μ(ki,kj)為標(biāo)簽兼容項[24],它約束了像素間傳導(dǎo)的條件,當(dāng)ki≠kj時,μ(ki,kj)=1,否則為0;像素之間的鄰近程度和相似度由系數(shù)σα和σβ控制;σγ=1,其將較小的獨立區(qū)域去除;mi,mj分別為像素i和像素j的位置關(guān)系,ni,nj分別為像素i和像素j的強度值。二元勢能函數(shù)會多于注意到具有相似位置m、相似強度n但具有不同標(biāo)記的k像素。能量E(Z)越小,預(yù)測的類別標(biāo)簽m就越準(zhǔn)確。
在實驗中,預(yù)測的偽標(biāo)簽用Dense CRF進行優(yōu)化,可以提高偽標(biāo)簽的準(zhǔn)確度,使其更趨近金標(biāo)簽。
Algorithm1:半監(jiān)督訓(xùn)練算法
I.Network training
Input:輸入有標(biāo)簽數(shù)據(jù)集FL={XL,YL}
Output:ModelMU,MR//MU為3D U-Net網(wǎng)絡(luò)模型,MR為3D Res U-Net網(wǎng)絡(luò)模型
1:Training 3D U-Net,3D Res U-Net
2:Save modelMU,MR
II.Semi-supervised training
Input:輸入無標(biāo)簽數(shù)據(jù)集FU={XU}
1:Load modelMU,MR
2:fori=1,2,…,Ndo //i表示樣本集編號
4:Compare∈YU
5: OptimizeYUwith Dense CRF
6: end for
7:until converged
實驗數(shù)據(jù)來自公開數(shù)據(jù)集2017 MICC AI LiTS肝臟腫瘤分割挑戰(zhàn)賽(https://competitions.codalab.org/competitions/17094),其中包括0~130號共131例的腹部CT圖像及其金標(biāo)簽。將數(shù)據(jù)中的肝臟和肝腫瘤的標(biāo)簽融合為一個,肝臟CT圖像大小為512×512×L(其中L為CT數(shù)據(jù)中的切片數(shù)量)。將肝臟CT圖像的灰度值標(biāo)準(zhǔn)化到[-100,100]。
網(wǎng)絡(luò)學(xué)習(xí)率設(shè)置為1e-4;設(shè)置epoch=200;設(shè)置batch size=1或2。實驗使用的服務(wù)器配置如下:Intel E5-2620 v2@2.10 GHz CPU和NVIDIA RTX 3090顯卡,主要的軟件環(huán)境Python3.7、CUDA11.1、Keras2.2.5等。
Dice系數(shù)和Iou(Intersection over union)是醫(yī)學(xué)分割任務(wù)中常見的評估指標(biāo),它們都是用來衡量網(wǎng)絡(luò)分割結(jié)果與金標(biāo)準(zhǔn)mask之間的相似性,表達式如下:
(5)
(6)
式中,P為預(yù)測所得到的結(jié)果區(qū)域,G為金標(biāo)簽,即醫(yī)師所標(biāo)注的真實區(qū)域。
特異性(specificity)和靈敏度(sensitivity)兩個指標(biāo)經(jīng)常用來描述分類器的性能,前者指識別出的負例占所有負例的比例,后者指識別出的所有正例占所有正例的比例,表達式如下:
(7)
(8)
式中,TP是真陽性,分類器預(yù)測結(jié)果為正樣本,實際也為正樣本,即正樣本被正確識別的數(shù)量;TN是真陰性,分類器預(yù)測結(jié)果為負樣本,實際為負樣本,即負樣本被正確識別的數(shù)量;FP是假陽性,分類器預(yù)測結(jié)果為正樣本,實際為負樣本,即誤報的負樣本數(shù)量;FN是假陰性,分類器預(yù)測結(jié)果為負樣本,實際為正樣本,即漏報的正樣本數(shù)量。
實驗在2017 MICCAI LiTS肝臟腫瘤數(shù)據(jù)集隨機選取100例CT圖像作為訓(xùn)練集,剩余31例作為測試集。在這100例數(shù)據(jù)中將其分為30、50、70例有標(biāo)簽數(shù)據(jù),剩下數(shù)據(jù)依次分為70、50、30的無標(biāo)簽數(shù)據(jù)。將這幾種實驗設(shè)置下獲得的模型分別對測試集進行分割預(yù)測,將其結(jié)果與3D U-Net、3D KiU-Net[25]、3D SegNet[26]和3D ResU-Net使用100例灰度圖像及其真值標(biāo)注的全監(jiān)督分割結(jié)果進行對比。
表1展示了四種網(wǎng)絡(luò)的全監(jiān)督分割結(jié)果與文中方法在不同有標(biāo)簽占比下的比較結(jié)果。文中方法在有標(biāo)簽占30%時便可達到3D ResU-Net全監(jiān)督分割的效果。在表2中可以看出,隨著有標(biāo)簽數(shù)據(jù)的減少,四種分割網(wǎng)絡(luò)的半監(jiān)督分割結(jié)果明顯比全監(jiān)督的時候有所降低。
表1 不同標(biāo)簽數(shù)量占比下的分割性能比較
表2 不同標(biāo)簽數(shù)量占比下的半監(jiān)督分割性能比較
當(dāng)有標(biāo)簽數(shù)據(jù)的占比達到70%時,文中方法比全監(jiān)督3D ResU-Net的Dice值高出1.32%,比全監(jiān)督3D U-Net的Dice值高出3.67%。為能更直觀地展示文中方法的分割結(jié)果,在MP=70%的時候選取部分結(jié)果的分割圖像,如圖2所示。在圖3展示了分割結(jié)果的三維可視化。
圖2 分割對比網(wǎng)絡(luò)效果圖
圖3 3D可視化分割圖
提出的基于半監(jiān)督的3D肝臟CT圖像自動分割方法,有效利用了CT圖像的三維信息,解決了醫(yī)學(xué)圖像需要大量有標(biāo)簽數(shù)據(jù)并且獲取困難的問題,為醫(yī)生診斷治療節(jié)約時間。實驗結(jié)果表明,該方法的肝臟分割精度相比3D U-Net等網(wǎng)絡(luò)都有明顯的提升。
在未來工作中,要進一步提高半監(jiān)督學(xué)習(xí)中加入偽標(biāo)簽的模型的分割性能,達到用少量標(biāo)簽就可實現(xiàn)大量預(yù)測且達到高精度的效果。該研究還會將提出的半監(jiān)督分割方法應(yīng)用到其他醫(yī)學(xué)圖像數(shù)據(jù)集中,以提高該方法的普適性。