張艮山,田建恩,張 哲
(石家莊學院 教育技術中心,河北 石家莊 050035)
隨著互聯網的發展,互聯網中的圖像內容信息越來越豐富,種類越來越多,如何實現數字圖像的精確分類在機器視覺領域引起了廣泛關注[1-4]。
圖像分類技術的發展經歷了多個階段,從最開始的手寫體阿拉伯數字識別[5]到后來的包含過萬類圖像數據集的分類[6-7],伴隨著數據集規模增長的是圖像分類模型性能的逐步提升。整體來說,對于單標簽圖像分類問題,可以被分為以下3大類別:跨物種語義級別圖像分類[8];子類細粒度圖像分類[9];實例級別圖像分類[10]。跨物種的語義級別圖像分類,其主要目的是在不同物種層面進行識別,識別得到的結果為不同的類別,例如動物、植物類別。相對于跨物種的圖像分類,子類細粒度圖像分類級別更低一些。它往往是同一個大類圖像中的子類圖像的分類,如不同飛機類的分類、不同豬類的分類、不同果實的分類等。如果要區分不同的個體而不僅僅是物種類或者子類,則是實例級別的圖像分類,最典型的任務就是人臉識別。
就應用層面而言,跨物種的語義級別分類任務在實際中最常見。為了在一些算力有限的小型嵌入式設備(如手機、平板電腦)中實現中小規模數字圖像數據集的分類問題,考慮到局部二值模式(LBP)算法具有的運算速度快、對圖片光照不敏感、可以充分提取圖片的紋理信息等特點,同時考慮到最小二乘支持向量機(LSSVM)算法將支持向量機(SVM)優化問題的非等式約束用等式約束替換,極大地減小了計算量,使得LSSVM算法具有極好的對小型嵌入式設備的適應性,本文針對性地提出了一種基于LBP和LSSVM的數字圖像分類方案,該方案包含兩個模塊:基于LBP特征提取的特征數據集構建模塊;基于LSSVM的最優圖像分類器構建模塊。本文所提出的算法與傳統的基于SVM的圖像分類算法[11]、基于極限學習機的圖像分類算法[12]和基于Hopfield神經網絡的圖像分類算法[13]進行了比較,在宏查準率、宏查全率和分類時間這幾個典型性能指標的測試上,本文所提出的LBP-LSSVM算法均表現出了優異的性能。
在LBP[14]算法中,原始圖像按照一個區塊大小為3行×3列的原則被劃分為多個區塊,中心像素點的像素灰度值與相鄰像素點的像素灰度值進行比較,比較閾值被設置為區塊的中心像素值。若相鄰像素值大于中心像素值,則對應的相鄰像素點被標記為1,否則為0。這樣,一個區塊中邊沿部分的8個像素點在完成一次比較之后可產生8位二進制數,按照順時針旋轉的規則將該二進制數轉換為十進制數,就可以得到一個唯一的LBP碼,LBP碼共計256種。LBP碼被用于反映該3×3區域的紋理信息,如圖1所示,這一過程用數學公式可以表示為:
(1)
其中:pxi和pxc分別為相鄰像素點的值和中心像素點的值,(xc,yc)表示中心像素點的坐標。
為了適應不同尺度的紋理特征,同時實現旋轉不變性,文獻[15]設置了一種改進型的LBP 算子,用圓形的區塊代替了正方形區塊,改進型LBP 算子在半徑為R的圓形區塊內允許有P個(P為任意數)像素點,其坐標由公式(2)確定:
(2)
通過式(2)可以計算任意多個采樣點的坐標。一個包含P個邊沿像素點的LBP算子可以產生2P種二進制模式,當一個區塊內的邊沿像素點數增加時,對應的二進制模式的類別數是呈指數級別遞增的。這種情況將給圖像特征的提取、識別、分類及存取帶來極大挑戰。
為了解決二進制模式即LBP碼數量過多的問題,文獻[15]提出了一種“均勻模式”(Uniform Pattern)來降低LBP碼的種類數量。文獻[15]中提出,在現實世界采集到的圖像中,絕大多數LBP碼最多只包含兩次從1到0或從0到1的變化。因此,“均勻模式”被定義為:當某個LBP碼所對應的P位二進制數從0到1或從1到0的變化最多只有兩次時,該LBP碼就稱為一個均勻模式類。除均勻模式類以外的模式都歸為另一類,稱為混合模式類。通過這樣的改進,LBP碼的種類大幅減少,數量由原來的2P種減少為P(P-1)+1種,其中P表示區塊內的采樣點數即邊沿像素點數。
圖像分類算法的LBP特征向量構建的一般步驟為:首先確定區塊大小,然后通過LBP算法使用大小為M×N的原始圖像生成大小為(M-2)×(N-2)的LBP圖,再根據LBP圖中像素值統計其LBP直方圖,以直方圖構成特征向量。

