高海軍 ,曾祥銀 ,潘大志 ,3,鄭伯川 ,3*
(1. 西華師范大學(xué)數(shù)學(xué)與信息學(xué)院,四川南充 637009; 2. 西華師范大學(xué)計算機學(xué)院,四川南充 637009;3. 西華師范大學(xué)計算方法與應(yīng)用軟件研究所,四川 南充637009)
直腸癌是指從齒狀線至直腸乙狀結(jié)腸交界處之間的惡性腫瘤,是消化道最常見的惡性腫瘤之一[1]。根據(jù)2019 年中國癌癥統(tǒng)計,直腸癌占癌癥發(fā)病總數(shù)的38.8%,高居第二位[1],是導(dǎo)致死亡的主要癌癥之一。直腸癌也是全球癌癥死亡率較高的常見癌癥[2],每年有許多癌癥患者死于直腸癌。幸運的是,直腸癌的病情通常發(fā)展緩慢,如果在直腸腫瘤發(fā)展為癌癥之前發(fā)現(xiàn)并將其切除,則可以預(yù)防直腸癌[3]。因此,直腸腫瘤的定位與識別是直腸癌診斷和治療的基礎(chǔ)和關(guān)鍵。一般情況下,醫(yī)生通過觀看患者的計算機斷層掃描(Computed Tomography,CT)影像圖,診斷直腸部分是否有腫瘤和潛在的直腸癌,如有則標(biāo)出直腸腫瘤區(qū)域以便實施手術(shù)。直腸腫瘤在CT影像圖中特征不明顯,需要經(jīng)驗豐富的醫(yī)生才能準(zhǔn)確識別并標(biāo)定出腫瘤區(qū)域。如果醫(yī)生經(jīng)驗不足或者診斷不夠認真仔細都可能導(dǎo)致對直腸腫瘤的漏診或者誤診。因此,有必要對直腸腫瘤自動分割技術(shù)開展算法研究。直腸腫瘤自動分割技術(shù)可以輔助醫(yī)生診斷,降低醫(yī)生的勞動強度,提高直腸癌診斷準(zhǔn)確率,為患者治療爭取寶貴時間。
近年來,隨著人工智能技術(shù)的發(fā)展,圖像分割越來越多地采用深度學(xué)習(xí)技術(shù),取得了優(yōu)于傳統(tǒng)分割技術(shù)的分割效果。2015 年,Ronneberger 等[4]提出的 U-Net 網(wǎng)絡(luò)模型采用編碼器-譯碼器結(jié)構(gòu),編碼器部分通過卷積和逐級下采樣提取圖像層級的特征對輸入圖像進行編碼;解碼器通過卷積和逐級上采樣將編碼信號映射成相應(yīng)的二值分割掩模,得到分割結(jié)果。受U-Net模型啟發(fā),許多研究者對U-Net網(wǎng)絡(luò)進行了改進。文獻[5]中提出了U-Net++模型,通過增加編碼器和解碼器之間的細粒度信息來重新設(shè)計跳躍連接;文獻[6]中提出的R2U-Net 用反卷積替換U-Net 中的卷積塊;文獻[7]中將注意力機制融入到U-Net 模型中,可以決定編碼器到解碼器的跳躍連接中傳播什么信息;文獻[8]中使用密集卷積塊和雙向卷積長短期記憶模型將最有效的特性從編碼器傳播到解碼器;文獻[9]中則采用雙層編碼器到解碼器結(jié)構(gòu),同時使用卷積自編碼注意力機制,可對細粒度圖像進行分割。這些基于U-Net模型的改進都在一定程度上提升了對特定圖像的分割性能。
醫(yī)學(xué)圖像分割作為圖像分割的一類,廣泛采用最新的圖像分割技術(shù)。受殘差網(wǎng)絡(luò)(Residual Network,ResNet)[10]的啟發(fā),文獻[11]中提出了H-DenseUNet 模型用于肝臟腫瘤CT 圖像的分割,解決了二維卷積不能充分利用三維空間信息、卷積計算成本高以及GPU 內(nèi)存消耗大的問題。文獻[12]中提出的Y-Net 可用于對直腸息肉進行分割檢測。Y-Net 也是基于U-Net結(jié)構(gòu)的,不同的是Y-Net比U-Net多一個編碼器,其中一個編碼器使用預(yù)訓(xùn)練好的VGG19 權(quán)值。在直腸息肉分割中,Y-Net分割效果要優(yōu)于U-Net。文獻[13]中提出了一種注意力機制的殘差網(wǎng)絡(luò)模塊FocusNetAlpha,并將其嵌入到U-Net 結(jié)構(gòu)中,形成新的網(wǎng)絡(luò)模型。該模型能記住更多的息肉區(qū)域的圖像特征,輸出更好的息肉區(qū)域上下語義信息。關(guān)于圖像分割和檢測的深度學(xué)習(xí)回顧,請參閱文獻[14-16]。
直腸腫瘤分割方法主要分為兩大類:傳統(tǒng)的分割方法[17-19]和神經(jīng)網(wǎng)絡(luò)算法[20-22]。文獻[17]中提出了一種基于超像素的分割算法,但該算法無法自動分割,需要人機交互。文獻[18]中提出了一種基于區(qū)域生長的直腸癌腫瘤分割算法,但該算法在分割過程中需要人為給出腫瘤區(qū)域的強度信號,整個過程也需要人機交互,而且容易造成分割過度。文獻[19]中提出了一種直腸癌腫瘤水平集的分割算法,該算法對邊界不敏感,當(dāng)邊界存在模糊情形時的分割效果不好。文獻[20]中提出了基于全卷積神經(jīng)網(wǎng)絡(luò)(Fully Convolutional Network,F(xiàn)CN)的直腸癌腫瘤磁共振影像自動分割方法。該方法主要應(yīng)用一個預(yù)訓(xùn)練好的ResNet50 提取特征,在網(wǎng)絡(luò)隱藏層添加3 個邊輸出模塊,實現(xiàn)圖像數(shù)據(jù)的多尺度特征提取,最后融合3 個邊輸出模塊獲得最終的分割結(jié)果。文獻[21]中提出了一種基于改進FCN 的肝臟CT 圖像腫瘤分割方法,在FCN 中進行多尺度卷積層融合,能解決傳統(tǒng)FCN 分割精度不佳的問題。文獻[22]中提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)來實現(xiàn)直腸腫瘤區(qū)域分割的算法,但耗時較長且無法兼顧圖像的局部信息和全局信息。文獻[23]中提出了一種類似2D U-Net模型分割直腸腫瘤的算法,通過利用圖像的3D 信息,以5 通道張量作為網(wǎng)絡(luò)輸入,采用兩階段訓(xùn)練策略來提升訓(xùn)練效率。
雖然U-Net、Y-Net和FocusNetAlpha 模型在肝臟腫瘤分割和直腸息肉分割中取得了不錯的分割效果,而且將三種模型直接用于直腸腫瘤分割時,體積大且特征明顯的腫瘤塊也能被較好地分割,但細小的腫瘤塊分割卻不理想。對于分割精度來說,以上模型對直腸腫瘤區(qū)域的分割精度還有待提升。本文針對直腸腫瘤區(qū)域分割,提出一種U-Net 改進模型,其主要改進在于在編碼器的每級特征提取模塊中嵌入一個同時進行上下采樣的子編碼模塊,以提升網(wǎng)絡(luò)對目標(biāo)區(qū)域的特征表達能力。另外還通過對比實驗選擇最適合的優(yōu)化器訓(xùn)練模型,通過數(shù)據(jù)擴充增加數(shù)據(jù)樣本來提升模型性能。本文將改進的U-Net 模型稱作帶子編碼塊的U 型網(wǎng)絡(luò)(U Network with Sub Coding Block,U-Net-SCB)。為了評價分割模型對小目標(biāo)的分割性能,本文借鑒COCO 數(shù)據(jù)集[24]中對小目標(biāo)的定義,將小于等于32個像素的直腸癌腫瘤區(qū)域看作小目標(biāo)。
U-Net-SCB 模型是基于 U-Net[4]的改進模型,主要改進是將每個層的編碼部分用1 個子編碼模塊替換,以提高其對小目標(biāo)的特征表達能力,從而提高對直腸腫瘤區(qū)域的分割性能。
U-Net-SCB模型整體呈U型結(jié)構(gòu),如圖1所示。
U-Net-SCB模型的每一層都由一對編碼器和解碼器構(gòu)成,都有相同大小的特征圖,特征圖的通道數(shù)隨特征圖尺度變小而增大;每層解碼器接受下層解碼器的上采樣特征和同層編碼器輸出特征的合并特征,合并特征再經(jīng)過2 個3×3 卷積和1個1×1 卷積后上采樣輸出到上層解碼器;每層編碼器除了向同層解碼器輸出特征外,還向下層編碼器下采樣輸出特征;最上層解碼器輸出分割結(jié)果。改進主要包括:1)在1~4 層的編碼器中,每層用1 個子編碼模塊替換原來的多層卷積操作(見圖1 中SCB1~SCB4);2)解碼器部分每層比U-Net 結(jié)構(gòu)多一個卷積操作。子編碼塊具體操作如圖1 中SCB 虛線框所示,子編碼模塊開始經(jīng)過3 個卷積層,然后分成兩個分支:上分支由上采樣操作,2 個卷積操作之后再作最大池化操作;下分支通過最大池化操作,2 個卷積操作之后再作上采樣操作;最后合并后進行3個卷積操作。
可以看到U-Net-SCB 模型加深了編碼器部分的網(wǎng)絡(luò)深度。子編碼模塊通過上下采樣進一步放大混合了圖像中的細節(jié)特征,使模型U-Net-SCB 對直腸腫瘤的分割效果更好,特別是對小目標(biāo)的分割效果更好。
本文采用文獻[12]中的損失函數(shù)。設(shè)P為算法得到的分割圖中所有像素構(gòu)成的集合,G為真實的標(biāo)注掩模圖中所有像素構(gòu)成的集合。定義損失函數(shù)為:

