羅鵬,鄭吉龍,周鵬,張勇德,常世杰,沙憲政
1 中國醫(yī)科大學(xué) 生物醫(yī)學(xué)工程系,沈陽市,110122
2 中國刑事警察學(xué)院 法醫(yī)學(xué)系,沈陽市,110035
角膜混濁是一種常見的眼部疾病,是我國致盲的主要眼病之一[1]。一般認為,角膜混濁的形成與角膜膠原纖維組織結(jié)構(gòu)、蛋白多糖水合作用、基質(zhì)離子溶度調(diào)節(jié)以及內(nèi)皮細胞功能這4種因素的變化有關(guān)[2]。角膜混濁度反應(yīng)了角膜的透明程度,在圖像上表現(xiàn)為虹膜與瞳孔的清晰程度,當(dāng)角膜受損或感染后,會在角膜組織上形成一些混濁病變[3]。雖然肉眼觀察個體角膜混濁程度變化的做法由來已久,但由于主觀性較強且缺乏量化指標等容易導(dǎo)致實際推斷誤差較大[4]。因此醫(yī)學(xué)上希望探索角膜混濁度的客觀量化與自動分類的方法,以便客觀地判斷分析角膜混濁。近年來,針對角膜混濁度的客觀量化,有研究[5]提取個體角膜混濁圖像特征構(gòu)建分類模型,但由于采集的圖像質(zhì)量差,提取特征少等原因?qū)е聵?gòu)建的SVM多分類模型準確率不高。還有研究[6]通過數(shù)字圖像處理技術(shù)量化個體角膜圖像的顏色變化并進行回歸分析,但忽略了角膜圖像的紋理特征變化可能對精確量化角膜混濁程度的影響。本研究為實現(xiàn)角膜混濁度的客觀量化,采集不同混濁程度的角膜數(shù)字圖像,提取圖像部分顏色特征和紋理特征,建立SVM多分類模型實現(xiàn)了對角膜混濁度的自動分類,并對提取的特征參數(shù)進行選擇從而優(yōu)化模型。
采集兩只雄性家豬死后的左眼角膜圖像,角膜混濁變化均符合規(guī)律,所用豬購自阜新偉嘉畜牧科技發(fā)展有限公司,2月齡,體重20 kg,豬健康且眼部無疾病。實驗用豬經(jīng)麻醉放血處死后立即取出豬眼置于溫度為25oC,濕度為60%的密閉暗室中進行圖像采集,采集裝置由單反相機(佳能 EOS 5DSR)、微距鏡頭(EF 100 mm f/2.8L IS USM)構(gòu)成,將豬眼固定于實驗臺上,通過柔光鏡筒與采集裝置相連,采用均勻光源照射。單反相機垂直于豬眼30 cm,采用間隔定時2 min拍照,48 h內(nèi)共采集角膜圖像1 440張,其中無混濁圖像150張、輕度混濁圖像210張、中度混濁圖像360張,重度混濁圖像720張,圖像分辨率為8 688×5 792。
1.2.1 圖像預(yù)處理
為便于提取角膜區(qū)域,加快分類模型擬合,從原始圖像中提取眼部特寫并降低分辨率,實際圖像大小為250×250,角膜混濁度分類對比,如圖1所示。
圖1 角膜混濁度分類對比Fig.1 Comparison of corneal opacity classification
設(shè)計了一套角膜區(qū)域自動提取算法,通過高斯濾波、灰度變換、Otsu閾值分割、分水嶺算法[7]結(jié)合形態(tài)學(xué)操作、邏輯運算等提取角膜區(qū)域,放在背景為黑色的圖像中,角膜區(qū)域的提取過程,如圖2所示。
圖2 角膜區(qū)域提取過程Fig.2 Corneal extraction process
1.2.2 特征提取
對采集的角膜圖像根據(jù)事先經(jīng)驗提取了部分顏色特征和紋理特征,包括顏色矩特征、灰度共生矩陣特征、Gabor特征、LBP特征。將四種特征連接起來,作為樣本圖片的特征向量[8-9]。
(1)顏色特征提取
RGB顏色空間是最常用的顏色空間,數(shù)字圖像一般都采用RGB顏色空間來表示[10]。本研究對采集的圖像選擇RGB色彩空間,分別計算R、G、B三個通道的一階顏色矩(均值)、二階顏色矩(方差)和三階顏色矩(斜度)并將其合并為顏色矩特征向量。
(2)紋理特征提取
1973年HARALICK等[11]提出了灰度共生矩陣并用它來描述圖像的紋理特征?;叶裙采仃嚤欢x為從灰度級i的點離開某個固定位置通過d=(Dx,Dy) 的關(guān)系達到灰度為j的概率,灰度共生矩陣用dP(i,j) (i,j=0,1,2,…,L-1) 表示,其中L表示圖像的灰度級,i、j分別表示像素的灰度[12]。有研究發(fā)現(xiàn)基于灰度共生矩陣的14個紋理特征中,只有能量ASM、對比度CON、相關(guān)性COR、熵ENT這四個特征是不相關(guān)的[13]。本研究計算0o、45°、90°、135°四個方向的ASM、CON、COR、ENT并將其合并為灰度共生矩陣特征向量。
本研究選擇0o、45o、90o、135o這4個方向7、9、11、13、15、17這6個尺度共24個Gabor濾波器[14],對原始圖像進行濾波,得到24幅Gabor特征圖,考慮到特征維度較大且存在冗余,計算24幅Gabor特征圖的均值和標準差,作為每一幅圖像的Gabor特征,并將其合并為Gabor特征向量。
LBP特征在灰度范圍內(nèi)描述紋理非常有效,其計算能力高、分類能力強,具有灰度不變性、能夠結(jié)合圖像的整體特征[15]。對原始圖像進行分塊處理,經(jīng)LBP變換后獲得LBP特征圖像,計算LBP特征圖像的直方圖并對其進行歸一化,將各直方圖連接起來構(gòu)成LBP特征向量。
1.2.3 SVM多分類
SVM是一種相對較新的機器學(xué)習(xí)技術(shù),它通過學(xué)習(xí)算法,在訓(xùn)練樣本中尋找到支持向量,利用這些支持向量對未知樣本的類別進行預(yù)測[16]。SVM最初是用來解決二分類問題而設(shè)計的,當(dāng)應(yīng)用于多分類時一般有兩種解決方法[17]:
(1)在傳統(tǒng)的SVM基礎(chǔ)上通過對目標函數(shù)進行優(yōu)化,建立多分類器,從而實現(xiàn)多分類。但是這種方法計算難度大,效率低,在實際中并不常用。
(2)將多分類問題轉(zhuǎn)化為多個二分類問題,通過構(gòu)造多個SVM二分類器來實現(xiàn)多分類。
本研究采用“一對一”方法實現(xiàn)SVM多分類[18]。本方法在每兩個類別之間構(gòu)建一個分類器,對于k分類問題需要構(gòu)建k(k-1)/2個分類器,當(dāng)對未知樣本預(yù)測時,每個分類器對其類別進行投票,得票數(shù)最多的類別就是該樣本的類別[19]。角膜的混濁程度分為4個類別,共需構(gòu)建6個分類器。對訓(xùn)練集和測試集進行標準化,用訓(xùn)練集對SVM多分類模型進行擬合,通過網(wǎng)格搜索和交叉驗證[20]尋找到最優(yōu)的模型,用測試集對模型性能進行評估。
1.2.4 特征選擇
特征選擇是模式識別等領(lǐng)域的重要內(nèi)容,它從原始特征集合中選擇重要特征子集,不僅減少特征數(shù)量,減少過擬合,還可以提高模型的泛化能力,加快模型的訓(xùn)練速度,一般情況下,還會獲得更好的性能[21]。本研究所提取的特征是根據(jù)事先經(jīng)驗選擇的,其中可能存在部分無關(guān)特征和冗余特征影響SVM的性能。通過卡方檢驗發(fā)現(xiàn):隨著選入相關(guān)特征的增多,SVM多分類模型的準確率逐漸升高;但當(dāng)選入無關(guān)特征或冗余特征時,模型準確率并不會提高。選入特征百分比與模型準確率的關(guān)系,如圖3所示。以選入特征百分比為橫軸,以交叉驗證分數(shù)(準確率)為縱軸。
圖3 選入特征百分比與模型準確率的關(guān)系Fig.3 Relationship between percentage of selected features and model accuracy
從圖3中可以看出提取的特征中確實存在了大量的無關(guān)特征和冗余特征。我們選擇基于SVM的遞歸式特征消除法(SVM-RFE)[22]來剔除無關(guān)特征和冗余特征,并以交叉驗證的方式來執(zhí)行它。本算法通過交叉驗證找到最優(yōu)的特征數(shù)量,不斷地訓(xùn)練模型,基于SVM構(gòu)造的特征權(quán)重,每次訓(xùn)練完畢刪除重要性最低的特征,對新的特征再次進行訓(xùn)練,當(dāng)減少特征會造成SVM性能損失時,將不會去除任何特征,此時的特征集合就是原始特征集合的最優(yōu)特征子集。
從兩只豬眼中隨機抽取一只豬眼,在它四類混濁程度圖像隨機抽取120張,構(gòu)建圖像的特征向量并給定對應(yīng)的標簽作為訓(xùn)練集,另一只豬眼每類隨機抽取40張,構(gòu)建特征向量并給定對應(yīng)的標簽作為測試集,SVM多分類模型平均準確率為0.943 8,四分類的混淆矩陣結(jié)果如表1所示。
表1 四分類的混淆矩陣結(jié)果Tab.1 Confusion matrix for 4 classes
無混濁、輕度混濁、中度混濁與重度混濁四分類的五折交叉驗證結(jié)果(取均值)如表2所示,表中選取Precision(準確率)、Sensitivity(真陽性率)、F1分數(shù)對模型的分類性能進行評價,計算公式如下:
表2 四分類的五折交叉驗證結(jié)果Tab.2 Five-fold validation results of 4 classification
其中TP表示被預(yù)測成正類的正類,F(xiàn)P表示被預(yù)測成正類的負類,F(xiàn)N表示被預(yù)測成負類的正類,Recall(召回率)等同于真陽性率。
通過SVM-RFE結(jié)合交叉驗證尋找原始特征集合的最優(yōu)特征子集,本模型的最優(yōu)特征數(shù)量為126個。對最優(yōu)特征子集中特征進行卡方檢驗,觀察隨選入特征百分比增多交叉驗證分數(shù)的變化,結(jié)果如圖4所示,以選入特征百分比為橫軸,以交叉驗證分數(shù)(準確率)為縱軸。
圖4 最優(yōu)特征子集中特征百分比與模型準確率的關(guān)系Fig.4 Relationship between feature percentage in optimal feature subset and model accuracy
在對角膜的混濁度分類中,SVM多分類模型準確率為0.943 8,觀察表1的四分類混淆矩陣結(jié)果和表2的五折交叉驗證結(jié)果得到,重度混濁分類的精確率最高為1.000 0,無混濁分類的敏感度即真陽性率最高為0.975 0,重度混濁分類的F1分數(shù)最高為0.974 4。在對原始特征進行特征選擇時,觀察圖3原始特征百分比與模型準確率的關(guān)系和圖4最優(yōu)特征子集特征百分比和模型準確率的關(guān)系得到,與原始特征相比,通過特征選擇后:采用最優(yōu)特征子集擬合的模型準確率更高,無關(guān)特征和冗余特征更少,模型擬合速度更快,提高了模型性能,實現(xiàn)了模型優(yōu)化。但本模型仍存在一些不足:在對角膜的混濁度分類中,每一類的分類結(jié)果都存在一定程度的誤判。分析其原因,發(fā)現(xiàn)采用間隔定時2 min進行圖像采集,當(dāng)不同類別的圖像時間間隔較近時,其圖像差別較小,容易出現(xiàn)誤判。但由于無混濁圖像特征較為突出,與其他三類混濁圖像相比,圖像差距較大,因此其分類的敏感度較高可以達到0.975 0。通過對表1和表2的進一步觀察還可以得出,輕度混濁分類的真陽性率較高為0.950 0,而精確率較低為0.883 7,這是由于40例輕度混濁角膜圖像中只有2例被預(yù)測為無混濁,而無混濁和中度混濁角膜圖像中5例被預(yù)測為輕度混濁,其中4例來自中度混濁預(yù)測錯誤。分析得到,法醫(yī)學(xué)對處于輕度混濁與中度混濁之間的角膜混濁圖像沒有明確定義其分類,而在本實驗中將其定義為中度混濁,因此在對中度混濁分類時,容易誤判為輕度混濁,導(dǎo)致輕度混濁分類的精確率較低。
本研究綜合考慮角膜數(shù)字圖像的顏色特征和紋理特征,對角膜區(qū)域進行自動分割與特征提取,構(gòu)造SVM多分類模型并為其設(shè)置了最優(yōu)參數(shù),通過特征選擇優(yōu)化模型,最終的測試結(jié)果也展現(xiàn)了模型優(yōu)秀的性能。研究結(jié)果與以往研究[5]相比,其構(gòu)建的SVM多分類模型準確率為0.830 0,本研究模型準確率為0.943 8,遠高于該模型。本研究構(gòu)建的角膜混濁度分類模型還可以應(yīng)用于法醫(yī)學(xué)領(lǐng)域。在法醫(yī)學(xué)中,個體死后角膜混濁程度隨死亡時間延長而發(fā)生規(guī)律性變化,可以通過對角膜混濁度的精確量化推斷死亡時間。在今后的研究中,會擴展分類模型的應(yīng)用范圍,繼續(xù)采集各類角膜混濁圖像對模型進行測試,改進模型,盡早實現(xiàn)輔助醫(yī)生根據(jù)角膜混濁度的客觀量化來診斷與治療角膜混濁,提高工作效率和準確率,讓其發(fā)揮更大的價值服務(wù)于醫(yī)學(xué)領(lǐng)域,服務(wù)于社會。