張秀峰,李永鑫,王 葦,瞿 航*
(1. 大連民族大學 機電工程學院,遼寧 大連116600; 2. 揚州大學附屬醫院 影像科,江蘇 揚州 225009)
醫療影像分割是計算機視覺在醫療影像算法研究領域的一個重要研究分支,以從醫療影像中獲取目標區域的準確分割作為研究目標,為臨床疾病診療和科學研究提供重要的依據[1]。目前已有的研究方法對實性肺結節能實現很好的分割結果。而對于磨玻璃樣肺結節(Ground-Glass Nodules, GGNs),由于存在邊緣模糊、大小形狀各異、不規則等影響分割精度的問題[2],一直是一個極具挑戰性的圖像分割任務。而GGNs與早期肺腺癌密切相關,被認為是惡變可能性最大的肺結節之一[2],對GGNs的精準分割具有極大的臨床價值。
傳統的GGNs醫學影像分割方法主要是根據肺結節的CT值分布和形狀特征發展起來的[3]。對具有同質灰度值和周圍組織高對比度的孤立實性結節表現良好,但隨著周圍組織和結節粘連區域(即GGNs和近血管結節)邊界的模糊程度增加,性能下降明顯[4]。隨著深度學習相關研究在計算機視覺領域獲得廣泛場景的應用并取得較好的成績,基于深度學習的GGNs醫學影像分割算法逐漸成為該領域研究的重點和熱點。相關研究通常開發深度卷積神經網絡(Convdutional Neural Network, CNN)來提取結核的深度圖像特征,并構建編碼器-解碼器架構來分割結核[5]。例如,Wu等[6]提出了一種基于三維U-Net的分割模型,并利用條件隨機場優化深度學習模型的輸出,但現有部分語義分割模型對像素點的預測是獨立的,沒有考慮相互之間的相關性。在之前的模型中考慮到像素相關性的多是使用CRFs,然而,高階勢也被觀察到是有效的,例如基于超像素[7]之間的標簽一致性的魯棒高階項。文獻[8]展示了如何在基于CNN的分割模型中集成特定的高階勢類。雖然這些高階勢的參數可以學習,但它們的數量是有限的。
本文感興趣的是加強高階一致性,而不是局限于非常特定的高階潛能。在Goodfellow等[9]提出的生成式對抗網絡(Generative Adversarial Network,GAN)方法的啟發下,探索了一種基于對抗訓練的方法,用于加強高階一致性,提出一種基于GAN的醫學圖像分割方法GAN-DeepLabv3+,通過引入對抗訓練的方法加強了遠程空間標簽的連續性。
GGNs定義為在肺部影像中有形狀不定的密度增高影,邊界可能模糊但內部血管紋理和支氣管壁清晰可見[10]。當患者肺部影像中磨玻璃影所占比例超過50%時,臨床上可以定義為原位癌。因此,患者的存活率完全取決于病變發現和診療的時間早晚[11-12]。在早期診斷中,對GGNs的準確識別和精細分割尤為關鍵。提出一種GAN,引入經典的博弈思想,并將DeepLabv3+作為圖像分割生成器網絡,提高分割效率和精確度。
DeepLabv3+網絡是一種用于圖像語義分割的CNN,引入語義分割常用的編碼器—解碼器。采用空間金字塔池化(Atrous Spacial Pyramid Pooling, ASPP),使用不同采樣率和多種視野的卷積核,能夠以多尺度捕捉對象。
GAN-DeepLabv3+使用DeepLabv3+結構作為網絡生成器,DeepLabv3+算法在編碼模塊中,使用Xception[13]網絡作為特征提取的骨干網絡,將空洞卷積和深度分離卷積結合在輸出的特征圖上使用不同atrous rate并行ASPP去提取特征,用concat融合之后,再使用卷積減少通道數。最終ASPP能夠完成不同尺度目標特征信息的提取和區分[14-15]。解碼部分結合了高層和低層的信息。對低層特征通道進行壓縮,從而更多地保留源圖像的高層特征信息以應對在下采樣過程中對目標邊界信息的丟失。模型在特征圖上采樣過程中與低層特征相融合以獲取更高的分辨率和更豐富的空間細節,再通過雙線性差值采用高層特征圖,最終解碼出預測圖的算法結構如圖1所示。

圖1 DeepLabv3+算法模型網絡結構Fig.1 Network structure of DeepLabv3+ algorithm model
2014年,Goodfellow[9]首次提出GAN。GAN采用無監督的學習方式,靈感來自于博弈論中的納什均衡,由一個生成網絡G(z)和一個判別網絡D(x)組成[16]。深度學習過程可以看作是G(z)和D(x)之間的動態博弈。兩方的博弈圍繞圖片生成和鑒別展開。G(z)在不斷迭代中逐漸提升生成圖像與真實目標之間的一致性,而D(x)則在不斷迭代中提升區真實圖像與G(z)生成的圖像[16]。網絡博弈原理如圖2所示。

