蘇 賦,但 濤,方 東
(西南石油大學電氣信息學院,成都610599)
截至2020年12月31日,全球累計確診82 981 032例新型冠狀病毒肺炎病例,累計死亡1 809 633 例。新型冠狀病毒對人類健康構成嚴重威脅。盡早發現新型冠狀病毒感染的肺炎病例將有效阻斷病毒傳播。X 光胸片成像是檢測新型冠狀病毒的有效手段之一,然而由于人體胸腔結構復雜,除肺實質以外還包含了肋骨、脊椎、支氣管等干擾部位,這將嚴重影響計算機輔助系統診斷新型冠狀病毒肺炎患者,因此從X 光胸片中提取肺實質成為新型冠狀病毒肺炎診斷任務中的關鍵環節。
圖像分割技術是計算機視覺領域的重要研究方向,將圖像分成若干互不交叉且分別具有相似性質的區域。傳統圖像分割技術主要依靠數字圖像處理領域的分割算法,這些分割算法需要人為設定超參數,分割效果受人為因素影響較大。文獻[1]結合Freeman 鏈碼法和Bezier 曲線對傳統圖像分割技術進行改進,雖然在一定程度上提升了分割精度,但是仍需要人為設定超參數。
目前,國內外研究人員提出了大量基于深度學習技術的醫學圖像分割方法[2]并取得了實質性進展,其中最具代表性的是RONNEBERGER 等[3]提出的U-Net。該網絡利用級聯操作將編碼器與解碼器特征及圖像高層信息與淺層信息進行有效融合,防止了卷積網絡高層語義信息的丟失,能夠充分表達上下文信息。文獻[4]提出的V-Net 在網絡結構上與U-Net 較接近,該網絡主要應用于三維圖像的特征提取,其中加入了殘差連接架構,可有效緩解網絡深度加深導致的梯度消失問題。文獻[5]在U-Net 的基礎上加入了殘差連接模塊有效解決了深層網絡參數迭代遲緩甚至無法迭代的問題。文獻[6]在全卷積網絡結構中引入了空間注意力模塊和通道注意力模塊。文獻[7]提出一種漸進式微調策略,將其應用于深度遷移學習網絡以輔助診斷肺結節良惡性。文獻[8]將表面波變換與脈沖耦合神經網絡結合進行肺實質分割,有效抑制了肺部圖像的干擾信息。文獻[9]提出一種基于編解碼模式的肺實質分割算法,該算法運用空洞空間金字塔池化[10]及多尺度圖像輸入充分提取圖像特征。這些算法從更加高效的整合特征入手,提升了網絡模型的特征提取能力,但是由于未考慮分割目標的形變會在一定程度上影響分割準確率等指標,且采用傳統分割損失函數訓練網絡,因此無法有效提升網絡對不同數據集的泛化能力。
本文在U-Net 的基礎上提出一種結合編解碼模式的肺實質分割模型。構建A 形特征融合模塊(ABlock),充分學習深層特征的語義信息,避免了特征提取過程中的信息丟失。在深層卷積網絡中,加入密集空洞卷積(Dense Atrous Convolution,DAC)模塊[11]和殘差多核池化(Residual Multi-kernel Pooling,RMP)模塊[11],擴大卷積感受野并提取上下文特征信息,同時改進可變形卷積(Deformable Convolution,DC)[12]和分割損失函數,使網絡能自適應檢測目標的各種形變,充分發揮卷積神經網絡的特征提取能力。
如圖1所示,傳統卷積使用規則的方塊卷積核進行卷積運算。如圖2所示,可變形卷積使用不規則的卷積核進行卷積運算??勺冃尉矸e使網絡進行卷積運算時重點關注感興趣的局部區域,而不是統一使用方塊卷積核掃描整張圖像區域。

圖1 傳統卷積Fig.1 Traditional convolution

圖2 可變形卷積Fig.2 Deformable convolution
傳統卷積的操作步驟主要為:1)使用規則卷積核在輸入特征圖上進行特征采樣;2)利用權重系數W對采樣值進行加權求和。
對輸入特征圖x進行卷積采樣可以得到輸出特征圖上的任意位點a0的特征值y(a0):

其中:an為卷積核k上的所有位點。
在可變形卷積中,偏移量Δan(n=1,2,…,N,N=|k|)會間接改變規則卷積核的形狀,因此改進的特征值y(a0)為:

可變形卷積實現流程如圖3所示。設輸入特征圖大小為b×w×h×c,文獻[12]單獨使用一個神經網絡預測位置偏移量Δan,輸出特征圖大小為b×w×h×2c。本文提出一種新的偏移量計算方法可使計算量減少1/2。改進的可變形卷積實現流程如圖4所示。

