姜旭恒 常宗強 丁英杰
(威海市中心醫院 山東省威海市 264400)
肺部疾病一直是威脅人類健康的主要疾病。近年來,肺癌的發病率和死亡率迅速增長,已經成為對人類生命威脅最大的惡性腫瘤之一[1]。作為肺部疾病最有效的無創檢測技術,CT以其分層薄、分辨率高、低噪聲等特點,被廣泛應用到肺部疾病篩查和診斷當中[2]。
近年來,隨著人工智能的不斷發展,計算機輔助診斷(computer aided diagnosis,CAD)在醫學影像領域得到了廣泛的應用[3],特別是在肺癌、肺結節等肺部疾病診斷方面已取得了重要進展。現階段,計算機輔助診斷系統主要利用深度學習算法訓練靈敏度較高的卷積神經網絡來實現對病灶的快速自動檢測。為了訓練深度神經網絡,通常需要大量的肺部CT影像訓練數據集和標簽數據集,人體胸腔結構復雜,肺部CT影像除顯示肺實質外還有支氣管、胸廓、檢查床等噪聲信息,不利于深度神經網絡模型的訓練[4]。因此,需要對肺部CT圖像進行分割得到肺實質后再送入深度神經網絡進行訓練。
圖像分割技術是計算機視覺領域的重要研究方向,現已廣泛應用于醫學影像的分割處理。傳統的圖像分割算法包括閾值分割算法[5]、邊緣分割算法、區域分割算法[6]、聚類分析分割算法[7]和形態學算法[8]等,這些算法通常存在運算速度慢、噪聲水平較高、需要人為設定超參數,受主觀因素影響較大等問題。目前,國內外各研究學者提出了大量基于深度學習的醫學圖像分割方法并取得了實質性進展,其主流算法大多是基于深度卷積神經網絡[9]。1988年,Wei Zhang提出了第一個二維卷積神經網絡,平移不變人工神經網絡,并將其應用于檢測醫學影像。2006年,研究人員提出深度學習理論以后,卷積神經網絡強大的特征提取能力受到廣泛關注。2012年以后,隨著GPU等硬件的迅速發展,AlexNet[10]、VGGNet[11]、GoogLeNet[12]以及ResNet[13]等深度卷積神經網絡先后成為ImageNet大規模視覺識別競賽的優勝算法,并取得了廣泛的應用。2015年Ronneberger等人提出了U-net[14]網絡,U-net網絡以其U型結構結合上下層信息和訓練速度快、需要訓練數據量小等優點,被廣泛應用于醫學影像分割領域[15]。此后,大多數醫學影像分割的卷積神經網絡都是基于U-net網絡進行的改進。Zongwei Zhou等人重新設計了U-net網絡,通過改變編碼器與解碼器之間的跳躍連接,抓取不同層次的特征并通過特征疊加的方式整合,從而充分使用淺層和深層特征,縮短編碼器與解碼器之間的語義鴻溝[16],實現更加準確的圖像分割效果,稱為U-net++網絡。本文采用U-net++網絡對胸部CT圖像進行肺實質的分割。
U-net++網絡是在U-net網絡的基礎上做了改進。U-net網絡架構如圖1所示,其網絡形狀如字母U,呈對稱狀,采用的是編碼-解碼的結構。左側是編碼部分,圖像輸入到U-net網絡中,經過兩層3*3卷積核,再通過RELU激活函數,最終經過2*2最大池化層實現下采樣,該部分的主要作用是對圖像進行特征提取。右側是解碼部分,將上一層的結果首先進行2*2的反卷積進行上采樣,并通過跳躍連接把下采樣和對應上采樣得到的相同尺度的特征圖在通道維度上進行拼接,再通過兩個3*3卷積核,并用RELU函數進行激活,最后通過一層1*1卷積核后輸出。

圖1:U-net網絡架構
U-net原論文中下采樣卷積層為4層,對于圖像的特征提取來說,淺層卷積神經網絡可以提取圖像的一些簡單特征,如邊界、顏色等,而深層卷積神經網絡因為感受野不斷增大,可以提取到更多的抽象特征。然而,U-net網絡結構層次并不是越深越好,因為不同層次特征的重要性對于不同的數據集是不一樣的,因此在醫學影像分割任務中,很難找到一個固定層次的U-net網絡對所有數據集都可以得到最優解。其次,在編碼-解碼網絡中使用的跳躍連接的設計受到不必要的限制,只是將對應層的編碼器和解碼器特征圖進行融合。但來自解碼器和編碼器網絡的相同比例的特征圖在語義上并不相同,沒有可靠的理論保證它們是特征融合的最佳匹配。U-net++網絡如圖2所示,其有效的解決了上述問題。U-net++網絡嵌入了不同深度的U-net網絡,所有的U-net都部分共享編碼器,而其解碼器部分重新設計了跳躍連接,經過重新設計的跳躍連接在解碼器節點處提供了不同比例的特征圖,從而使聚合層可以決定如何將跳躍連接中攜帶的各種特征圖與解碼器特征圖融合在一起。這種結構的好處在于通過深度監督訓練網絡時,不需要過于關注網絡的深度,因為可以同時訓練所有的U-net,使網絡可以自動抓取不同層次的特征,再通過疊加的方式進行特征融合,實現更高靈敏度的特征提取。此外,U-net++網絡還可以進行剪枝,在原論文中U-net++有四個輸出,如果前幾層輸出的結果精度足夠高,那么就沒有必要繼續訓練后幾層,就可以在損失很小精度的情況下實現模型參數的大幅度減小,提高模型運行效率。

