尹強 彭剛 宋文廣 曾威
關鍵詞:語義分割;深度學習;MobileNetV2;DeepLabV3+;肺實質分割
中圖分類號:TP393 文獻標識碼:A
文章編號:1009-3044(2023)20-0001-07
0 引言
肺癌是常見的惡性腫瘤之一,我國肺癌無論在發(fā)病率還是死亡率上都超過了世界平均水平[1]。因此,肺癌的早期篩查是改善生存和預防的最有效手段[2]。臨床上使用最普遍的肺癌醫(yī)學檢查手段[3]是CT(Com?puted Tomography)、MRI(Magnetic Resonance Imaging)、PET(Positron Emission Computed Tomography)、CXR(Chest X Ray),其中CXR已被廣泛證明可以在早期階段顯示病理結果。相較于CT,CXR因為其低成本、低輻射等優(yōu)勢,被大多數(shù)人所接受[4]。在肺癌的篩查和診治中,排除無關主體的干擾,將肺實質從圖像中分割出來是最初始和關鍵的階段[5],它是后續(xù)任務的預處理步驟[6]。
傳統(tǒng)的醫(yī)學圖像分割方法主要包括基于閾值、區(qū)域生長、聚類、數(shù)學形態(tài)學等方法[6-7]。這些方法普遍存在過度依賴人手工特征提取、效率低下、準確度低等問題。相較于傳統(tǒng)分割方法,深度卷積神經網絡(DCNN) 擁有自學習優(yōu)勢且無須進行手動特征提取,節(jié)省了大量人力物力成本,效果更好,因此被廣泛地應用在CAD(Computer-Aided Diagnosis) 輔助診斷領域[8]。Long等人[9]提出的FCN全卷積神經網絡開啟了深度學習的語義分割時代。但因為過大的上采樣,圖片丟失了大量的細節(jié)信息,分割結果平滑且模糊[3]。Ronneberger等人[10]提出了對稱編解碼網絡U-Net,通過編碼部分獲取高層的語義信息,解碼部分通過跳躍連接融合淺層的空間維度和像素位置信息,實現(xiàn)高層語義信息和淺層空間位置信息融合,提升分割效果,即使訓練少量的數(shù)據就可以獲得良好的魯棒性[5]。而醫(yī)學分割任務中因為圖像稀缺、標注成本高等原因,U-Net 被廣泛應用于醫(yī)學領域的圖像分割任務。Skourt等人[11]將其應用在肺部CT圖像分割中,取得了95%的Dice score。Zhang等人[12]結合多尺度殘差結構和密集連接,改進U-Net結構,在肺部分割中獲得了98%的Dice score。為了解決過大的下采樣壓縮圖像造成圖像邊緣輪廓信息損失,O Gómez等人[13]通過改進U-Net結構,加入了胸部X光分割技術中幾乎不使用的空洞卷積和實例歸一化操作,在JSRT數(shù)據集上對肺部、心臟、鎖骨進行分割,并取得了較好的結果?;赨-Net改進的網絡結構普遍存在忽視目標物體的多尺度信息、無法分辨特征的重要程度、存在大量的參數(shù)和網絡訓練時間長等問題。
在一些移動設備和嵌入式設備應用場景中,復雜而又龐大的模型占用內存大,存在部署過程中內存不足的問題,難以被實際應用。因此,針對龐大的網絡參數(shù),輕量級CNN 網絡Mo?bileNet[14-16]系列被提出,深度可分離卷積的應用,在保證準確度的情況下,顯著減少參數(shù)量,加速網絡訓練過程。因為其小巧且高效,被廣泛應用于移動端或嵌入式設備中。針對目標物體的多尺度和對稱語義算法忽略像素空間一致性的問題,Chen等人[17]提出了DeepLabV3 網絡,空洞空間金字塔池化(ASPP)的使用,同時兼顧捕捉不同大小的尺度信息,解決了物體的多尺度分割和像素空間一致性問題,但無法彌補連續(xù)下采樣導致的邊界信息損失。Deep?LabV3+[18]通過在DeepLabV3的基礎上增加一個解碼器部分,引入低層邊界信息,彌補邊界損失,提升分割效果。為了捕獲和理解不同特征圖的通道和空間重要信息,基于通道和空間的注意力機制被廣泛應用到網絡中。郭寧等人[19]基于U-Net網絡架構,在網絡中解碼部分引入注意力機制來凸顯目標區(qū)域,以抑制背景像素的干擾,在LUNA 數(shù)據集上獲得了較好的結果。 燕楊等人[20]將注意力機制應用在U-Net網絡中,對視網膜血管進行分類,實現(xiàn)了視網膜A/V的精準分類。
基于上述關聯(lián)研究,為了同時兼顧輕量化和高準確率,本文采用MobileNetV2[15] 代替原來的Deep?LabV3+中的Xception作為骨干網絡進行特征提取,降低模型的復雜度和參數(shù)量;通過級聯(lián)ASPP 模塊和PPM模塊,充分提取全局上下文信息。為了最大限度地利用不同層級的特征信息以及對丟失邊界信息的補償,在網絡的解碼過程中,充分融合高層和淺層的特征信息。同時,為了突出特征圖中不同通道和空間的重要性,加入相應的注意力機制模塊,融合后得到更加準確的分割結果。最后,為了平衡數(shù)據集中假陰性和假陽性的比例,引入Tversky損失函數(shù),提高肺實質分割的敏感度和分割的準確率。
1 模型構建
1.1 改進的DeepLabv3+網絡結構
1) 編碼部分改進
首先將編碼部分的骨干特征提取網絡改為輕量級的MobileNetV2[15],將編碼部分末端的ASPP模塊中三個不同擴張率的擴張卷積改為深度可分擴張卷積,在充分提取特征和基本不損失精度的情況下,極大地減少模型的參數(shù)量,提高網絡模型訓練的效率。同時,為了更大限度地提取全局信息,通過并聯(lián)PPM模塊,采用不同的池化核大小進行全局上下文語義信息提取,最后將二者提取的全局信息進行融合,獲取豐富的全局語義信息,具體的改進結構如圖1所示。
編碼改進部分具體操作如下:首先,將下采樣16 倍的高層特征圖分別送入改進的ASPP模塊和PPM模塊中,網絡輸出兩個不同通道數(shù)的feature map,采用1×1卷積分別對這兩個通道進行通道調整,然后將調整后的兩個特征圖拼接,降維并進行特征融合,得到高層豐富的語義特征信息。
2) 解碼部分改進
原始的DeepLabv3+的解碼部分只利用了下采樣4次的特征圖信息,導致信息大量丟失和無法充分利用,因此,為了彌補淺層信息的損失并充分利用高淺層信息,橫縱向通過借鑒U-Net的跳躍連接結構,形成橫縱向跳躍連接結構,充分融合深淺層的特征信息。該結構在獲取豐富語義信息的基礎上,極大程度減少邊界位置信息損失,提升分割的精度。
解碼改進部分具體操作如下:首先融合骨干網絡下采樣1/4、1/8、1/16得到的特征圖,得到一個中間特征層。具體操作步驟是:將下采樣16倍的特征圖加入通道注意力機制,上采樣兩倍后,與加入空間注意力機制的下采樣8倍的特征圖進行拼接,并采用3×3深度可分離卷積對拼接的特征圖進行通道和空間上信息的融合。隨后再將下采樣4倍的特征圖加入空間注意力機制,為了不削弱高層語義特征信息同時,豐富淺層空間位置信息,采用1×1的卷積將通道升維后,使用3×3深度可分卷積融合上面上采樣2倍的特征層,完成信息融合。至此,得到了一個擁有高層和次高層語義和位置信息的中間特征層??v向特征信息拼接融合完成后,再橫向拼接來自ASPP和PPM提取的高層豐富語義信息,使用3×3深度可分離卷積進行特征融合。相較原來橫向只融合下采樣4倍的特征層來說,這樣更加有效地利用了不同層級的特征信息,增強了像素之間的關聯(lián)性,讓分割效果更加準確。
為了更好地彌補淺層位置信息損失,在解碼部分完成首次橫向跳躍連接后,再次融合下采樣2倍的特征層。對該特征層加入空間注意力機制、調整通道為原來的兩倍,上面的融合特征層上采樣2倍,利用深度可分離卷積融合特征并調整通道,充分融合高層語義信息和淺層空間位置信息。最后通過調整輸出特征圖的尺寸和通道,得到預測結果。具體的改進結構如圖2所示。
1.2 主干特征提取網絡
在MobileNetV2中,延續(xù)使用了深度可分離卷積,在保證準確率的情況下,降低模型參數(shù),加速網絡的訓練過程。由于深度可分離卷積中的DW卷積輸出結果的通道數(shù)和原通道數(shù)保持一致,而當通道數(shù)較低時,無法充分提取特征信息且卷積核的參數(shù)大部分為0,因此MobileNetV2采用倒殘差結構。首先提升輸入特征圖的維度并使用ReLU6進行特征非線性化處理,隨后采用3×3的DW卷積和ReLU6激活函數(shù)充分提取特征和對特征進行非線性化處理,最后通過1×1卷積進行特征融合和降維。為了避免非線性激活函數(shù)對低維特征信息的影響[14],結構最后改用線性激活函數(shù)進行激活(線性瓶頸結構)輸出,大量的倒殘差結構結合深度可分離卷積,極大地降低了模型復雜度,讓模型更加輕量。
1.3 空洞卷積
空洞卷積的提出是為了解決傳統(tǒng)圖像分割時,為了獲取更大的感受野,連續(xù)使用下采樣或大尺度的卷積核來提取特征,導致特征圖尺寸下降過大,損失邊界信息,從而影響分割效果的問題。在普通卷積的基礎上,根據不同的擴張率在參數(shù)間注入空洞(填充0),擴大了卷積核的尺寸,增大了感受野,無須學習新的參數(shù),維持了特征圖的分辨率。
k表示空洞卷積核的大小,k′表示等效普通卷積核大小,d 為擴張因子,Si 表示前面層步長的乘積。通過分析可以得出,步長和卷積核的大小越大,網絡就會擁有更大的感受野。基于此,空洞卷積通過注入參數(shù)0的方式增大了卷積核的尺寸,從而讓網絡整體感受野得到提升。因此對于語義分割中頻繁的下采樣損失空間位置信息來說,空洞卷積是一種很好的解決辦法。為此,在ASPP結構中,通過將不同擴張率的擴張卷積并聯(lián),可以同時提取不同尺度的信息,讓分割結果更加準確和高效。
1.4 深度可分離卷積
深度可分離卷積(Depthwise Separable Con?volution)分為兩個階段,首先對特征圖進行通道層面的特征提取,然后在第一步的基礎上進行特征融合。前者實現(xiàn)了空間相關性的映射,后者實現(xiàn)了跨通道相關性的映射。
同樣是輸入圖像為H×W×C 的特征圖,普通卷積圖5(a) 所需參數(shù)量為 H1×W1×C×3,對于深度可分離卷積圖5(b) ,參數(shù)量僅為(H1×W1×C+1×1×C×3),參數(shù)量大約為傳統(tǒng)卷積的1/3。深度可分離卷積使用更少的參數(shù)進行學習,并可以達到類似普通卷積的效果,大大地降低了模型的復雜度。
1.5 注意力模塊
在計算機視覺中,注意力機制和人腦處理信息類似,將注意力聚焦到重要區(qū)域,排除無關主題干擾,從而將算力資源聚焦到重要的位置區(qū)域[21]。一般而言,注意力機制通常分為通道注意力(Channel Attention)機制、空間注意力(Spatial Attention)機制以及二者結合的混合通道和空間的注意力機制[22](CBAM)。
CAM(通道注意力模塊),關注的是特征的類型。從全局出發(fā),提取重要特征。對輸入特征圖(H×W×C) 的每個通道進行最大和平均池化得到兩個不同的特征描述(1×1×C),接著,分別送入兩個共享的全連接層,一個神經元個數(shù)為C/r,另一個神經元個數(shù)為C,完成兩次全連接后進行加和操作,然后經過Sigmoid 激活函數(shù)得到權重系數(shù),其值在0~1,代表不同通道的重要程度。最后對每個通道乘積得到的權值,得到全新的特征。在本文模型中,對于高層的特征圖采用通道注意力機制,突出重要全局特征信息,具體操作流程如圖4(a)所示。
SAM(空間注意力模塊),關注的是特征的位置。從局部出發(fā),在特征矩陣中選擇有意義的特征。同樣是對輸入特征圖進行兩個池化操作,得到兩個不同的特征圖(H×W×1)描述,將兩個特征進行拼接后,經過卷積操作和對特征進行非線性激活后得到權重系數(shù),最后對原特征矩陣賦予相應的權重,得到全新的特征。在實驗中,對淺層特征圖采用空間注意力機制,突出局部重要特征,具體的操作流程如圖4(b) 所示。
2 實驗結果與分析
2.1 實驗環(huán)境
實驗在Linux 服務器下進行,具體配置如表1 所示。
2.2 實驗數(shù)據和預處理實驗數(shù)據集來自日本放射線技術協(xié)會開源的標準數(shù)字圖像數(shù)據庫(JSRT[23]數(shù)據集)。該數(shù)據集由247張圖像組成,圖片的尺寸為2 048×2 048,位深度為24,格式為.IMG,其中包括154肺結節(jié)圖片和93張無肺結節(jié)圖片。肺部圖像對應的掩膜圖像(Ground Truth)來自SCR[24]database,它提供了胸部X光中各解剖結構(肺部、心臟、鎖骨)對應的掩膜圖像,分辨率為1 024×1024。為了提升分割效果,在分割前對圖像進行預處理和數(shù)據增強操作,這里主要使用的預處理方法為:圖像格式轉換、圖像分辨率調整、圖像濾波以及圖像對比度調整,最后在此基礎上對圖像進行增強處理。
首先,對數(shù)據格式和分辨率進行調整,將原圖和標簽的分辨率調整為512×512,位深度為8、模式為L 的.png格式圖片,方便網絡進行訓練。其次,對圖像進行濾波處理,由于X光的顆粒噪聲分布服從高斯分布,因此利用高斯濾波對圖片進行濾波處理,減少噪聲對識別主體的干擾。為了更好地突出主體和背景,增加對比度,抑制噪聲,采用限制對比度的自適應直方圖均衡法(CLAHE) 對原圖進行變換處理,相應處理后的圖像如圖5 所示。
為了讓模型更具備泛化性,對原始的數(shù)據集分別進行水平、垂直鏡像翻轉以及水平左右隨機旋轉5°處理,經過處理過后的圖片數(shù)量會變成原來的4倍,增強數(shù)據如圖6 所示。數(shù)據增強[25]后,按照6:2:2的比例,將增強數(shù)據集隨機劃分為訓練集、驗證集和測試集。訓練時設置初始學習率為1e-3,batch-size為4,一共訓練60個epoch,采用Adam優(yōu)化器對網絡參數(shù)進行更新。
2.3 評價指標
實驗中采用不同的評價指標在數(shù)據集的驗證集上進行評價。包括骰子系數(shù)(DSC)、交并比(IoU)、靈敏度(SE)和準確率(ACC)指標,計算公式如下。
式中,p 代表預測的值,g 代表真實值,通過設置超參數(shù)α 和β 的值來調整二者的權重。為了更好地抑制假陰性,在網絡訓練中,β 取0.7,α取0.3。
2.5 對比分析
1) 不同損失函數(shù)對比分析
為了驗證TverskyLoss 對假陰性的抑制效果,實驗分別采用BCELoss和TverskyLoss函數(shù)進行實驗,實驗結果如表2所示。
由表2分析可以看出,當使用Tversky作為損失函數(shù)時,在其他指標接近的情況下,顯著地提高模型的靈敏度,肺實質分割的效果更好。因此,本文采用Tversky作為模型的損失函數(shù)。
網絡訓練穩(wěn)定后,訓練集、驗證集的訓練損失、準確率如圖7、圖8所示。
2) 不同卷積模塊對比分析
為了驗證深度可分離擴張卷積在基本不影響結果精度的情況下,顯著減少模型參數(shù)、加速網絡訓練的效果,在原始的MobileNetV2 骨干網絡中,將ASPP 中并聯(lián)的擴張卷積改為深度可分離擴張卷積在相同實驗環(huán)境下進行實驗,實驗結果如表3所示。
通過分析可知,在ASPP模塊中使用深度可分離空洞卷積后,模型參數(shù)變?yōu)樵瓉淼?4.2%,訓練時間縮短了5%,整體IoU相比原來僅降低了0.31%。由此可得出,深度可分離卷積在基本不損失精度的情況下,顯著減少了模型參數(shù),加速了模型的訓練學習的過程。
3) 不同模塊消融實驗對比分析
因此,為了驗證改進的MobileNetV2 模塊并聯(lián)PPM模塊、加入注意力機制、融合多跳躍連接的有效性,在ASPP模塊中并聯(lián)擴張卷積為深度可分離擴張卷積的實驗條件下,進行消融實驗,實驗結果如表4 所示。
通過比較分析表中第2、3、4和最后一行,可以得出,注意力機制和多跳躍連接、融合PPM模塊可以使網絡分割效率分別提升0.29%、0.29%、0.22%。對比第一行和最后一行,可以得出,同時加入這三個改進可以使網絡分割準確率提高0.76%,模型的分割效果最好。同時,由于改進模塊中深度可分離卷積的應用,模型的參數(shù)量相較未加入這些模塊的網絡參數(shù)量降低了15%。由此可見,將PPM模塊、注意力機制和多跳躍連接應用到本文模型中,不僅能夠降低模型的參數(shù)量,還能充分提取全局信息、融合更多特征信息,提升網絡的分割效果,保證圖像分割的完整性。
4) 不同骨干網絡對比分析
為了驗證DeepLabv3+在不同骨干網絡上的表現(xiàn)效果,分別使用ResNet-50、Xception和改進的Mobile?NetV2作為骨干特征提取網絡在相同實驗條件下進行測試,分別驗證它們在數(shù)據集的驗證集上的交并比、模型參數(shù)量和推理時間性能指標,實驗結果如表5 所示。
對于ResNet-50和Xception作為主干特征提取網絡的DeepLabV3+網絡來說,它們的參數(shù)量龐大,且效果沒有所提算法好。在推理時間上,所提算法與它們接近。測試結果表明,所改進的網絡在分割效果、參數(shù)量和推理時間上達到了很好的平衡。
5) 不同分割算法對比分析
為了驗證本文所提算法的優(yōu)勢,在相同的實驗環(huán)境下將本文算法與三種不同的分割算法進行對比實驗,分別在數(shù)據集的驗證集上對4個分割網絡的IoU 指標和模型的參數(shù)量進行評估,實驗結果如表6所示。
從表6 中可以看出,所提算法相較原始Deep?LabV3+網絡,在參數(shù)僅有其6%的基礎上,在驗證集上的交并比提升了0.17%;相較于早期的FCN-8s來說,所提算法參數(shù)小且IoU提升了4.47%;對比U-Net,IoU 有了0.65% 的提升,且參數(shù)量只有其1/10 左右。由此可見,所提的算法在保證分割精度的情況下,極大地降低了模型的參數(shù)量,分割效果表現(xiàn)更好。
2.6 不同分割算法分割效果
不同分割算法在JSRT驗證集上的分割效果如圖9 所示。
從圖9可以看到,F(xiàn)CN-8s由于過大的上采樣導致丟失了很多邊界位置信息,對邊界位置的識別不夠準確,同時存在比較明顯的誤分割問題。對于U-Net來說,它可以比較準確地識別出邊界位置信息,但相較于DeepLabV3+原始網絡和改進算法而言,對整體語義信息把握不太準確。相較于原始的DeepLabV3+網絡而言,本文提出的算法對邊界信息的處理更準確,同時分割效果也更好。
3 結論
本文提出了一種改進的DeepLabV3+網絡,使用MobileNetV2作為骨干特征提取網絡,將編碼部分的ASPP模塊中并聯(lián)的擴張卷積改為深度可分離擴張卷積,同時并聯(lián)ASPP模塊,豐富語義信息提取、減少模型參數(shù)量,讓網絡更加輕量。在解碼部分,通過加入注意力機制和跳躍連接,突出不同特征的重要性、融合不同層次的特征信息,提升分割效果。采用Tversky 損失函數(shù)平衡了在分割過程中假陰性和假陽性的比例,提高了模型的靈敏度。該算法在JSRT驗證集上的IoU達到94.37%,模型參數(shù)量僅有12.4MB,更容易部署到移動端。后續(xù)工作就是在本文算法分割的基礎上,進行肺部結節(jié)的識別和檢測工作。