圖3 可變形卷積實現流程Fig.3 Implementation flow of deformable convolution

圖4 改進的可變形卷積實現流程Fig.4 Implementation flow of improved deformable convolution
(w×h)大小的特征圖X經過卷積核為k的規則卷積后得到S(i,j),如式(3)所示。將S(i,j)輸入到sigmoid 函數σ得到Y(i,j),如式(4)所示。將Y(i,j)乘以(w×h)得到位置偏移量Aw×h×c,如式(5)所示。將原特征圖位置編號矩陣G進行拉伸操作(Flatten)得到矩陣T,G中的每個通道號為0 到(w×h)的一維編號,如式(6)所示。位置偏移矩陣Z等于A加T,并限制Z的值在0 到(w×h)之間,如式(7)所示。

利用位置偏移矩陣Z提取原特征圖中的像素值,將其進行拉伸操作后的原特征圖記為X′、X′中的像素編號按矩陣T進行編號,將X′中編號對應的像素值如圖5所示提取當前偏移位置及其上下左右共5 個像素值并求平均值,得到位置變換后的特征圖Xoffset,并對Xoffset特征圖進行卷積核大小為3×3 的卷積操作。

圖5 位置變換后的特征圖Fig.5 Feature figure after position transformation
空洞卷積可以有效避免底層網絡紋理細節信息的丟失,同時不增加網絡的計算量??斩淳矸e在傳統卷積的基礎上加入了膨脹系數。圖6 給出了加入了膨脹系數為2 的空洞卷積。對于膨脹系數為r,卷積核尺寸為k的空洞卷積的感受野g計算如式(8)所示:


圖6 空洞卷積Fig.6 Atrous convolution
圖7 給出了本文算法流程,首先將輸入圖像經過直方圖均衡化、翻轉、拉伸等預處理操作,把處理好的圖像分批次輸入分割模型中得到預測值(即1 張像素值為0 到1 的圖像),用預測值與標簽二值圖像計算損失函數進行網絡參數優化。

圖7 肺實質分割算法流程Fig.7 Procedure of pulmonary parenchyma segmentation algorithm
本文采用基于編解碼模式[13]的U 形神經網絡(AD-U-Net)。AD-U-Net 分為編碼部分、深層特征融合部分和解碼部分,并使用級聯操作將編解碼特征圖進行融合,避免高層特征紋理細節信息丟失。AD-U-Net 結構如圖8所示。

圖8 AD-U-Net 結構Fig.8 AD-U-Net structure
2.2.1 編碼部分
由于神經網絡中淺層特征紋理細節信息豐富,高層特征語義信息豐富,在圖像分割中決定分割質量的因素通常存在于紋理細節中。本文使用4 個最大池化層得到4 個不同尺度的特征圖,并利用級聯操作向4 個尺度特征圖輸入不同尺度的輸入圖像以避免深層網絡紋理細節信息的丟失。編碼部分每層采用2 組3×3 卷積操作(3×3 conv)加上批歸一化(BN)和Relu 激活函數,并使用最大池化(Maxpooling)進行下采樣。在每層卷積后所得的特征圖不僅要傳入最大池化層進行下采樣,而且要運用級聯操作輸入到深層特征融合部分和解碼部分進行特征融合,從而充分表達每層所提取的不同特征。
2.2.2 深層特征融合部分
由編碼部分輸入的圖像如果不采用特征融合操作,直接將編碼部分最后一層輸出與解碼部分相連,則編碼部分提取的豐富特征信息在網絡參數傳遞過程中有極大概率會丟失,最終影響分割質量。本文提出一種A-Block 結構,如圖9所示,黑色特征層為編碼器各層的輸出特征圖,白色特征層為編碼器最后一層的特征圖。

圖9 A-Block 結構Fig.9 Structure of A-Block
將編碼器最后一層的特征圖經過1 次3×3 卷積和3 次3×3 轉置卷積(3×3 upconv)上采樣,得到4 個特征圖。將上采樣得到的特征圖與對應尺度的黑色特征層進行相加操作(Add)和拼接操作(Concatenation),將特征圖疊加融合,最終得到輸出特征圖(output)。
除此之外,深度特征融合部分還加入了密集空洞卷積模塊[14]和殘差多核池化模塊[15]。如圖10所示,將特征圖用不同膨脹系數(r)的空洞卷積進行特征提取,得到不同感受野的特征圖,在DAC 中首先進行一次膨脹系數為1 的3×3 卷積后,并列進行多次不同膨脹系數的卷積操作,卷積通道數(C)均設置為512。值得注意的是不同膨脹系數的膨脹卷積可有效提取多尺度信息,最后將這些并列的卷積操作進行拼接操作后輸出得到多尺度特征映射。本文將A-Block 中A 點處的輸出特征圖進行一次kernel size為1、stride 為2 的反卷積,改變特征圖大小并調整通道數,經過sigmoid 激活函數得到深層網絡預測特征圖,將該預測特征圖與標簽二值圖像進行對比并計算損失函數。本文通過深度監督(Depth Supervision,DS)機制[16]指導深層網絡的參數優化,避免由于網絡深度增加導致的優化梯度消失問題。

