杜佳成,余艷梅,汪恩惠,陶青川
(四川大學電子信息學院,成都 610065)
肺癌是我國第一大癌癥,發病率較高[1]。研究發現,及時診斷和治療能夠減少肺癌病人的死亡率[2]。相比X 射線,CT 能準確觀察到病灶位置,為早期肺癌診斷提供準確的診斷依據[3]。然而每次CT 斷層掃描都會生成幾百幀肺CT 圖像,給醫生診斷帶來挑戰。準確分割肺實質能幫助醫生快速定位病灶,為后續肺結節檢測、肺功能評估創造條件,輔助醫生快速診斷病情。
基于深度學習的肺實質分割算法速度更快,精度更高,是目前研究的熱點。Ronneberger等[4]提出一種對稱的編解碼模型U-Net,編碼器利用下采樣縮小特征圖分辨率,捕獲上下文信息,解碼器利用上采樣恢復圖像分辨率,二者用跳躍連接相連,保證解碼器在上采樣時能夠融合更多高層特征圖包含的高分辨率細節信息,目前已成為醫學圖像分割的主流結構。Alom等[5]提出了一種基于U-Net 模型的遞歸卷積神經網絡RU-Net 和一種基于U-Net 模型的遞歸殘差卷積神經網絡R2U-Net,利用遞歸殘差卷積層增強網絡提取特征的能力,增加網絡深度。Asadi-Aghbolaghi 等[6]提出一種具有密集連接卷積和雙向卷積LSTM(long short-term memory)[7]分割模型MCGU-Net,雙向卷積LSTM 以非線性的方式將上采樣后的特征圖與相應編碼器輸出的特征圖相結合,同時使用密集連接卷積加強特征傳播。
注意力機制已被廣泛應用于提高網絡模型性能[8],其基本思想是讓網絡像人一樣聚焦于重點信息,即把注意力放在感興趣區域上。Oktay等[9]提出的Attention U-Net,利用注意力機制讓U-Net 模型更集中于前景像素,提高了模型的分割性能。然而現有的注意力機制通常采用平均池化或最大池化來處理通道,計算量大且會丟失空間信息。協調注意力機制[10]避免既考慮通道之間的關系,也考慮特征空間中的位置信息,能夠有效加強對前景信息的特征表示。
密集連接卷積[11]能幫助網絡學習一組不同的特征圖,允許信息在網絡中流動以提高網絡的表示能力。空洞卷積能夠在擴大感受野的同時保持較高分辨率[12],幫助模型精確定位前景像素。Gu 等[13]提出的密集空洞卷積模塊,利用多尺度空洞卷積提取豐富的特征表示。
目前MGCU-Net[6]模型在LUNA16 數據集和Kaggle 肺分割數據集取得了較優的結果,但其在邊緣細節上的分割效果不太理想,存在以下問題:①未充分利用上下文信息,連續經過4次下采樣容易丟失特征信息,影響分割效果。②肺部CT 圖像背景信息復雜導致模型容易混淆前景和背景像素,降低邊緣分割精度。針對以上問題,本文提出了一種基于MGCU-Net改進的肺實質分割網絡CAMCGU-Net。主要有以下兩方面的貢獻:
(1)在上采樣層后加入協調注意力模塊,增強模型對于特征信息的學習能力,幫助網絡更好地定位感興趣區域,減少背景區域,提高模型的分割精度。
(2)在密集連接卷積層的基礎上增加空洞卷積,編碼器輸出后連接4個密集連接的空洞卷積塊,幫助模型獲取多尺度特征信息。
本文基于MCGU-Net 改進的CAMCGU-Net 網絡模型如圖1 所示,其中在MCGU-Net 框架上新增的協調注意力模塊和密集連接的空洞卷積塊用虛線框框出。整個模型包含編碼器和解碼器,二者中間使用4 個密集連接的空洞卷積塊連接,幫助網絡提取豐富多尺度特征信息,避免梯度爆炸。編碼器主要從輸入圖像中提取特征信息,它由卷積層和最大池化層組成,通過不斷縮小特征圖的空間尺寸來學習細節特征信息。解碼器將編碼器輸出的特征信息進行進一步的優化,它由上采樣層和協調注意力模塊組成,上采樣層將經過編碼器后縮小的特征圖恢復到原來的尺寸,以便于進一步的分割計算。協調注意力模塊能夠幫助解碼器更好地定位到感興趣區域,增強網絡學習特征的表達能力。CAMCGU-Net模型中使用雙向卷積LSTM 加權融合相應編碼器和解碼器的特征圖,更好地平衡來自不同尺度的特征,以提升分割精度。

