国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于改進PCA+SVM的人臉識別系統(tǒng)

2021-12-03 03:27彭榮杰彭亞雄陸安江
電子科技 2021年12期
關(guān)鍵詞:超平面訓(xùn)練樣本特征向量

彭榮杰,彭亞雄,陸安江

(貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院,貴州 貴陽 550025)

人臉識別技術(shù)起源于21世紀,該技術(shù)與傳統(tǒng)的指紋識別、虹膜識別、掌紋掃描、身份識別相比,有較好的隱蔽性,安全性高,操作便捷[1],是計算機領(lǐng)域和機器學(xué)習(xí)領(lǐng)域研究的熱點之一,有著廣闊的前景。近年來人臉識別技術(shù)已滲入到日常生活中,例如支付寶付款、人臉識別解手機密碼鎖及刷臉乘車等方面,使人們的生活更加便利。文獻[2]最早將主成分分析(Principal Component Analysis,PCA)算法應(yīng)用于人臉識別,用于特征臉的提取。該方法效果良好,很快在人臉識別技術(shù)中得到應(yīng)用。但在人臉圖像中,除了線性部分,還有非線性部分,且提取的人臉特征向量是高維的,因此只能提取人臉線性部分的PCA算法的應(yīng)用范圍及效果較為有限。為了更好地提取人臉圖像信息,解決人臉圖像的非線性問題,研究人員提出了核主成分分析(Kernel Principal Component Analysis,KPCA)算法。該算法將高維空間中的特征向量變化到低維空間中,使原始空間的數(shù)據(jù)信息降到最小值,以便更好、更快地提取人臉圖像的有用信息。在人臉識別方面,分類器的選取很重要。分類器種類包括最近鄰算法分類器[3]、K近鄰算法分類器、支持向量機(Support Vector Machines,SVM)分類器以及基于貝葉斯識別模型的分類器[4]等。SVM分類器在處理小樣本數(shù)據(jù)集和非線性問題及高維模式方面具有優(yōu)勢,所以本研究結(jié)合SVM分類器對人臉圖像進行分類識別[5-6]。

1 人臉識別算法

1.1 圖像預(yù)處理

在人臉特征提取前,需要對人臉圖像進行預(yù)處理,去除光照過強或過弱對人臉識別帶來的不利影響。本文使用Gamma校正法對人臉圖像進行對比度增強處理,基本原理如下。

本文將原人臉圖像設(shè)為I1,將定義的標準圖像設(shè)為I2,通過調(diào)節(jié)參數(shù)λ將需要校正的原人臉圖像校正到定義的標準圖像。首先,對輸入圖像像素值歸一化,歸一化后像素值在[0,1]之間。然后,調(diào)節(jié)參數(shù)λ對像素值做非線性映射,非線性映射計算式為[7]

(1)

式中,f(I1)為輸出非線性映射的值;λ是調(diào)節(jié)參數(shù)。當(dāng)λ<1時,人臉圖像灰度值變大,整體亮度增大。當(dāng)λ>1時,人臉圖像灰度值變小,整體亮度變暗。最后用反歸一化對所得像素值進行處理,再將處理后的像素值擴展到[0,255]。使用Gamma校正法得到的效果如圖1所示。

(a)

1.2 PCA算法

PCA是一種分析統(tǒng)計的有效方法,該方法用特征向量對樣本數(shù)據(jù)進行分析,將高維特征向量通過特征向量矩陣轉(zhuǎn)換后得到低維向量[8],并略去次要信息,保存主要信息。通過K-L變換(Karhunen-Loeve Transform)提取圖像的主要成分,構(gòu)成低維特征空間。識別時,將測試圖像投影到低維特征空間,得到一組投影系數(shù),通過與各個圖像比較進行識別[9]。

假設(shè)有n個訓(xùn)練樣本,每個訓(xùn)練樣本由其灰度像素構(gòu)成,并用x表示向量。向量x的維數(shù)用樣本圖像像素m表示。樣本圖像像素m等于行像素數(shù)與列像素數(shù)的乘積,得樣本訓(xùn)練集{x1,x2,x3,…,xn},計算樣本的平均向量為式(2)。

(2)

平均向量又稱訓(xùn)練圖片的平均臉,每個訓(xùn)練樣本與平均臉的差值用d表示。

di=xi-φ,i=1,2,3,…,n

(3)

樣本集的協(xié)方差矩陣用C表示