其中:第一項主要計算Dice 系數(shù);第二項則是計算二分類交叉熵;pi∈{0,1}為算法得到的分割圖中像素點i的值;gi∈ {0,1}為標(biāo)注掩膜圖中像素點i的值;N是分割圖和標(biāo)注掩模圖中的像素點總個數(shù);λ為懲罰系數(shù);ε是光滑算子,用于避免損失函數(shù)中分母為0。
本文的模型在TensorFlow 和Keras 框架下實現(xiàn),硬件環(huán)境 :CPU 為 Inter Xeon 4114,2 個 CPU,2.20 GHz,GPU 為NVIDIA P6000。軟件環(huán)境:Unbuntu18.0、TensorFlow、Keras、Python 3.7。首先通過對比實驗選擇最適合的優(yōu)化器,然后用選定的優(yōu)化器訓(xùn)練U-Net-SCB 得到訓(xùn)練模型。最后將U-Net-SCB和其他三種網(wǎng)絡(luò)結(jié)構(gòu)進行性能對比測試。
本文采用第七屆“泰迪杯”數(shù)據(jù)挖掘挑戰(zhàn)賽B 題的數(shù)據(jù)[1]。直腸腫瘤患者的影像數(shù)據(jù)可分為動脈期和門脈期兩種,動脈期是患者在造影注射25~30 s 時間拍攝,而門脈期是在患者造影注射60 s 后拍攝,兩者在腫瘤區(qū)域和周圍的組織的強度存在差異。在實際的腫瘤分割任務(wù)中,只需分割直腸腫瘤區(qū)域,故將兩種數(shù)據(jù)放在一起進行訓(xùn)練。由CT影像和標(biāo)注的直腸腫瘤區(qū)域的掩模作為數(shù)據(jù)訓(xùn)練樣本進行訓(xùn)練。由于CT 圖像是連續(xù)斷層掃描圖像,故圖像中有些含有直腸腫瘤區(qū)域,有些則沒有。訓(xùn)練集包含1 693 張帶有標(biāo)注的圖像,每張圖像都包含直腸腫瘤區(qū)域;測試集包含104 張帶有標(biāo)注的圖像,其中102 張圖像包含直腸腫瘤區(qū)域,剩余2 張不包含。所有訓(xùn)練和測試圖像大小統(tǒng)一為256 × 256,并進行歸一化處理。
為了評價算法的分割性能,實驗中主要采用Dice 系數(shù)CDice、查準(zhǔn)率P和查全率R三個指標(biāo)進行定量評價[18]。指標(biāo)的計算公式分別如下:


