趙友磊
關(guān)鍵詞:特征提取;線性映射;小波變換;遺傳算法;人臉圖像識別
0 引言
圖像識別技術(shù)是模式識別領(lǐng)域的一項重要研究課題[1]。圖像在計算機當(dāng)中的存儲方式通常是以有序的多維度矩陣的形式存在,具體的存儲形式按其存儲的顏色數(shù)量可以大體分為兩種。分別是灰度圖片(二位矩陣存儲像素值)和彩色圖片(三維矩陣存儲RGB三個通道的數(shù)值方式)。在實際存儲當(dāng)中,由于圖片數(shù)量非常多,如果在多種智能識別應(yīng)用中,直接將圖片存儲在多維矩陣中,作為圖像特征,這將造成大量資源的浪費和應(yīng)用的不合理,從而占用大量的計算和存儲資源。因此,建立或者選取一個適合的計算方法模型對圖像數(shù)據(jù)計算處理便顯的尤為重要。
小波變換是對時間(空間)頻率的局部化分析,其處理數(shù)據(jù)的主要方式是以伸縮平移的方式將信號(函數(shù))逐步細(xì)分為多尺度,在細(xì)化多尺度時根據(jù)方式的不同分為高頻中按時間細(xì)分、低頻中按頻率細(xì)分。
小波變換在圖像識別上以其卓越的表現(xiàn)得到了更普及[2]。Chien 等人[3]提出利用二維離散小波變換提取人臉圖像特征,先將圖像分解成多尺度,將整個圖像逐步分割成多個分量,最后在分選分量時,只選取低頻分量作為圖像特征進行分類辨識。該方法取得了一定的效果,其特征提取處理過程速度較快,但存在分解尺度過深,導(dǎo)致低頻分量中的信息大量丟失,從而導(dǎo)致識別精度大幅度下降的問題。
線性映射是將兩個線性空間連接在一起的一種映射方式。它是線性代數(shù)研究的核心對象,以主成分分析法(PCA)[4]與線性判別分析法(LDA)[5]為代表的線性映射算法,是圖像壓縮中常用的算法。數(shù)據(jù)之間一般會存在一定的相關(guān)性,在高維度數(shù)據(jù)中會較突出,通常在一定程度上會出現(xiàn)高維度數(shù)據(jù)的重疊。主成分分析法可以更好的將這種多重共線性去除,使數(shù)據(jù)維數(shù)[6]減少。LDA 不像PCA,其是有監(jiān)督學(xué)習(xí)的,基本理念是在更低的維度上投影出高維度且?guī)в袠?biāo)簽的樣本,而同樣類別的地點在更低的維度上經(jīng)過投影后,其相對位置在空間上會有更緊密的體現(xiàn),所以高維度數(shù)據(jù)的分類可以借此來實現(xiàn)。形成一簇一簇的情形。
Kirby 等人[7]首次將PCA 應(yīng)用于人臉圖像識別,在圖像識別領(lǐng)域[8-10]也普遍采用LDA 算法,但其特征提取處理過程因涉及矩陣運算而耗時較長。趙等人[11]將小波變換后的四個分量進行PCA 降維后再進行加權(quán)融合,充分融合各分量中的特征取得了較好的效果。楊等人[12]則提出了更新穎的人臉圖像識別方法,將小波分析與另一種常見的分析方法相結(jié)合,即主元分析(IMPCA),將識別結(jié)果進行決策整合,提高識別準(zhǔn)確率;焦等人[13]在人臉識別上應(yīng)用了小波變換與PCA 的結(jié)合,利用RBF-SVM 進行識別分類,效果更好。其不足之處在于未能明確小波分解的恰當(dāng)層數(shù),因而未能充分結(jié)合兩者各自的優(yōu)勢,可能會造成有價值數(shù)據(jù)信息的丟失進而影響處理效果。
基于以上分析,本文將小波變換與線性映射算法相結(jié)合,可將適當(dāng)尺度的小波分解視作降噪過程,所結(jié)合的線性映射算法具有較好保留原始數(shù)據(jù)信息的優(yōu)勢,最終使用遺傳算法來尋找小波變換的最優(yōu)分解尺度,使用SVM分類器進行測試集上的準(zhǔn)確率評測,并結(jié)合特征提取過程的耗時進一步對算法進行評測。在標(biāo)準(zhǔn)的ORL 面部數(shù)據(jù)庫上進行實驗驗證,識別效果明顯好于傳統(tǒng)方法,且所花費的時間進一步減少。
1 基礎(chǔ)理論
1.1 小波變換
設(shè)函數(shù) f (t) 具有有限能量,f (t) ∈ L2 (R),其中L2 (R)是指在實數(shù)集R 上由平方可積函數(shù)構(gòu)成的函數(shù)空間(通常L2 (R)叫做有限能量的信號空間。)于是,小波變換的定義為:
1.1.1 一維離散小波變換
首先定義一些需要用到的信號及濾波器。
如圖1 所示,輸入信號分別經(jīng)過高通濾波器和低通濾波器的同時處理后經(jīng)過降采樣濾波器,可以得到一次分解后的高頻信號x1,H [n ] 和低頻信號x1,L [n ],經(jīng)過第一次分解后,再取信號中的低頻部分,也就是低頻信號x1,L [n ],經(jīng)過二次分解并經(jīng)過降采樣濾波器,可以得到二次分解后的高頻信號x2,H [n ] 和低頻信號x2,L [n ],以此類推將信號不斷的經(jīng)過高低頻信號的重復(fù)分解操作,便可得到經(jīng)過多層小波分解后的高頻信號與低頻信號。
1.1.2 二維離散小波變換
人臉圖像的二維離散小波分解及其重構(gòu)方式如圖2 所示,重構(gòu)過程可以描述為:首先按照每一行的形式對圖片進行一維離散小波變換后,獲取圖片在水平方向上的低頻分量L 和高頻分量H,再進行一維離散小波變換對處理后所得的每一列數(shù)據(jù),獲取原圖片在垂直及水平方向上的低頻分量LL,在水平和垂直方向上的高頻LH,在水平和垂直方向上的高頻HL,以及在水平和垂直方向上的高頻分量HH,然后對圖片進行一維離散小波變換,再對圖片進行一次橫向重構(gòu),其過程可以描述為:①離散小波逆變換結(jié)果的每一列,②對每一行變換得到的數(shù)據(jù)進行一維的離散小波逆變換。這樣就可以得到重構(gòu)的圖像。從上述過程可以看出,人臉識別圖像的小波分解過程,實際上可以根據(jù)需要進行更細(xì)的二維離散小波分解,所得到的LL分量是按照信號的低頻、高頻逐步分解的過程。
1.2 線性映射算法
線性映射是兩個線性空間之間的聯(lián)系映射,而映射的特殊之處是一種保持向量加法和標(biāo)量乘法在兩個向量空間之間的特殊映射(包括由函數(shù)構(gòu)成的抽象向量空間)。主要成分分析法(PCA)和線性判別分析法(LDA)是其最具代表性的方法。
1.2.1 主成分分析法(PCA)
主成分分析(PCA)也是一種降維方法,它是最常用的線性映射方法,其工作原理是將高維空間中的數(shù)據(jù)通過某種線性投影,轉(zhuǎn)換到低維空間進行表示,并期望數(shù)據(jù)可以在所投射的維度上得到最大的方差,借此來實現(xiàn)較少使用的數(shù)據(jù)維度,而較小的變量仍包含較大數(shù)據(jù)集中大部分信息,在低維度下保留較多原始數(shù)據(jù)點的特性。由于在低維度下更易于探索和可視化,除此之外還可以使機器學(xué)習(xí)算法的數(shù)據(jù)分析更加輕松快捷,也無需處理無關(guān)變量。
1.2.2 線性判別分析法(LDA)
線性判別分析法(LDA)本身是另一種比較常用的線性映射方法,它是一種有監(jiān)督的學(xué)習(xí),根據(jù)給出的標(biāo)簽數(shù)據(jù),找到一個向量W,將數(shù)據(jù)投射到W 后,盡可能的使同一類數(shù)據(jù)緊湊,不同類別的數(shù)據(jù)相距較遠(yuǎn),用該類別均值差的絕對值來衡量,同時使各類內(nèi)部數(shù)據(jù)集點相對集中,也就是投影后方差最小。
1.3 遺傳算法
遺傳算法(Genetic Algorithm)通過對自然進化過程的模擬來尋找最優(yōu)解的方法[14]。
它的整個算法的初始是從一組隨機產(chǎn)生的初始解開始搜尋的過程,其中這組初解又被稱為種群,而每一個獨立的個體在這個種群中都被稱為問題的解,成為“染色體”是一串符號。測量染色體的好壞所采用的方法是,在經(jīng)過選擇、交叉和變異運算形成下一代之前,每一代都用“適應(yīng)度”來測量染色體的好壞。適應(yīng)度越高,被選中的幾率就越大,適應(yīng)度越低,越有可能被淘汰出局,這是整個選擇過程中堅持遵循的原則。這其中的每一代都保持種群的大小是常數(shù),只是算法在經(jīng)過幾代之后會在最好的染色體上發(fā)生收斂,最后得到的結(jié)果很可能是最優(yōu)解或次優(yōu)解的問題。這一系列的自然選擇過程,恰恰反映了生物世界中的法則,也就是自然法則的適者生存。算法過程如圖3 所示。
1.4 支持向量機(SVM)
支持向量機(SupportVectorMachines,SVM)在解決小樣、非線性、高維模式辨識等問題上表現(xiàn)出許多獨特的優(yōu)點,在很大程度上克服了“維數(shù)災(zāi)難”和“過學(xué)習(xí)”等問題[15]。它是一類廣義的線性分類器,按照監(jiān)督學(xué)習(xí)的方式對數(shù)據(jù)進行分類,其中對學(xué)習(xí)樣本求解的最大邊距超平面是其決策邊界。
2 算法實現(xiàn)
利用小波變換提取人臉影像資料的傳統(tǒng)做法是:將若干個二維離散小波分解后的資料,取其中的低頻份量,作為提取的特征。但如果分解的層數(shù)太深,就會造成一些資料丟失,從而對鑒定效果造成影響。而使用主成分分析法與線性判別法為代表的線性映射算法進行特征提取,則能較好的保留數(shù)據(jù)的完整性,但其特征處理過程耗時較高?;谏鲜龇治?,將兩者結(jié)合使用,對人臉圖像數(shù)據(jù)進行特征提取:對原數(shù)據(jù)使用若干層小波分解,將分解后的低頻分量使用線性映射方法進一步降維,期間采用遺傳算法尋找小波分解的最優(yōu)層次,以保證程序耗時與識別效果,實現(xiàn)高效的圖像特征提取。實現(xiàn)流程如圖4所示。
算法的具體實現(xiàn)步驟如下:
⑴ 讀取圖像數(shù)據(jù)并對其進行灰度化,歸一化處理等預(yù)處理過程后分隔為訓(xùn)練集數(shù)據(jù)與測試集數(shù)據(jù)。
⑵ 預(yù)處理后的數(shù)據(jù)用二維離散小波分解,分解得到的LL 分量保留下來。
⑶ 對分解所得的LL 分量使用線性映射方法進一步進行降維。
⑷ 對小波分解層次使用遺傳算法進行優(yōu)化,以小波分解尺度為決策變量,以程序耗時與識別精度為優(yōu)化目標(biāo),尋找最優(yōu)的小波分解層次并重復(fù)(2)、(3)步驟。
⑸ 進行識別分類
3 實驗以及結(jié)果分析
為了驗證本算法的有效性,本實驗采用標(biāo)準(zhǔn)的ORL(Olivetti Research Laboratory)人臉數(shù)據(jù)庫(http://www.facerec.org/databases)進行實驗。
ORL 人臉數(shù)據(jù)庫包含40 個不同年齡、不同性別、不同種族的物體在整個數(shù)據(jù)庫中。該實驗通過在Daubechies 小波族中的db2 小波進行小波分解,對人臉圖像數(shù)據(jù)進行尺寸灰度處理和歸一化處理等預(yù)處理操作。
⑴ 實驗一
在不同的訓(xùn)練樣本數(shù)量下,對比本文算法與傳統(tǒng)算法的識別精確度。
設(shè)N 為每一類別的訓(xùn)練樣本數(shù),分別取值為4,5,6,7,8 時,使用SVM 進行識別分類并分別記錄結(jié)合PCA的本文算法與傳統(tǒng)算法的識別準(zhǔn)確率與平均準(zhǔn)確率,結(jié)果如表1 所示,其中PCA 代表僅使用PCA 進行特征提取,DWT 代表僅使用小波變換進行特征提取,DWT+PCA 代表結(jié)合使用兩種算法進行特征提取。從識別率可以看出,不論訓(xùn)練樣本數(shù)目多少,DWT+PCA方法相較于PCA和DWT進行識別是有效的,下同。
當(dāng)N 分別取值為4,5,6,7,8 時,使用SVM 進行識別分類并分別記錄結(jié)合LDA 的本文算法與傳統(tǒng)算法的識別準(zhǔn)確率與平均準(zhǔn)確率,結(jié)果如表2 所示,其中LDA 代表僅使用PCA 進行特征提取,DWT+LDA 代表結(jié)合使用兩種算法進行特征提取,從中可以看出,DWT+LDA 方法相較DWT 和LDA 分別進行識別效率也是有所提升的,下同。
由表1、表2 不難得出,隨著訓(xùn)練樣本數(shù)的增加,各算法的人臉識別效率也有不同幅度提升,我們可以得出線性映射算法的識別精確率相對于小波變換算法存在著較為明顯的優(yōu)勢,而本文算法的識別精確率仍明顯優(yōu)于兩種傳統(tǒng)算法。
⑵ 實驗二
對比本文算法與傳統(tǒng)算法在不同的訓(xùn)練樣本數(shù)目下的特征提取處理過程耗時。
當(dāng)N 選取為8 時,使用SVM 識別分類并分別記錄,本文算法與傳統(tǒng)的特征提取算法過程得到的10 次實驗耗時結(jié)果的平均值對比,結(jié)果如表3 所示。
由表3 可知,線性映射算法的特征提取過程耗時遠(yuǎn)高于小波分解方法,而結(jié)合后的特征提取過程耗時相比線性映射算法得到了大幅度下降,結(jié)合表1、表2不難得出,本文算法相比線性映射算法特征提取過程耗時大幅度下降,而識別準(zhǔn)確率明顯提升;本文算法相比小波變換算法識別率得到了大幅度提升,因此可得出結(jié)論,本文算法明顯優(yōu)于傳統(tǒng)算法,驗證了本文算法的有效性。
⑶ 實驗三
使用遺傳算法優(yōu)化本文算法。
當(dāng)N 取值為8 時,以程序耗時與識別效果為優(yōu)化目標(biāo),尋找最佳的小波分解尺度,然后使用SVM 再進行分類識別,之后與優(yōu)化前的結(jié)果進行對比,其中GA前綴代表使用遺傳算法進行優(yōu)化。
由表4 可知,經(jīng)過遺傳算法優(yōu)化后的本文算法在特征提取耗時與識別準(zhǔn)確率方面均有小幅提升。因此,本文方法對于人臉圖像數(shù)據(jù)的識別是有效的。
4 結(jié)束語
結(jié)合線性映射算法的小波特征提取,運用若干尺度小波變換對人臉圖像數(shù)據(jù)進行分別,將所得低頻分量進行線性映射降維,最終使用支持向量機進行識別分類。通過在ORL 人臉圖像數(shù)據(jù)庫上進行實驗得知,在特征提取耗時與識別準(zhǔn)確率方面均優(yōu)于傳統(tǒng)算法,從而驗證了本文特征提取算法具有良好的效果。