(4)

(5)

使用式(4)中協(xié)方差矩陣C的特征向量ei和特征值γi來構(gòu)造特征空間,需要對特征值進行分解。但因其維數(shù)較大,故采用奇異值分解(Singular Value Decomposition,SVD)定理,通過求解ATA的特征值和特征向量來求AAT的特征值和特征向量。最后,得到ATA的特征值λi和正交歸一化特征向量vi[10]。

選取前p個最大的特征向量和其對應(yīng)的特征值作為主要信息提取,特征值的貢獻率為δ,選取特征值與所有特征值的和的比值表示,為ω。

(6)

為更好地對圖像進行表達,貢獻率δ=0.99。協(xié)方差矩陣C的特征向量為

(7)

得到特征空間?為式(8)。

?=(e1,e2,e3,…,ep)

(8)

1.3 SVM算法原理

假設(shè)平面上有兩類數(shù)據(jù),分別用空心圓圈和實心圓圈表示。如圖2所示,尋找一個超平面能正確劃分平面上的所有數(shù)據(jù),此分割線可能有多條。如果找到一個平面,該平面內(nèi)全部樣本數(shù)據(jù)點距離分割線最近,且距離最大,那么找到的這個平面就是超平面[11],該超平面也是最佳超平面。超平面之間的H分類分別為H1和H2,它們之間的距離稱為分類間隔。

圖2 SVM算法分類圖Figure 2.SVM algorithm classification map

該超平面H的方程表達為:wTx+b=0;樣本點p(x1,x2,x3,…,xn)到此超平面的距離用d表示,計算式如下所示。

(9)

訓(xùn)練集D={(xi,yi)|xi∈RN,yi∈{-1,1}}。訓(xùn)練集中xi為樣本集,yi是xi對應(yīng)的標簽,yi=1為正樣本集標簽,yi=-1為負樣本集標簽。此超平面H將不同的樣本集分離,其對應(yīng)的判別式為[11]

w×xi+b≥1,yi=1

(10)

w×xi+b≤1,yi=-1

(11)

聯(lián)合式(10)、式(11)得式(12)。

yi(w×xi+b)-1≥0

(12)

上述優(yōu)化問題的目標函數(shù)轉(zhuǎn)換成

(13)

為解目標函數(shù),使用拉格朗日優(yōu)化理論,即

(14)

最終優(yōu)化形式為式(15)。

(15)

由于數(shù)據(jù)集不統(tǒng)一,存在噪點,所以引入松弛變量ξ,并允許少量不能正確劃分的數(shù)據(jù)存在[11]。重新調(diào)整目標函數(shù),新目標函數(shù)為

(16)

新約束條件為式(17)。

yj(w×xi+b)≥1-ξi,i=1,2,3,…,n

(17)

1.4 改進的人臉識別算法

PCA算法是線性算法,不能很好地描述人臉圖像的內(nèi)在結(jié)構(gòu)及內(nèi)在紋理特征,所以本文對PCA算法進行核改進,提出KPCA算法[12-13]。KPCA算法運用其自身產(chǎn)生的核函數(shù)來提取人臉圖像的非線性結(jié)構(gòu)特征。KPCA算法的主要思想是通過一個非線性核映射φ(x),將訓(xùn)練集的數(shù)據(jù)從低維的特征空間X投射到高維的特征空間F中[14],在高維的特征空間F中重新構(gòu)造一個最優(yōu)分類面[15-16],實現(xiàn)數(shù)據(jù)的分類。該方法可解決數(shù)據(jù)線性不可分的分析及提取等問題,又因其維數(shù)不會超過訓(xùn)練樣本的總數(shù),故能避免在高維空間中進行大量運算。將輸入的人臉數(shù)據(jù)經(jīng)過非線性核映射后得到樣本組,對樣本組做中心化處理,即

(18)

式中,N表示訓(xùn)練樣本的個數(shù);φ(xk)是對訓(xùn)練樣本的映射函數(shù)。C是映射后的協(xié)方差矩陣[17],C表示為

(19)

用下式來求解特征方程,可得主分量

λV=CV

(20)

式中,V為特征向量,可用φ(x1),φ(x2),…,φ(xn)的線性組合來表示。

核函數(shù)的表示有很多種,本文采用高斯核函數(shù),高斯核函數(shù)表達式為

K(xi,x)=exp(-q‖x-xi‖2)

(21)