其中:A是標(biāo)注的直腸腫瘤區(qū)域像素構(gòu)成的集合;B是分割得到的直腸腫瘤區(qū)域像素構(gòu)成的集合;TP表示被正確檢測為正樣本的像素數(shù)量;FP表示被錯誤檢測為正樣本的像素數(shù)量;FN表示被錯誤檢測為負樣本的像素數(shù)量。Dice 系數(shù)的取值范圍是[0,1],Dice值越大說明算法分割的結(jié)果與標(biāo)注的結(jié)果越接近,分割效果越好。如果查全率R過低,表示較多的直腸腫瘤區(qū)域沒有被分割出來;如果查準(zhǔn)率P太低,說明分割不夠精確。
實驗發(fā)現(xiàn)U-Net-SCB 模型的分割性能和優(yōu)化器的選擇有關(guān),因此為了獲得最適合的優(yōu)化器,得到最好的分割性能,本文對比實驗了 U-Net-SCB 模型分別采用 diffGrad[25]、SGDM[26]、AdaDelta[27]、AdaGrad[28]、RMSProp[29]、AMSGrad[30]和 Adam[31]優(yōu)化器之后的分割性能。實驗發(fā)現(xiàn),當(dāng)采用優(yōu)化器AdaDelta、RMSProp 和 AMSGrad 時,訓(xùn)練 50 次之后,Dice 系數(shù)仍然低于20%,且不能收斂。U-Net-SCB 模型采用其他4 種優(yōu)化器后,分別得到的性能評價指標(biāo)值如表1 所示。可以看出,U-Net-SCB 模型采用Adam 優(yōu)化器后,其整體性能最好,因此本文的U-Net-SCB模型采用Adam優(yōu)化器進行訓(xùn)練。

