段 杰 , 崔志明 , 沈 藝 , 馮 威 , 吳宏杰 , 馮雨晴
(1. 蘇州科技大學電子與信息工程學院,江蘇 蘇州 215009;2. 蘇州市虛擬現實智能交互及應用技術重點實驗室,江蘇 蘇州 215009)
肝臟腫瘤是世界上最常見的腫瘤之一,其死亡率位居全球第二,是導致人類死亡的重要因素。隨著腫瘤放射技術的飛速發(fā)展,放射治療進入了以圖像引導和自適應放療為代表的精準放療階段[1-2]。精準放療需要準確勾畫出放療的靶區(qū)(腫瘤),從而引導治療和后續(xù)的放射計劃。但現階段,在臨床醫(yī)學中精準的靶區(qū)勾畫需要由有經驗的醫(yī)師手工操作完成,其準確性和效率完全依賴醫(yī)師的臨床經驗。這項工作不僅耗時,而且重現性很差。
因此,基于計算機視覺及人工智能技術實現肝臟腫瘤自動精準分割便成為了解決上述問題的關鍵。常見的肝臟腫瘤自動分割方法可分為圖像和統(tǒng)計模型 2類。單純基于圖像分割的方法是指運用圖像灰度、梯度或紋理等可以直接從圖像中獲取信息進行分割,主要方法包括聚類[3]、閾值、插值[4]、區(qū)域生長[5-6]、水平集[7]、圖割[8-10]和活動輪廓模型[11-13]等。
近年來,隨著計算性能的大幅提高,人工智能和神經網絡迅猛發(fā)展,基于各種神經網絡圖像分割技術也應用到醫(yī)學圖像處理領域。卷積神經網絡(convolutional neural networks,CNN)是計算機視覺和圖像處理方面的一個非常重要的模型,在圖像分類[14-16]、人臉識別[17-18]、目標檢測[19-21]、動作識別[22-23]等方面具有廣泛應用,并且取得了巨大的成功。在實際應用中CNN表現出優(yōu)秀的特征提取能力,其中,全卷積神經網絡(fully convolutional networks,FCN)作為CNN的改進網絡在圖像分割領域得到廣泛應用[24]。與圖像分類不同,語義分割需要確定每個像素的類別以實現精確的分割。FCN是將CNN最后的全連接層換成反卷積層,從而實現像素到像素級別的分類。FCN及其衍生物在圖像分割上的應用不斷拓展,其編碼器與VGG-16中的13個卷積層相同,解碼器將編碼器提取的特征映射到與輸入分辨率相同的編碼器從大到小提取特征,解碼器從小到大逐步將提取的特征放大到輸入圖像大小。但傳統(tǒng)的 FCN網絡邊緣分割差、精度不高,達不到醫(yī)學圖像分割的要求。
針對上述問題,本文設計了一種卷積型多尺度融合改進的FCN,并將其應用于肝臟腫瘤CT圖像的分割。
FCN是SHELHAMER等[25]在現有用于分類的CNN結構基礎上改造而成的,即將CNN原有的全連接層改成卷積層。FCN是由卷積和反卷積組成,通過卷積和反卷積的過程,基于端到端學習,完成了對圖像每個像素的分類,從而實現對整個輸入圖片的分割。
卷積層(convolution layers)在FCN中主要承擔著特征提取的功能。卷積輸出的圖像大小為其中,W為輸入圖片的維度;F為卷積核的維度;S為步長;p為padding填充的像素數。卷積產生的特征圖通過激活函數來增加神經網絡模型的非線性。卷積和激活函數運算為
其中,括號內的部分為卷積層提取特征的主要運算;l為網絡的當前層;為感受野中第i個像素點的值;為的權重;為偏置項;f()為激活函數。
反卷積是一種卷積操作,其是池化的逆過程。在FCN中,池化操作縮小了輸入圖片的尺寸,然而在圖像分割過程中需要對每一個像素進行分類,并且最終得到與輸入圖片維度相同的分割圖像,因此需要將生成的熱度圖(heat map)恢復成原圖像的維度。反卷積通過反向訓練,能夠達到輸出重構輸入的效果,使輸出圖像恢復到與輸入圖像相同大小的維度。
FCN通過端到端的網絡結構來實現圖像的語義分割,端到端的網絡可以縮減人工預處理和后續(xù)處理,盡可能使模型從原始輸入到最終輸出,網絡自己學習特征,提取特征也融入到算法當中。網絡模型可以根據數據自動調節(jié),從而增加模型的整體契合度,并且端到端網絡學習中的各項成本都比非端到端的網絡結構要低。FCN的網絡結構如圖1所示。
為了使輸出與輸入具有相同的維度,FCN將最后一層卷積層輸出的feature map進行32倍的上采樣(upsampling),上采樣輸出的是輸入圖片的分割結果。文獻[25]提出的 FCN中具有 5個 2×2的池化層,每層池化后圖像的分辨率均會降低二分之一,因此最后一層卷積層輸出的 feature map分辨率比較低,會丟失一些細節(jié)特征。直接對最后輸出的feature map進行32倍上采樣,得到的圖像分割精度不高,分割邊緣較粗糙,達不到理想的分割效果,所以文獻[25]提出了多尺度特征融合的方法,其具體做法是將第3層和第4層池化層特征進行融合后進行8倍上采樣,圖像分割精度有所提升。
圖1 FCN的網絡結構圖
本文在文獻[25]的多尺度特征融合FCN的基礎上對上采樣(反卷積)過程做了一定的改進。圖2為本文提出的卷積型多尺度融合結構和訓練過程示意圖。如圖2訓練過程所示,本文將訓練過程分為前向傳播和反向傳播2部分。前向傳播主要通過卷積完成圖片信息的提取,池化完成特征壓縮和降維操作,通過反卷積將維度還原到原圖大小,前向傳播是權重和偏置學習的過程。通過反向傳播進行權重和偏置的調節(jié),實現參數優(yōu)化的功能。傳統(tǒng)方法直接使用2個池化層pool4和pool3的feature map進行上采樣,但是,pool3和pool4保留的特征信息粗糙、邊緣分割的精度不高。圖2中,本文在pool3和pool4池化層各增加一次卷積操作,然后再進行融合操作。增加的卷積過程可以從2個池化層中提取到更深層的局部信息進行周圍的信息融合,增強模型的局部細節(jié)判斷能力,能夠優(yōu)化圖像分割的細節(jié)效果。采用多尺度特征融合的方法能夠大大提升分割精度,使目標輪廓更加精細,從而提高分割效果。該模型共有 5個池化層,經過每個池化層之后,輸出圖像依次縮小了 2,4,8,16,32倍,每次池化之前都有若干個卷積層,最后一層輸出的feature map被稱為熱度圖,本模型在傳統(tǒng)的FCN的基礎上對第3和第4池化層多加一次卷積操作。本模型首先將熱度圖進行一次 2倍上采樣,同時將第4池化層(pool4)進行一次卷積,將其卷積到與圖片分類數相同的通道數(本文中為3),隨后將兩者進行相加得到feature map-16。并將其進行一次 2倍上采樣,同時對第 3層池化(pool3)進行一次卷積,同樣將其卷積到與圖片分類數相同的通道數(本文中為 3),將兩者進行相加得到feature map-8。最后將其進行一次8倍上采樣得到最后輸出的分割圖。
圖2 訓練和卷積多尺度融合示意圖
本文使用的網絡結構包括5個卷積層組、5個池化層、3個卷積層和3個反卷積層。其中,第1,2卷積層組每層包含2個卷積過程,第3,4,5卷積層組每層包含3個卷積過程,前5個卷積層組中每個卷積層組后會跟一個池化層。在卷積層組后還有3個卷積層和3個反卷積層(上采樣)。每次卷積后都會使用 relu(線性整流函數)作為激活函數,該函數可以使所有輸出值均為正數,同時增加網絡的稀疏性,且能夠防止過擬合的情況。在反卷積過程中也采用同樣的函數,以保證輸出為正數,防止過擬合的發(fā)生,relu函數的數學表達式為
本文所提方法中前5個卷積層組均采用3×3的卷積核,該卷積核既有良好的接受場,同時參數的數量也少,能減少計算量。第 6層卷積采用 8×8的卷積核,第 7層卷積選擇 2×2的卷積核,第 8層卷積選擇 1×1的卷積核。所有卷積過程中的步長均為1,以便更精細地提取特征,盡量不丟失任何邊緣信息。在初始化卷積核方法中,本文選擇“Xavier”[22],通過從零均值和特定方差的分布繪制網絡中的權重來實現網絡初始化。該方法權值分布均勻且使網絡收斂速度快,權值能達到優(yōu)值,并且能夠保持每一層梯度大小相似,防止梯度消失或梯度爆炸。對于池化層,一般的平均池化能保留更多的圖像背景信息,最大池化能保留更多紋理信息,本文選擇最大池化。網絡的詳細結構見表1。
表1 網絡詳細結構
原始的醫(yī)學圖像像素分布廣泛,肝臟與周圍器官的邊緣分布不是很明顯,對比度比較低。若直接將圖像歸一化到 0~255,則會丟失大量的重要信息。傳統(tǒng)的CT圖像預處理方式為像素填充值(pixel padding value)和像素值轉換的方法,本文采用contrast,enhancement和denoise的路線進行數據的預處理,此方法在保留 CT 圖像像素值的同時可增強圖像的對比度,提高圖像的亮度,降低噪聲干擾。
首先,本文采用像素值線性變換對原始數據進行亮度和對比度的調節(jié)。隨后統(tǒng)計圖像中每個灰度級出現的次數,計算累積歸一化直方圖,重新計算像素點的像素值。最后通過拉伸像素強度分布范圍,重新分配圖像像素值,使一定灰度范圍的像素的數量大致相等,達到對原始數據進行直方圖均衡化的效果,從而提高圖像質量,增強圖像對比度。直方圖均衡化是一個可逆的過程,且相對于其他處理方式更能夠保留圖片的原始特征。隨后將直方圖均衡化的圖像使用全變差(圖像梯度的范數的積分)的方式去噪聲,一幅圖像的噪聲或干擾越多,全變差的值越高,為使全變差最小化,需去掉噪聲同時,保留邊緣等主要細節(jié)。如圖 3所示,由于CT圖像的特殊性,原圖的直方圖與處理后的圖像具有很大區(qū)別,可見處理后的圖片具有更高的亮度和鮮明的對比度。
圖3 圖像處理前后及其直方圖對比
由于醫(yī)學圖像的特殊性,一些醫(yī)學圖像的切片可能與靶器官的邊界相切,相切的部分的面積很小,對比度較低,對分割精度影響很大。對于這類問題,普通的損失函數,收斂速度慢,學習效果差,不能達到預期的分割效果。所以本文采用 Dice作為損失函數,其表達式為可以衡量網絡分割出來的圖像與標簽圖像每一個像素的相似度,通過訓練網絡,可以讓神經網絡學習到更好的參數。本文將網絡訓練出的預測圖片先做個標準和歸一化,提高背景體和前景體的平衡度,盡量減少用于訓練的損失,提高收斂的效率。由于處理后的圖像的像素值不是0就是1,且平方后的值不變,所以將損失函數表達式改進為可減少不必要的計算,其中a為網絡預測出的圖像;b為標簽圖像。通過訓練損失函數,可以使神經網絡學習到更好的參數與模型,減小預測圖片和標簽圖片的差異,從而得到更好的分割效果。
實驗硬件環(huán)境為 lntel(R) Xeon(R) E5-1603,16 GB內存,使用型號為GTX1080ti的GPU加速圖像處理,卷積神經網絡在 tensorflow開源框架下實現,tensorflow版本為1.70。實驗數據集由3 454張training圖片和1 068張test圖片構成,Validation圖片在training集中按照7∶3的比例隨機挑選作為驗證集,即交叉驗證。圖片的維度是 512×512,為了防止訓練和測試過程中過擬合情況,本文將所有數據打亂,再按照訓練數據與測試數據7∶3的比例隨機分配,不僅預防過擬合的出現,也能提高實驗的隨機性。本文使用的數據集來自 codalab (https://competitions.codalab.org/competitions/17094),是肝臟分割競賽使用的數據集,其包含 131個序列,codalab包含肝臟CT圖像的三期ground truth,格式為enhanced CT,分辨率為512×512。
本文實驗中選擇使用指數衰減學習率,即根據訓練下降的速度自行調節(jié)變化,防止產生振蕩。指數衰減學習率的方程為
其中,lr為當前學習率;lr0為初始學習率;gamma為學習率衰減系數(一般在 0~1之間);globalstep為當前迭代次數;decaysteps為衰減速度。本文設置的初始學習率為3e-5,學習率衰減速度為0.90,當前迭代次數為0,衰減速度為1 727。batch_size設置為2,訓練的總輪數為50 000輪。選擇的優(yōu)化器為 Adamoptimizer,此優(yōu)化方法相對于傳統(tǒng)的梯度下降法(gradient descent),具有更快的收斂速度,且能快速跳出局部最優(yōu)點,尋找到全局最優(yōu)點。
為了驗證本文方法的有效性,將本文方法與傳統(tǒng)的FCN,U-net和Segnet網絡進行了比較,使用相同的數據及參數設置進行訓練。對訓練好的模型,使用測試數據集進行驗證。采用5種流行的評估指標即Dice相似函數(Dice similarity coefficient,DSC),體積重疊誤差(volumetric overlap error,VOE),相對體積差異(relative volume difference,RVD),平均對稱距離(average surface distance,ASD)和均方根差(root mean square error,RMSD)。
DSC表示分割結果(S)與標簽(T)之間的交叉區(qū)域的比值,其表達式為
VOE與DSC類似,其將乘法換成了減法,以此代表錯誤率,即
RVD表示分割結果(S)與標簽(T)之間的體積差異,其表達式為
ASD表示分割結果(S)與標簽(T)的平均表面距離,其表達式為
其中,BS和BT分別為分割結果和標簽肝臟區(qū)域的輪廓;d(x,BT)為任意像素x與BS之間的最小距離,為歐幾里得距離。
RMSD 表示分割結果(S)與標簽(T)之間數值之間差異的度量,其表達式為
表2為5種評價指標的定量分析。
從表2可以看出,本文FCN方法,在5個評價指標上除DICE指標外,其他均優(yōu)于傳統(tǒng)的FCN網絡,且本文方法具有很大提升。與Segnet相比,本文方法在 DICE和 VOE 2個評價指標上不及Segnet,但相差不大,且其他3個指標均優(yōu)于Segnet。與 U-net (專業(yè)醫(yī)學圖像分割網絡)相比,本文方法在RVD和RMSD 2個評價指標上優(yōu)于U-net,與其他評價指標均較接近。從表2可知,雖然本文提出的方法具有優(yōu)質的分割效果,有很多評價指標優(yōu)于其他網絡,且具有更好的穩(wěn)定性,但是從 ASD和RMSD等評價指標來看,分割結果與肝臟區(qū)域的標簽有很大距離,原因在于網絡中實驗的結果沒有進一步細化,輸出邊界相對粗糙。
圖4在第600輪時,本文方法與U-net都出現分割輪廓,相對于傳統(tǒng) FCN具有明顯優(yōu)勢。在第18 000輪時,所有網絡均能顯示出分割成果,且本文方法與U-net最接近標簽圖片。在第40 000輪時,所有網絡均已成功分割,傳統(tǒng)FCN和Segnet的分割效果稍差。綜上所述,本文方法具有優(yōu)秀的分割精度的同時,還具有良好的收斂性,分割效果優(yōu)于傳統(tǒng) FCN和 Segnet,這與數據分析出的結果是一致的。由于實驗使用的數據集來自不同病人的各種CT圖片,且具有不同的病理特征,所以本文提出的方法具有很強的魯棒性。
表2 評價指標定量分析
圖4 分割效果圖
本文提出了一種基于卷積型多尺度融合 FCN圖像分割方法,拋棄傳統(tǒng)FCN只保留pool3和pool4的feature map進行上采樣的方式,對pool3和pool4各增加一次卷積,并進行特征信息的提取,然后再進行上采樣過程恢復到原始圖片的維度。實驗結果顯示,本文提出的方法能夠精確地從一堆對比度比較低的器官中分割出器官和病灶,提升了圖像分割的精度。