林培陽,鄭茜穎
(福州大學 物理與信息工程學院,福建 福州 350108)
相較于傳統的圖像分割算法,基于深度學習的圖像分割方法可以適應復雜多變的環境,在各種場景的圖像分割任務中表現出了更高的精度和魯棒性。卷積神經網絡模型通過多階段的卷積池化來提取圖像中的特征,并在最后輸出像素級的預測結果。LONG等人在2015年提出了全卷積網絡(Fully Convolutional Network,FCN)[1],將卷積神經網絡的全連接層替換成全卷積層,在語義分割任務中取得了不錯的性能。RONNEBERGER等人提出了U-Net[2],采用編碼器-解碼器的對稱結構,并在編碼器和解碼器之間加入跳躍連接,克服了FCN空間位置信息丟失的缺點,在許多醫學圖像分割任務中表現優異。ZHANG等人受殘差神經網絡的啟發,提出了帶有殘差結構的Resdiual U-Net[3],引入殘差連接改善了網絡退化的問題。PUNN在所提出的Inception U-Net[4]中利用Inception模塊來提取多尺度的特征。Attention U-Net[5]使用通道空間注意力機制融合了編碼器跳躍連接和反卷積的兩部分特征。JIN等人將注意力機制引入了U-Net網絡,提出了RA-UNet[6],使用注意力機制聚合低級和高級特征,提取上下文信息。ZHOU在U-Net++[7]中,用多個層次的U-Net結構組成了U-Net++,并使用了多重聯合損失,加快了網絡的收斂并且有效提高了網絡的性能。考慮到空間上的連續性,CICEK等人在2016年提出3D U-Net[8]使用了3D的卷積核,在具有連續性的數據集中表現優于傳統的2D網絡。MILLETANI在2016年提出的V-Net[9]中,使用了Dice Loss和LCE Loss的聯合損失函數,解決了像素比率不均勻的問題,避免了背景對分割精度的過度干擾。LAN等人提出了Y-Net[10],由兩個編碼器和一個解碼器組成。KUANG等人提出了三路徑編器的Ψ-Net[11],DOLZ等人提出了多路徑編碼器結構,這些工作證明了在多模態輸入中,編碼器數量的增加有助于提升網絡的性能。
在新冠病灶分割任務中,ZHANG[12]等人通過雙輸入Y型U-Net結構,通過肺結核數據集,探索了從非新冠肺炎的病理圖像中提取共享知識的可能性,并證明了這種方法的分割效果優于經典的U-Net網絡。FAN在Inf-Net[13]中使用并行解碼器聚合高級特征,并生成全局特征圖,利用隱式反向注意機制和顯式邊緣注意機制,對邊界進行建模,增強了病灶的邊界表示,提高了網絡的性能。WANG提出了COPLE-Net[14],使用了新的噪聲魯棒的NR-Dice損失函數,并引入雙池化的下采樣,在新冠病灶分割任務中Dice系數接近80%。PEI提出了一種多點監控網絡MPS-Net[15],將多尺度特征提取結構、篩網連接結構、多尺度輸入結構和多點監督訓練結構引入MPS-Net中,在新冠病灶分割任務中,Dice系數接近83%。KITRUNGROTSAKUL等人在Attention-Ref-Net[16]中提出了跳躍連接注意模塊(Skip Connections Attention,SCA)來改進分割和精細化網絡中的重要特征,提出了種子點模塊(SPM)對用戶輸入的種子點進行轉換,獲得有用的信息,并在公共數據集和私有數據集上證明了其方法的有效性。
盡管以上這些工作通過引入先進的模塊和復雜的結構來提高對新冠病灶的分割精度,并且在各自的數據集上表現優于傳統模型,但是,由于新冠病灶的大小、分布和灰度的復雜性,很容易導致邊界過度分割或欠分割。本文提出的方法能夠很好地解決邊界分割不準確的問題。本文的主要工作如下。
(1)使用帶有殘差連接的編碼器代替標準卷積單元,并增加編碼器解碼器的數量,有助于模型更好地提取細節特征,提高分割的精度。
(2)引入自注意力機制,通過對高級特征的特征維度進行重新加權計算,學習特征的內在相關性,獲得特征的局部相關性和全局相關性,從而獲取特征的位置信息。
(3)篩選整理了只包含肺部輪廓標簽和新冠病灶標簽的分割數據集,使其更適合用于肺部輪廓分割和新冠病灶分割兩項訓練任務,并進行訓練,證明了本文所提算法的有效性。
本文提出的模型結構如圖1所示。模型輸入大小為512×512×1的CT圖像,通過編碼器提取到的最后一級特征大小為8×8×512,經過自注意力機制進行計算加權,然后通過解碼器得到與輸入圖像大小相同的預測結果圖像。編碼器部分采用了帶有殘差連接的特征提取模塊,有助于保留特征的空間信息,同時能夠避免網絡深度帶來的梯度消失。與采用四級編碼器和四級解碼器的U-Net不同的是,該模型一共有六級編碼器和六級解碼器。加深的網絡,有助于模型提取富含語義信息的高級特征;在編碼器和解碼器中間加入了自注意力機制模塊,通過學習特征的內在相關性,來獲得特征的局部相關性和全局相關性。
當然,我現在也理解了那些生活在阿拉伯半島及周邊地區的多金老爺們正抓緊時間整理車庫,為庫里南的到來而急切盼望的心情,畢竟見識過所謂的“最好”,才能明白什么才是“更好”。不過,就別追問我庫里南的真實越野表現了,我真的不知道。如果您成為了庫里南車主,那歡迎您分享自己的體驗,我一定認真洗耳恭聽。

