粟長權(quán), 郭本華,*, 魏一帆, 錢淑渠, 楊國慶
(1. 貴州財經(jīng)大學(xué)信息學(xué)院,貴陽 550025;2. 安順學(xué)院數(shù)計學(xué)院,安順 561000)
2019冠狀病毒[1](Corona Virus Disease 2019,COVID-19)于2020 年初在全球爆發(fā),對各個國家和人民的生命財產(chǎn)造成極大威脅。此外,COVID-19 不同變種[2]的出現(xiàn),由于更具傳染性[3],進(jìn)一步在全世界造成了令人擔(dān)憂的局面。預(yù)防措施和早期診斷一直是防止這種致命病毒進(jìn)一步傳播的唯一解決辦法。
在診斷方面,目前主要方法是試劑診斷[4]和肺部CT[5],然而試劑診斷存在一定缺點,如檢測時間長、獲取結(jié)果緩慢、人工成本高等。為了向患有新冠病毒的危重病人提供及時的臨床醫(yī)學(xué)支持,Mahmud 等[6]提出通過胸部X 射線和計算機斷層掃描(computer tomography,CT)技術(shù)判斷患者病情,但此項技術(shù)需要更加專業(yè)的放射科醫(yī)生操作,然而放射科醫(yī)生的缺乏使得診斷效率低下,因此,需要研發(fā)出更先進(jìn)的計算機AI 輔助診療系統(tǒng)來提高診斷效率,并實現(xiàn)自動CT掃描篩查。
傳統(tǒng)肺部CT 圖像分割方法主要按紋理[7]、形狀和結(jié)構(gòu)等物理特征對圖像進(jìn)行分割,這些方法按像素區(qū)域和圖像輪廓兩種實現(xiàn)原理可分為兩大類:基于區(qū)域的分割方法和基于活動輪廓的分割方法。與傳統(tǒng)的機器學(xué)習(xí)和計算機視覺方法相比,基于深度學(xué)習(xí)的圖像分割[8]方法在圖像分割領(lǐng)域取得了良好的結(jié)果,在分割的準(zhǔn)確性和速度方面具有很大優(yōu)勢。Zhang等[9]研發(fā)出臨床AI應(yīng)用系統(tǒng),使用CT技術(shù)對COVID-19肺炎進(jìn)行準(zhǔn)確診斷、定量測量和預(yù)后評估。
醫(yī)學(xué)圖像分割[10]是醫(yī)學(xué)影像處理中的一個關(guān)鍵任務(wù),其目的是從影像中將感興趣的區(qū)域分離出來,例如癌癥腫瘤、器官等。Canny 算子[11]是一種廣泛應(yīng)用于數(shù)字圖像處理中的邊緣檢測算法,它具有較好的邊緣檢測效果和較低的誤檢率。
深度學(xué)習(xí)在醫(yī)學(xué)圖像分割中的應(yīng)用可以追溯到2015 年Ronneberger 等[12]提出的U-Net 網(wǎng)絡(luò)模型,它是一種深度卷積神經(jīng)網(wǎng)絡(luò),用于生物醫(yī)學(xué)圖像分割任務(wù)。它通過連接對稱的卷積層和上采樣層,實現(xiàn)從輸入圖像到輸出分割掩碼的端到端映射。然而,新冠肺炎的CT 圖像[13]結(jié)構(gòu)復(fù)雜,且形狀不規(guī)則,使得U-Net分割效果不佳,因為U-Net的編碼器和解碼器結(jié)構(gòu)在處理不規(guī)則形狀的目標(biāo)時可能會出現(xiàn)信息損失的情況,這種情況是由于它在編碼時僅僅使用兩層卷積和池化操作來提取特征,結(jié)構(gòu)簡單,無法提取到深層的特征信息。萬加龍等[14]在U-Net網(wǎng)絡(luò)模型中引入視覺注意力,構(gòu)建深度分割網(wǎng)絡(luò),實現(xiàn)模型分割性能的提升。李雨晨等[15]出了一種基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)和加權(quán)最小二乘法(WLS)的醫(yī)學(xué)圖像融合算法,利用滾動導(dǎo)向濾波(RGF)和高斯濾波(GF)構(gòu)成的混合多尺度分解工具將源圖像分解為基礎(chǔ)層和一系列細(xì)節(jié)層,從而能夠更好地保留尺度信息和邊緣信息。
He 等[16]提出了ResNet 系列的深度殘差網(wǎng)絡(luò)結(jié)構(gòu),這個結(jié)構(gòu)使得神經(jīng)網(wǎng)絡(luò)可以訓(xùn)練非常深的層數(shù),在提取到更多的特征信息時,還避免了深度學(xué)習(xí)模型的退化問題,但此模型是基于高質(zhì)量圖像訓(xùn)練的,如果輸入的圖像質(zhì)量較低,可能會導(dǎo)致模型表現(xiàn)不佳。Fan 等[17]提出的Inf-Net 可以對COVID-19 肺部感染病灶進(jìn)行自動分割。使用邊緣注意力模塊和反向注意力模塊來關(guān)注病灶中的邊緣信息和細(xì)小的病灶區(qū)域。雖然特異度得到了很大提升,但是在面對細(xì)小病灶和紋理復(fù)雜的病灶區(qū)域時,分割效果依然不理想,靈敏度不高。
注意力機制[18]是一種計算機模型中的重要組成部分,旨在使模型更加智能和有效。它模仿了人類的注意力機制,讓模型能夠有選擇性地關(guān)注輸入中的特定部分,從而提高模型的準(zhǔn)確性和性能。Liu 等[19]提出一種金字塔注意力機制,可以在不同抽象層級上加權(quán)輸入的特征。它的基本思想是將輸入的特征分為多個抽象層次,并在每個層次上計算注意力權(quán)重,以便在特征融合時更好地結(jié)合這些不同層次的信息。Zhang等[20]提出一種新型金字塔分裂注意力機制(pyramid squeeze attention,PSA),是一種用于圖像分類和檢測任務(wù)的注意力機制,在特征金字塔中使用了多個注意力分支,每個分支負(fù)責(zé)在不同的尺度上進(jìn)行特征建模和注意力計算。該注意力機制旨在解決單一注意力機制無法處理多尺度特征的問題。
本文提出了一種自動分割的多目標(biāo)輸出網(wǎng)絡(luò)模型。本節(jié)首先介紹了網(wǎng)絡(luò)的整體架構(gòu)CEDMO(Canny edge detection multi-output),然后闡述編碼器的組成,再介紹利用Canny算子對分割目標(biāo)進(jìn)行邊緣檢測,以及改進(jìn)局部PSA 注意力機制的實現(xiàn)細(xì)節(jié),最后介紹了多目標(biāo)輸出約束的實現(xiàn)。
本文所提算法CEDMO 的網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示,該算法沿用了全卷積網(wǎng)絡(luò)[21]中編碼器-解碼器結(jié)構(gòu)。編碼器部分,主干網(wǎng)絡(luò)使用的是ResNet50,在編碼器部分設(shè)計了一個Canny算子分支提取更多的邊緣信息。再利用改進(jìn)PSA 注意力機制使得在計算過程中更加關(guān)注病灶細(xì)節(jié)信息。在解碼器部分設(shè)計了多目標(biāo)輸出約束計算,加快計算收斂。
本網(wǎng)絡(luò)模型使用ResNet50[16]為主干網(wǎng)絡(luò)構(gòu)建了編碼器以進(jìn)行特征提取,前面幾層采用傳統(tǒng)的卷積層和池化層,下采樣使用3×3 的最大池化,進(jìn)行下采樣后送入卷積塊中,卷積步長設(shè)置為1,填充都是采取0 填充。圖像經(jīng)過ResNet50 網(wǎng)絡(luò)的4 層采樣,獲取到圖像的特征信息。
圖1 CEDMO算法結(jié)構(gòu)
由于COVID-19 肺炎病灶點在不同階段的紋理、大小、形狀都不相同,在進(jìn)行特征提取時,這些病灶點會作為噪聲增加信息提取的難度。Canny算子[11]對目標(biāo)邊緣的定位比較準(zhǔn)確,使得在噪聲抑制和邊緣檢測之間能取得較好的平衡。本文提出的CEDMO 模型通過引入Canny 算子降低噪聲的影響,減少特征信息提取難度。
Canny算子計算主要步驟如下:
(1)對圖像進(jìn)行高斯平滑,以去除噪聲。高斯平滑使用的高斯核有x和y兩個函數(shù),形式為
式(1)中σ為高斯分布的標(biāo)準(zhǔn)差。
(2)計算圖像的梯度幅值和方向。梯度計算由Sobel 算子來計算平滑后的圖像每個像素點的梯度。Sobel 算子是一個3×3 的矩陣,由它可算出X方向的梯度和Y方向上的梯度。X方向的梯度Gx計算形式為
Y方向上的梯度Gy計算形式為
其中,I為肺炎CT 圖像矩陣。記某點像素的梯度為Gxy,則梯度幅值 |Gxy|的計算形式為
(3)進(jìn)行非極大值抑制。進(jìn)行非極大值抑制的目的是將模糊的邊界變清晰。計算像素的梯度后,保留像素點中梯度強度最大的極大值,去除其他值,對于每個像素點可進(jìn)行如下操作:
第一步,將像素點的梯度方向近似為以下方向中的一個(0°,45°,90°,135°)四個方向,同樣地,梯度反向也為四個方向(與邊緣方向正交);第二步,比較該像素點和其梯度方向正負(fù)方向的像素點的梯度強度;第三步,若該像素點的梯度強度最大,則保留,否則刪除(置0)。
(4)應(yīng)用滯后閾值處理,將檢測到的肺炎CT圖像邊緣結(jié)果二值化。
(5)孤立弱邊緣抑制。為了跟蹤邊緣連接,查看弱邊緣像素及其八個鄰域像素,只要其中一個為強邊緣像素,則該弱邊緣點就可以保留為真實的邊緣。Canny算子在編碼器部分起到了一個引導(dǎo)邊緣分割的作用,計算流程如圖2所示。
圖2 融合Canny計算流程
通過實驗得出,融合的Canny算子有效降低了噪聲影響,同時也提高了分割精度。并在后續(xù)的計算中,還提供一個分割的引導(dǎo)值。
金字塔分裂(PSA)注意力機制[20]結(jié)構(gòu)如圖3所示,通過拆分和連接模塊獲得通道上的多尺度特征圖。再利用SEWeight 模塊提取不同尺度的特征圖的注意力,得到通道間注意力向量。最后使用Softmax 重新校準(zhǔn)通道方向的注意力向量,獲得多尺度通道的重新校準(zhǔn)權(quán)重。最后對重新校準(zhǔn)的權(quán)重和相應(yīng)的特征圖按元素進(jìn)行點乘操作,輸出得到一個多尺度特征信息注意力加權(quán)之后的特征圖。該特征圖多尺度信息表示能力更豐富。
本文在PSA 注意力機制中對SE 模塊做了改進(jìn),SE 模塊由兩部分組成:Squeeze 壓縮和Excitation 激勵,分別用于編碼全局信息和自適應(yīng)重新校準(zhǔn)通道關(guān)系。通道數(shù)據(jù)使用全局平均池化來生成,將全局空間信息嵌入到通道描述中。全局平均池化公式為
之后再用兩個全連接層組合通道間的線性信息,幫助通道高維和低維信息的交互。通道權(quán)重計算公式為
圖3 PSA注意力機制
圖4 改進(jìn)的SE模塊
在傳統(tǒng)的分割方法中,通常只對一個目標(biāo)輸出進(jìn)行監(jiān)督學(xué)習(xí),在訓(xùn)練過程中計算收斂較慢。為了加快計算收斂,進(jìn)而提高模型在圖像分割等任務(wù)上的性能。本文基于此在解碼器部分設(shè)計了多目標(biāo)輸出約束,如圖1所示,在解碼器輸出結(jié)果時設(shè)計了5 個輸出路徑,結(jié)果1~4分別對應(yīng)編碼器的4 個路徑,結(jié)果5 由2、3 和4路徑聚合不同尺度特征而得。當(dāng)結(jié)果5路徑中的SE 模塊輸出時,對其進(jìn)行上采樣,并與結(jié)果4中的SE模塊進(jìn)行拼接,再做計算。同理,結(jié)果4、結(jié)果3、結(jié)果2的SE模塊值進(jìn)行上采樣后也分別與對應(yīng)的SE 模塊采取同樣操作,最后得到的輸出值就是分割所需的結(jié)果。
解碼器部分通過損失函數(shù)在訓(xùn)練過程中約束多個任務(wù)的輸出,每個輸出由自己的損失函數(shù)計算,通過損失函數(shù)之間的關(guān)系起到相互約束的效果,使得訓(xùn)練結(jié)果加快收斂,從而提高計算效率。約束計算公式如下:
li的計算公式由式(13)計算得出:
其中,F(xiàn)i為該輸出路徑的二分類交叉損失函數(shù),F(xiàn)pool為平均池化操作的結(jié)果,m為標(biāo)簽值。
上式中p為Canny 算子引導(dǎo)邊緣檢測分割的引導(dǎo)值。模型共設(shè)計了5個輸出,同時也有對應(yīng)的5個輸出loss函數(shù)。
3.1.1 數(shù)據(jù)集
本文實驗數(shù)據(jù)集使用COVID-19 CT Segmentation[22],是一個公開的數(shù)據(jù)集,該數(shù)據(jù)集由來自60 位不同程度肺炎患者的軸位CT 圖像組成,包含100 張肺部感染圖片,所有的CT 圖像都是由意大利醫(yī)學(xué)和介入放射學(xué)學(xué)會(Italian Society of Medical and Interventional Radiology)收集的。放射科醫(yī)生使用三種標(biāo)簽對CT 圖像進(jìn)行標(biāo)注,分別是肺磨玻璃泡影(ground glass opacity)、胸腔積液(hydrothorax)和肺實變(consolidation)。
3.1.2 數(shù)據(jù)處理
本文對COVID-19 CT Segmentation[22]數(shù)據(jù)集進(jìn)行劃分,將其分為50%的訓(xùn)練集和50%的測試集。為了盡可能地減少數(shù)據(jù)集中病灶類別不平衡帶來的影響,實驗中抽取了包括肺磨玻璃泡影、胸腔積液和肺實變在內(nèi)的三種病灶區(qū)域,作為分割數(shù)據(jù)集。
本文模型實現(xiàn)的框架基于PyTorch1.12.0,編程語言為Python3.8。由NVIDIARTX2080super實現(xiàn)GPU 加速計算。實驗訓(xùn)練和測試階段的batchsize 均為2,共訓(xùn)練100個epoch,優(yōu)化器為Adam,初始學(xué)習(xí)率為1e-4,損失函數(shù)為二分類交叉損失熵,權(quán)重衰減系數(shù)設(shè)置為1e-4。
為了評估本文提出的模型性能,對實驗結(jié)果的評價用了六個評價指標(biāo),分別是Dice系數(shù)、靈敏度(sensitivity,SE)、特異度(specificity,SP)、結(jié)構(gòu)度量(Sα)、增強對準(zhǔn)度量和平均絕對誤差(mean absolute error,MAE)。其中TP為正確分類成病灶的區(qū)域,TN為正確分類成背景的區(qū)域,F(xiàn)P為錯誤分類成病灶的區(qū)域,F(xiàn)N為錯誤分類成背景的區(qū)域。
3.3.1 Dice系數(shù)
Dice 系數(shù)用于評估預(yù)測結(jié)果和真實樣本值(ground-truth)的重疊率,其范圍為[0,1]。其表達(dá)如式(14)所示:
3.3.2 靈敏度
靈敏度(SE)也稱為真陽性率、召回率,用于衡量正確識別真陽性樣本的比率,其表達(dá)如式(15)所示:
3.3.3 特異度
特異度(SP)也稱為真陰性率、查全率,用于衡量正確識別真陰性樣本的比率,其表達(dá)如式(16)所示:
3.3.4 結(jié)構(gòu)度量
結(jié)構(gòu)度量(Sα)用于衡量預(yù)測圖和真實標(biāo)簽之間結(jié)構(gòu)的相似性。So為目標(biāo)感知相似性,Sr為區(qū)域感知相似性,α為目標(biāo)感知相似性與區(qū)域感知相似性之間的平衡系數(shù),通常取0.5。G代表真實標(biāo)簽,Sp代表預(yù)測結(jié)果。其表達(dá)如式(17)所示:
3.3.5 增強對準(zhǔn)度量
3.3.6 平均絕對誤差
平均絕對誤差(MAE)用于評估預(yù)測圖和樣本真實值(ground-truth)之間的誤差。其表達(dá)如式(19)所示:
CEDMO 網(wǎng)絡(luò)模型通過訓(xùn)練,不斷更新網(wǎng)絡(luò)中的權(quán)重參數(shù)。訓(xùn)練的損失函數(shù)如圖5所示。其中l(wèi)oss1為輸出結(jié)果的損失函數(shù),另外4個損失函數(shù)分別對應(yīng)輸出2到輸出5。
通過圖5 可以看出,當(dāng)設(shè)計5 個輸出路徑時,訓(xùn)練的損失函數(shù)在前20 個epoch 時收斂最快,在第60 個epoch 時基本完成收斂,訓(xùn)練100個epoch時,效果基本達(dá)到峰值水平。
圖5 訓(xùn)練的5個損失函數(shù)
3.4.1 消融實驗
本文設(shè)計了三組消融實驗,第一組僅使用主干網(wǎng)絡(luò)ResNet50 和Canny 算子,第二組僅使用ResNet50 和PSA 注意力機制,第三組則是本文提出的CEDMO 模型。由三組實驗測出Canny算子和PSA 注意力機制對于模型性能的影響,結(jié)果見表1(加粗字體表示最優(yōu)結(jié)果)。
表1 不同模塊對模型性能影響
由表1 數(shù)據(jù)可以看出,模型在僅使用ResNet50和Canny 算子的情況下,Dice系數(shù)并不理想;靈敏度(SE)相比其他兩個差距更大,比第二組低9.4 個百分點,比第三組低12.5 個百分點;增強對準(zhǔn)度量分別比第二組和第三組低了6.7 和10.5 個百分點。當(dāng)模型使用ResNet50和PSA 注意力機制時,雖然指標(biāo)比第一組有一定提升,但Dice 系數(shù)、靈敏度(SE)、結(jié)構(gòu)度量(Sα)和增強對準(zhǔn)度量結(jié)果并不理想,依次比采用CEDMO 模塊的結(jié)果低6.8、3.1、4.8 和3.8個百分點,仍達(dá)不到目前分割的主流水準(zhǔn)。
當(dāng)CEDMO 模型在使用Canny 算子先對分割目標(biāo)進(jìn)行邊緣檢測和使用PSA 注意力機制的情況下,Dice 系數(shù)、靈敏度(SE)、結(jié)構(gòu)度量(Sα)、增強對準(zhǔn)度量、平均絕對誤差(MAE)五個指標(biāo)均有較大提升。
3.4.2 對比實驗
為了驗證本文提出的CEDMO 模型的性能,將其在COVID-CT-Segmentaion 數(shù)據(jù)集[22]上與其他方法做對比。當(dāng)模型在訓(xùn)練集上完成訓(xùn)練后,用測試集進(jìn)行對比實驗,最終得到本文模型的對比實驗結(jié)果,各項數(shù)值見表2(加粗表示最優(yōu)結(jié)果)。本文提出的網(wǎng)絡(luò)模型CEDMO 在Dice 系數(shù)、靈敏度(SE)、增強對準(zhǔn)度量三個指標(biāo)上均優(yōu)于基線模型Inf-Net,依次高4.7、4.5 和1.3 個百分點,結(jié)構(gòu)度量(Sα)僅比Inf-Net 網(wǎng)絡(luò)模型低0.1個百分點。
表2 CEDMO模型與其他方法的評價指標(biāo)對比
圖6為不同模型分割對比實驗結(jié)果。
圖6 不同模型分割結(jié)果
可以看出,無論是肺部的整體病灶區(qū)域,還是一些局部細(xì)小的病灶點,CEDMO 模型都能夠識別并且正確分割,分割結(jié)果更接近于真實值。在相同的評價指標(biāo)的評估下,本文提出的CEDMO模型分割性能獲得較好分割水平。
本文提出了一種自動分割肺部CT 圖像的算法CEDMO,實驗結(jié)果表明,模型在公開數(shù)據(jù)集上取得了優(yōu)異的性能,在肺部炎癥區(qū)域的分割任務(wù)中,與現(xiàn)有方法相比具有更高的準(zhǔn)確性和穩(wěn)定性。
該模型在編碼器部分的特征提取階段引入Canny算子對分割目標(biāo)進(jìn)行邊緣檢測,有效地抑制了特征提取過程中噪聲的干擾,使得模型可獲得更多的細(xì)節(jié)。在解碼器部分改進(jìn)PSA 注意力機制和設(shè)計多輸出約束,通過損失函數(shù)之間的約束計算達(dá)到加快計算收斂的目的。經(jīng)過實驗得出,設(shè)計的算法整體分割效果有較大提升,在肺炎CT圖像分割中有著較大的應(yīng)用潛力。
雖然經(jīng)過實驗證明了CEDMO 模型的有效性,但由于COVID-19 CT Segmentation 數(shù)據(jù)集比較小,未能全部展示CEDMO 模型的性能。未來希望能在半監(jiān)督學(xué)習(xí)上得到應(yīng)用開發(fā),并進(jìn)一步優(yōu)化模型,尤其是在算法設(shè)計上。提高模型分割肺炎CT 圖像的準(zhǔn)確性以及實時性,可以輔助醫(yī)生更快地進(jìn)行診斷,提高醫(yī)生的診斷效率。