圖1 LBP碼生成過程Fig.1 Generation process of LBP code
支持向量機(Support Vector Machine, SVM)算法建立在統計學習理論的VC維理論和結構風險最小原理基礎上[16]。該算法在解決中小樣本數據集的識別中表現出許多特有的優勢。SVM的主要思想是建立一個超平面作為樣本點的分隔面, 使得正例樣本和反例樣本之間的隔離邊緣距離被最大化。
設有樣本集D={(xi,yi),xi∈Rd,yi∈{-1,1},i=1,2,…,N},xi為d維特征向量,yi為標簽。SVM的分隔面方程為:
ωx+b=0,
(3)
其中ω為權重向量,b為分類閾值。SVM問題可以歸結為如公式(4)所示的不等式約束。

(4)
LSSVM和SVM的區別在于,LSSVM將SVM中的不等式約束優化為等式約束,從而大大方便了拉格朗日乘子的求解,QP問題被LSSVM轉化為解線性方程組的問題[17]。
LSSVM問題等價于如公式(5)所示的約束。

(5)


(6)
分別對ω,b,e,αi求偏導并令其為0,得到公式(7):

(7)

整理可得:
(8)
其中Y=(y1,…,yN)T;Ωij=K(xi,xj);I為單位矩陣;I1為只包含元素1的矩陣。
求解后得到:
(9)
其中K(·,·)為核函數。考慮到RBF核函數的參數較少且非線性映射能力極強,本文所設計的LSSVM分類器的核函數采用了徑向基核函數,其形式如公式(10)所示。
(10)
本文所設計的基于LBP直方圖特征與LSSVM算法的數字圖像分類算法主要包含特征數據集構建模塊和最優分類器構建模塊兩部分,其詳細運行步驟如下:
(1)將圖像數據集進行分層抽樣,將70%的圖像樣本劃分為訓練數據集,剩余30%的圖像樣本劃分為測試數據集;
(2)假設圖像樣本的尺寸均為M×N,設定鄰域大小為3×3,對訓練數據集中圖像樣本進行LBP圖構建,然后按照公式(11)對每張LBP圖進行LBP直方圖特征向量構建,所有的特征向量添加標簽,然后構成新的LBP直方圖特征訓練數據集;

(11)

(3)設定LSSVM算法的優化參數γ及核函數參數σ的尋優范圍為[-20,20]并在該范圍內使用訓練數據集進行參數尋優,構建最優分類模型;
原題:Models of the Earth's crust from controlled-source seismology—where we stand and where we go?
(4)按照步驟(2)中方法,對部分原始圖像構成的測試數據集進行LBP直方圖特征測試數據集構建,然后對送入步驟(3)中得到的最優分類模型進行分類并計算各項性能指標。
為驗證本文所提出算法的有效性,兩個公開的圖像分類數據集被用于分類測試。兩個數據集分別為人臉數據集YALE和Kaggle的Flowers Recognition數據集。人臉數據集YALE共包含165 幅灰度圖像,分別屬于15個人,每個人對應有11 幅不同的臉部圖像,這11幅圖像分別為:中心光、戴眼鏡、快樂、左側光、不戴眼鏡、正常表情、右側光、悲傷、困倦、吃驚和眨眼。部分樣本圖像如圖2所示。Kaggle的Flowers Recognition數據集共包含4 326張圖像,分別屬于5種花:雛菊,向日葵,玫瑰,蒲公英和郁金香。



圖2 人臉數據集YALE中部分樣本圖片Fig.2 Partial sample images of face dataset YALE


使用同一個由LBP特征向量構建的訓練數據集,以本文所提出算法(核函數使用徑向基核函
通過表2可以發現,本文所提出的算法整體上具有最佳的性能表現,主要是因為本文所提出算法選取的LBP直方圖特征能夠充分反映數字圖像的內在規律,同時LSSVM保持了SVM的結構風險最小化特征,因此泛化能力極強。LSSVM的速度達到了與極限學習機算法同等水平的速度,這主要是因為,雖然在LSSVM算法中所有樣本數據點均為“支持向量點”,計算核矩陣時運算量較大,但LSSVM 將分類問題的凸二次規劃問題轉化為求解線性方程的問題,大大加快了分類速度,在數據集樣本量較大時,運算時間縮短將更為明顯。

表1 種最優分類模型的訓練誤差Tab.1 Training error of four optimal classification models

表2 測試數據集上4種算法的分類結果及執行效率比較Tab.2 Comparison of classification results and execution efficiency of four algorithms on test dataset
針對數字圖像的高精度分類問題,本文提出了一種基于LBP直方圖特征的LSSVM數字圖像分類算法。在該算法中,LBP算子被用于進行數字圖像的LBP圖構建,LBP圖的直方圖被用于構建圖像樣本的特征向量,最后大量樣本的特征向量構建的訓練數據集被送入 LSSVM進行分類模型的構建。在測試數據集的分類測試中,核函數使用徑向基核函數時,本文所提出算法與3種分別基于傳統支持向量機算法、極限學習機算法和Hopfield神經網絡方法的圖像分類算法進行了比較,在宏查準率、宏查全率和分類時間這幾個典型性能指標的測試方面,本文所提出的LBP-LSSVM算法均表現出了優異的性能。