假設(shè)用K來表示N×N的核矩陣

Kij=φ(xi)Tφ(xj)

(22)

把表達式(19)、式(21)和式(22)帶入表達式(20)可得

Kα=Nλα

(23)

由式(22)可以得到核矩陣K。K具有正定性和對稱性,并且各特征值為非負值。

求解式(23)能得到

λi(αi,αj)=1

(24)

假設(shè)測試樣本X,該樣本在Vj方向的投影可用下式表示。

(25)

(a)

2 改進的人臉算法實現(xiàn)

本文先對訓(xùn)練集和測試集中的圖像進行預(yù)處理,再對PCA算法進行核改進,得到KPCA算法,最后結(jié)合SVM分類器,采用“一對一”分類策略將SVM推廣到多類問題的分類過程,完成多分類的變換。具體算法步驟如下:

步驟1在人臉圖像庫中選擇樣本集P,將P分成訓(xùn)練樣本集和測試樣本集。訓(xùn)練樣本集由前M個人臉圖像組成,測試樣本集由剩下的(P-M)個人臉圖像組成;

步驟2對訓(xùn)練集和測試集中的圖像用Gamma校正法進行預(yù)處理;

步驟3對預(yù)處理后的圖像以矢量的形式排列,形成特征集;

步驟5結(jié)合SVM多分類器進行分類識別。

3 實驗結(jié)果

本文在MATLAB 2014b上進行實驗,同時在MATLAB 2014b上搭建人臉識別系統(tǒng)并對系統(tǒng)進行仿真。本文使用劍橋大學(xué)AT&T實驗室創(chuàng)建的ORL人臉數(shù)據(jù)庫以及Yale人臉數(shù)據(jù)庫。ORL人臉數(shù)據(jù)庫里有40個人,每人有10張圖片,其分辨率為112×92,灰度級是256。Yale人臉數(shù)據(jù)庫里有15個人,每人有11張拍攝角度不同、表情不一致的人臉圖像[18-19]。本實驗選取前10張圖片,其人臉圖像分辨率為100×100,灰度級是256。分別對PCA、PCA+SVM、KPCA+SVM算法進行比較,KPCA+SVM算法在ORL人臉庫上識別率是95.16%,在Yale人臉庫上識別率是95.10%,表明KPCA+SVM算法優(yōu)于PCA算法和PCA+SVM算法。將KPCA+SVM算法用于人臉識別系統(tǒng),并用GUI界面仿真,系統(tǒng)的流程框圖如圖4所示。

圖4 系統(tǒng)的流程框圖Figure 4.System flow diagram

3.1 實驗結(jié)果及分析

本文實驗取每個人10張人臉圖片,訓(xùn)練集用前5張人臉圖片,測試集用后5張人臉圖片。對訓(xùn)練集和測試集中的圖像用Gamma校正法進行預(yù)處理,取調(diào)節(jié)參數(shù)λ=0.6。如表1和表2所示,PCA算法將高維的人臉圖像投影到低維的特征空間,得到特征臉后進行人臉識別。由于人臉圖像易受光照、表情等因素的影響及存在非線性特征,故PCA算法識別率較低。SVM在處理小樣本數(shù)據(jù)分類方面具有一定的優(yōu)勢。結(jié)合SVM的PCA+SVM方法在ORL人臉庫和Yale人臉庫中的識別率相對于PCA算法分別提高了7%和9.1%。本文對人臉圖像進行預(yù)處理,減少光照的影響,再對PCA算法進行核改進,提出KPCA算法。KPCA利用其內(nèi)部非線性核函數(shù)作用,能較好地提取人臉的輪廓,有效處理非線性特征數(shù)據(jù),降低數(shù)據(jù)維數(shù),減少特征數(shù)據(jù)存儲所需要的空間,提高運算能力。將KPCA結(jié)合SVM分類器進行分類識別。如表1所示,本文所提的KPCA+SVM算法在ORL人臉庫上識別率是95.16%,比傳統(tǒng)PCA算法提高了18.16%,比PCA+SVM提高了11.16%。將KPCA+SVM算法在人臉識別系統(tǒng)中運行5次,其平均運行時間為3.95 s,少于PCA算法及PCA+SVM算法的平均運行時間。如表2所示,本文所提KPCA+SVM算法在Yale人臉庫上識別率是95.10%,比傳統(tǒng)PCA算法提高21.1%,比PCA+SVM提高12%。KPCA+SVM算法運行5次,平均運行時間為5.12 s,比傳統(tǒng)PCA算法、PCA+SVM算法的平均運行時間要少。實驗結(jié)果表明,本文改進后的KPCA+SVM算法具有較好的識別效果,提高了平均運算速度。