圖1 所提出的分割網絡模型結構
編碼器和解碼器子模塊如圖2所示,可以分為特征提取支路和殘差連接支路。首先,特征提取支路為兩個連續3×3卷積,并分別在卷積層后面加入了BN層和ReLU層,通過批歸一化層與激活函數來穩定每一層網絡的特征。殘差連接支路首先通過大小為1×1、步長為2、特征通道為輸入特征兩倍的卷積來匹配輸出特征的維度,然后經過BN層和ReLU層與特征提取支路的特征進行合并,最終輸出特征。解碼器子模塊接收兩部分的輸入,分別為來自編碼器的特征和上級網絡反卷積得到的特征,然后合并兩部分的特征,再通過兩次3×3卷積來融合特征并輸出到下一級網絡。

圖2 編碼器子模塊(左)和解碼器子模塊(右)
自注意力機制(Self-Attention)最早用于處理自然語言處理(Natural Language Processing,NLP)問題,當模型輸入為大小不同的向量時,確定每個詞向量之間的聯系。自注意力機制通過構建詞向量之間的關系矩陣,計算向量之間的相關性來尋找詞與詞之間的關系,從而聯系上下文,達到更加準確的預測結果。在卷積神經網絡中加入自注意力機制,可以利用特征內部固有的信息進行注意力的交互,減少對外部信息的依賴,增強特征的表達能力。
自注意力機制模塊的結構如圖3所示。輸入Inputs為第六級編碼器輸出的高級特征,大小為8×8×512。在自注意力機制模塊內部,共有三條支路和一條殘差連接支路。第一條支路F1和第二條支路F2的作用是計算特征圖在空間上的相關性。
為了減少計算量,首先,通過卷積核大小為1的卷積分別縮減F1和F2支路的特征通道數,從輸入的512縮減到64,減少了計算量,這一步得到的特征大小均為為8×8×64。將兩條支路中的大小為8×8的特征圖拉長變為一維向量,分別得到通道數為64,長度也為64的兩個特征矩陣。其次,對F1的特征矩陣進行轉置,然后與F2的特征矩陣進行矩陣乘法的計算,得到位置關系矩陣α。矩陣α代表了特征圖的每個像素之間的位置相關性。例如,α的第a行第b列的值代表著特征圖向量的第b個值對第a個值的位置關系大小。每個向量值都需要計算其他64個向量值對該向量值的位置關系大小,所以位置關系矩陣α的大小為64×64。第三條支路F3的作用是和局部的位置關系矩陣α一起,計算整個輸入特征的全局自注意力關系矩陣β。具體的操作是,先進行大小為1×1的卷積并同樣將特征尺寸變為一維向量,得到大小為64×512的特征矩陣,然后將位置關系矩陣α進行轉置,與F3的特征矩陣進行矩陣相乘,再把相乘的結果中長度為64的每一個一維特征向量重新轉化為8×8的特征圖,經過SoftMax層將得到的結果進行歸一化操作,最終得到大小為8×8×512的全局自注意力關系矩陣β。β每個位置上的值,代表著整個輸入特征矩陣對該位置上的特征值的相關性大小。最后,將得到的全局自注意力矩陣乘以比例系數μ,并將其與殘差連接的輸入特征矩陣相加,所得到的輸出即為經過自注意力機制加權后的輸出特征。自注意力機制的計算過程用公式可以表示為
式中:I表示輸入特征,O為輸出特征,C1,C2和C3代表不同的卷積操作,P代表轉置操作,R代表形變,將特征尺寸拉成一維向量,S代表SoftMax層,μ為全局自注意力矩陣的比例參數。
Dice系數是一種基于區域的度量方法,在圖像處理中常用于評估區域重疊情況,可以用來評價模型分割的性能。Dice系數的值介于0和1之間,越接近1,代表分割結果與原始標簽越接近,即分割效果越好。Dice Loss等于1減去Dice系數,可以作為損失函數,其值越接近0,代表模型分割效果越好。經過拉普拉斯平滑(Laplace smoothing)系數加權的Dice Loss,本文簡稱LD,可以避免計算過程中分母為0的情況,還可以減少訓練過程中的過擬合,LD的計算公式如下:
式中:A代表的是分割結果為正的區域,B代表的是標簽為正的區域,s是拉普拉斯平滑系數。
使用LD作為模型損失函數,當分割的前景區域較小時,較小的分割誤差可能會導致LD大幅度變化,從而導致訓練過程不穩定。常用的交叉熵損失函數LCE的計算公式為式(3)。
圖像分割任務中,會使模型對背景部分給予更多的關注,因為相較于前景,背景區域更廣,因此會影響學習效率,導致模型不收斂。本文使用LD和LCE的聯合函數L作為模型的損失函數。
式中:λ代表的是LD和LCE的比值,本文取λ=0.5。
為了度量模型預測結果的好壞,本文使用Dice系數D作為訓練的評價指標,它的計算公式如下:
此外,為了更好地衡量模型分割的效果,本文引入了四個輔助評價指標:Jaccard相似系數(J),用于比較有限樣本之間的相似性和差異性;Precision(P),表示在模型預測是Positive的所有結果中,預測正確的比重;Recall(R),表示所有樣本的正例中,被模型被預測正確的比重;F1分數(F),同時衡量Precsion和Recall的一種方式。相關的計算公式如下:
本文的實驗使用GTX 3080Ti顯卡進行訓練,使用的深度學習框架為Tensorflow2.4,所有的實驗都是在相同的配置和環境下進行訓練的。
本文使用的數據集在MA[17]等人提供的標記良好的COVID-19 CT Scans數據集的基礎上作出改動。該數據集包含了20份新冠患者的肺部CT影像,共三千多張圖片,每一張圖片都包含了左肺、右肺和新冠感染病灶的注釋。本文剔除了COVID-19 CT Scans數據集中不包含肺部輪廓的圖片,保留了剩下的含有肺部輪廓但不一定含有新冠病灶的圖片,一共得到了2 973張圖片作為數據集。
實驗分兩部分進行,對比的網絡模型采用了U-Net,U-Net++和Attention U-Net(簡稱A-U-Net)。第一部分實驗為肺部輪廓分割實驗,第二部分實驗為新冠病灶分割實驗。通過兩個實驗,分別測試模型對肺部輪廓和新冠病灶的分割性能。兩個實驗均隨機選取1 773張圖片作為訓練集,600張圖片作為驗證集,600張圖片作為測試集,初始學習率為1×10-3,Epoch為200。
表1為肺部輪廓分割實驗進行的5次訓練結果的Dice系數和5次結果的平均值。可以看到,本文提出的模型在5次訓練中,Dice系數均高于其他對比模型,平均領先表現第二的Attention U-Net約0.186%。

