陳瀟



摘要:人臉識別技術是快速身份是識別技術中極其重要的一種識別方法,本文研究了結合Fisher準則和主成分分析PCA算法的人臉識別方法,采用基于奇異值分解的特征提取算法,通過計算協方差矩陣的特征值以及特征向量,使用歐式距離判斷輸入圖像與訓練圖像之間的類似度的方法進行人臉判別分類,識別出匹配圖像。
關鍵詞:人臉識別;PCA算法;Fisher準則
中圖分類號:TP391.41 文獻標識碼:A 文章編號:1007-9416(2019)10-0156-02
0 引言
隨著科學技術的進步,有效可高的身份識別技術越來越受到人們的重視。生物特征相對于其他識別技術具有穩定、唯一的特點,因此在身份識別領域受到青睞。人臉識別技術相對指紋識別等其他識別技術穩定性強,識別速度快,適用場合廣泛,在不同場合中實現了各種各樣的智能化應用。
結合Fisher準則和主成分分析PCA算法的人臉識別方法,降低了處理圖像的維度,能夠在保留原始圖像大部分信息的前提下提取圖像中的主要元素,減少了數據處理難度。
1 理論基礎
1.1 人臉識別系統
常見的人臉識別流程如圖1所示,主要分為以下步驟。
1.1.1 獲取人臉圖像
首先通過各種采集設備獲得人臉圖像信息,轉化成計算機可以處理的數據。
1.1.2 預處理
由于受各種因素的影響,輸入的圖像質量不統一,不能夠直接將圖像用于后續的人臉識別過程,很大程度上影響了識別的性能。預處理工作能夠盡可能消除在尺寸大小、姿態、明暗程度、 面部遮擋物等方面對識別性能的影響。
1.1.3 特征提取
每副人臉圖像中都有區別于其他圖像的特征。人臉的特征主要分為:物理、結構和數學特征三種。人們常通過物理和結構特征去識別和記憶對象,因為這兩種特征易于被察覺和感知。計算機在對數學特征的處理上具有優勢,所以我們利用計算機的特點在人臉識別過程中完成如計算協方差矩陣、統計樣本平均值等工作。
1.1.4 特征匹配
特征匹配是將經過特征提取后的樣本與人臉庫中存儲特征樣本按照相應的規則進行匹配。目前常用的手段是使用最近鄰分類器結合歐式距離進行比對。
1.2 Fisher準則原理
假設訓練集樣本、測試集樣本有n個特征,為了找出最好的投影方向,可以通過計算樣本的平均值、樣本類內的離散度矩陣、樣本類間的離散度矩陣以及總類間離散度矩陣。根據最佳投影方向投影所有訓練集樣本到一維空間為Y,然后找到Y空間的邊界點,即可將待測樣本投影到一維Y空間,通過比對投影點與分界點之間的關系將樣本進行分類。
Fisher分類器設計步驟如下:
(1)計算各類樣本均值向量,是各個類的均值,是類的樣本個數。
(2)計算樣本類內離散度矩陣和總類間離散度矩陣:
(3)計算樣本類間離散度矩陣:
(4)求出向量:
為了保證樣本投影后在一維空間的距離較大,即樣本訓練集和待測樣本的均值之差()的值要大,即類間距離最大化。同時要實現類內的距離最小化,即各樣本在類內緊密。
1.3 基于PCA的人臉識別算法
PCA是人臉識別領域一種常用算法,能夠在保留原始圖像大部分信息數據的前提下,降低空間維度,提取主要元素,從而減少數據處理難度。下面將詳細介使用PCA算法計算特征臉并進行識別的過程。
第一步:降維并生成一維向量矩陣。假設二維人臉圖像的長度和寬度為別為M和N,在某種程度上可將其看成是一個長度為MN的列向量。為了將二維的圖像轉換成一維的列向量,先計算二維圖像的大小即M*N的值,隨后將圖像按行進行轉置運算,接著按列依次取出人臉圖像的灰度值,拼接形成一維向量矩陣T。
第二步:對圖像進行規范化處理。對圖像矩陣T進行規范化,對一維列向量求出平均值,然后用矩陣每列減平均值,經過規范化的操作后形成了矩陣A。
第三步:計算特征臉。訓練樣本表示為,維度為,將訓練樣本A與A的轉置相乘得到訓練圖像的協方差矩陣C,則C的維度為(MN)2。那么協方差C的維度較高,從而導致計算特征向量以及特征值比較繁瑣。為了避免上述現象,我們采用奇異值分解定理。
由此可計算出,且和存在共同非零的特征值,和分別為和對應特征值的正交特征向量。
由此可推導出:
則可以根據協方差矩陣,構造出矩陣L,L表示為:,從而較容易地計算出L的特征值及特征向量,然后即可根據上式求出協方差矩陣C的特征值以及特征向量。
本文就是采取直接構造出的方法,由此計算出L的特征值,然后從L的特征值中選取值大于100的值作為協方差矩陣C的特征值,最后再根據協方差矩陣C的特征值來計算出C的特征向量,從而形成特征臉圖像。
第四步:進行識別。識別過程主要有兩個部分:樣本訓練和樣本測試。
樣本訓練主要是將人臉數據庫中的圖像提取出來,生成特征數據庫。樣本測試過程中,需要識別的人臉的特征,然后將經過計算提取后的特征和特征數據庫中樣本距離進行比較,匹配距離最小的訓練圖像即為匹配結果。
為了生成人臉特征庫,需要將圖像矩陣A的列向量進行投影,形成特征子空間。使用公式對人臉圖像Y進行標準化處理,形成的標準化圖像對特征子空間進行投影,得到向量。隨后使用歐式距離法進行圖像的判別,測試圖像與每個人臉圖像間的距離為,從中選擇滿足最小距離的圖像作為匹配結果。
2 系統實現
本文中人臉識別程序使用matlab2012b平臺編程實現,人臉數據來源于face94 Essex face database標準人臉庫。
本系統主要分為:生成訓練樣本、計算特征臉和識別匹配三部分,程序框圖如圖2所示。
選擇訓練樣本和測試樣本庫,然后在樣本訓練庫和測試庫中選擇樣本圖片,如圖3所示。
系統進行樣本訓練后即可完成人臉識別匹配,匹配結果如圖4所示。
本次實驗總共分3組進行測試,每次測試匹配20張圖片,平均準確率達到90%以上。通過樣本庫中人臉進行測試后發現,在光照均勻,測試姿態為正面,臉部遮擋較少的情況下,人臉識別系統可以達到較高的識別率。
3 結語
本文按照完整的人臉識別流程,設計了基于Fisher線性分類準則的PCA人臉識別算法并編程實現,通過實驗發現人臉識別率很高。在未來改進過程中,增加對圖像的光照變化以及其他姿態因素的考慮,以進一步提高圖像識別的準確性。
參考文獻
[1] 宋文娟,于威威.一種應用PCA的人臉圖像集識別方法[J].現代計算機(專業版),2014(12):23-26.
[2] 張成龍.基于PCA算法的人臉識別技術研究[J].電腦知識與技術,2016,12(22):182-184.
[3] 邵嵐,姚艷松,尚福.基于PCA人臉識別原理[J].網絡安全技術與應用,2019(01):26-27+39.
[4]張誠,楊陽.基于PCA算法的人臉識別登錄系統設計[J].信息與電腦(理論版),2017(11):125-127+130.
[5] 徐飛.Matlab應用圖像處理[M].西安:西安電子科技大學出版社,2005.