圖10 密集空洞卷積模塊結構Fig.10 Structure of DAC module
在醫學圖像中,分割目標大小及形狀因為不同癥狀的影響變化較大。文獻[11]使用一種殘差多核池化模塊來解決該問題,其結構如圖11所示。該模塊主要依靠多個不同尺度的最大池化來檢測不同大小的對象。殘差多核池化模塊首先采用4 個不同大小的池化核對全局上下文信息進行編碼,然后將池化后的多尺度特征圖進行拼接操作,最后引入一個1×1 卷積及批歸一化進行特征降維。

圖11 殘差多核池化模塊結構Fig.11 Structure of RMP module
2.2.3 解碼部分
當神經網絡輸入信息量很大時,模型參數也非常龐大,以至于神經網絡無法重點關注起決定性作用的部分參數。在解碼部分,本文采用可變形卷積,在每層解碼模塊的開始加入一個改進的可變形卷積模塊,將解碼模塊、編碼模塊、深層融合模塊的輸出特征圖進行拼接操作后輸入可變形卷積模塊中。該模塊將自適應地對圖像中感興趣的區域進行特征提取,變相地改變了卷積形狀,并在卷積過程中不斷地識別圖形中的感興趣區域。普通注意力模塊是在進行規則卷積后對得到的特征圖進行篩選操作。該方法比較依賴人為設定不同尺寸的卷積核對多尺度目標的檢測,而可變形卷積無需人為設定不同尺寸的卷積核,即可實現對多尺度目標的檢測。每層解碼模塊引入了可變形卷積和3×3 普通卷積,并用轉置卷積進行上采樣,實現特征圖的尺度變換。
本文引入類距懲罰項改進分割損失函數,目的是增大類間距并縮短類內距。Tversky 損失函數的定義如式(9)所示:

其中:pi表示像素i屬于肺實質的預測概率;表示像素i屬于背景的預測概率;yi表示像素i屬于肺實質的真實標簽值;表示像素i屬于背景的真實標簽值;ε是一個極小的數,避免分母為0;α和β分別用于控制假陽性和假陰性的權重。本文在Tversky 損失函數的基礎上進行了改進,加入了類距懲罰項,定義如式(10)所示:

其中:a表示預測為肺實質,標簽為肺實質的所有像素的平均值;b為預測為背景,標簽為背景的所有像素的平均值;d表示標簽為肺實質的預測值的所有像素的平均值;e表示標簽為背景的預測值的所有像素的平均值。在式(10)中,多項式第2 項和第3 項即為控制類內距(Sn)和類間距函數(Sp)。如果僅將類內距和類間距加入到損失函數中以尋求減少(Sn-Sp),那么該法將缺乏優化靈活性。
由于該對稱優化方法對類間距和類內距的懲罰力度是嚴格相等的,因此在進行優化時Sn和Sp具有相同的梯度。如圖12所示,Sn已非常小,如果按照對稱的類距損失函數進行參數優化,那么Sn將繼續以較大的梯度減小,從而到達決策邊界T所在的位置。該方法效率低,且收斂狀態模糊。由圖12 可以看出,點T和T′均位于決策邊界上,由于對稱的類距損失函數允許模糊的收斂狀態,因此收斂速度減慢,收斂狀態多樣化。

圖12 傳統類距損失函數的收斂情況Fig.12 Convergence of traditional class distance loss function
文獻[17]為類距損失函數進行優化,將(Sn-Sp)修改為(λnSn-μpSp),允許Sn和Sp以不同的步調進行學習。如圖13所示,在加入λn和μp后將使類間距和類內距的下降梯度和收斂狀態相適應,決策邊界呈圓弧形。對于Sn和Sp,加入了控制不同相似度函數收斂梯度的加權因子。將正負樣本標簽與預測值之間的歐式距離作為加權因子,當類內距過大時,權重參數將會附加給類內距相似度函數更高的權重,提高其在優化時的梯度。因此,相似度損失函數可以按照各自不同的步調進行參數優化,提升了函數優化的靈活性和決策邊界的泛化能力。