圖2:U-net++網絡結構
為了評估U-net++肺實質分割網絡的性能,本文搭建了NVIDIA RTX2070 Super GPU硬件平臺和Pytorch 1.8.0深度學習框架進行實驗和測試。設置每批次數據(batch size)為8,優化器為自適應矩估計算法(Adam),學習率為0.001,訓練迭代次數Epoch為20。
本文采用LUNA16(Lung Nodule Analysis 16)肺部公開數據集作為實驗數據集,該數據集是2016年提出的一個肺結節檢測數據集,提供了888例MHD格式的肺部CT圖像,圖像大小為512*512,每張CT圖像都有對應的肺實質掩膜圖像,可供神經網絡訓練,如圖3(a)、3(b)所示。本文選取20個病例4460張肺部CT圖像數據集,其中訓練集為2000張圖像,測試集為1000張圖像,驗證集為460張圖像,進行U-net++網絡的訓練和測試。

圖3:肺部CT圖像
評價參數和損失函數是訓練、評價神經網絡必不可少的部分。評價參數是評價圖像分割效果好壞的重要指標,常用Dice coefficient[17]、IOU[18]等評價參數。損失函數表示的是預測值和真實值之間的差異,通過優化使損失函數最小化,從而使預測值不斷接近真實值,提高神經網絡的魯棒性。損失函數選擇的正確與否直接關系到神經網絡的分割能力。本文選用Dice coefficient作為分割網絡的評價參數,交叉熵損失函數[19](Cross Entropy Loss)作為分割網絡的損失函數。
Dice系數是一種評估兩個集合相似度或重疊度的度量指標,其計算了預測值和真實值的重合區域的兩倍面積占兩者各自區域面積之和的比例,其范圍為[0,1]。Dice系數可以表示為:

其中X、Y分別表示真實的分割圖像和預測的分割圖像。
交叉熵損失函數能夠衡量真實概率分布和預測概率分布之間的差異,單個樣本的交叉熵損失函數可以表示為:

其中y表示真實標簽值,a表示預測值。在二分類中,真實標簽值一般為0或1,當y為1時,交叉熵損失函數為:

即預測值越接近真實值1,交叉熵損失函數值L越小。
同樣,當y為0時,交叉熵損失函數為:

即預測值越接近真實值0,交叉熵損失函數值L越小。因此,交叉熵損失函數可以較好的表征預測值和真實值之間的差異,被廣泛應用于深度學習中。
肺部CT圖像經過縮放、歸一化等預處理后,輸入到已經訓練好的U-net++網絡中,最終得到肺實質分割結果,分割網絡的平均Dice系數為0.9925。為了有效評估U-net++分割網絡的性能,本文將相同數據集的肺部圖像分別利用U-net分割網絡和形態學圖像分割方法進行對比。最終U-net分割網絡輸出的平均Dice系數為0.972,形態學圖像分割方法輸出的平均Dice系數為0.9468。并選取了其中三組具有代表性的肺部分割結果進行分析。
圖4(a)、4(b)分別表示第一組CT原始圖像及其肺部掩膜圖像,圖4(c)、圖4(d)、圖4(e)依次為U-net++網絡、U-net網絡和形態學方法的肺實質分割結果,其輸出Dice系數分別為0.9956、0.9937、0.9825。可以看出,在肺實質目標較大的情況下,三種分割方法均可以實現較為精準的分割。
圖5(a)、5(b)分別表示第二組CT原始圖像及其肺部掩膜圖像,圖5(c)、圖5(d)、圖5(e)依次為U-net++網絡、U-net網絡和形態學方法的肺實質分割結果,其輸出Dice系數分別為0.988、0.9852、0.9733。本組肺實質目標處于較小水平,此時U-net++網絡已經顯示出略優于其他兩種方法的分割性能,在肺實質邊緣和細節的分割上更加優于其他兩種方法,準確率已經有了一定提升。
圖6(a)、6(b)分別表示第三組CT原始圖像及其肺部掩膜圖像,圖6(c)、圖6(d)、圖6(e)依次為U-net++網絡、U-net網絡和形態學方法的肺實質分割結果,其輸出Dice系數分別為0.9933、0.9605、0.7687。本組肺實質目標處于極小水平,并且圖像中引入了其他組織器官作為噪聲,U-net網絡雖然對噪聲的抑制表現的較為理想,但對于小目標肺實質的分割效果還有所欠缺。而形態學方法由于其算法的特性,需要人為設置一些經驗值來獲得最終的分割圖像,顯然適合較大目標分割的經驗值已無法滿足其分割需求,最終將其他組織器官作為噪聲引入,分割結果偏差較大,需要重新設置相關參數以保證分割效果,分割速度明顯下降,不利于大批量CT圖像的快速、精準分割。

圖6
綜上所述,U-net++卷積神經網絡相較于U-net網絡、形態學操作等肺實質分割方法具有精準、高效的優勢,對于計算機輔助診斷肺部疾病的研究和發展具有推動作用。
本文介紹了基于U-net++網絡的CT圖像肺實質的分割方法及實現,原始肺部CT圖像經過已經訓練好的U-net++分割網絡可以實現快速、精準的肺實質分割,不僅可以為臨床醫生在診斷肺部疾病時提供了較少干擾的肺部圖像,也可以為后續肺癌和肺結節等肺部疾病的計算機輔助診斷神經網絡的設計提供了優質的肺實質訓練數據集。
下一步,將在此項目的基礎上進行肺結節的檢測研究,通過Faster-RCNN[20]、Mask-RCNN[21]、YOLO等目標檢測算法對LIDCIDRI、Luna16等肺部數據集進行訓練,得到靈敏度較高的肺結節檢測網絡,設計出一套肺結節計算機輔助診斷系統[22]。