潘子妍,邢素霞,逄鍵梁,申楠,王瑜,劉子驕,鞠子涵
1.北京工商大學(xué)人工智能學(xué)院,北京 100048;2.空軍特色醫(yī)學(xué)中心,北京 100048
隨著我國工業(yè)發(fā)展迅速、吸煙人群年輕化,肺部疾病發(fā)病率每年呈上升趨勢[1],特別是今年受全球新冠肺炎疫情的影響,肺部疾病成為嚴(yán)重威脅人類健康的疾病之一,具有起病急、進(jìn)展快等特點[2]。英國癌癥研究機構(gòu)的研究數(shù)據(jù)顯示,肺癌患者的5年生存率在I 期為87%,而IV 期僅為19%[3],因此早發(fā)現(xiàn)早治療,可有效提高生存率,避免病情惡化,降低病死率。
計算機斷層掃描技術(shù)(Computed Tomography,CT)被認(rèn)為是檢測肺部病變最精確的成像模態(tài)[4]。肺癌的早期表現(xiàn)為肺結(jié)節(jié),但由于肺腔內(nèi)部形態(tài)復(fù)雜,肺結(jié)節(jié)的大小和位置均各不相同,僅靠醫(yī)生的人工閱片難以避免漏診的情況。因此,研究人員提出計算機輔助檢測系統(tǒng)(Computer Aided Diagnosis,CAD)以輔助醫(yī)生檢測肺結(jié)節(jié),減輕醫(yī)生負(fù)擔(dān),提高準(zhǔn)確率,降低假陽性率[5]。
國內(nèi)外專家學(xué)者也提出了很多肺結(jié)節(jié)檢測的算法,Li 等[6]采用改進(jìn)的隨機游走算法自動分割肺結(jié)節(jié),結(jié)合灰度共生矩陣、旋轉(zhuǎn)不變的均勻局部二值模式和Gabor濾波方法生成特征向量,利用交互信息來降維,采用改進(jìn)的隨機森林分類模型對結(jié)節(jié)進(jìn)行分類。劉一鳴等[7]采用圖像中心坐標(biāo)隨機平移和旋轉(zhuǎn)兩種方法對正樣本進(jìn)行擴充,訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)2D-CNN 進(jìn)行肺結(jié)節(jié)檢測。Chi等[8]采用擴展層代替卷積層,增加了感受域,提高網(wǎng)絡(luò)學(xué)習(xí)圖像全局信息的能力,對U-net 網(wǎng)絡(luò)改進(jìn)后構(gòu)成DCNN(Deep Convolutional Neural Network)模型。雖然目前已有許多肺結(jié)節(jié)檢測的方法,但仍然沒有達(dá)到臨床應(yīng)用的要求。為了提高肺結(jié)節(jié)的檢測精確度,本研究提出一種優(yōu)化特征來優(yōu)化肺結(jié)節(jié)檢測模型,采用基于超分辨率重建的卷積神經(jīng)網(wǎng)絡(luò)(Super-Resolution Convolutional Neural Network, SRCNN)優(yōu)化特征的提取,基于詞袋(Bag-of-Words, BoW)進(jìn)行多特征融合優(yōu)化假陽性結(jié)節(jié)的去除,有效地輔助醫(yī)生提高肺癌診斷的效率。
本研究對候選結(jié)節(jié)的提取主要包括2個步驟,分別是肺實質(zhì)的分割、候選結(jié)節(jié)的分割。
在每張肺部CT 斷層圖像中,均包括了胸廓外組織(肌肉等),胸廓(肋骨、脊柱等),內(nèi)部臟器,肺實質(zhì)及肺內(nèi)血管氣管組織[9],如圖1所示。其中肺結(jié)節(jié)只存在肺實質(zhì)中,因此為減少無關(guān)組織的干擾和降低不必要的計算量,在候選結(jié)節(jié)的分割處理之前,先從CT圖像中分割出肺實質(zhì)區(qū)域。

圖1 肺部CT斷層圖像Fig.1 Lung CT image
肺實質(zhì)分割從CT 圖像中確定左右肺實質(zhì)的邊界,并去除兩肺邊界以外的區(qū)域,進(jìn)而消除干擾:通過灰度對調(diào)和形態(tài)學(xué)重建的方法對肺部CT 圖像降低計算復(fù)雜度,為有效分割肺結(jié)節(jié)的相關(guān)區(qū)域提供依據(jù)。首先對肺實質(zhì)分割的具體步驟行預(yù)處理;其次采用迭代閾值法二值化圖像;然后結(jié)合最大連通分量法與空洞填補法獲得肺實質(zhì)輪廓;最后將肺實質(zhì)輪廓與原始肺部CT 圖像進(jìn)行掩膜計算,最終獲得肺實質(zhì)圖像,如圖2所示。