表1 不同優(yōu)化器性能指標(biāo)對比 單位:%Tab. 1 Comparison of performance indicators of different optimizers unit:%
考慮到訓(xùn)練集數(shù)據(jù)量有限,實驗中對訓(xùn)練集進行數(shù)據(jù)擴充,主要包括:10°~350°范圍內(nèi)隨機旋轉(zhuǎn)圖像;隨機顏色擾動形成新的圖像;在x方向和y方向-10~10 像素范圍內(nèi)隨機裁剪圖像。數(shù)據(jù)擴充后,訓(xùn)練集由原來的1 693 張擴充到8 465張。圖2(a)的3 張原圖經(jīng)過數(shù)據(jù)擴充后得到的圖2(b)~(d)所示。
為了對比數(shù)據(jù)擴充對U-Net-SCB 模型性能的影響,分別將原始訓(xùn)練集與數(shù)據(jù)擴充后的訓(xùn)練集訓(xùn)練U-Net-SCB,然后測試分割性能,性能對比結(jié)果如表2 所示。表2 表明,數(shù)據(jù)擴充提升了U-Net-SCB的分割性能。

表2 數(shù)據(jù)擴充前后性能指標(biāo)對比 單位:%Tab. 2 Comparison of performance indicators before and after data augmentation unit:%
訓(xùn)練模型時將訓(xùn)練集的20%作為驗證集,剩下的80%繼續(xù)作為訓(xùn)練集,因此訓(xùn)練集、驗證集和測試集在數(shù)據(jù)擴充前后包含的圖像數(shù)量如表3,其中測試集未做任何數(shù)據(jù)擴充處理。訓(xùn)練時設(shè)置batchsize 為16,學(xué)習(xí)率η為0.000 01,光滑算子ε為10-4,訓(xùn)練50輪。