表1 肺部輪廓分割實驗訓練結果
表2為模型在輔助評價指標下的表現??梢钥吹?,本文提出的模型在J和P等評價指標上均優于其他對比模型,說明本文模型在肺部輪廓分割方面的性能優于對比模型,對肺部輪廓的分割結果更加接近原始標簽。

表2 肺部輪廓分割實驗結果在各評價指標上的表現
在新冠病灶分割實驗中,同樣進行了五次訓練,得到了如表3所示的結果??梢钥吹?,本文提出的模型的Dice系數同樣均高于對比模型,領先表現第二的U-Net約1.336%。表4為模型在其他評價指標下的表現,同樣均優于其他對比模型。實驗結果說明本文模型對于新冠病灶這種分布不均勻的小區域目標的分割效果更好,更接近原始標簽。

表3 新冠病灶分割實驗訓練結果

表4 新冠病灶分割實驗結果在各評價指標上的表現
圖5為肺部輪廓分割實驗中,輸入圖片、肺部輪廓標簽、對比模型分割結果和本文所提出模型的分割結果圖。從第一組圖可以看到,對于形狀細長的肺部輪廓區域,U-Net和Attention U-Net分割的結果并沒有正確地識別到肺部的邊緣部分,而將細長的區域誤分割為胸腔區域。雖然U-Net++的預測結果較為接近真實標簽,但是分割結果比真實標簽短了一點,存在欠分割。本文提出的模型能夠正確識別該部分區域,并且分割結果幾乎與真實標簽重合。相同地,第二組圖和第三組圖中,本文提出的模型準確地對肺部輪廓進行了準確的分割,而其他對比模型均存在欠分割現象。在第四組圖中,U-Net和U-Net++的分割結果錯誤地將左肺和右肺連接起來了,本文所提出的模型不僅準確地識別出左肺和右肺的邊界,對左肺和右肺中間輪廓邊緣的分割效果也優于其他模型。