圖2 肺實質(zhì)分割過程Fig.2 Results of the lung parenchymal segmentation
在獲得完整肺實質(zhì)圖像后,需對其進(jìn)行感興趣區(qū)域(Region of Interest,ROI)的提取,即候選結(jié)節(jié)的分割。肺結(jié)節(jié)在肺實質(zhì)中通常表現(xiàn)為直徑3~30 mm的圓形或類圓形致密影。候選結(jié)節(jié)分割的方法主要有閾值法、區(qū)域分割法、聚類法等。
本研究采用中值濾波方法去除肺實質(zhì)內(nèi)存在的干擾噪聲,如圖3a 所示;采用全局自適應(yīng)閾值分割法實現(xiàn)肺實質(zhì)內(nèi)目標(biāo)和背景的分離;將目標(biāo)ROI輪廓與原始肺部CT 圖像進(jìn)行掩膜計算,如圖3b 所示;采用連通區(qū)域標(biāo)記法標(biāo)記ROI的序號;最終將ROI的質(zhì)心作為中心點,裁剪出51×51 的子圖像,并將其作為候選結(jié)節(jié)圖像保存。

圖3 候選結(jié)節(jié)提取過程的結(jié)果圖Fig.3 Result of candidate nodule extraction
在分割后的候選結(jié)節(jié)里,依然存在著血管、氣管等假陽性結(jié)節(jié),為了精確檢測并識別出肺結(jié)節(jié),需要對其進(jìn)行特征提取,去除假陽性結(jié)節(jié)。因此,本研究先采用SRCNN 進(jìn)行圖像分辨率和特征的增強;再采用快速魯棒特征(Speeded Up Robust Features,SURF)方法、灰度共生矩陣(Gray-Level Co-occurrence Matrix,GLCM)和Hu 不變矩提取ROI 的尺度空間特征、紋理特征和幾何特征;最終采用BoW 模型降維后串行融合為新的特征矩陣。
超分辨率(Super Resolution, SR)圖像重建技術(shù)[10]對圖像中的高頻部分進(jìn)行填充,使圖像的細(xì)節(jié)部分更加清晰,且重建后圖像在視覺效果更好,故本研究選用SRCNN 對候選結(jié)節(jié)圖像進(jìn)行特征增強。SRCNN是一種用于實現(xiàn)圖像超分辨率的特定卷積神經(jīng)網(wǎng)絡(luò)模型[11],其使用雙3次插值算法將原始低分辨率圖像擴展成目標(biāo)尺寸大小的插值圖像Y后;將Y通過3 層卷積網(wǎng)絡(luò)進(jìn)行圖像塊特征提取、非線性映射、重建3 個過程的非線性映射關(guān)系F(Y)變換,最終獲得高分辨率圖像。其在雙3 次插值算法處理圖像后對圖像進(jìn)行擬合輸出,有效確保圖像分辨率的提高。
SRCNN 結(jié)構(gòu)有3 層,如圖4所示。其中f和n分別表示濾波器的空間大小和濾波器的個數(shù)。

圖4 SRCNN結(jié)構(gòu)Fig.4 Super-resolution convolutional neural network structure
SRCNN 的第一層相當(dāng)于通過一組過濾器對圖像進(jìn)行卷積操作F1,利用卷積網(wǎng)絡(luò)的性質(zhì)提取圖像塊的特征:

其中,W和B分別代表了濾波器和偏差。且將校正后的線性單元(ELU,max(0,x))用于濾波器響應(yīng)。
第二層為非線性映射,第一層的每一個n1維向量對應(yīng)于圖像中的一個圖像塊,將提取出來的特征映射到n2維向量中:

第三層為重建操作,均勻分配并整合上一步得到的高分辨率圖像塊,輸出最高分辨率重建圖像[12]:

候選結(jié)節(jié)圖像增強前后對比如圖5所示。

圖5 圖像增強前(a)后(b)對比圖Fig.5 Comparison of image before(a)and after(b)enhancement
SURF 算法是一種快速特征點檢測算法,具有旋轉(zhuǎn)、平移和縮放不變性。采用SURF 算法提取特征主要包括3個重要步驟。
(1)特征點檢測。SURF 特征提取的首要任務(wù)是將尺度空間的極值點作為候選特征點進(jìn)行檢測[13]。通過不同大小的盒子濾波器與原始圖像在不同方向上進(jìn)行卷積,構(gòu)建尺度空間金字塔。對尺度空間中的每一層使用Hessian矩陣進(jìn)行極值點計算。為平衡準(zhǔn)確值與近似值間的誤差引入權(quán)值,則Hessian 矩陣判別式的近似計算可表示為:

其中,w為權(quán)重系數(shù),其值與尺度σ相關(guān),在實際的應(yīng)用中通常取值為0.9。如果d(Happrox)取值為正,即可確定該點為極大值或極小值[14]。當(dāng)確定局部極值后,將其與3×3×3的立體內(nèi)的上下尺度及本尺度周圍共26 個鄰域值進(jìn)行非最大值抑制(Non-Maximum Suppression, NMS),把極大值或者極小值的點篩選為候選特征點,再通過插值運算獲得穩(wěn)定特征點的尺度值和所在位置。
(2)特征點主方向的確定。以特征點為中心,計算鄰域內(nèi)的點在x和y方向上的Haar小波響應(yīng),并賦予這些響應(yīng)高斯加權(quán)系數(shù);最后將響應(yīng)累加成新的矢量,選擇最長矢量方向作為特征點的主方向,如圖6所示。

圖6 確定特征點主方向的過程圖Fig.6 Process diagram for determining the main direction of feature points
(3)特征點描述符的生成。以特征點為中心,將特征點的主方向設(shè)置新坐標(biāo)軸。首先將窗口劃分為4×4 個子窗口,分別計算子窗口中的每個小窗口在x和y方向上的小波響應(yīng),記為dx和dy;然后加入高斯加權(quán)系數(shù),并對子窗口中的響應(yīng)系數(shù)進(jìn)行求和與絕對值求和計算,最終每個子窗口有4 個特征描述符,每個特征點有4×16共64個特征描述符。
因此,每張圖像可以通過SURF 算法確定N個特征點,最終獲得N×64維的特征矩陣。
GLCM 算法針對圖像灰度空間的相關(guān)特性進(jìn)行計算來描述灰度圖像特征[15]。候選結(jié)節(jié)圖像是灰度圖像,對于ROI 分別計算0°、45°、90°、135°這4 個方向,獲取4 個互不相關(guān)的特征值,分別是能量、熵、對比度(慣性矩)和相關(guān)性。最后,針對這4個特征值分別求取均值和標(biāo)準(zhǔn)差,進(jìn)而生成8維的特征向量。
Hu不變矩以圖像歸一化中心不變矩的形式來表示圖像幾何特征,具有平移、尺度和旋轉(zhuǎn)不變性[16]。肺結(jié)節(jié)具有非對稱性和方向性,因此Hu 不變矩能夠較好地描述肺結(jié)節(jié)在形態(tài)學(xué)以及統(tǒng)計學(xué)上的特征。該方法利用連續(xù)狀態(tài)下的二階和三階中心矩構(gòu)造了7個Hu不變矩特征值,最終生成7維的特征向量。
由于候選結(jié)節(jié)圖像得到的SURF 特征向量是針對每個關(guān)鍵點的描述,導(dǎo)致每張候選結(jié)節(jié)圖像中關(guān)鍵點個數(shù)不一致,如圖7所示,導(dǎo)致所提取的特征矩陣維度也不同,因此本研究采用BoW模型進(jìn)行降維。

圖7 候選結(jié)節(jié)的SURF特征的關(guān)鍵點Fig.7 Key points of SURF features of candidate nodules
BoW 模型的核心是采用K-means 聚類方法得到K個分類,抽象為BoW 詞匯表中的K個詞匯,每張候選結(jié)節(jié)圖像均可由聚類形成的K個中心詞匯集表示,形成的描述向量經(jīng)過L2 歸一化,得到圖像的BoW 描述,即每張候選結(jié)節(jié)圖像可由一個[1×K]的詞袋描述向量表示,且此向量內(nèi)的每個元素可表示成在描述指定圖像時所對應(yīng)“詞匯”出現(xiàn)的次數(shù)。
最后每張候選結(jié)節(jié)圖像的特征可以用向量ν來描述:

其中,νK表示BoW-SURF 描述的特征向量,νGLCM表示GLCM 方法提取的特征向量,νHu表示Hu 不變矩方法提取的特征向量。
XGBoost分類模型是一個集成學(xué)習(xí)模型,主要思想是訓(xùn)練多個決策樹,通過集成方法將它們組合成一個強分類模型。XGBoost 算法是將損失函數(shù)的負(fù)梯度作為當(dāng)前擬合的殘差值以實現(xiàn)準(zhǔn)確的分類效果。不同于傳統(tǒng)集成決策樹算法,該算法對目標(biāo)函數(shù)進(jìn)行了改良在原函數(shù)的基礎(chǔ)上加入正則項,減少了過擬合的可能性,同時加快了收斂速度[17]。即獲得的目標(biāo)函數(shù)定義為:

在XGBoost 分類模型中,將候選結(jié)節(jié)提取的特征矩陣作為分類模型的輸入,通過訓(xùn)練和優(yōu)化該模型,最終完成肺結(jié)節(jié)和非肺結(jié)節(jié)的分類,實現(xiàn)肺結(jié)節(jié)的檢測和假陽性結(jié)節(jié)的去除。
為了驗證本方法的可行性和檢測的有效性,本實驗將LIDC-IDRI 數(shù)據(jù)庫的圖像作為樣本集[18],對肺部CT 圖像進(jìn)行訓(xùn)練和測試。從肺部影像數(shù)據(jù)庫中隨機抽取110 例患者,提取出470 張候選結(jié)節(jié),234張肺結(jié)節(jié)和236 張假陽性結(jié)節(jié)作為數(shù)據(jù)集進(jìn)行訓(xùn)練和測試,訓(xùn)練集與測試集的比例為8:2。
本實驗在Windows10操作系統(tǒng),CPU:i7處理器,RAM:8 GB,編程軟件為MATLAB R2018a 和Python3.7。
為了進(jìn)一步分析本研究方法的檢測性能,選取目前肺結(jié)節(jié)檢測領(lǐng)域中較為常見的方式[19],在混淆矩陣的基礎(chǔ)上將分類準(zhǔn)確率(Accuracy)、召回率(Recall)、F1值和ROC 曲線下面積(Area Under Curve,AUC)作為評判標(biāo)準(zhǔn)。在肺結(jié)節(jié)檢測的分類模型中,將肺結(jié)節(jié)定義為正樣本,假陽性結(jié)節(jié)定義為負(fù)樣本。
準(zhǔn)確率是反映檢測正確的樣本占全部樣本的比值,定義為:

其中,TP 表示真陽性、TN 表示真陰性、FP 表示假陽性、FN表示假陰性。
召回率又稱敏感度,是反映所有肺結(jié)節(jié)樣本中判別正確的情況,定義為:

F1值是精度(Precision)和召回率的調(diào)和平均,定義為:

AUC的值介于0.5~1.0之間,AUC越大,檢測模型的準(zhǔn)確性越高。
本實驗在提取BoW-SURF 特征時,需要確定參數(shù)K值,獲得最有效的特征矩陣。將K值由8~56以8為間隔進(jìn)行XGBoost 分類模型的訓(xùn)練與測試,檢測結(jié)果如圖8所示。

圖8 XGBoost的檢測結(jié)果Fig.8 XGBoost test results
由圖8可知,隨著詞條長度K值的增加,檢測的準(zhǔn)確率也隨之增加,當(dāng)K為40 時,達(dá)到最好的分類結(jié)果,后隨著K值的增大,檢測結(jié)果下降,初步判斷K為32~40 是最優(yōu)K值范圍,繼續(xù)細(xì)分K值,K值取32~40時,XGBoost的檢測結(jié)果見表1。

表1 XGBoost的檢測結(jié)果Tab.1 XGBoost test results
由表1可知,綜合4個評價指標(biāo),當(dāng)K=39時,達(dá)到最佳檢測結(jié)果,準(zhǔn)確率可達(dá)到92.55%,召回率和F1分別可達(dá)到93.75%和92.78%,AUC 可達(dá)0.97,所以最終得到39維SURF特征向量。
最后將39 維SURF 特征、8 維的GLCM 特征和7維的Hu 不變矩特征串行融合組成54 維的新特征矩陣,并將其輸入到XGBoost 分類模型進(jìn)行訓(xùn)練與測試。實驗對比SRCNN 特征增強前后的檢測結(jié)果,如表2所示。最終準(zhǔn)確率為97.87%,召回率為97.92%,F(xiàn)1值為97.92%,AUC達(dá)到0.99。

表2 特征增強前后的對比結(jié)果Tab.2 Comparison before and after feature enhancement
相較于其他算法,特征增強和多特征融合的XGBoost分類模型有較高的檢測準(zhǔn)確率和召回率,如表3所示。

表3 本研究算法與其他方法的比較Tab.3 Comparison of the proposed algorithm with other methods
對肺結(jié)節(jié)檢測進(jìn)行了研究,針對肺結(jié)節(jié)圖像分辨率低、假陽性結(jié)節(jié)去除難等問題,提出了一種基于SRCNN 和多特征融合的肺結(jié)節(jié)檢測模型,通過SRCNN 提高了候選結(jié)節(jié)的細(xì)節(jié)特征的提取;通過SURF、GLCM 和Hu 不變矩提取ROI 的多種特征,增強了圖像特征的完整性;最后將融合后的特征輸入到XGBoost 分類模型中進(jìn)行訓(xùn)練和測試,最終獲得97.87%的準(zhǔn)確率、97.92%的召回率,但仍需要對算法和模型進(jìn)一步研究,提高各項評價指標(biāo),以實現(xiàn)肺結(jié)節(jié)檢測模型在臨床中的應(yīng)用。