傅志翔, 張元勛,2, 王歷輝, 陳嘉瑋, 柯大觀
1(溫州醫科大學 生物醫學工程學院, 溫州 325035)
2(瑞安市人民醫院 設備科, 溫州 325200)
3(瑞安市人民醫院 眼科, 溫州 325200)
糖尿病視網膜病變(Diabetic Retinopathy, DR)作為糖尿病的主要并發癥之一, 其發病率逐年增加, 嚴重危害到人們的視覺質量, 是糖尿病患者致盲的主要原因. 臨床上將已確診為糖尿病, 且尚未出現明顯眼底病變之前的時期稱為DR臨床前期. 而DR一旦由臨床前期進展至臨床期, 留給醫生的時間和手段就會很有限,而且預后效果總體不好. 如果醫生能在DR臨床前期進展至臨床期的易發階段進行有效的診斷和治療, 對于改善患者視功能預后、提高患者生活質量具有十分重要的意義[1]. 據調查顯示, 糖尿病病程在10年以內DR患病率為7%, 15年以上者為63%, 30年以上為95%[2].據此可知, 糖尿病病程在10年以上的DR臨床前期患者更容易病變到臨床期. 因此選取糖尿病病程在10年以上, 且尚未出現明顯眼底病變的患者作為研究對象更具有參考意義.
眼底自發熒光影像作為近二十年來開展的一項技術, 是一種無創的檢查手段, 廣泛應用于視網膜疾病的診斷. 目前, 在醫學圖像模式識別領域, 對于眼底熒光圖像的相關研究還很少, 而針對DR臨床前期這一階段的研究更是幾乎沒有. DR臨床前期和正常的眼底自發熒光圖像如圖1所示, 由于DR臨床前期的患者并沒有出現明顯眼底病變, 所以在視覺感官上, 臨床前期和正常的眼底圖像并沒有明顯的差異. 如果僅憑醫生肉眼觀察, 幾乎是無法識別的. 但是在沒有檢眼可視的眼底病變的DR臨床前期, 極有可能已經存在著神經和微血管兩個方面的病變. 對此, 可大膽假設, 兩類眼底自發熒光圖像存在著由神經和微血管早期病變引起,但視覺效果并不明顯的紋理差異. 因此本研究嘗試通過當前計算機視覺領域的一些紋理特征算法去建立DR臨床前期的眼底自發熒光圖像的識別模型.
紋理是一種重要的視覺線索, 是圖像中普遍存在但又難以描述的特征[3]. 紋理分析是計算機視覺和模式識別領域不可或缺的一部分. 局部二值模式(Local Binary Pattern, LBP)和灰度共生矩陣(Gray-Level Co-occurrence Matric, GLCM)是目前圖像模式識別領域較為常見的兩種算法, 均屬于紋理分析方法中的統計分析方法.GLCM算法由于其不受分析對象的制約, 能很好地反映圖像的空間灰度情況, 表現圖像的紋理特征, 所以得到廣泛應用. LBP在紋理分類上效果顯著, 一經提出,便在醫學圖像[4]和人臉識別鄰域[5]取得了不錯的應用.
本研究的所有樣本均于2018年2月至5月在瑞安市人民醫院眼科門診所收集, 其中受檢者均進行前置鏡、裸眼視力或矯正視力檢查, 而且受檢者需滿足以下條件: (1)視力或矯正視力≥0.8且屈光度≤±6.0 D;曾行白內障摘除人工晶狀體植入手術者, 屈光度≤一2.0 D且手術前無高度近視病史; (2)裂隙燈顯微鏡檢查屈光間質透明, 50歲以上者允許晶狀體密度增加; 曾行白內障摘除人工晶狀體植入手術者, 人工晶狀體位置正常, 后囊無明顯混濁; (3) 取得所有受檢者的知情同意后, 檢查雙眼眼壓后, 用0.5%復方托吡卡胺滴眼液散瞳, 瞳孔散大至7~8 mm, 由同一臨床經驗豐富的眼底病專科醫師行前置鏡檢查, 排除視神經或視網膜疾病; (4)眼壓≤21 mm Hg; (5)無青光眼家族史、高血壓等全身性疾病; (6)排除曾接受屈光性手術者.
研究組: 確診為2型糖尿病的患者, 共計56例,112 只眼睛 (56 只左眼, 56 只右眼), 其中男性 32 例, 女性24例, 為DR臨床前期組; 對照組: 為醫院健康體檢者, 經檢查未患有糖尿病者及其他眼底病變, 共計39例 (38只右眼, 35只左眼), 73只眼睛. 其中男性17例, 女性22例, 為正常組. 所有眼底自發熒光圖像的原圖大小為496×596像素, 在去除了無關的背景信息后, 大小均為 496×496 像素.
醫學圖像模式識別過程[6]一般如圖2所示. 將所有數據按比例隨機劃分為測試集和訓練集, 隨后保持不變. 分類模型通過訓練集數據建立, 測試集用來驗證模型的有效性. 當只考慮驗證特征的有效區分度時, 也可采用全部數據交叉驗證的手段. 本研究中首先采用支持向量機(SVM)對全部數據進行十折交叉驗證以便挑選出有效的特征提取算法及特征參數, 隨后采取留出法將所有數據一次性劃分訓練集和測試集做進一步檢驗.
1.2.1 LBP特征提取
LBP是一種用來描述圖片局部紋理特征的算子,其核心思想就是以中心像素的灰度值作為閾值, 對其鄰域灰度值進行閾值操作, 對于灰度值大于該閾值的像素點置1, 否則置0, 從而得到一組二進制數[7]. LBP編碼公式為:

式中,gc為中心像素 (XC,YC)的灰度值,gp為鄰域點P的灰度值. 對于灰度圖像的任一空間給定位置(XC,YC), 將其與其8鄰域灰度值比較后得到一個二值集合,將其有序排列后轉化為一個8位無符號的二進制數. 半徑為1, 鄰域為8的圓形LBP算子計算示例如圖3所示.

圖2 醫學圖像模式識別流程圖

圖3 LBP計算示例
由上可知, 對于鄰域為P的LBP算子存在著2^P種二進制模式, 而過多的二進制模式, 會使產生的直方圖顯的過于稀疏, 這樣對紋理的提取、識別還是分類都是不利的. 為此, Ojala等人提出了一種叫“等價模式”[8]的方法來對LBP模式進行降維. 據他們發現,有一類模式在圖像中出現頻率極其高, 能夠刻畫90%以上的紋理特征, 這類模式就是等價模式, 而它們都有一個特性, 就是0->1或1->0 的跳變總次數小于或等于二, 如 00000000, 00110000, 10000001 等. 而判斷一個二進制模式是否為等價模式, 最簡單的辦法就是將LBP值與其循環移動一位后的值進行按位相與, 計算得到的二進制數中1的個數, 若個數小于或等于2,即為等價模式. 而除了等價模式以外的模式都歸為一類, 稱為非等價模式類, 如 10010011(4 次跳變), 01000001(3次跳變)等. 我們可以推出, 對于P鄰域的LBP算子, 等價模式的個數為P×(P-1)+2個, 加上非等價模式類, 總計P×(P-1)+3種二進制模式.
上述的LBP特征具備灰度不變性, 但還不具備旋轉不變的性質, 在整張圖像轉動的情況下, LBP值會發生變化. 為此, Pietikinen等人對LBP算子進行了擴展,提出了具有旋轉不變性的LBP算子[8], 即不斷旋轉圓形鄰域得到一系列初始定義的LBP值, 取其最小值作為該鄰域的LBP值.P=8,R=1的LBP算子的旋轉不變過程如圖4所示, 通過旋轉變化不但使LBP算子具備了旋轉不變性, 同時也一定程度上起到了降維作用. 例如, 當P=8,R=1 時, LBP 值會有 256 種可能, 通過等價模式降維后會降低至59, 再通過旋轉不變變化后, 維度會進一步降低至10.

圖4 LBP旋轉不變過程
1.2.2 GLCM特征提取
GLCM[9]是一種通過研究灰度的空間相關特性來描述紋理的常用方法, 它通過計算圖像中一定距離和一定方向上的兩點灰度之間的相關性, 來反映圖像在方向、間隔、變化幅度及快慢上的綜合信息. 其定義為: 設一幅灰度圖像大小為M×N,f(x,y)表示其在圖像點 (x,y)處的像素點所對應的灰度值. (x1,y1), (x2,y2)為圖像上相鄰距離為d, 角度為θ的點對, 其像素值分別為f(x1,y1)=i,f(x2,y2)=j, 而p(i,j;d,θ)則表示類似的像素點對在圖像中出現的概率, 表示如下:

式中, #表示集合中的數目. 通過改變d和θ, 可以統計不同空間位置的像素對.
GLCM包含了圖像的紋理信息, 但其包含的數據過多, 不適合用作紋理特征. 為此, 研究者通常在其基礎上進一步獲取二次統計量來作為圖像的紋理特征.而本文僅針對能量 (Energy), 相關性 (Correlation), 對比度(Contrast)和一致性(Homogeneity)4個特征進行討論, 其計算公式如下所示:

1.2.3 支持向量機與K-折交叉檢驗
支持向量機[10]是一種用于數據分類、模式識別以及回歸分析的監督學習模型. 其主要思想就是尋求一個分類間隔最大的最優超平面對兩類樣本進行分類[11],尤其適用于小樣本數據的分類. 本研究中采用的的是臺灣大學林智仁教授開發的LIBSVM工具箱, 核函數選用徑向基函數(Radial Basis Function, RBF). 而利用SVM建模的關鍵在于搜尋合適的懲罰因子c和RBF寬度參數gamma, 一般通過K-折交叉檢驗確定. 懲罰因子c表示對誤差的容忍度,c過大會導致過擬合, 而過小則會導致欠擬合, 在模型準確率相等或相近的時候一般優先選擇c小的那一組.gamma隱含地決定了數據映射到新的特征空間后的分布,gamma越大, 支持向量越少, 反之, 支持向量越多, 影響訓練和預測的速度.
K-折交叉檢驗[12]的做法是將實驗樣本均勻、隨機地分K個子集, 每次取其中的K-1個子集作為訓練集建立模型, 再將剩余的1個子集作為測試集用來驗證模型的識別準確率. 不斷更換訓練集和測試集, 共計K次, 最后將這K次過程中的準確率作算術平均.
本研究實驗環境為Windows10操作系統, CPU2.6 GHZ, RAM8.00 GB, Matlab 的版本為 R2017a.
在實驗中, 為了尋求對兩組圖片識別效果最好的特征集, 首先提取了185張眼底圖片的LBP及GLCM特征. 再將這些特征單獨或組合后放入SVM中進行十折交叉檢驗, 并通過十折交叉檢驗得到的準確率, 來選擇最好的特征或特征組合.表1所示為實驗中識別效果最好的幾組特征及特征組合. 實驗中提取的特征分別為: ①P=8,R=1, 通過等價模式降維且未經過旋轉變化的 59 維 LBP 特征; ②P=8,R=1, 通過等價模式降維并經過旋轉變化的 10 維 LBP 特征; ③ θ為 0°, 45°, 90°,135°,d=1 的灰度共生矩陣的能量; ④θ為 0°, 45°, 90°,135°,d=1 的灰度共生矩陣的相關性; ⑤θ為 0°, 45°,90°, 135°,d=1 的灰度共生矩陣的對比度; ⑥θ為 0°,45°, 90°, 135°,d=1 的灰度共生矩陣的一致性.

表1 部分特征十折交叉檢驗結果
由表1可知, LBP和GLCM對兩組圖像都有較高的識別率, 為此可認為兩組圖片在紋理上確實存在著肉眼無法識別的差異, 但相對GLCM而言, LBP算法的識別率更高, 效果更好, 無論是10-LBP還是59-LBP的準確率都在90%左右. 而且從特征的組合結果中可以看出, 兩種算法中準確率最高的特征相互組合不但不會導致準確率上升, 反而會其下降. 對此可認為單獨的LBP算法是這兩種算法中識別這兩組圖像效果更好的算法.
為了進一步驗證LBP算法的識別效果, 將185張眼底熒光圖像中兩個類別以1: 1的比例劃分到訓練集和測試集中. 訓練集中正樣本37, 負樣本56; 測試集中正樣本36, 負樣本56. 將訓練集數據通過SVM建立的模型對測試集進行分類測試, 其中10-LBP算子的準確率為85.87%, AUC值為0.930, 59-LBP算子的準確率為88.12%, AUC值為0.943. 通過ROC曲線和AUC的值可知, 由LBP和SVM建立的模型具有較高的診斷價值. ROC曲線如圖5所示.

圖5 ROC曲線
從上述多組實驗結果中可知, LBP算法和SVM建立的預測模型能有效的識別出處于DR易發階段的糖尿病患者. 而這也證明, 處于DR臨床前期的患者的眼底熒光圖像與正常人的圖像確實存在肉眼無法識別的紋理差異.
DR臨床前期進展至臨床期的病變高危期是一個相對模糊的時期, 而目前醫學領域有不少人在研究DR臨床前期的眼部變化時選擇糖尿病病程10年以上者[13,14]. 如果能及時、有效地識別和確定這一時期的患者, 對幫助降低DR患者的患病率及改善糖尿病患者的整體視覺質量都具有十分積極的意義. 而本文中提到的LBP算法對于這一時期的眼底自發熒光圖像具有很好的識別效果. 相信通過數據源的不斷補充和算法的改進, DR臨床前期眼底自發熒光圖像的輔助診斷技術在不久將來將應用于臨床診斷. 而這對于糖尿病患者和相關醫務人員來說, 無疑是一個巨大的福音.