?

基于CAM U-Net的肺結節分割方法

2024-01-16 01:13王統徐勝舟盧浩然吳福彬裴承丹
關鍵詞:注意力結節特征

王統,徐勝舟,,盧浩然,吳福彬,裴承丹

(1 中南民族大學 計算機科學學院,武漢 430074;2 湖北省制造企業智能管理工程技術研究中心,武漢 430074;3 武漢工程大學 網絡信息中心,武漢 430205)

肺癌是死亡率最高的癌癥之一,早發現早治療可以提高患者的生存率[1].肺結節是肺癌的早期表現形式,肺結節邊緣模糊,和肺部相比體積較小,其亮度和肺實質中的血管等組織極其相似,會降低醫生的診斷速度以及準確率,進而耽誤病情的發現與治療.電子計算機斷層掃描(Computed Tomography,CT)[2]技術是當今肺癌檢測的常規手段之一,對肺癌的早期診斷具有重要的研究價值和現實意義[3].

傳統的分割算法如自適應閾值分割[4]、邊緣檢測分割[5]、區域生長[6]等,這些方法雖然能取得較好的分割效果,但是依賴于人的先驗知識.目前,深度學習已經廣泛應用于計算機視覺領域[7].LONG等[8]提出了一種全卷積神經網絡(Fully Convolutional Network,FCN),用卷積層替換卷積神經網絡(Convolution Neural Network,CNN)[9]中的全連接層以獲得圖像中每個像素的分類結果,最終實現圖像分割.Ronneberger等[10]提出了U-Net 網絡,該網絡具有對稱的U 型結構,通過對圖像特征進行編碼和解碼,并通過跳躍連接融合來自編碼器的淺層低級特征和解碼器的深層高級特征,可以實現較好的分割效果[11-12].醫學圖像數據集通常較小,而U-Net 能在少量樣本的情況下完成模型訓練并實現較好的圖像分割效果,所以近些年來此方法被廣泛應用于醫學圖像分割領域.

徐峰等[13]將U-Net 網絡應用于肺結節分割,但是肺結節目標區域小,而且邊緣模糊,使用原始UNet 進行訓練,沒有對數據進行批量歸一化會造成網絡訓練過程中出現梯度消失、分割準確率不高等問題[14].鐘思華[15]等提出了一種用于肺結節分割的Dense-UNet 網絡,通過引入密集連接模塊,加強網絡對特征的傳遞和利用,但密集連接模塊增加了額外的計算量,在訓練時容易造成過擬合,分割精度提高較為有限.ZHOU 等[16]提出了一種U-Net++網絡,將不同層次的特征通過各自的解碼路徑還原,然后結合淺層和深層的特征,在肺結節分割上效果較好.黃鴻等[17]基于融合自適應特征加權聚合策略提出了一種改進的U-Net++網絡,用于肺結節分割也取得了不錯的效果.但這兩個網絡嵌套了多個UNet 結構,增加了模型復雜度,也增加了額外的計算量.

針對上述問題,本文提出了一種基于CAM U-Net的肺結節分割方法.通道注意力模塊[18](Channel Attention Module,CAM)結構簡單,參數量很少,而且能夠加強網絡對有用特征的利用,本文將CAM 融入U-Net 網絡結構中,可以有效提升網絡的分割性能.本文在LIDC-IDRI肺結節公開數據集對改進的網絡進行訓練和測試.

1 肺結節分割算法

圖1 是本文的算法流程圖,首先對訓練集進行數據預處理并進行數據增強,隨后送入搭建好的網絡中進行訓練,并調整網絡參數設置,訓練網絡模型至收斂并保存;然后對測試集進行數據預處理,并使用訓練好的網絡模型進行測試,得出分割結果.

圖1 算法流程圖Fig.1 Algorithm flow chart

1.1 數據來源及預處理

本文所使用的數據集來源于LIDC-IDRI肺結節公開數據集[7],LIDC-IDR中包含了1018個病例,對于每個病例中的CT圖像,都由4位經驗豐富的專業放射科醫師對其進行標注,并將標注信息存放在XML 文件中,里面詳細記錄了CT圖像中肺結節的輪廓以及CT特征等信息.

原始肺部CT 圖像大小為512 × 512 像素,肺結節在原始CT圖像中所占比例很小,輸入圖片尺寸太大會影響網絡訓練速度,而且多余的部分會對網絡訓練產生很大的干擾,因此本文通過對原始CT圖像進行裁剪來避免這一問題.根據金標準將原始CT圖像裁剪為包含肺結節的64 × 64 像素大小的感興趣區域.CT圖像預處理過程如圖2所示,左邊為原始肺部CT圖像,右邊為裁剪后的圖像.