圖2 GAN博弈原理Fig.2 Game principle of GAN
本文利用DeepLabv3+結構作為網絡生成器模型,通過DeepLabv3+網絡分割得到分割標簽圖像數據。使用CNN作為網絡判別器模型,經過實驗最終選擇用5層卷積組成的神經網絡作為判別器網絡,本文在5層CNN中選擇使用步長(stride)為2,輸入尺寸(input)為4×4的卷積核,最后使用Sigmoid函數,得到尺寸為16×16的patch。具體判別器網絡結構如圖3所示。

圖3 判別器網絡結構Fig.3 Diagram of discriminator network structure
通過卷積操作對DeepLabv3+結構網絡的分割結果標簽圖像與真實標簽圖像進行處理提取輸入圖像的圖像特征,然后利用全連接層對輸入圖像的圖像特征進行提取,最后使用交叉熵損失函數計算DeepLabv3+結構網絡生成器模型得到的分割標簽圖像和真實標簽圖像之間的損失,推動網絡模型學習優化。
在網絡訓練中,G(z)和D(x)之間相互獨立地交替進行訓練迭代。2個模型的輸入數據不同,其中G(z)以隨機變量z作為輸入,而D(x)的輸入則是真實數據x。G(z)通過迭代訓練后將輸入的隨機變量z生成的數據將最大可能地服從真實數據分布。如果D(x)的輸入為真實數據,標簽為真;如果輸入來自G(z)的生成數據,則標簽為假。在給定G(z)的情況下,與優化基于Sigmoid的二分類模型一致,優化D(x)的本質是最小化交叉熵損失函數,定義如下:


(1)
式中,x為輸入的真實數據;z為輸入的隨機變量;pdata(x) 為真實數據分布;pz(z) 為先驗分布;E(·)為計算期望值。D(x)的訓練數據集來源于真實數據集分布pdata(x)和G(z)的數據分布pg(x)兩部分。D(x)代表的是x來源于真實數據而非生成數據的概率。當真實數據x作為D(x)的輸入數據時,D(x)應該輸出趨近于1(TRUE)的概率值。相反,當G(z)生成的數據被輸入至判別網絡,此時D(G(z))的輸出概率值應該趨近0(FALSE)[17],而G(z)的目標是使得D(G(z))的輸出概率值其趨近于1。在訓練過程中,生成網絡G(z)的損失函數定義為ObjG(θG)=-ObjD(θD,θG)。GAN的目標函數定義如下:
minGmaxD{f(D,G)=Ex~pdata(x)[lnD(x)]+
Ez~pz(z)[ln(1-D(G(z)))]},
(2)
式(2)中變量定義與式(1)中變量定義相同。
針對GGNs醫學圖像的特點,本文提出一種基于GAN的圖像分割網絡,利用DeepLabv3+圖像語義分割網絡模型對輸入特征不同尺度的上下文信息的魯棒性,以及通過逐漸恢復空間信息捕捉到清晰的物體邊界的優勢。將二者相結合,提出基于GAN-DeepLabv3+的GGNs醫學圖像生成對抗分割方法,解決現有網絡需針對GGNs分割要改進的問題。提升GGNs醫學圖像的分割精確性。在GAN-DeepLabv3+的網絡構建中,使用DeepLabv3+網絡結構作為模型的生成網絡,將DeepLabv3+網絡生成的分割結果與真實圖像送入D(x)進行判別,并根據前述方法對DeepLabv3+生成網絡和判別網絡分別進行交替迭代訓練和優化[18]。最終使得G(z)能夠生成以假亂真的分割圖像,生成圖像被D(x)判斷為真實值。而D(x)則在最大限度上區分真實圖像和生成圖像。在D(x)的訓練優化中,采用交叉熵損失函數LossD1(z)優化網絡性能,并在D(x)末層提取16×16的圖像,對分割結果和真實圖像分割標簽以交叉熵的形式計算特征損失函數LossD2(z),進一步優化模型的梯度信息。最終由前述DeepLabv3+生成網絡損失函數LossDeepLabv3+、判別網絡損失函數LossD1(z)和特征損失函數LossD2(z)共同組成GAN-DeepLabv3+網絡模型損失函數LossGAN-DL,定義如下:
LossGAN-DL=LossDeepLabv3++LossD1(z)+LossD2(z)。
(3)
本文提出的GAN-DeepLabv3+網絡結構如圖4所示。在模型訓練的過程中,G(z)和D(x)之間相互獨立地交替進行訓練迭代。計算出DeepLabv3+損失函數LossDeepLabv3+、判別網絡損失函數LossD1(z)和特征損失函數LossD2(z),GAN模型的對抗更新形成整個GAN-DeepLabv3+網絡的更新[16],當G(z)和D(x)都達到最優解時,整個網絡處于一種納什平衡的狀態。最終使得G(z)能夠生成以假亂真的分割圖像,使得D(x)不能分辨出來,從而生成最終分割圖像。