圖1 CAMCGU-Net網絡模型
本文提出的肺實質分割網絡CAMCGU-Net的主要改進如下:在上采樣后引入了協調注意力模塊,以幫助模型聚焦于前景像素;同時在原密集連接卷積塊中引入了空洞卷積,以幫助模型捕獲多尺度特征信息。下面將分別介紹協調注意力模塊和空洞卷積模塊。
協調注意力模塊的示意圖如圖2所示,它能高效整合空間坐標信息,分別獲取圖像在高度和寬度上的注意力并對準確位置信息進行編碼,能對網絡中的任意中間特征張量進行轉換并輸出相同尺寸的張量。

圖2 協調注意力模塊示意圖[10]
本文在密集連接卷積的基礎上增加空洞卷積,來幫助模型獲取多尺度特征信息。具體來說,本文將兩個空洞卷積層作為一個密集連接的空洞卷積塊,在編碼器的最后一個卷積層中,連接4 個密集連接的空洞卷積塊,如圖3 所示。幫助模型獲取豐富多尺度特征的同時,避免梯度爆炸。第i個密集空洞卷積塊的輸入如公式(1)所示:

圖3 CAMCGU-Net中的密集空洞卷積模塊
式中為第j個密集空洞卷積塊的輸出。
本文實驗采用的硬件設備和軟件環境如表1所示。

表1 實驗環境
本次實驗訓練和驗證的batch size 均為4,總共訓練200 個批次。實驗中使用早停法(Early Stopping)來避免訓練批次過多導致出現模型過擬合。具體做法是在每個批次結束后,在驗證集上進行測試,如果驗證精度連續10 個訓練批次均無增加,則停止訓練,避免模型因訓練過多導致過擬合。
合適的學習率能夠幫助模型在較短時間內收斂到局部最小值,本文使用Keras 庫中ReduceLROnPlateau 方法配合早停法一起使用,避免因初始學習率過大導致訓練后期模型性能不再提升。具體來說,如果驗證損失在5個訓練批次都沒有下降,模型會自動降低學習率繼續訓練,從而繼續提升模型性能。通過兩種方法的配合使用,可以快速精確地獲得最優模型。
本次實驗采用2017 年Kaggle 數據科學碗中提供的肺分割數據集,該數據集內同時包含二維和三維肺分割CT 圖像,且均帶有手動標注,專門用于肺實質分割。圖4 為Kaggle 肺數據集中的示例,左邊是原始肺CT 圖像,右邊是手工標注的肺實質圖像。我們將70%的數據用于訓練集,剩下30%的數據用于測試集,每張圖片的尺寸為512×512。

圖4 Kaggle lung數據集示例
本次實驗采用3個常用的圖像分割評估指標用于評估模型的分割效果:準確率(ACC)、特異性(SP)和F1 分數。ACC表示模型預測正確的樣本占總樣本的比例,SP表示正確預測為背景的樣本占總背景的比例,F1 分數是精確率和召回率的調和平均。
為了充分檢驗本文提出的CAMCGU-Net 模型的有效性,我們將CAMCGU-Net 和一些主流的肺實質分割模型,如U-Net、RU-Net、R2U-Net、MCGU-Net 進行了比較,實驗結果如表2所示。

表2 實驗結果
實驗結果表明,本文提出的CAMCGU-Net模型在F1分數,SP和ACC上均取得了更好的效果,相比于性能次之的MCGU-Net模型,F1分數提升了0.25個百分點,SP提升了0.22個百分點,ACC提升了0.11 個百分點,說明本文提出的CAMCGU-Net模型在肺實質的分割上性能更優。
本文提出一種基于MCGU-Net的肺實質分割模型CAMCGU-Net,在Kaggle 肺分割數據集上進行了對比實驗。實驗結果表明,本文提出的模型在評估指標上均取得了更好的性能。