圖2 CT圖像預處理Fig.2 CT Image pre-processing

為了增強模型的泛化能力,本文對訓練集進行了數據增強.首先根據肺結節的輪廓坐標信息再次對原始圖像進行裁剪,使肺結節位于64×64 大小感興趣區域的不同位置,如圖3 中右邊第一行分別對應左邊原始CT 圖像中的紅(實線)、藍(點劃線)、黃(破折線)三個區域,其中點劃線和破折線表示的區域為再次裁剪的區域,使訓練集變為原來的3倍.然后又對裁剪后的圖像進行了水平翻轉和垂直翻轉,如圖3中右邊第二行為第一行圖像分別進行水平翻轉后的圖像,第三行則對應為垂直翻轉后的圖像.最終數據增強后的訓練集是原來的9倍.

圖3 數據增強Fig.3 Data augmentation

1.2 算法模型

WOO 等[18]提出了一個有效的注意力模塊CBAM,給定一個中間特征圖,可以沿著空間和通道兩個維度依次推斷出注意力權重,然后與原特征圖相乘來對特征進行自適應調整.受到CBAM[18]的啟發,本文將通道注意力模塊融入U-Net 網絡中進行肺結節分割.對于通道注意力模塊,網絡中的每個通道對分割結果的影響應該是不同的,有些通道存在關鍵信息,而通道注意力模塊能加強這些通道的表現力,這將會使網絡聚焦于關鍵的通道,進而提升網絡的分割效果.

通道注意力模塊如圖4 所示,設通道注意力模塊的輸入特征圖為F,高度為H,寬度為W,通道數為C.首先對輸入特征圖F的空間維度進行壓縮,分別采用全局平均池化操作和全局最大池化操作,進而得到1 × 1 ×C的AvgPool 和MaxPool.然后再將AvgPool 和MaxPool 依次送入一個兩層共享參數的全連接層.其中第一個全連接層的神經元個數為輸入特征圖通道數與ratio(本文設置ratio=8)的商,第二個全連接層的神經元個數為輸入特征圖通道數.AvgPool 和MaxPool 經過全連接層后變為圖4 中的AvgPool′和MaxPool′,接著將AvgPool′和MaxPool′相加求和并使用Sigmoid 激活函數得到權重系數Mc.最后將輸入特征圖F與Mc進行相乘得到輸出特征圖Fc.

圖4 通道注意力模塊Fig.4 Channel attention module

為了整合通道上的空間信息,通道注意力模塊采用了全局平均池化和全局最大池化得到對應通道的信息,全局最大池化可以收集到難區分物體之間更重要的線索,來獲得更詳細的通道注意力.然后依次通過兩層的全連接層,求和并使用Sigmoid激活得到各個通道之間的內在關系,最后與輸入特征圖相乘.訓練過程中,通過反向傳播,會根據金標準來修正網絡中的參數,最終得到最優的通道權重,進而使網絡關注更有用的通道.

本文提出的CAM U-Net 網絡模型,是在U-Net網絡的基礎上添加通道注意力模塊,整體網絡結構如圖5 所示,灰色填充向右寬箭頭1,2,3,4 代表添加的通道注意力模塊.本文網絡主要由編碼器,解碼器,分類器和跳躍連接組成.

圖5 CAM U-Net網絡結構圖Fig.5 The network structure of CAM U-Net

編碼器部分通過卷積操作對輸入圖片進行特征提取,如圖5中黑色向右細箭頭所示,代表的操作為3 × 3 卷積層,BN(Batch Normalization,BN)層和ReLU 激活.BN 層可以減少網絡對初始值尺度的依賴,可以加速網絡的收斂,提升網絡的泛化能力.ReLU 激活函數可以提高網絡的非線性表達能力.然后通過最大池化操作,如圖5 中橫線填充向下寬箭頭所示,用于特征圖的下采樣,可以顯著減少參數量.

解碼器部分首先通過上采樣操作,將特征圖尺寸增大一倍,如圖5 中對角線填充向上寬箭頭所示.然后與相對應位置的編碼器部分的特征圖通過跳躍連接進行拼接,結合淺層低級特征和深層高級特征,隨后經過兩個卷積操作,再經過通道注意力模塊CAM,如圖5中的灰色填充向右寬箭頭所示,CAM加強對有用通道的關注.經過四次上采樣最終恢復到輸入圖像原來的尺度.

分類器由1 × 1 卷積層和Sigmoid 激活層組成,其中1 × 1 卷積層用于減少特征圖的數量,Sigmoid激活層用于計算最終的特征圖中每個像素的類別,從而輸出網絡的分割概率圖.

