張惠惠,黃煒嘉,張正言,李 鋒
(江蘇科技大學(xué)海洋學(xué)院,江蘇 鎮(zhèn)江 212100)
肝病一直是一種常見(jiàn)的高危險(xiǎn)性疾病,肝病的發(fā)現(xiàn)階段通常在中后期,主要以積極預(yù)防為主。為了更好地分析肝臟CT圖像,研究人員一直在探索新的無(wú)創(chuàng)方法用于診斷肝臟疾病。紋理分類(lèi)是影像組學(xué)的重要部分,通過(guò)分析圖像像素間的關(guān)系表達(dá)其紋理特征。
近年來(lái),許多研究者將紋理分類(lèi)應(yīng)用到醫(yī)學(xué)圖像分類(lèi)中,以獲得更好的分辨率和特征提取率。Suganya等[1]利用灰度共生矩陣(GLCM)對(duì)肝臟超聲圖像進(jìn)行分類(lèi),驗(yàn)證了支持向量機(jī)的分類(lèi)器擁有更好的準(zhǔn)確率。胡彥婷等[2]提出了一種結(jié)合紋理特征提取和稀疏編碼的分類(lèi)方法,有效實(shí)現(xiàn)肝包蟲(chóng)病CT圖像的自動(dòng)分類(lèi)。Li等[3]利用灰度共生矩陣和小波變換等對(duì)MRI圖像進(jìn)行特征計(jì)算,訓(xùn)練了四種對(duì)腫瘤類(lèi)型分類(lèi)影響最大的紋理特征的監(jiān)督分類(lèi)算法,驗(yàn)證模型的可靠性。Sharma等[4]通過(guò)不同的描述符提取圖像紋理特征,采用互信息(MI)特征選擇方法對(duì)肝臟超聲圖像分類(lèi)。邱甲軍等[5]利用小波系數(shù)對(duì)肝細(xì)胞癌和正常肝組織的統(tǒng)計(jì)結(jié)果進(jìn)行兩次離散化,并采用直方圖、共生矩陣和游程長(zhǎng)度矩陣進(jìn)行特征提取,以獲得更好的分類(lèi)性能。目前,對(duì)于正常和異常肝臟CT圖像的分類(lèi)方法層出不窮。而肝功能正常和異常的CT圖像在視覺(jué)上差異較小,難以區(qū)分,這對(duì)特征表達(dá)能力提出了更高的要求。
在圖像局部特征提取方面,局部二值模式(Local Binary Pattern,LBP)[6]由于其方法簡(jiǎn)單、計(jì)算復(fù)雜度低而被廣泛應(yīng)用?;贚BP的改進(jìn)在醫(yī)學(xué)圖像領(lǐng)域也得到廣泛應(yīng)用,Tan等[7]提出局部三值模式(Local Ternary Pattern,LTP)引入閾值t對(duì)圖像進(jìn)行三值編碼,有效提高了對(duì)光照和噪聲的魯棒性。Ahmed等[8]在LTP的基礎(chǔ)上提出了梯度局部三值模式(Gradient Local Ternary Pattern,GLTP),使用Sobel算子檢測(cè)圖像的邊緣,然后進(jìn)行三值提取,最后獲得低計(jì)算量、高分辨率的紋理信息。Bashar等[9]提出中值三值模式(MTP)通過(guò)閾值化局部灰度中值,將每個(gè)像素周?chē)泥徲驈?qiáng)度值量化為三個(gè)不同的級(jí)別,對(duì)局部鄰域的紋理信息進(jìn)行編碼,提高灰度表達(dá)能力。Yang等[10]提出了一種改進(jìn)的韋伯局部描述子(IWBC),通過(guò)引入新的Weber分量和方向分量來(lái)更有效和準(zhǔn)確地表示局部模式,采用基于塊的fisher線(xiàn)性判別法對(duì)提取的特征降維,提高其識(shí)別能力。Liu等[11]通過(guò)比較圖像中像素的中值關(guān)系,計(jì)算中值魯棒擴(kuò)展局部二值模式 (MRELBP),從而獲得更多層面的紋理信息。上述方法主要通過(guò)對(duì)中心像素與相鄰像素之間的關(guān)系進(jìn)行編碼,沒(méi)有考慮鄰域變化信息。
本文提出了一種鄰域均值局部三值方向模式(Neighborhood Average Local Ternary Direction Pattern,NALTDP),用于肝功能正常、異常CT圖像的分類(lèi)識(shí)別。首先對(duì)肝臟CT圖像預(yù)處理,提取感興趣區(qū)域;然后,利用中心像素在相鄰八個(gè)方向上鄰域變化的相關(guān)性計(jì)算鄰域均值,并對(duì)鄰域均值進(jìn)行三值模式和方向模式的編碼后級(jí)聯(lián);最后統(tǒng)計(jì)直方圖,采用支持向量機(jī)(SVM)分類(lèi)識(shí)別,整體流程圖如圖1。
圖1 整體流程圖
本文的實(shí)驗(yàn)數(shù)據(jù)來(lái)自江蘇省人民醫(yī)院患者的肝臟CT檢查影像,包括肝功能“正常”和肝功能“異?!钡腃T圖像。首先,對(duì)像素大小為512×512的肝臟CT圖像提取像素大小為38×38的感興趣區(qū)域(ROI),在提取ROI的過(guò)程中,1)避開(kāi)血管區(qū)域;2)避開(kāi)腫瘤區(qū)域。然后,計(jì)算感興趣區(qū)域的CT值,如下方法:
CT=pixel×slope+intercept
(1)
其中,pixel代表該像素點(diǎn)的值,slope、intercept是兩個(gè)DICOM Tag信息中的坐標(biāo)數(shù)值。
將該數(shù)值存放在對(duì)應(yīng)的目錄下,并存為txt格式。最后,實(shí)驗(yàn)共采集1680張肝臟CT圖像,其中肝功能正常和肝功能異常的CT圖像各840張,建立數(shù)據(jù)集。
考慮中心像素鄰域變化信息與方向性信息,提出了鄰域均值局部三值方向模式(Neighborhood Average Local Ternary Direction Pattern,NCLTP)。首先,對(duì)輸入圖像進(jìn)行鄰域均值計(jì)算;然后,對(duì)分別對(duì)其進(jìn)行三值化和方向化編碼;最后,將直方圖級(jí)聯(lián)得到NALTDP特征。鄰域均值局部三值方向模式特征提取的過(guò)程如圖2。
圖2 鄰域均值局部三值方向模式特征提取過(guò)程
由于現(xiàn)有方法沒(méi)有考慮中心像素的鄰域變化信息,因此提出了鄰域均值局部三值模式(Neighborhood Average Local Ternary Pattern,NALTP)。使用中心像素在相鄰八個(gè)方向上的鄰域變化的相關(guān)性來(lái)計(jì)算NALTP的鄰域均值。
給定一個(gè)位于3×3正方形鄰域內(nèi)的中心像素值Ci,其八個(gè)方向的鄰域像素值為Ap,p=1:8,如圖3。NALTP的鄰域均值就是中心像素值與相鄰八個(gè)方向像素值的差的絕對(duì)值之和再求平均。計(jì)算公式如下方法:
圖3 鄰域差值計(jì)算
(2)
其中,Ni是NALTP的鄰域均值。
NALTP包括鄰域八個(gè)方向相關(guān)差值以及中心像素。NALTP采用局部三值模式(LTP)的概念進(jìn)一步轉(zhuǎn)換為2個(gè)二值模式如下方法
(3)
其中,c是中心像素的值,i是相鄰像素的值,t是閾值。
NALTP的計(jì)算過(guò)程如圖4,為了擁有更好的魯棒性,將每個(gè)NALTP分為上半部分(NALTP_U)和下半部分(NALTP_L)如下方法
圖4 NALTP的計(jì)算過(guò)程
(4)
(5)
(6)
(7)
對(duì)圖像中的每個(gè)像素,NALTP_U和NALTP_L的圖像大小為M*N。計(jì)算NALTP_U和NALTP_L的兩個(gè)部分,并建立其直方圖[11]如下方法
(8)
(9)
(10)
最后,在生成兩個(gè)部分的直方圖后將兩者級(jí)聯(lián),獲得整個(gè)圖像的直方圖如下方法
hNALTP=hNALTP_U+hNALTP_L
(11)
為了突出像素的鄰域信息變化和方向信息,提出了鄰域均值局部方向模式(Neighborhood Average Local Direction Pattern,NALDP)。利用中心像素在八個(gè)方向上的鄰域變化的相關(guān)性計(jì)算NALDP的鄰域均值,并利用垂直和水平方向編碼方法獲得方向信息。
給定一個(gè)位于3×3正方形鄰域內(nèi)的中心像素值Ci,其八個(gè)方向的鄰域像素值為Ap,p=1:8,NALDP鄰域均值的計(jì)算公式如式(2)。
對(duì)于一個(gè)N×N像素的區(qū)域,每一個(gè)3×3像素的區(qū)域進(jìn)行鄰域均值的計(jì)算,得到一個(gè)由中心像素Ni,i=1:N-2構(gòu)成的(N-2)×(N-2)像素的正方形區(qū)域,將該區(qū)域記為N。
在區(qū)域N內(nèi),在3×3像素的區(qū)域內(nèi),中心像素值記為H5,相鄰像素值以水平編碼方式分別記為[H1、H2、H3、H4、H6、H7、H8、H9]如圖5。水平差值的計(jì)算公式如下方法
圖5 水平差值計(jì)算
Ii,i=1:8=Hi+1-Hi
(12)
其中,Ii是NALDP的水平差值。
水平編碼的計(jì)算公式如下方法:
(13)
(14)
在區(qū)域N內(nèi),給定一個(gè)3×3像素的區(qū)域,中心像素值記為V5,相鄰像素值以垂直編碼方式分別記為[V1、V2、V3、V4、V6、V7、V8、V9] 如圖6。垂直差值的計(jì)算公式如下方法
圖6 垂直差值計(jì)算
Ji,i=1:8=Vi+1-Vi
(15)
其中,Ji是NALDP的垂直差值。
垂直編碼的計(jì)算公式如下方法
(16)
(17)
NALDP的整個(gè)計(jì)算過(guò)程如圖7,將NALDP分為水平部分(NALDP_H)和垂直部分(NALDP_V),建立兩個(gè)部分的直方圖并將兩者級(jí)聯(lián),獲得整個(gè)圖像的直方圖,如下方法:
圖7 NALDP的計(jì)算過(guò)程
hNALDP=hNALDP_H+hNALDP_V
(18)
NALTDP的計(jì)算過(guò)程如圖8,為了擁有更加魯棒的描述符,將NALTP和NALDP結(jié)合,提出一種新的鄰域均值局部三值方向模式(NALTDP)。既能突出鄰域像素信息的變化又能表達(dá)紋理特征的方向性信息。
圖8 NALTDP的計(jì)算過(guò)程
給定一個(gè)位于3×3正方形鄰域內(nèi)的中心像素值Ci,其八個(gè)方向的鄰域像素值為Ap,p=1:8,NALTDP鄰域均值的計(jì)算公式如式(2)。
對(duì)于一個(gè)N×N像素的區(qū)域,每一個(gè)3×3像素的區(qū)域進(jìn)行鄰域均值的計(jì)算,得到一個(gè)由中心像素Ni,i=1:N-2構(gòu)成的(N-2)×(N-2)像素的正方形區(qū)域,將該區(qū)域記為N。
在區(qū)域N內(nèi),將NALTDP轉(zhuǎn)換為2個(gè)二值模式,如式(3)所示。為了擁有更好的魯棒性,將NALTDP分為上半部分(NALTDP_U)和下半部分(NALTDP_L),如式(4-7)所示。
在區(qū)域N內(nèi),任一個(gè)3×3像素的區(qū)域,中心像素值記為H5,相鄰像素值以水平編碼方式分別記為[H1、H2、H3、H4、H6、H7、H8、H9],以垂直編碼方式分別記為[V1、V2、V3、V4、V6、V7、V8、V9],將每個(gè)NALTDP分為水平部分(NALTDP_H)和垂直部分(NALTDP_V),如式(12-17)所示。
對(duì)圖像中的每個(gè)像素,建立上部、下部、水平和垂直四個(gè)部分的直方圖,并將其級(jí)聯(lián),獲得整個(gè)圖像的直方圖如下方法:
hNALTDP=hNALTDP_U+hNALTDP_L+hNALTDP_H+hNALTDP_V
(19)
NALTDP計(jì)算過(guò)程的示例如下:
輸入:肝臟CT圖像
輸出:分類(lèi)識(shí)別率
1)預(yù)處理:提取38×38像素大小的肝臟CT圖像的感興趣區(qū)域,并將其按正常、異常分類(lèi)得到數(shù)據(jù)集;
3)在區(qū)域N內(nèi),計(jì)算三值編碼:在3×3鄰域中采用閾值t計(jì)算上部編碼(NALTDP_U)和下部編碼(NALTDP_L);
4)在區(qū)域N內(nèi),計(jì)算方向編碼:在3×3鄰域中利用水平和垂直的編碼方式,計(jì)算水平編碼(NALTDP_H)和垂直編碼(NALTDP_V);
5)將編碼圖像劃分為m×n個(gè)子塊;
6)計(jì)算每個(gè)子塊三值編碼和方向編碼的NALTDP直方圖;
7)將各區(qū)域的上部、下部、水平和垂直的NALTDP直方圖級(jí)聯(lián),拼接成NALTDP特征向量;
8)使用PCA為特征向量降維;
9)將其送入SVM進(jìn)行訓(xùn)練;采用10折交叉驗(yàn)證,計(jì)算出圖像的分類(lèi)識(shí)別率;
提出的NALTDP不同于經(jīng)典的LTP及其改進(jìn)方法,NALTDP表達(dá)了中心像素在相鄰各個(gè)方向上的鄰域變化關(guān)系以及方向信息。因此,與現(xiàn)有的描述符相比,NALTDP可以捕獲更多層次的空間信息。如圖9,NALTDP對(duì)肝臟CT圖像提取更多的紋理信息,突出圖像的差異性。
圖9 編碼后的結(jié)果圖
本文實(shí)驗(yàn)環(huán)境:Windows 10操作系統(tǒng),MATLAB R2016a編程環(huán)境。實(shí)驗(yàn)所用的肝臟CT圖像數(shù)據(jù)來(lái)自江蘇省人民醫(yī)院。實(shí)驗(yàn)采用10折交叉驗(yàn)證的方法,將10組的識(shí)別率取平均值作為最終識(shí)別率。
不同級(jí)聯(lián)方式下分類(lèi)的實(shí)驗(yàn)結(jié)果如圖10,提出的鄰域均值三值方向模式(NALTDP)是鄰域均值三值模式(NALTP)和鄰域均值方向模式(NALDP)級(jí)聯(lián)而成。為了分析不同級(jí)聯(lián)方式對(duì)分類(lèi)結(jié)果的影響,分別對(duì)NALTP、NALDP和NALTDP三種描述符進(jìn)行了實(shí)驗(yàn)。
圖10 不同級(jí)聯(lián)方式下的識(shí)別率
實(shí)驗(yàn)結(jié)果表明,級(jí)聯(lián)三值模式和方向模式的描述符擁有較高的分類(lèi)識(shí)別率,分類(lèi)識(shí)別率可達(dá)78.88%。
GLTP、MTP以及NALTDP描述符都是在LTP的基礎(chǔ)上改進(jìn)且存在閾值t,閾值t的選取對(duì)實(shí)驗(yàn)結(jié)果產(chǎn)生影響。為了驗(yàn)證本算法的有效性,四種不同特征描述符在不同閾值t(1~10)時(shí)對(duì)肝功能“正?!焙汀爱惓!盋T圖像的分類(lèi)識(shí)別率如圖11。
圖11 不同閾值下的識(shí)別率
實(shí)驗(yàn)結(jié)果表明,當(dāng)降維參數(shù)為1,分塊大小為9×9,從實(shí)驗(yàn)結(jié)果可以看出,本文提出的方法在不同閾值下的識(shí)別率都高于LTP、GLTP 、MTP描述符。當(dāng)閾值t取9時(shí),NALTDP的識(shí)別率最高為79.12%,能更好地描述肝臟CT圖像的紋理特征。
為了降低特征維度,對(duì)提取的特征基于主成分分析(PCA)方法進(jìn)行降維。降維參數(shù)在0.8 ~ 0.99范圍內(nèi),分別基于LBP、GDP2、LTP、IWBC、MRELBP、LGDNHS和NALTDP進(jìn)行的肝功能“正?!焙汀爱惓!盋T圖像的分類(lèi)識(shí)別率如圖12。其分塊大小為7×7,閾值為10。
圖12 不同降維參數(shù)下的識(shí)別率
實(shí)驗(yàn)結(jié)果表明,當(dāng)特征維度開(kāi)始下降時(shí),LBP、GDP2、LTP描述符的識(shí)別率會(huì)有所提高,而IWBC、MRELBP、LGDNHS、NALTDP描述符的識(shí)別率會(huì)降低??傮w而言,隨著特征維度的降低,NALTDP描述符的識(shí)別率還是高于其它描述符。當(dāng)降維參數(shù)為0.8時(shí),NALTDP的識(shí)別率最高且為79.24%。
為了分析不同特征描述符對(duì)分類(lèi)結(jié)果的影響,本文對(duì)7種不同描述符進(jìn)行了實(shí)驗(yàn)。將圖像分為3×3、5×5、7×7、9×9和11×11個(gè)子塊時(shí),不同特征描述符分類(lèi)識(shí)別的實(shí)驗(yàn)結(jié)果見(jiàn)表1。
表1 不同描述符下的識(shí)別率(%)
從表1可以看出,本文提出的方法在不同分塊大小下的識(shí)別率都高于其它描述符。當(dāng)圖像分為11×11個(gè)子塊時(shí),NALTDP的分類(lèi)識(shí)別率最高,識(shí)別率為78.88%。說(shuō)明對(duì)于本算法,將圖像分為較大的子塊,可以獲得更有代表性的特征。
針對(duì)肝功能正常和異常CT圖像之間差異性較小問(wèn)題,提出一種新的描述符——鄰域均值局部三值方向模式(NALTDP)。利用中心像素各個(gè)方向的鄰域變化信息和方向信息,對(duì)圖像紋理進(jìn)行特征提取。NALTDP描述符表達(dá)了更多層次的局部紋理信息,放大圖像間的差異性。實(shí)驗(yàn)表明,在不同參數(shù)情況下,與已有的幾種方法相比,NALTDP對(duì)肝功能正常和異常CT圖像的分類(lèi)識(shí)別率明顯更高。該方法具有良好的魯棒性和有效性,未來(lái)可應(yīng)用到其它紋理分類(lèi)領(lǐng)域。