表1 在ORL人臉庫上的實驗結(jié)果Table 1. Experimental results on ORL face database

表2 在Yale人臉庫上的實驗結(jié)果Table 2. Experimental results on Yale face database

3.2 系統(tǒng)仿真

基于改進后的KPCA+SVM算法,在MATLAB平臺上搭建人臉識別系統(tǒng)并進行仿真,以GUI呈現(xiàn)。點擊開始訓(xùn)練按鈕,調(diào)用函數(shù)對前5張圖片進行訓(xùn)練并保存數(shù)據(jù)。點擊開始測試按鈕,調(diào)用函數(shù)對后5張圖片進行測試,對測試集200個人臉樣本,識別率為95.16%。點擊打開圖片按鈕,選擇ORL人臉庫中第9個人第6張圖片作為待識別人臉圖像,點擊識別人臉,系統(tǒng)讀入訓(xùn)練參數(shù)進行特征匹配并輸出識別結(jié)果。該系統(tǒng)能正確識別出人臉圖像,GUI界面輸出結(jié)果如圖5所示。

圖5 基于KPCA+SVM的人臉識別系統(tǒng)Figure 5.Face recognition system based on KPCA+SVM

調(diào)節(jié)參數(shù)框中的C是懲罰因子,C值越高,系統(tǒng)容易出現(xiàn)過擬合現(xiàn)象;C值越低,系統(tǒng)容易出現(xiàn)欠擬合現(xiàn)象。C值過大或過小都會使系統(tǒng)的泛化能力變差。gamma是單個訓(xùn)練樣本的影響因子,可以看作支持向量樣本的影響半徑的倒數(shù)。基于改進后的KPCA+SVM算法在懲罰因子C=2,gamma=0.01時,在ORL人臉庫和Yale人臉庫上的識別率均在95%以上,運行時間均在6 s以下,達到系統(tǒng)識別率的要求。該結(jié)果表明基于KPCA+SVM的人臉識別系統(tǒng)的研究是可行的,對實際研究有一定的參考應(yīng)用價值。

4 結(jié)束語

本文所提的KPCA+SVM算法首先使用Gamma校正方法對人臉圖像進行預(yù)處理,減少光照過強或者過弱對圖像帶來的不利影響;再用KPCA算法對提取的圖像進行人臉特征提取,減少了光照干擾和小樣本問題,較好地提取了人臉圖像的非線性特征;最后用SVM分類識別器對人臉圖像進行分類識別。KPCA+SVM算法的識別率相比于PCA、PCA+SVM算法均有所提高。近年來,由于深度學(xué)習(xí)被廣泛應(yīng)用于模式識別中來提取人臉的深層特征,因此下一步工作將結(jié)合深度學(xué)習(xí)進行人臉識別。

猜你喜歡
超平面訓(xùn)練樣本特征向量
二年制職教本科線性代數(shù)課程的幾何化教學(xué)設(shè)計——以特征值和特征向量為例
克羅內(nèi)克積的特征向量
全純曲線的例外超平面
涉及分擔(dān)超平面的正規(guī)定則
人工智能
以較低截斷重數(shù)分擔(dān)超平面的亞純映射的唯一性問題
一種基于支持向量機中分離超平面求取的算法*
一類特殊矩陣特征向量的求法
EXCEL表格計算判斷矩陣近似特征向量在AHP法檢驗上的應(yīng)用
寬帶光譜成像系統(tǒng)最優(yōu)訓(xùn)練樣本選擇方法研究
上蔡县| 汤阴县| 分宜县| 娱乐| 博罗县| 繁昌县| 遂宁市| 大埔县| 绥棱县| 韶关市| 陕西省| 拜城县| 虎林市| 剑阁县| 济南市| 英德市| 青州市| 玉山县| 五华县| 晋江市| 曲沃县| 会泽县| 双桥区| 屯昌县| 长葛市| 元江| 宜昌市| 长海县| 兴文县| 顺义区| 鸡东县| 德保县| 南木林县| 浙江省| 宁远县| 麻江县| 车致| 温宿县| 吕梁市| 特克斯县| 乌什县|