趙杰, 李絮, 申通
(河北大學電子信息工程學院, 保定 071002)
腹部動脈為許多器官供應血液,血管的位置和結構信息對于診斷和治療至關重要。血管信息是用于識別器官位置并分析癌癥轉移診斷中的重要依據,能指導醫生識別目標血管以進行手術。外科醫生通過夾緊血管來控制手術區域中的血流,如果對血管信息了解不足,或者扭曲血管結構信息,將會在手術過程中對血管造成損傷。許多研究學者利用血管信息已經提出了腹腔鏡手術的各種輔助方法,可見血管已成為當今的一個研究熱點。腹部血管的分支模式,分支位置和分支長度在患者之間具有較大差異,如果在手術之前獲得了患者特定的血管信息,外科醫生可以在術前模擬確認血管的位置和結構,提高手術的成功率[1]。這個情報還可以用于術中導航。所以,確定患者腹部血管的位置和結構信息是一個重要話題。
深度學習已廣泛應用于醫學圖像處理領域,例如,大量研究將其應用于醫學圖像分割并獲得了較高的分割精度,與三維體積中的血管相比[2-3],視網膜圖像中的血管位置變化有限[4],因此,視網膜血管分割相對容易且成效顯著,醫學圖像的自動分析在血管、肝臟、腫瘤等部位的病灶檢測、圖像配準、分割與分類等方面應用廣泛[5-6]。其中,卷積神經網絡(convolutional neural network,CNN)[7]和全卷積網絡(fully convolutional networks,FCN)[8-10]在視網膜血管分割[11]中應用最為常見。醫學上的許多3D血管分割方法已經被提出,包括使用模型擬合,(基于Hessian的方法)增強濾波器[12]和順序蒙特卡洛跟蹤。近期,提出了從3D圖像中進行血管分割的方法,例如計算機斷層掃描(computer tomography,CT)和磁共振(magnetic resonance,MR)。He等[13]提出了以殘差單元為基礎的ResNet網絡,此網絡針對上述問題作出了有效改善。Hu等[14]于2018年提出了SENet網絡,此網絡可以自動獲取每一條路徑的目標特征,并由此來增加有用信息和抑制冗余信息。Chen等[15]提出了一種來自大腦MR圖像的動脈分割方法,采用了一種基于3D補丁(小圖像)的分割方法,使用具有位置輸入路徑的原始FCN。大腦中動脈的位置和形狀與MR圖像中的位置有關系,因此,在FCN中增加了一個補丁位置輸入路徑。FCN有一個類似于3D U-Net[16]的編碼器-解碼器風格,其結果的靈敏度低,表明產生了許多錯誤。根據此結果,補丁位置信息對提高分割精度沒有用。Nardelli等[17]提出了一種肺動脈和靜脈分割的方法,使用CNN來分割血管,然后應用圖形切割來細化結果,其分割的困難在于血管和小氣道的區別。因此深度學習技術有望改善血管的分割性能。
在醫學圖像分割中,CT圖像的分割相比于普通2D圖像來說存在很多問題。在器官分割的空間界限上很難確定血管的具體位置,有些血管附著在其他器官上,再加上骨骼的灰度值和血管的灰度值相近,因此經過血管造影后的CT影像很難區分。因此,現提出一種基于SENet注意力機制和深度殘差網絡分割算法(Res-SENet),在網絡中加入殘差網絡可以解決在極深度條件下深度卷積神經網絡性能退化的問題;注意力機制下的軟閾值化的加入可以增強對有用信息的關注度,剔除無用信息。并改變原有的卷積核數量以及其他優化參數,旨在增加深度學習網絡訓練階段的學習效率,提升血管分割的性能。
實驗數據來自公共數據集3Dircadb(https://www.ircad.fr/research/3dircadb/),此數據庫中包含20名病人的血管CT序列圖像,其中12名包含腹部動脈血管,共1 738張序列圖片,序列切片像素值為512×512,平面像素間距為0.58~0.86 mm,斷層間距為1.0~4.0 mm。每一個數據都包含了人的整個腹部,并且都是血管造影劑增強處理后的成像。使用了10個病人的腹部切片作為訓練集,一共1 432張,進行數據擴增后達到9 948張,進而訓練網絡權重,其余2個病人作為測試集進行網絡性能的評估。本實驗將原始CT圖轉化為二維圖像作為網絡的輸入。
基于Python3.7編程語言,使用keras編譯平臺來進行實驗,訓練和測試的服務器環境是NVIDIA Quadro P6000的GPU系統。利用Adam優化器對神經網絡中的數值參數及權重進行調參,epoch設置值為300,Batch size的設置值為8。評估參數利用MATLAB編譯軟件,對預測出的二值圖像進行結果的統計分析。
將所有腹部血管CT數據隨機劃分為訓練集和測試集,且兩者不存在交叉。在實驗過程中,首先在網絡模型訓練階段輸入原始數據和標簽數據。然后通過旋轉、放大縮小等方式對二者進行數據增強和預處理等相關操作,并將處理完的圖像輸入到基于SENet注意力機制的深度殘差網絡中。模型通過正向傳播得到分割結果,與標簽樣本進行對比得到輸出誤差,并通過Loss反傳的方式傳輸到逐層網絡中,不斷優化網絡參數,在此過程會得到一個最優的權重值用于測試階段的血管分割。最后,在測試階段將兩名受試者的原始數據輸入到訓練好的網絡模型進行逐層處理,得到血管分割的最終結果,具體流程圖如圖1所示。

圖1 本文方法流程圖Fig.1 Flow chart of the method in this paper
數據格式為Dicom,通過windowing的方法,設置window level和window width來控制圖像的亮度和對比度。然后利用均衡化來增加圖像的全局對比度。把直方圖上每個屬性的計數除以所有屬性的計數之和,就得到了歸一化直方圖。實現算法如下。
(1)計算圖像f的各個灰度級中像素出現的概率:
(1)
式(1)中:n為圖像中所有的像素數;ni為灰度級i出現的次數;L為圖像中所有的灰度數;p為圖像進行直方圖歸一化后的概率,如果把c作為對應p的累計概率函數,則定義為
ci=∑p(xj)
(2)
式(2)中:xj實際上是灰度值為j的像素;c為對圖像所有像素值的累計歸一化直方圖,取值范圍為[0,1]。
(2)創建一個形式為y=T(x)的變化,原始圖像中的每個像素值會生產一個y,這樣y的累計概率函數形式就可以在所有值范圍內進行線性化,轉換公式為
yi=T(xi)=ci
(3)
式(3)中:T(xi)為對灰度為i的像素進行線性化;yi表示灰度為i的像素xi經過線性化后得到的數值。
針對數據量少的問題,本實驗采用數據增強的方法擴充數據集,以防止訓練過程中出現模型過擬合。實驗采用旋轉、縮放、鏡像翻轉等常用的數據增強技術[18]對數據集進行n倍擴增。
2.2.1 殘差網絡
殘差網絡提出了一種擬合殘差映射的方法,即不直接將卷積結果作為輸出,而是采用殘差映射的方式來進行計算,稱之為“捷徑”(shortcut)。當對這一堆積層結構輸入為x時,其所學到的特性記為H(x),期望其能夠學到殘差為F(x)=H(x)-x,因此,實際上最初的學習特征可以表示為F(x)+x。而當殘差為零時,堆積層也只是做到了恒等映射,即在網絡特性沒有降低的前提下,堆積層能夠學習到新的特性,從而具有更良好的特性。殘差塊的實現如圖2所示。
殘差網絡提出了一個捷徑(shortcut)的概念,即跳過一個或多個層,將輸入結果直接添加到底層,殘差網絡計算公式為
H(x)=x+F(x)
(4)
式(4)中:H(x)為底層的映射;x為輸入結果;F(x)為網絡中的隱藏層輸出結果。通過將多個卷積層級聯的輸出與輸入相加的方式對圖片進行特征提取,減少了訓練參數。在卷積神經網絡中,網絡層次越深,訓練時產生的錯誤越多,訓練時間越長。殘差網絡的出現在一定程度上解決了在極深度條件下深度卷積神經網絡性能退化的問題。

圖2 殘差網絡結構圖Fig.2 Structure of residual network
2.2.2 SENet注意力機制下的殘差網絡模型
Squeeze-and-Excitation Network(SENet)網絡是一個經典的注意力機制且廣泛被業界專家應用。它能夠使用一些小規模的子網絡,經過自動學習得出某個權重值,對特征圖的所有路徑加以權重。SENet還可與殘差模型相結合,因為跨層恒等路徑的出現,SENet能夠更方便進行練習。此外,各個樣本的連接權值系數都是嚴格按照其本身設定的,也就是說,各個樣本都可能具有自身特殊的一組連接權值系數。
SENet注意力與殘差網絡融合的基本模塊如圖3所示。具體實現上,是用一種Global Average Pooling-FC-ReLU-FC-Sigmoid方法,SENet具有兩個全連接層,兩者作用是相反的。首先第一層的FC層會降低網絡的通道數量,反之在第二層的FC再把通路數量進行增加,權重就會在這個過程中產生且權重數量與通道數相等,其仍然可以為相對應的通道提供權重值。SENet的核心就是使用網絡的loss去了解特征權重,從而使高效的特征圖權重大,無用或效率較小的特征圖權重小來訓練建模,獲得較好的結果。
本文改進的U-net網絡——Res-SENet,比傳統U-net網絡增加了殘差網絡(ResNet),并引入注意力機制,以去除強噪、冗余信息,為的是避免在學習血管特征時產生更多的錯誤,提升網絡性能,并且在原始的網絡中增加網絡層數并改變卷積核數量,實驗結果顯示,增加了網絡模型分割的準確性。使用一個基于U-Net[19]的FCN來進行腹部動脈分割。該網絡結構層的構成如圖4所示,左邊部分由卷積和最大集合層組成,稱為分析路徑。它從輸入圖像中提取特征進行分割。右邊部分由卷積層和上卷積層組成,稱為合成路徑,它從特征中生成輸出圖像。此模型共涉及20個2D卷積層(Conv2D)、4個最大池化層、4個上采樣、2個Dropout層和19個批歸一化層(BN)。網絡最后一個卷積層大小為1×1,用作二分類,從而將血管和背景區域進行區分。

圖3 SENet注意力機制下的殘差網絡(Res-SE block)Fig.3 Residual networks under SENet attention mechanism

網絡中的方框代表特征圖的集合;方框下的數字表示特征圖或核的數量圖4 U-net網絡結構Fig.4 U-net network structure
2.2.3 損失函數
深度學習中,醫學圖像的分割問題一般采用骰子系數(dice coefficient,Dice)作為損失函數,它是一種集合相似度度量函數,一般在比較兩個樣本的相似度上應用廣泛。采用Dice作為損失函數,使得在反向傳播過程中根據loss函數值不斷更新權重w和偏差,從而將結果達到最優值。具體的損失函數為
(5)
式(5)中:M為類別數;pm,i∈[0,1]和gm,i∈{0,1}分別是對應類別m預測的概率和金標準;N為像素的個數;m和i的初始值均為1。
通過實驗后的預測圖與真實圖進行對比,采用五項評價指標進行評估:靈敏度(sensitivity,Se)、準確率(accuracy,Acc)、Dice系數(DSC)、體積重疊率VOE以及精確率(precision,Pr)共同進行研究分析。Acc是在像素級別進行衡量的,指分割正確的像素占所有像素比例;Se正確地被分為正樣本的數量占所有正樣本的比例;Dice系數是一種評估相似度的函數,通常用于計算兩個樣本的相似度或者重疊度;VOE即體積重疊誤差;Pr指的是所有的被歸為正樣本中,真實的正樣本占的比例。以上指標計算公式為
(6)
(7)
(8)
(9)
(10)
計算上述評估指數的基礎需要利用真陽性(true positive,TP)、真陰性(true negative,TN)、假陽性(false positive,FP)、假陰性(false negative,FN)4種。在本次實驗中,TP即實際標簽為正樣本,預計結論就是正樣本;TN即實際標簽為負樣本,預測結果也為負樣本;FP即實際標簽是負樣本,但預測結果卻是正樣本;FN即實際標簽是正樣本,但預測結果卻是負樣本。A表示血管預測結果;B表示標準真實血管(ground-truth,GT)。
在整個訓練階段,網絡監督學習共20 h左右,迭代300次,在此過程中,模型學習的準確率和損失值均趨于穩定,準確率高達96%左右,由此可見,此網絡對血管特征的學習有效。圖5為訓練和驗證階段過程模型準確率、損失值的變化曲線。

圖5 模型的各項指標變化情況Fig.5 Changes in the indicators of the model
本實驗過程中涉及的主要參數有學習速率、批量大小(Batch size)。學習速率的設置會對后期模型訓練的好壞有著很大影響。因此本實驗在深度殘差注意力網絡的基礎上對批量大小以及初始學習速率進行驗證,選擇對血管分割效果的最優值。在此過程中,保證其他網絡參數不變,自變量是批量大小和初始學習速率,因變量是腹部血管測試集準確率。實驗首先按照從大到小的順序,初始學習速率從0.1開始進行驗證,并根據實驗的設置初始Batch size為32。
表1為以上兩個實驗參數對腹部血管分割的測試集準確率。其中加粗字體代表實驗的最優結果。由表1可知,當Batch size等于8同時初始學習速率為0.01時,測試集的血管分割準確率可達88.94%,此網絡模型訓練最佳,對腹部血管的分割效果最準確。

表1 不同批量大小和學習速率對腹部血管分割的影響Table 1 Effect of different batch sizes and learning rates on abdominal vascular segmentation
另外在網絡模型訓練過程中,網絡優化參數的選擇也會直接影響最終的分割結果,因此將使用具有單獨dropout,單獨BN,具有dropout和BN的三種殘差模塊組成的網絡模型進行實驗,進一步驗證優化參數對網絡模型的影響。如表2所示,加粗字體代表實驗的最優結果。
由實驗數據可以發現,具有dropout和BN兩種優化參數的血管分割準確率更高,且其他評估參數也更具優勢,只有VOE這一項標準比單獨帶有BN的網絡略低,經過綜合考慮,采用兩者相結合的方式作為本次實驗的優化參數。
腹部血管分為動脈和主動脈,由于動脈血管分支較多,在網絡監督學習中,不能精確的捕捉細小分支的血管灰度變化,跟主動脈相比,在分割性能上明顯較差。而主動脈血管平整光滑,所以在網絡學習中表現出更優的性能,平均分割靈敏度可達96.98%。提出的Res-SENet算法與近幾年其他算法AG-Net[20]、CE-Net[21]在3D-IRCADb數據集上進行評估指標結果對比。三種網絡下二值圖像的分割結果如圖6所示,圖7為三種網絡分割結果的細節對比圖,由圖6和圖7可以看出,三種方法對腹部血管都存在過分割和欠分割的情況,但從整體來說,本文所用的分割方法對血管的學習程度更優,精確度更高。
腹部動脈血管的分割結果在數據上的統計分析如表3所示,加粗字體代表分割結果最優值。本文所用Res-SENet網絡的各項評估指標相比于其他網絡均有提升,準確率可達90.48%。從表3中可以明顯看出,在腹部動脈的分割上,與傳CE-Net網絡相比,Acc提升了0.53%,在Se、Dice、VOE和Pr上分別提升了0.13%、3.16%、3.06%、0.54%。與AG-Net網絡相比,Acc提升了0.12%,Se系數提升了0.47%;Dice提升了0.59%;雖然VOE和Pr比AG-Net略低,但綜合來說,本文方法的各項性能更佳,對腹部血管的分割效果更好。而主動脈相較于動脈更加平整,分支較少,其分割結果的數據分析如表4所示,Res-SENet網絡的分割準確率可達97.82%,Dice可達95.53%。由動脈和主動脈的分割數據可以得出,在細小血管的分割上還存在很多不足。

圖6 三種不同網絡對腹部動脈血管的分割效果圖Fig.6 The segmentation effect of three different networks on the abdominal arterial vasculature

圖7 三種不同網絡對腹部血管分割結果的細節對比圖Fig.7 Detailed comparison of the results of abdominal vessel segmentation by three different networks

表2 Dropout和BN對血管分割性能的影響Table 2 Effect of dropout and BN on the performance of vessel segmentation

表3 不同網絡下腹部動脈血管分割效果的評估對比Table 3 Comparison of the assessment of the effect of segmentation of the lower abdominal arteries in different network

表4 不同網絡下腹部主動脈血管分割效果的評估Table 4 Comparison of the evaluation of the effect of abdominal aortic vessel segmentation under different networks
為了進一步確定本文所加各個模塊確實對分割精確度的提升有作用,特在腹部動脈血管上進行消融實驗,消融實驗是指在本文所用基礎網絡的基礎上加入不同模塊后,對血管分割性能的比較,實驗結果如表5所示。為方便統計,將殘差網絡、SENet分別用R、S表示。另外,“√”表示U-Net網絡中留下的模塊,“×”表示消去的模塊,表格中加粗字體代表血管分割的最優結果。由表5中數據可以看出,以傳統的U-Net網絡為基礎,單獨加入殘差模塊后,準確率提升了2.48%。Dice系數、VOE、Pr分別提升了1.4%、1.79%、3.41%,Se這一指標降低了0.48%;單獨加入SENet注意力機制,Acc提升了0.53%以外,其余4項指標均有所提升,但數值相差不大;將殘差網絡與SENet進行融合,所得Acc提升了4.69%,Se提升了2.01%,Dice提升了4.18%,VOE和Pr分別提升了5.48%、5.42%。因此可以看出,將兩種模塊融入U-Net網絡中,效果最好,并且每個模塊的加入對血管分割的性能均有明顯提升。

表5 本文所用模塊在動脈數據上的消融研究Table 5 Ablation studies on arterial data for the modules used in this paper
U-net網絡帶有跳躍連接的編解碼結構能夠融合不同層級的特征,醫學圖像本身的固定化結構和小樣本性,共同使得U-Net成為醫學圖像分割領域的最佳模型。加深網絡層數可以用更少的參數達到同等水平(或者更強)的表現力。隨著網絡深度的增加,高層語義的特征被提取出來,但同時也會致使網絡的錯誤率增加,所以引入了殘差模塊以及注意力機制,提出了本文的血管分割方法Res-SENet。采用實驗數據和可視化圖像對此方法進行驗證,結果表明,與傳統U-Net、CE-Net、AG-Net相比,Res-SENet網絡在腹部上表現出更好的性能,可以應用于醫學圖像分割。
AG-Net[20]在血管分割性能上比Res-SENet稍差,這是因為AG-Net能過抑制模型學習與任務無關的部分,同時加重學習與任務有關的特征,但隨著訓練時間的增加,其準確率會有所下降。而Res-SENet網絡在整個訓練階段的穩定性良好,隨著迭代次數及網絡深度的增加,準確率趨于平穩;CE-Net是使適用于輪廓較明顯的分割網絡,如肺部、肝臟,對血管的分割效果有待提高;傳統U-Net的分割性能是這四種網絡中較差的,其余三種都是在此基礎上的改進。因為本文方法對細小血管的分割存在不足,下一步可以在本文方法的基礎上添加對應的模塊,改善現存的分割精度問題,以提高網絡學習的實用性。
提出了一種改進的U-net網絡方法應用于腹部血管分割。首先為了提升網絡的學習能力,加深網絡層數,模型加深帶來了模型參數量的提升,有助于錯誤率的降低。同時為解決了在極深度條件下深度卷積神經網絡性能退化的問題,在網絡中加入了殘差網絡和SENet注意力模塊。最后調節網絡中的卷積數,達到升維或者降維的作用。本方法實驗表明,與基本的網絡結構相比,在Acc、Se、Dice、VOE以及Pr上性能均有所提高,準確率可達90.48%,精確率為91.04%。進一步說明了改進后的網絡在血管分割性能上更優。后期,將進一步優化腹部血管的分割性能,為腹部腫瘤血管的介入手術提供一個更優的路徑。