圖5 肺部輪廓分割結果圖
圖6為新冠病灶分割實驗中,輸入圖片、新冠病灶標簽、對比模型分割結果和本文所提出模型的分割結果圖。第一組圖中,新冠病灶分布在肺部的四個區域中,U-Net和U-Net++分割后的結果將距離較近的兩個區域的邊界連接起來了,Attention U-Net則是將其中一個區域誤分割為兩個獨立的區域,本文提出的模型正確地識別了四個區域,并且邊界接近真實標簽。同樣地,在其余三組圖中,本文提出的模型相較于其他三個對比模型,能夠達到更好的分解結果,在面積和邊界上,更接近真實標簽。

圖6 新冠病灶分割結果圖
通過實驗結果可以看出,本文采用的更深的編解碼路徑和自注意力機制模塊,能夠有效地對肺部輪廓區域和新冠病灶區域進行分割。通過加深的編碼器提取高級特征后,再對高級特征進行全局注意力矩陣加權,能夠使模型更加關注有效的高級特征,提高對細節部分的定位,準確識別區域和邊緣,達到更好的分割精度。
本文提出了一種基于U-Net改進的醫學圖像分割網絡,用于對肺部輪廓和新冠病灶輪廓的分割。該網絡的編解碼路徑比U-Net更長,并在編碼路徑中加入了殘差連接。同時,在編解碼器的連接處加入了自注意力機制模塊,自適應地學習特征的內在相關性,提高特征的表達能力。通過實驗數據和對比圖可以看到,所提出的分割網絡在分割細節上表現優異,能夠很好地克服新冠病灶輪廓分布不均、灰度接近肺部胸腔的問題。在肺部輪廓分割實驗和新冠病灶分割實驗中,本文所提模型均取得了比其他對比模型更好的精度,證明了該模型的有效性。