圖2 數(shù)據(jù)擴充的部分結(jié)果Fig. 2 Some results of data augmentation

表3 訓(xùn)練集、驗證集和測試集的大小Tab. 3 Sizes of training set,validation set and test set
數(shù)據(jù)擴充后,U-Net-SCB 模型訓(xùn)練時的Dice 系數(shù)隨訓(xùn)練次數(shù)的變化曲線如圖3(a)所示,訓(xùn)練集和驗證集的損失函數(shù)隨訓(xùn)練次數(shù)的變化曲線如圖3(b)所示。可以看出,訓(xùn)練50輪時,損失函數(shù)已經(jīng)收斂,收斂時訓(xùn)練集和驗證集的Dice 系數(shù)都達到99%以上。
為了驗證 U-Net-SCB 的分割性能,將 U-Net-SCB 與 U-Net、Y-Net和FocusNetAlpha 三種網(wǎng)絡(luò)模型的分割性能進行對比實驗,部分結(jié)果如圖4、5所示。
圖4 展示的是對小目標(biāo)的分割效果,可以看出U-Net-SCB對小目標(biāo)的分割與標(biāo)注圖更接近,優(yōu)于其他三種模型;圖5 展示的是對直腸腫瘤分割的細節(jié)對比,紅色實線框(大矩形框)部分是虛線框部分的放大圖,通過放大圖可以看出,相對其他三種模型,U-Net-SCB模型分割得到的直腸腫瘤區(qū)域的邊緣輪廓形狀與標(biāo)注圖更接近。另外從每張分割圖下方的Dice 系數(shù)也可以看出,U-Net-SCB 模型所得分割圖的Dice 系數(shù)最高,說明U-Net-SCB模型得到的腫瘤區(qū)域與標(biāo)注圖更接近。
實驗得到的4 種網(wǎng)絡(luò)模型的評價指標(biāo)值如表4 所有目標(biāo)列所示。由表4 可以看出,U-Net-SCB 模型的3 個指標(biāo)值都優(yōu)于其他三種模型,其中P比最好的提高了8.62個百分點,R比最好的提高了8.49個百分點,CDice比最好的提高了2.55個百分點。
為了進一步驗證對小目標(biāo)的分割性能,從測試集中提取包含直腸腫瘤小目標(biāo)的CT圖像28張,對比4種分割網(wǎng)絡(luò)模型對這28 張圖中的小目標(biāo)的分割性能,對比結(jié)果如表4 中的小目標(biāo)列所示。可以發(fā)現(xiàn),相較其他三種模型,U-Net-SCB 模型對小目標(biāo)具有更好的查準(zhǔn)率、查全率和Dice 系數(shù),對小目標(biāo)的分割性能更突出。

圖3 Dice系數(shù)和損失函數(shù)隨訓(xùn)練次數(shù)的變化情況Fig.3 Dice coefficient and loss function varying with epochs

圖4 各對比模型的小目標(biāo)分割結(jié)果Fig. 4 Segmentation results for small objects of different models

圖5 各對比模型的分割細節(jié)對比Fig. 5 Segmentation details of different models

表4 不同網(wǎng)絡(luò)針對不同目標(biāo)的性能指標(biāo)對比 單位:%Tab. 4 Comparison of performance indicators of different networks for different goals unit:%
直腸癌是我國嚴(yán)重惡性腫瘤之一,死亡率高,而直腸腫瘤區(qū)域的精確分割往往是直腸癌診斷的關(guān)鍵,運用深度學(xué)習(xí)方法對直腸腫瘤區(qū)域進行精準(zhǔn)分割,是人工智能技術(shù)在醫(yī)學(xué)領(lǐng)域的重要應(yīng)用。基于U-Net-SCB 的直腸腫瘤分割能輔助醫(yī)生對直腸腫瘤進行診斷,有助于減輕醫(yī)生勞動強度,減少漏診和誤診,為患者爭取寶貴的治療時間。