圖4 GAN-DeepLabv3+網絡結構Fig.4 Diagram of GAN-DeepLabv3+ network structure
實驗數據來自揚州大學附屬醫院2020年1月—10月符合以下標準的患者CT薄層圖像。初步納入600例,訓練集納入480例,測試集納入120例。
本文從相似系數(Dice)、交并比(Intersection over Union, IoU)和像素精確度(Pixel Accuracy, PA)三個方面對提出的分割網絡進行評判。計算如下:
Dice=[2*(ground∩predict)]/(ground+predict) ,
(4)
IoU=(ground∩predict)/(ground∪predict) ,
(5)
PA=(TP+TN)/(TP+TN+FP+FN) ,
(6)
式中,ground代表患者CT醫學影像中GGNs的真實分割結果,由多位專業臨床醫生手動標注;predict則是由本文提出的GAN-DeepLabv3+網絡預測的分割結果。在GAN-DeepLabv3+網絡預測的分割結果中,對GGNs實現正確分割的區域被定義為TP(True Positive),也就是真陽性;非病灶卻被GAN-DeepLabv3+網絡錯誤預測為病灶的區域被定義為FP(False Positive),也就是假陽性;實際上是病灶卻未被GAN-DeepLabv3+網絡正確預測的區域則稱為FN(False Negative)[19]。以上評價標準中Dice和IoU用于預測圖像和真實圖像之間的重合度[20],取值為[0,1],數值越接近1,GAN-DeepLabv3+分割網絡預測的結果與專業臨床醫生所標注的真實結果就愈加重合,網絡準確性越高。PA則是用于計算預測正確的像素占圖像總像素的比例,該比值越接近1,代表網絡預測的準確性越高[20]。
使用揚州大學附屬醫院收集2018年1月—2020年12月收治的GGNs患者的高分辨率薄層CT圖像。共納入600例,480例納入訓練集,120例納入測試集。綜合考量模型優化程度以及硬件資源,本實驗設置batch size大小為32,epoch大小為20 000。學習率設置為0.01,并且采用Adam 優化器自動降低學習率使損失函數最小。
為驗證GAN-DeepLabv3+對GGNs的預測效果,選取相關領域常用方法和相關基礎算法與本文提出的GAN-DeepLabv3+進行對比實驗,選用了DeepLabv3+和ACRU-Net,在GGNs CT圖像數據集上進行實驗。ACRU-Net是一種基于端到端的深度學習的GGNs分割算法[21]。訓練階段,各網絡模型參數采用隨機初始化的方法,并使用Adam優化算法訓練模型。本文提出的方法的IoU,PA,Dice三項指標均高于其他方法,證明本文所提出的GAN-DeepLabv3+模型在對GGNs的預測中實現了更好的效果。實驗中3個模型的GGNs的分割結果如圖5所示。第1列為NCCT原始圖像,第2列 為專業臨床醫生標注Ground truth,第3列為DeepLabv3+網絡模型的預測結果,第4列為ACRU-Net網絡模型的預測結果,第5列為GAN-DeepLabv3+網絡模型的預測結果。在這3個例子中,由于結節中有血管穿行,且局部胸膜牽拉,DeepLabv3+模型容易包含非病變區域,GAN-DeepLabv3+則展現出最好的細節分割效果。3個模型在實驗中獲得的Dice,IoU和PA如表1所示。本方法Dice為0.952,IoU為0.876,PA為0.991,相較于原始DeepLabv3+和ACRU-Net等現有方法對GGNs的分割準確率有一定的提升。

圖5 不同模型的GGNs的分割效果Fig.5 Segmentation effect of GGNs in different models

表1 3個模型的GGNs的分割結果比較Tab.1 Comparison of segmentation results of GGNs in three models
本文提出了一種輔助醫生診斷GGNs的新算法?;贕AN的CT醫學圖像分割方法GAN-DeepLabv3+,針對GGNs,采用GAN進行圖像分割,將DeepLabv3+作為圖像分割生成器網絡, 使用專業醫師人工標記的GGNs圖像作為真實圖像,隨后構建判別器網絡以判斷圖像來源,同時將判別器誤差與生成器誤差通過加權形式引入網絡訓練中,通過對抗式訓練,最終獲得對GGNs病灶更高準確度的分割模型。通過對GGNs患者的CT醫學圖像的試驗結果表明,本文算法獲得的 Dice, IoU,PA都明顯優于對比算法。綜上所述,本文提出的基于GAN的GAN-DeepLabv3+算法的預測結果分割精度更高,在GGNs的分割上可靠性和可信度進一步加強,可正確幫助醫生客觀地診斷、評估病灶并規劃治療。