圖13 圓損失函數的收斂情況Fig.13 Convergence of circular loss function
實驗采用5 000 張X 光胸片數據及其對應的肺實質人工分割二值圖像。X 光胸片數據包含正常、已感染新型冠狀病毒肺炎和患有其他疾病的胸部X光成像,其中每張圖片分辨率均為512 像素×512 像素。將80%的圖像作為訓練集,20%的圖像作為測試集。實驗硬件環境為NVIDIA RTX 2080 Ti GPU,Intel Core i7 CPU,采用Adam 優化器,并且學習率設定為1e-4,batch size設定為8。
本文評價指標包括準確度(Acc)、Dice 系數、敏感度(Sen)和Jaccard 指數,具體計算公式如式(11)~式(14)所示:

其中:TTP表示標簽分割圖像和預測分割圖像的肺實質公共區域的像素數量;FFP表示在分割預測區域內而在標簽分割區域外的像素數量;TTN表示標簽分割圖像和預測分割圖像的非肺實質公共區域的像素數量;FFN表示在分割預測區域外而在標簽分割區域內的像素數量。
3.3.1 損失函數對分割結果的影響
經過統計得出,數據集中正負樣本比例嚴重失衡,Tversky 損失函數對于FFN和FFP的檢測權重是不相等的,可以根據數據的實際情況改變相應的權重值,從而減弱數據樣本分布不平衡對分割結果造成的不良影響。測試并比較Tversky 損失函數(見式(9))和改進的Tversky 損失函數(見式(10))的性能,損失函數對分割結果的影響如表1所示??梢钥闯觯谑褂酶倪M的Tversky 損失函數后,分割算法的各項性能指標均有不同程度的提升。

表1 損失函數性能對比Table 1 Performance comparison of loss function %
由于使用sigmoid 函數,預測值被限定在0.0 到1.0 之間,將預測結果分為10 個區段,分別統計預測值在各個區段中的像素數量,基于Tversky 損失函數和改進Tversky 損失函數的預測數據分布結果如圖14 和圖15所示??梢钥闯?,在改進的Tversky 損失函數后像素預測值主要分布于0.1~0.3 和0.7~1.0,而0.3~0.7 的預測數相對損失函數不斷減少,像素預測值大量分布在0.0 或者1.0 附近,表明改進的Tversky 損失函數的魯棒性更強。對比圖14 與圖15可以看出,基于改進Tversky 損失函數的預測數據分布兩極分化更加明顯,符合預期效果。

圖14 基于Tversky 損失函數的預測數據分布Fig.14 Prediction data distribution based on Tversky loss function

圖15 基于改進Tversky 損失函數的預測數據分布Fig.15 Prediction data distribution based on improved Tversky loss function
3.3.2 消融實驗
由A-Block、DAC 模塊、RMP 模塊、DC 和DS 機制組成的5 種改進方案對分割性能的影響如表2所示。可以看出,A-Block 和DC 相較其他模塊和機制對于分割結果的影響較大。A-Block 將上下文信息充分融合,避免特征提取過程中的信息丟失,從而提升分割精度。DC 作為一種特殊的注意力機制,使網絡能自適應檢測目標的各種形變,充分發揮了卷積神經網絡的特征提取能力。DS 機制可以有效指導深層網絡的參數優化,有效避免了隨著神經網絡深度加深導致的網絡訓練梯度消失和收斂速度過慢等問題。

表2 5 種改進方案對分割結果的影響Table 2 Influence of five improved schemes on segmentation results %
3.3.3 算法對比實驗結果分析
將本文提出的AD-U-Net 與U-Net[3]、CE-Net[9]、U-Net++[18]、U2-Net[19]、U-Net 3+[20]等5 種目前表現較好的神經網絡進行分割性能對比,結果如表3所示??梢钥闯?,本文基于AD-U-Net 模型的分割算法的準確度、Dice 系數、敏感度和Jaccard 指數分別達到98.16%、98.32%、98.13%和98.54%,相較對比模型有不同程度的提升。因此,本文提出的基于AD-U-Net模型的圖像分割算法能有效實現肺實質分割。

表3 基于6 種神經網絡模型的圖像分割算法性能對比Table 3 Performance comparison of image segmentation algorithms based on six neural network models %
本文提出基于編解碼模式的肺實質分割算法,運用特征融合思想,在深度融合模塊中采用A-Block、密集空洞卷積模塊和殘差多核池化模塊充分融合上下文信息。通過帶有可變形卷積的注意力機制對編解碼特征進行融合,提升卷積神經網絡對檢測目標形變的適應能力。設計類距懲罰損失函數,使網絡預測結果更加穩定。實驗結果表明,該算法能實現肺實質部位的有效分割,相比其他算法分割性能更優。后續將探索并研究更加高效準確的分割算法,提升新型冠狀病毒肺炎的檢測準確率,并進一步擴展該分割算法在其他醫學圖像處理中的應用,提升其普適性與實用性。