◆刁彥華 岳 瑩 王曉君
?
基于鑲嵌圖+PCA+SVM的人臉識別算法
◆刁彥華 岳 瑩 王曉君
(河北科技大學信息科學與工程學院 河北 050000)
為了更好地提高人臉識別正確率,提出了一種改進算法——基于鑲嵌圖、PCA和SVM算法的人臉識別。首先,利用鑲嵌圖對人臉圖像進行定位;其次,利用主成分分析法(PCA)對圖像進行降維和特征提??;最后利用線性核函數(SVM)進行分類識別。該算法在ORL庫上進行實驗,取得了87%的識別率。該算法可以減少不是人臉區(qū)域的干擾,很好地定位到人臉并識別,提高了識別率。
人臉識別;鑲嵌圖;主成分分析法;支持向量機
在圖像中對人臉進行處理成為近些年來人工智能領域相對比較活躍的一個研究課題。鑲嵌圖人臉定位是人臉圖像定位的經典算法,提供了一個在復雜背景下搜索人臉的位置、大小以及數量的有效方法,其穩(wěn)定性較好,解決了人臉大小數量未知問題。主成分分析(PCA)降低特征維數可以減少計算量,有效地提高了識別的效率。而支持向量機(SVM)適合處理一些小樣本相關的問題以及并具有高維數、強大的泛化能力等多方面的優(yōu)點。針對如何提高人臉識別正確率問題,本文提出了基于鑲嵌圖、PCA和SVM算法。與PCA和SVM算法相比,該算法可以減少不是人臉區(qū)域的干擾,很好地定位到人臉并識別。具體流程如圖1所示。
圖1 人臉識別總流程圖
利用鑲嵌圖來實現人臉定位就是任意給定一個背景復雜的圖片,在其中找到可能存在人臉的位置,這就是人臉的自動定位。
本文首先利用四分圖進行粗檢測,找到可能存在的人臉區(qū)域,如圖2所示。
0123 4567 891011 12131415
其次,在八分圖上進行進一步驗證,定位人臉區(qū)域,如圖3所示。
在四分圖上建立的篩選可能存在人臉區(qū)域規(guī)則:人臉的面部中心有四個灰度大致相等的細胞5,6,9,10;面部上方位置、外圍的八個細胞0,1,2,3,4,7,8,11的灰度大致相等;在四分圖中,中心的位置和上方位置、外圍部分有較明顯差異的平均灰度。
01234567 89101112131415 1617181920212223 2425262728293031 3233343536373839 4041424344454647 4849505152535455 5657585960616263
最后,在八分圖上建立的定位人臉區(qū)域規(guī)則:
(1)眼區(qū)(以0,8開頭的兩行):在眼區(qū)灰度極小值有兩個,位置大致在細胞1,9,6,14區(qū)域兩個灰度極小值位置相差d:2 (2)鼻區(qū)(以16,24,32,40開頭的四行):在眼區(qū)中心正下方的一個單位細胞19或者是細胞20處存在灰度極小值。 (3)口區(qū)(以48,56開頭的兩行):存在一個灰度極小值,其位置在鼻區(qū)正下方方向一個單位細胞處,并且存在一個低灰度值塊,寬度d:2 PCA(主成分分析法)是一種通過數學變換的方法來實現維數的降低。其基本思想是:首先對圖像當中的最原始的數據進行提取,減少多余的數據,使數據在一個恰當的低維特征空間處理,而且又不破壞大部分的原始數據,最終解決數據空間維數過高的關鍵問題。 本文采用ORL人臉數據庫,ORL人臉數據庫共有400張人臉的正面圖像(40個人,每人10張,大小為112像素×92像素),將人臉數據集中每個人不同表情的10張人臉正面圖像分成兩組,訓練集由前5張構成,測試集由后5張構成。200張人臉正面圖像樣本是訓練集的張數,測試集跟訓練集的張數是相同的。人臉圖像特征提取算法實現步驟為: (1)計算其所有訓練樣本的均值向量; (2)計算每個人的平均圖像向量; (5)每個人訓練樣本的平均向量在特征子空間的投影。 通過PCA方法,可以有效降低數據維數,可以幫助咱們將十分高的人臉圖像維數轉換成低維數的空間去,轉換后就需要找到一個合適的分類器,對提取的特征向量進行分類處理,來確定是否是人臉并確定其身份。在分類器分類過程當中,分類器的選擇至關重要,其對最終類別的判斷有極其重大的影響。 非線性可分情況時,SVM原始的內積運算被核函數所代替,通過選取適合恰當的核函數和懲罰參數,所得到的就是通常情況下使用的標準的C-支持向量機分類機。此時,目標函數和其約束條件滿足: 所構造的決策函數為: 本文使用的是C-SVM,其具體算法步驟如下: (1)假設給定一個特征空間上的訓練數據集: 其中: (4)最后構造決策函數: 經過PCA特征降維之后,把訓練圖像的特征矩陣通過SVM訓練函數,得到訓練模型,然后把預測圖像經過鑲嵌圖人臉定位和PCA處理后,利用SVM預測函數進行人臉識別。 基于人臉數據庫人臉識別計算機仿真實驗利用Matlab2014b編程實現,使用的數據集為Olivette實驗室的ORL人臉庫。ORL人臉數據庫共有400張人臉的正面圖像(40個人,每人10張,大小為112像素×92像素),將人臉數據集中每個人不同表情的10張人臉正面圖像分成兩組,訓練集由前5張構成,測試集由后5張構成。200張人臉正面圖像樣本是訓練集的張數,測試集跟訓練集的張數是相同的。 (1)利用鑲嵌圖人臉定位 首先利用四分圖規(guī)則來初步選定候選人臉區(qū)域,確定大概位置后,利用八分圖規(guī)則來驗證候選人臉區(qū)域是否包含人臉,并定位人臉區(qū)域。 (2)PCA算法提取人臉特征 通過PCA處理的方法來從訓練數據集中找到主成分,圖像維數從10304維降為20維,得到的20維向量可以代表人臉樣本。通過PCA降維處理后,可以得到訓練集中20個人的主成分臉。 (3)構建SVM以及核函數的選擇 (4)實驗結果 表1 不同算法下人臉識別準確率 結合鑲嵌圖、PCA算法與SVM的特點,提出了一種基于鑲嵌圖、PCA算法與SVM人臉識別的方法。并在ORL人臉數據庫上進行了實驗,對實驗結果進行分析表明:該算法可以減少不是人臉區(qū)域的干擾,很好地定位到人臉并識別,與典型的人臉識別實驗相比較,證明了本算法的有效性,表明本算法適用于人臉識別領域。 [1]徐靜妹,李雷.基于稀疏表示和支持向量機的人臉識別算法[J].計算機技術與發(fā)展,2018. [2]金鑄浩,張丹紅,高漢軍等.基于自適應方向局部三值模式的人臉識別.科學技術與工程,2017. [3]尉宇,羅浩.基于局部分割的快速人臉識別.科學技術與工程,2017. [4]王憲佼,洪寧,馬俊武.于PCA和SVM的人臉識別[J].信息通信,2015. [5]楊光正,黃熙濤.鑲嵌圖在人面定位中的應用[J].模式識別與人工智能,1996. [6]黨永成.人臉識別技術綜述及分析[J].電子技術與軟件工程,2018. [7]付浩海,趙鵬飛,侯月武等.基于最小二乘支持向量機的人臉識別算法[J].長春工程學院學報(自然科學版),2018. [8]袁程波.基于PCA和SVM的人臉識別關鍵技術研究與實現[D].電子科技大學,2017. [9]劉俊.變化光照條件下人臉識別算法研究[D].電子科技大學,2017.2 PCA特征降維
3 支持向量機人臉識別
4 仿真過程
4.1 仿真環(huán)境
4.2 算法過程
5 結論