1.3 評價指標

本文從交并比、Dice 相似系數、準確率和召回率四個度量標準對分割結果進行評估.

交并比(Intersection over Union,IoU)為金標準和預測結果的交集與并集的比.交并比越高,圖像分割的結果越好.設肺結節金標準區域為M,方法分割結果區域為P,∩表示取交集,∪表示取并集,計算公式為:

Dice 相似系數表示模型的預測結果與金標準的相似程度,為兩個區域的交集部分的兩倍與兩區域的和的比值.Dice 越高,圖像分割結果越好.|·|表示取絕對值,計算公式為:

準確率(Precision)為肺結節中正確分割的像素點所占預測結果中為肺結節像素點的比例.真陽性(True Positives,TP),假陽性(False Positives,FP),真陰性(True Negative,TN),假陰性(False Negative,FN).計算公式為:

召回率(Recall)為肺結節中正確分割的像素點所占金標準中肺結節像素點的比例.計算公式為:

2 實驗及結果分析

本文的實驗環境是基于深度學習框架Keras 和Python語言進行搭建的.操作系統為Windows10.

網絡在訓練過程中,使用Dice系數損失函數,采用Adam 優化器進行優化,batch-size 設為32,epoch為60.學習率設置采用分階段的方式,初始學習率設置為0.001,經過30 輪后變為0.0005,50 輪后設置為0.0001.

2.1 肺結節分割結果

為了驗證改進后的模型的分割性能,本文選取了徐的方法[13],鐘的方法[15],ZHOU 的方法[16],黃的方法[17]與本文方法進行對比,分別在數據增強后的數據集上進行了訓練和測試,得到不同方法的肺結節分割結果如表1所示.其中Parameters指網絡需要訓練的參數量,time指每輪訓練所需的時間.

表1 不同方法的肺結節分割結果Tab.1 Segmentation results of pulmonary nodules by different methods

從表1 的分割結果中我們可以看出,本文方法的交并比、Dice 相似系數和召回率均比其他方法有了明顯提升.黃的方法使用了一種多層次特征融合結構,即嵌入不同深度的U-Net,加強了淺層特征的學習,準確率比本文方法略高,但本文方法的交并比、Dice 相似系數和召回率與黃的方法相比提升較明顯.因此從總體來說本文方法和其他方法相比具有較好的分割性能.徐的方法是采用傳統的U-Net網絡,本文方法在其中添加BN層和CAM 模塊,通過對比可以看出參數量和訓練時間雖然有所增加,但分割性能有顯著提升.本文方法和鐘的方法、ZHOU的方法、黃的方法在參數量和每輪訓練時間上相比,參數量更少,訓練時間更短,同時擁有更好的分割性能.

圖6 展示了與表1 對應的不同方法的部分肺結節分割結果圖,其中(a),(b),(c),(d),(e),(f),(g)分別為測試集中的肺結節圖像、對應的金標準、徐的方法[13]的分割結果、鐘的方法[15]的分割結果、Zhou的方法[16]的分割結果、黃的方法[17]的分割結果與本文方法的分割結果,圖像下的數值代表相對應的Dice相似系數.

圖6 不同方法的肺結節分割結果圖Fig.6 Results of segmentation of pulmonary nodules by different methods

從圖6 中我們可以看出,徐的方法(c)存在未能分割出肺結節的情況,如圖6 中第2、5 行,主要是徐的方法中沒有使用批量歸一化,會造成梯度消失,網絡訓練慢以及分割準確率不高等情況.徐的方法(c)和鐘的方法(d)都存在將血管等組織分割為肺結節的情況,如圖6 中第2、4 行,鐘的方法通過引入密集連接模塊,會造成網絡參數變多,容易造成過擬合.而本文方法在U-Net 網絡中添加通道注意力模塊,該模塊結構簡單,和其他方法相比參數量較少.對于血管粘連型結節和小結節,如圖6中第1、2行,本文方法的Dice 相似系數相比其他方法有了較好的提升.以上可以看出本文方法與其他方法相比有更好的分割性能.

2.2 數據增強對分割性能的影響

本文采用了如1.1 小節所述的數據增強方式來增加訓練樣本的多樣性,提高模型的泛化能力,表2展示了在數據增強前后,改進后的模型在IoU、Dice、Precision 和Recall 上的評測結果對比.數據都是經過5次重復實驗后取平均值的結果.

表2 數據增強前后CAM U-Net模型結果對比Tab.2 Comparison of CAM U-Net model results before and after data augmentation

