陶永鵬,景 雨,頊 聰
大連外國語大學 軟件學院,遼寧 大連116044
CT是評估人體最重要的醫(yī)學成像技術(shù)之一。對于計算機輔助診斷,CT 圖像中感興趣區(qū)域的分割是診斷的前提條件。手動分割器官既費時又主觀,臨床應(yīng)用中大都需要完全自動化或半自動化的方法進行處理。
在之前的研究工作中,一些無監(jiān)督圖像處理方法常被應(yīng)用于器官的分割[1],并取得一定的應(yīng)用。Lim等[2]將Willmore流程納入水平集框架來實現(xiàn)表面模型的演變,可用于剛性的椎骨分割。Beck 等[3]應(yīng)用區(qū)域生長算法實現(xiàn)了對肝臟的交互式分割,要求分割區(qū)域的形狀相對簡單并具有均勻性。Yang 等[4]實現(xiàn)了基于混合水平集的半自動分割算法,需要手動選取部分特征點。唐等[5]提出了變分水平集的分割模型提高了對噪聲圖像的分割能力,但受聚類數(shù)目的影響較大。這些模型雖然在某種程度上達到了較高的分割準確度,但是大部分的算法對最初的姿態(tài)較敏感,受初始輪廓影響較大。
深度學習是近年來在醫(yī)學圖像取得成功應(yīng)用的新興領(lǐng)域,可以實現(xiàn)圖像分類、檢測,并進行分割。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)作為深度神經(jīng)網(wǎng)絡(luò)的一個子集,可在圖像分割中進行有效應(yīng)用。Kayalibay等[6]實現(xiàn)了基于CNN的方法細分腦部MRI圖像,但不太適合于CT 圖像分割。Cha 等[7]使用CNN 網(wǎng)絡(luò)細分膀胱,在基于CNN的語義分段任務(wù)中,基于補丁方法將分割轉(zhuǎn)換為逐像素分類,可以更精確地進行分割輸出,同時也對圖像的對比區(qū)域有較高要求。
本文提出一種融合超像素和CNN 的CT 圖像分割方法。首先,用超像素線性迭代聚類(Simple Linear Iterative Clustering,SLIC)方法,將器官圖像網(wǎng)格化并分配標簽;其次,將網(wǎng)格化圖像作為數(shù)據(jù)集訓(xùn)練CNN網(wǎng)絡(luò)分割出肝臟邊界超像素并將這些超像素的種子點連接成為粗分割邊界;最后,將粗分割邊界作為初始輪廓,進行無邊緣活動輪廓(Chan和Vese模型,CV)分割得到最終CT圖像中的器官邊緣。本文方法流程如圖1所示。
圖1 本文方法流程圖
在之前的研究中,SLIC 方法[8-11]已經(jīng)被證明是一種有效形成超像素網(wǎng)格的方法,具有速度快、緊湊度好的優(yōu)點,在同一超像素內(nèi)的像素點擁有著相似的顏色、紋理與強度[12]。超像素網(wǎng)格化按以下步驟進行:
步驟1 定義圖像。待分割圖像I 有N 個像素點,定義像素特征為P={ p1,p2,…,pN},其中pi={ xi,yi,gi} ,xi,yi和gi分別為體素i 的坐標與灰度值。
步驟2 初始化種子點。假設(shè)CT 圖像有N 個像素點,選定分割超像素個數(shù)為K ,大小為N/K ,則相鄰種子點的步長近似為:
步驟3 分配標簽。將每個種子點鄰域內(nèi)的像素點分配相同標簽,SLIC 的搜索范圍限制為2S×2S(S 為網(wǎng)格之間的間隔);按式(2)對每個像素點計算它和該種子點的灰度特征上的距離和空間距離:
其中,m 是用于衡量該測量中灰度信息和空間信息比例的平衡參數(shù)。最后,根據(jù)計算的距離為每個簇分配一個單獨的標簽。
步驟4 迭代優(yōu)化。重復(fù)上述步驟1~3 不斷迭代直到每個體素點聚類中心不再發(fā)生變化為止,本文算法中迭代次數(shù)取20。
步驟5 對于分割產(chǎn)生的孤立點,運用最近鄰原則將其劃分到相鄰的超像素中。
在SLIC 算法中參數(shù)K 的大小決定了超像素網(wǎng)格的數(shù)量,圖2顯示了不同參數(shù)K 的網(wǎng)格化結(jié)果。
圖2 不同K 值的超像素分割方法
本文用卷積神經(jīng)網(wǎng)絡(luò)進行超像素的分類時,使用區(qū)域生長法[13-14]在待分割區(qū)域內(nèi)確定若干像素作為生長起始種子點,將種子點相鄰像素中具有相似特征的像素合并,再將合并區(qū)域內(nèi)的所有像素作為新種子點重復(fù)上述過程,直至擴展到整個區(qū)域?qū)崿F(xiàn)與種子生長點特征相同的聯(lián)通區(qū)域的分割。在CT圖像中器官圖像并不與其他區(qū)域聯(lián)通,因此,整體CT圖像可被生長為由器官邊緣分割的內(nèi)部區(qū)域和外部區(qū)域并進行不同的標記。
使用改進的視覺幾何組(Visual Geometry Group,VGG)作為分類CNN 結(jié)構(gòu),并去掉中間兩層,在卷積層后增加標準化(Batch Normalization,BN)層[15]加快收斂速度。將CNN 的soft-max 層設(shè)置為一個分類器層,標記CT 圖像中器官內(nèi)部區(qū)域為1、器官邊緣區(qū)域為0、非器官區(qū)域為?1。本文CNN 結(jié)構(gòu)及相關(guān)參數(shù)值如圖3所示。
給定訓(xùn)練圖像和標簽T={( pn,Ln),n=-1,0,1} ,其中,pn是原始CT圖像,Ln是專家真實標記。本文中每個Ln包含器官內(nèi)部區(qū)域(標記為1)、器官邊緣區(qū)域(標記為0)和非器官區(qū)域(標記為?1)共同組成。CNN的超像素的目標函數(shù)的加權(quán)交叉熵損失定義為:
圖3 本文算法CNN結(jié)構(gòu)圖
p?為soft-max層輸出的類概率,λi為權(quán)重因子,N 為圖像像素總數(shù),Ni為某類Ln中的像素總數(shù),k ∈[ ]-1,0,1表示專家標定的真實標簽。輸出為具有不同標簽的超像素網(wǎng)格。
本文的網(wǎng)絡(luò)訓(xùn)練和測試基于caffe 庫,使用隨機梯度下降(Stochastic Gradient Desent,SGD)方法訓(xùn)練網(wǎng)絡(luò)更新參數(shù)[16],學習率最初為0.01。每500次迭代后,學習率降低到原來的0.1倍;使用0.000 5的重量衰減和0.9的動量;在網(wǎng)絡(luò)中使用了兩個輔助預(yù)測,平衡權(quán)重為0.3和0.6;CNN網(wǎng)絡(luò)總共進行2 500次迭代。
本文在孫等[17]提出的模型基礎(chǔ)上,通過優(yōu)化初始輪廓來取消人工選取對比約束度的缺點,具體實現(xiàn)過程如下。
2.3.1 初始輪廓的選取
在主動輪廓分割算法中,初始輪廓的選取將直接影響分割結(jié)果,所以主動輪廓的選取將十分重要。由于前兩步的SLIC-CNN已經(jīng)提供了CT圖像中感興趣器官的粗分割位置及輪廓信息,選取CNN 分類為器官邊緣的超像素,并將其種子點連接作為模糊主動輪廓分割的初始輪廓??梢越档蛨D像冗余信息,大大降低了后續(xù)圖像處理任務(wù)的復(fù)雜度,減少了數(shù)據(jù)量及噪聲的敏感性。
2.3.2 模糊能量函數(shù)理論
若分割CT 圖像為I ,L 是經(jīng)過SLIC-CNN 選取的初始輪廓,將圖像I 分成inside( L )和outside( L )兩部分,像素點( x,y )隸屬于目標內(nèi)部的隸屬度函數(shù)m( x,y ),其中m( x,y )∈( 0,1) 并將隸屬度函數(shù)初始化為如下形式:
局部平均模糊能量函數(shù)定義為:
其中,平衡系數(shù)L,第1 項是曲線L 內(nèi)部的平均模糊能量,第2項是曲線L 外部的平均模糊能量,N 是一個由曲線L 膨脹和腐蝕操作構(gòu)成的窄帶,它被表示為L1和L2區(qū)域之間的一條窄帶,L 與L2之間的區(qū)域表示為窄帶Nin,L 與L1之間的區(qū)域表示為窄帶Nout。
在窄帶N 內(nèi)任意一點D0( x,y )為中心,H 是半徑為r 的方形鄰域內(nèi),g1( x )、g2( x )表示窄帶內(nèi)某點x 在Hin和Hout中的平均灰度值,h1、h2分別表示Hin與Hout內(nèi)像素點隸屬度值的平方和。保持g1( x )和g2( x)不變,為簡化運算將h1、h2看作常數(shù),求得:
其中:
若在迭代過程中僅有點d 的隸屬度從m0變?yōu)閙n,其灰度值為G0,根據(jù)文獻[18]中的分析則更新后能量函數(shù)值變化為:
其中:
因此,總能量F 的變化量定義為:
ΔE 表示總能量E~ 和E 的差值:如果ΔE <0,若點d 的隸屬度由m0變?yōu)閙n的過程中函數(shù)總能量減小,則將點d 的隸屬度替換為mn,否則保持m0不變。利用CNN結(jié)構(gòu)對圖像進行分割后得到的圖像內(nèi)部會有一些雜亂的小區(qū)域,由于這部分區(qū)域在大多數(shù)情況下不屬于腫瘤區(qū)域;并且即使屬于腫瘤區(qū)域,由于其面積太小,在實際的應(yīng)用中無法為醫(yī)生提供有效的幫助,因此可以利用形態(tài)學方法將這部分區(qū)域去除掉[19]。
使用Jacobi迭代方法遍歷窄帶內(nèi)的所有像素點,通過形態(tài)學閉運算對曲線進行平滑。對經(jīng)過平滑后的曲線重新構(gòu)建窄帶,直到ΔE 不再為負值,完成分割。
本文所有實驗均在相同的實驗環(huán)境下運行,計算機配置為3.2 GHz Pentium?CPU,內(nèi)存為4.00 GB,實驗平臺為MATLAB R2010a。
超像素分割的結(jié)果直接影響CNN 分類的準確性,參數(shù)K 的取值決定了超像素的數(shù)量以及大小,尺寸過小不能提供足夠的特征,而尺寸過大則增加了復(fù)雜性以至于過度貼合。所以K 值的選取相當重要。本文實驗K 值范圍在500~3 000 之間,如圖4(a)所示。觀察到CNN分類準確度在K=500 后直到K=1 500 呈上升趨勢,直然后從K=1 800 到K=2 200 略微波動后又下降。為了選擇一個合適的K 值,從K=1 800~2 200 進行準確度分析對比,如圖4(b)所示。顯然,當K=2 000時CNN分類準確性最高,本文后續(xù)實驗均取K=2 000。不同K 值時分割結(jié)果如圖5所示。
初始輪廓提取不需要精確結(jié)果,而超像素網(wǎng)格化的目的是進行區(qū)域分片,減少需要分類的像素,加快分割時間。將原始CT 圖像和經(jīng)過網(wǎng)格化后的CT 圖像作為CNN 網(wǎng)絡(luò)的輸入,進行網(wǎng)絡(luò)訓(xùn)練獲得初始輪廓,對比結(jié)果如圖6、圖7 和表1 所示,SLIC 網(wǎng)格化的圖像CNN 的損失在120 次迭代時趨于平穩(wěn),分類速度快且分類準確率基本一致,這歸功于SLIC 將圖像網(wǎng)格區(qū)域化。而原始圖像,要對圖像中的每一個像素點進行分類,分類速度慢,準確度不高,在250次迭代才趨于平穩(wěn),而直接使用CNN 分割不能得到精確的分割結(jié)果,仍需要進一步細化分割。本文提出的方法能夠快速尋找圖像初始輪廓,為下一步分割打下基礎(chǔ),減少分割迭代次數(shù)加快分割。
圖4 準確度趨勢圖
圖5 不同K值對腦部CT圖像的分割結(jié)果
圖6 椎骨圖像初始輪廓定位結(jié)果
圖7 CNN網(wǎng)絡(luò)訓(xùn)練分類準確度和訓(xùn)練損失曲線
表1 CNN對不同圖像分類結(jié)果
本文算法初始輪廓與任意初始輪廓進行分人體肝臟CT 圖像和肺部CT 圖像的分割結(jié)果比較。由表2 和圖8 可以得到,在本文提取的超像素邊緣初始輪廓中,有無對比約束度對分割結(jié)果影響細微。但在任意初始輪廓時,對比約束度對分割結(jié)果影響較大,由于初始輪廓不定,使無對比約束度方法的分割結(jié)果DC系數(shù)很小,分割結(jié)果差。
表2 定量實驗分割結(jié)果
圖8 定量實驗分割結(jié)果圖
為證明本文方法初始輪廓優(yōu)化結(jié)果,使用與文獻[17]相同的腦圖像尾狀核圖像,分割結(jié)果如圖9 所示。文獻[17]中方法在對比約束度=1分割不完全,在對比約束度=4 無法完成分割,當對比約束度選取準確時才準確完成分割。本文方法通過超像素CNN的分類獲得初始輪廓,不需要手動輔助就可以完成準確分割,節(jié)約分割時間。
圖9 不同約束度分割結(jié)果
為全面評估本文方法對醫(yī)學CT 圖像的分割效果,對五種器官進行分割實驗,包括:血管圖像、腦部CT 圖像、肝臟CT圖像、肺部CT圖像(https://www.kaggle.com/c/data-science-bowl-2017/leaderboard)、椎骨CT 圖像,基本包含了最重要臟器和骨骼。通過相似性系數(shù)(Dice Coefficient,DC)和絕對表面距離(Absolute Surface Distance,ASD)評價本文的分割方法。在GPU 加速的情況下,本文的方法處理每張CT切片分割需要20 s,分割速度較快。為了方便觀察對比,將本文方法分割結(jié)果和專家標記真實值同時疊加在原始圖分割結(jié)果如表3和圖10所示。
表3 本文方法對不同器官CT圖像分割結(jié)果
圖10 本文方法分割結(jié)果圖
按3.1和3.2節(jié)數(shù)值設(shè)置相關(guān)參數(shù),將本文方法與之前部分研究學者提出方法對的肝臟CT圖像進行分割比較。其中文獻[20]采用傳統(tǒng)方法,文獻[21]采用基于超像素的分割方法,文獻[22]采用基于像素點的深度學習的方法。所有方法均使用相同的數(shù)據(jù)集、相同的運行環(huán)境進行。從體積重疊誤差率(Volumetric Overlap Error,VOE)、相對體積差異率(Relative Volume Difference,RVD)、平均對稱表面距離(Average Symmetric Surface Distance,ASD)、最大對稱曲面距離(Maximum Symmetric Surface Distance,MSD)、均方根最大對稱曲面距離(Root Mean Square Maximum Symmetric Surface Distance,RMSD)等指標進行對比。
比較結(jié)果如表4所示,從表中數(shù)據(jù)發(fā)現(xiàn)本文方法在保證分割精度的前提下,在耗時方面性能有較大提升,比最快的文獻[21]分割方法提高7.5%,比最慢的文獻[20]分割方法提高了14倍。圖11顯示了本文方法與只進行卷積處理的方法[22]對相同肝臟圖像的分割結(jié)果對比。
本文提出的融合超像素和卷積神經(jīng)網(wǎng)絡(luò)的醫(yī)學CT圖像主動輪廓分割方法,可以對包括腦、肝臟、肺部和椎骨的數(shù)據(jù)集進行分割。通過SLIC 和CNN 得到粗分割的器官輪廓,并作為模糊主動輪廓分割的初始輪廓,可以降低初始輪廓敏感性,在保證分割精度的同時減少了分割耗時,提高了效率。
圖11 肝臟CT圖像分割結(jié)果(淺色為本文方法結(jié)果,深色為文獻[22]分割結(jié)果)
表4 肝臟分割結(jié)果數(shù)據(jù)比較