陳秀端
(漳州職業(yè)技術學院機械工程學院,福建 漳州 363000)
隨著社會信息化的飛速發(fā)展,人類越來越重視信息安全。在眾多的生物識別技術中,人臉識別技術應用廣泛,易被受檢者接受。
近年來,人臉識別技術飛速發(fā)展[1],Turk與Pentland提出PCA(principal component analysis),用于提取人臉圖像的主要特征,是早期人臉識別技術的基礎[2-5]。Gabor算法進行特征提取之后數(shù)據(jù)量太大,不利于復雜圖像的信息提取[6]。本課題通過對Gabor小波變換算法與PCA主成分分析算法的分析,先用Gabor分解圖像提取特征再濾波,再用PCA降維,最后進行實驗設計和驗證。結果表明,相比于傳統(tǒng)的PCA算法,Gabor與PCA融合算法的人臉識別技術,識別率提高了。
小波是指幅值為0,具有一定長度的極小區(qū)域的波形?!靶 鳖櫭剂x是指波形的衰減性,“波”形象地描述了波形的波動性[7]。由于傅立葉變換的缺陷是不能隨頻率變換的,而Gabor提供的這種變換窗口可以隨頻率而改變時域-頻域。運用窗函數(shù)g(t-τ)乘以信號函數(shù)f(t),實現(xiàn)了τ周邊的開窗。
從式(1)可以看出,Gabor測量的是在τ附近的小區(qū)域內(nèi)的頻率,是ω的正弦函數(shù)分量的幅度。窗函數(shù)g(t-τ)是高斯函數(shù),經(jīng)過傅立葉處理后仍是高斯函數(shù),這就使得在小窗口內(nèi),在時域-頻域上,傅立葉變換具有局部化的作用,如果窗口函數(shù)ga(t)這樣定義:
這樣,小窗口寬度就由參數(shù)a決定,把式(2)代入
式(1)進行傅立葉處理再積分,得出它的頻譜公式:
可見,通過傅立葉變換分解了f(τ)的頻譜F(w),從而得到了信號的局部信息[8]。如果τ在時間軸上平行移動,可得出傅立葉計算公式:
當f(x)=y(x)時:
│f(x)│是f(x)的函數(shù)。用角頻率的變化量r替代時間的變化量t,同時用頻域的窗口函數(shù)G(r-ω)替代時域的窗口函數(shù)g(t-τ),可得頻域ω周邊的局部信息:
所以,Gabor小波變換的基本原理是:只要選取的小窗口在時域-頻域的局部性質(zhì)良好,就能夠運用Gabor變換原理準確無誤提取到時域-頻域信號F(t)的特征信息[9]。
PCA是以K-L正交變換為基礎的算法,再運用奇異值分解計算法壓縮數(shù)據(jù),提取人臉圖像特征信息[10-11]。下面介紹K-L正交變換與奇異值分解算法。K-L正交變換是生物識別領域中最常用、最熱門的算法,由Kirby等科學家提出,研究上常用K-L處理過的識別圖信息替代原來識別圖的信息。多數(shù)實驗證明,K-L是一種壓縮圖像信息的最佳處理方式,依照統(tǒng)計學,K-L正交變換可以找到最小的信息。
設被識別圖像是二維灰度圖f(x,y),若用M維向量表示,則圖像訓練集就可以看成是N維的隨機變量。Xi表示訓練集中第i個樣本的圖像矢量,所以訓練集中的樣本總數(shù)為M,則M維向量平均值為:
所以,訓練樣本圖的協(xié)方差矩陣為:
K-L變換后的矩陣為:
式中,P表示訓練集里的總人數(shù),μi是第i個人圖像的平均矢量。從式(9)、式(10)可以看出,通過K-L正交變換后,識別圖像維數(shù)降低了,由M-1降到P-1,大大地減少了計算量,但識別率并未下降,下文通過實驗數(shù)據(jù)驗證。
以N×N的識別圖像為例,其中Cb矩陣的維數(shù)是N2×N2,難于通過計算直接得出其特征信息值和正交歸一化矢量。
改進這一不足可用奇異值分解(SVD)算法。用X表示n×r維矩陣,秩為r,這樣就有以下兩個正交矩陣:
對角矩陣:
λ0,λ1,…λr-1以降序的方式排列:λ0≥λ1≥…≥λr-1,所以有。
式中,λ1是矩陣XXT和XTX的非零特征值,ui、vi分別是XXT和XTX的特征矢量。這就是矩陣X的奇異值分解算法(SVD),λ1是X的奇異值[1]。
SVD推導過程如下:
其中:
矩陣特征矢量λ1和相對于它的正交歸一化后的特征向量vi很容易求得。
由上面可得,正交歸一化后,Cb的特征矢量如下:
ui就是識別圖像的“特征臉”的矢量,標作:
p(p<M),人臉識別時P個特征值實際上已經(jīng)夠用了。所以在計算特征臉時,只需要取M中前面的P個最大特征值所對應的特征向量。對于隨機的一個人臉識別圖X,對特征圖像的子空間進行投影,該投影就是向量X與U的內(nèi)積:
Gabor和PCA融合算法流程圖如圖1所示,具體算法步驟如下:
圖1 Gabor和PCA融合算法流程圖
1)選用并輸入ORL數(shù)據(jù)庫作為實驗訓練圖。
2)選用光照預處理、標準化處理、圖像增強等預處理算法,選用窗口為5*5的方形中值濾波器。
3)Gabor變換與提取,在范圍[0,π]內(nèi)采樣,選取8個方向、5個尺度,得到40個分量。
4)PCA降維,用PCA主成分分析法對特征圖像信息進行數(shù)據(jù)壓縮、降維[12]。根據(jù)前面的算法闡述,特征臉圖像的特征維數(shù)是M,經(jīng)過K-L變換后,得到矩
成分分析算法降維。接著采用PCA算法是對特征臉進行降維。根據(jù)前文的研究算法,設有特征維數(shù)為M的人臉圖像,則:K-L變換后產(chǎn)生矩陣可得到,根據(jù)SVD定理,對任意人臉圖像X,將其向特征臉子空間投影,得到列向量。然后使用基于歐氏距離的最近鄰分類器,將特征臉對應的人臉分類出來。
2.2.1 識別系統(tǒng)實驗流程介紹
本實驗流程使用Matlab軟件,以Gabor與PCA融合算法作為核心算法,以此來提取特征的算法,能夠把人臉數(shù)據(jù)庫中的人臉識別圖像識別出來,且準確率大于95%,實驗系統(tǒng)人為隨機選取數(shù)據(jù)庫中的圖像。選擇Gabor與PCA融合或是只有PCA這兩種算法,輸出實驗結果。融合算法的系統(tǒng)流程圖如圖2所示。
圖2 融合算法的系統(tǒng)流程圖
2.2.2 Gabor與PCA融合算法識別系統(tǒng)實驗的實現(xiàn)工具
實現(xiàn)工具選用Matlab,這是一款由美國MathWorks公司研發(fā)的軟件,在數(shù)值分析與數(shù)據(jù)信號處理、動態(tài)建模與系統(tǒng)優(yōu)化、可視化的人工程序設計方面有廣泛的應用。其編程和計算機速度快、效率高,簡單易學,人機交互強大,在應用程序和圖像處理方面功能強大。
2.2.3 系統(tǒng)軟件主要界面
人臉識別系統(tǒng)軟件主界面如圖3所示,打開圖像界面如圖4所示,識別過程界面如圖5所示。
圖3 人臉識別系統(tǒng)軟件主界面
圖4 打開圖像界面圖
圖5 識別過程界面圖
2.2.4 實驗數(shù)據(jù)及結果分析
按照論文實驗步驟,本節(jié)對Gabor與PCA融合實驗算法的人臉識別系統(tǒng)進行實驗并提取數(shù)據(jù)進行分析,與單純PCA算法的實驗結果進行比較。
實驗圖像選用ORL人臉數(shù)據(jù)庫,進行算法驗證。每個人有10幅圖像,選前5幅作為訓練樣本,后5幅作為測試用樣本,分別各有200幅,實驗數(shù)據(jù)如圖6所示。
圖6 兩種算法在不同特征臉維數(shù)下的識別率對比線
對比圖6中數(shù)據(jù)可知,把Gabor和PCA融合在一起的算法,其系統(tǒng)識別率大約提高了2%。Gabor算法在繼承和發(fā)展傅立葉變換的整體思想上有很大的優(yōu)勢,能極大地提高識別系統(tǒng)的魯棒性和識別率。而PCA主成分分析法,先統(tǒng)計空間中現(xiàn)有的原始信息,分析數(shù)據(jù),篩選出最主要的特征信息,去除其他無用的信息,提高了信息利用率。實驗設計中,先用PCA對數(shù)據(jù)降維。從圖6中數(shù)據(jù)可看出,從維數(shù)20開始,維數(shù)增加,識別率隨之提高,但速度越來越慢;維數(shù)繼續(xù)增加,系統(tǒng)計算變得更加復雜,識別率提高的速度趨于緩慢,幅度很小。數(shù)據(jù)分析可以看出,在維數(shù)為50左右時,識別率較高,能夠滿足系統(tǒng)要求。
本課題具體介紹Gabor與PCA相互融合的人臉識別系統(tǒng)的實驗設計流程,運用Matlab軟件實現(xiàn)了融合算法的實驗仿真,進行了實驗設計并分析了實驗數(shù)據(jù)。Gabor算法雖然具有較大的識別率和魯棒性,但計算量太大而致使效率降低;PCA是對數(shù)據(jù)進行降維,再對映射到子空間的信息進行分類再識別,降低數(shù)據(jù)維數(shù)到50,減少了50%的計算量;最后把Gabor與PCA進行融合算法處理,比起傳統(tǒng)的PCA主成分分析法,識別率大約提高了2%。