通過表2我們可以看出,在數據增強后,各個評測指標均有明顯提升,其中IoU 提升了2.05%,Dice提升了2.01%,Precision 提升了1.6%,Recall 提升了2.22%.通過以上對比,我們可以看出數據增強可以提升網絡分割性能.

2.3 CAM對分割性能的影響

假定圖5中水平向右的CAM箭頭處標記的1,2,3,4 的位置對應Location1,Location2,Location3,Location4,即代表在相應的位置添加通道注意力模塊.為了研究CAM 對分割性能的影響,本文采用了Location1、2、3,Location1、2、4,Location2、3、4,Location1、3、4 和Location1、2、3、4 這五種方式將CAM模塊融入解碼器中.

實驗結果如表3所示,我們可以看出,通道注意力模塊在Location1,2,3,4 這四個位置都起到了一定的作用,都比改進前U-Net+BN 的網絡結構有了一定的提升.其中最好的是在這四個位置都加入通道注意力模塊,如表3的最后一行的數據,各個評估指標均有明顯提升,其中IoU 提升了1.15%,Dice 提升了1.03%,Precision 提升了0.4%,Recall 提升了1.44%.

表3 改進前后分割結果對比Tab.3 Comparison of segmentation results before and after model improvement

圖7為測試集中的一張圖片對應的模型改進前后的解碼器部分最后輸出的部分特征圖對比.圖7中第一行是U-Net+BN 網絡中的解碼器部分最后輸出的部分特征圖,第2 行是CAM U-Net 網絡中的解碼器部分最后輸出的部分特征圖.在第一行特征圖中我們可以看出改進前的網絡關注點有兩個位置,如特征圖中中間和右下角的位置.在第二行特征圖中可以看到改進后的網絡關注的位置變為了一個,如特征圖中的中間位置,排除了其它組織的干擾,從而達到準確分割的目的.最終分割結果如圖8所示.

圖7 部分特征圖Fig.7 Partial feature map

圖8 模型改進前后分割結果圖Fig.8 Segmentation results before and after model improvement

圖8 中(a)、(b)、(c)、(d)依次為原始圖像、金標準、U-Net+BN 網絡訓練的結果和改進后的網絡訓練的結果.我們可以看出(c)中存在錯誤分割的情況,將右下角的血管等組織分割為肺結節,與圖7 中第一行特征圖中關注的兩個位置相對應.改進后的網絡通過添加通道注意力模塊,并經過不斷學習,使得網絡更加關注有用的信息,如(d)中改進后的網絡可以更好的分割出肺結節,避免了無關信息的干擾.通過以上對比,我們可以看出CAM 可以有效提升網絡分割性能.

2.4 超參數的選取分析

訓練迭代次數對網絡的分割性能有很重要的影響,迭代次數過多會造成過擬合,過少會造成欠擬合.圖9展示了CAM U-Net網絡在訓練輪數為200時,訓練集和驗證集的損失值和迭代次數的關系,我們可以看出在60 輪左右時,驗證集的損失值趨于穩定,所以本文的迭代次數設置為60.

圖9 CAM U-Net 損失值和迭代次數的關系Fig.9 The relationship between the loss value of CAM U-Net and the number of iterations

在迭代優化的前期中,學習率較大,則前進的步長就會較長,這時便能以較快的速度進行梯度下降,而在迭代優化的后期,逐步減小學習率的值,減小步長,這樣將有助于算法的收斂,更容易接近最優解.因此本文采用多階段學習率設置方式,初始學習率設置為0.001,30 輪后變為0.0005,50 輪后變為0.0001.batch-size 太大會使模型收斂在局部最優點,太小會花費時間多,同時梯度震蕩嚴重,不利于收斂,本文基于實驗實際情況選擇32.

3 結語

肺結節分割是肺癌早期診斷的重要基礎.本文在U-Net 網絡的基礎上,提出了一種CAM U-Net 網絡結構,通過在解碼器中添加通道注意力模塊,加強網絡對有用特征的利用,進而有效提升了網絡分割性能.在LIDC-IDRI 肺結節公開數據集上的實驗結果表明,本文方法的交并比為82.04%,Dice 相似系數為89.24%,準確率為88.61%,召回率為91.28%.與其他方法的分割結果進行對比,結果表明改進后的網絡具有更好的分割性能.

猜你喜歡
注意力結節特征
讓注意力“飛”回來
肺結節,不糾結
發現肺結節需要做PET/CT嗎?
從氣、虛、痰、瘀辨治肺結節術后咳嗽
如何表達“特征”
不忠誠的四個特征
體檢查出肺結節,我該怎么辦
抓住特征巧觀察
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合