陳 平
(徽商職業(yè)學(xué)院 電子信息系,安徽 合肥 230000)
人臉識(shí)別由于其在公安部門(mén)、安全驗(yàn)證系統(tǒng)、檔案管理、信用卡驗(yàn)證和人機(jī)交互系統(tǒng)等方面的廣闊應(yīng)用,已經(jīng)成為當(dāng)前模式識(shí)別和人工智能的一個(gè)研究熱點(diǎn)。人臉識(shí)別的主要方法有基于模板匹配的方法、基于面部幾何特征的方法、基于子空間的分析方法、人工神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)等。在眾多的方法中,基于子空間主成分分析(principal component analysis,PCA)[1]是最經(jīng)典的人臉識(shí)別方法之一。PCA又稱(chēng)為K-L變換,其實(shí)質(zhì)是在盡可能好地代表原始數(shù)據(jù)的前提下,通過(guò)線性變換將高維空間中的樣本數(shù)據(jù)投影到低維空間中。PCA計(jì)算中最主要的工作量是計(jì)算樣本協(xié)方差矩陣的本征值和本征向量。其在人臉識(shí)別中計(jì)算的維度較大、計(jì)算的復(fù)雜度較高,通常會(huì)出現(xiàn)內(nèi)存耗盡、計(jì)算時(shí)間長(zhǎng)等問(wèn)題。本文針對(duì)傳統(tǒng)PCA計(jì)算過(guò)程慢、內(nèi)存高的問(wèn)題,使用了1種快速PCA的方法來(lái)進(jìn)行人臉識(shí)別,在提高運(yùn)算效率的同時(shí)加入了距離測(cè)度的考慮,提高了人臉識(shí)別率[2]。在著名的FERET人臉庫(kù)中,基于距離測(cè)度的快速PCA方法能有效地進(jìn)行人臉識(shí)別,且速度較快。
最小距離分類(lèi)又稱(chēng)為最近鄰分類(lèi)[3],是一種非常簡(jiǎn)單的分類(lèi)思想。這種基于距離的分類(lèi)技術(shù)通過(guò)以一種原型模式向量代表每一個(gè)類(lèi)別,識(shí)別時(shí)一個(gè)未知模式被賦予一個(gè)按照預(yù)先定義的相似性度量與其距離最近的類(lèi)別。本文采用COS余弦距離、L1一階范數(shù)、L2二階范數(shù)來(lái)進(jìn)行距離測(cè)度。對(duì)于2個(gè)向量x和y,其距離測(cè)度分別定義如下
(1)
dL1(x,y)=‖x-y‖
(2)
dL2(x,y)=‖x-y‖2
(3)
對(duì)于1個(gè)二維的m*n像素的人臉圖像通過(guò)行或列相連可以被轉(zhuǎn)換成1個(gè)N=m*n的向量。通常這樣的向量都是維數(shù)比較高的,識(shí)別起來(lái)比較困難。因此,在進(jìn)行識(shí)別之前識(shí)別算法通常都會(huì)通過(guò)一些手段來(lái)進(jìn)行降維。PCA正是將向量經(jīng)過(guò)K-L變換后由高維向量轉(zhuǎn)換為低維向量,并形成低維線性向量空間,即特征子空間,然后將人臉圖像投影到低維空間,用所得到的投影系數(shù)作為識(shí)別的特征向量。識(shí)別人臉時(shí),只需要將待識(shí)別樣本的投影系數(shù)與數(shù)據(jù)庫(kù)中目標(biāo)樣本集的投影系數(shù)進(jìn)行比較,以確定與哪一類(lèi)最近。
1)利用訓(xùn)練集圖像計(jì)算特征臉
①將測(cè)試集中的M幅圖像分別表示成列向量xi(i=1,2,…,M),組成訓(xùn)練集矩陣T∈RN×M;
2)將人臉庫(kù)中的圖像投影到特征子空間[5]
將人臉庫(kù)中的每張人臉向量減去均值之后投影到k個(gè)特征向量表示的特征子空間pcaEigVecsk,實(shí)現(xiàn)了人臉數(shù)據(jù)的降維表示。
3)使用距離測(cè)度進(jìn)行人臉識(shí)別
將要測(cè)試的人臉圖像投影到k個(gè)特征向量表示的特征子空間pcaEigVecsk,然后使用距離測(cè)度方法計(jì)算降維之后的人臉與數(shù)據(jù)庫(kù)中存儲(chǔ)的人臉圖像之間的距離,依據(jù)最近鄰原則進(jìn)行識(shí)別,距離最近判斷為最相似,同時(shí)可以設(shè)置最大人臉空間距離進(jìn)行輔助判斷。
在實(shí)驗(yàn)中發(fā)現(xiàn)傳統(tǒng)PCA在進(jìn)行人臉識(shí)別時(shí),PCA算法對(duì)光照非常敏感[6],而且當(dāng)樣本的維數(shù)較大時(shí),會(huì)出現(xiàn)內(nèi)存耗盡、計(jì)算時(shí)間長(zhǎng)、首次命中識(shí)別率不高等問(wèn)題。因此本文針對(duì)實(shí)驗(yàn)中發(fā)現(xiàn)的問(wèn)題提出了一種改進(jìn)的快速PCA人臉識(shí)別算法。
1)針對(duì)光照敏感問(wèn)題,對(duì)圖像的灰度進(jìn)行預(yù)處理,通過(guò)直方圖均衡化來(lái)實(shí)現(xiàn)圖像的灰度歸一化,減少圖像的亮度變化帶來(lái)的影響[7]。
2)針對(duì)PCA計(jì)算樣本協(xié)方差矩陣的本征值和本征向量?jī)?nèi)存高、時(shí)間長(zhǎng)的問(wèn)題,使用一種非常好的PCA計(jì)算技巧來(lái)計(jì)算[8]。具體過(guò)程如下。
設(shè)樣本矩陣X大小為n*d(n個(gè)d維樣本本征向量),則樣本協(xié)方差矩陣S將是一個(gè)d*d的方陣,協(xié)方差矩陣S=(YTY)d×d,因?yàn)閐的維度一般較大,所以計(jì)算復(fù)雜度較高?,F(xiàn)在考慮矩陣R=(YYT)n×n,一般情況下由于樣本數(shù)目n遠(yuǎn)遠(yuǎn)小于樣本維數(shù)d,R的尺寸也遠(yuǎn)遠(yuǎn)小于協(xié)方差矩陣S,可以證明其與S有著相同的非零本征值。證明過(guò)程如下。
(4)
公式(4)兩邊同乘Y,并應(yīng)用矩陣乘法的結(jié)合律得
(5)
3)針對(duì)首次命中識(shí)別率不高的問(wèn)題,本文提出根據(jù)本征向量重構(gòu)測(cè)試樣本特征向量與基于距離測(cè)度相似度排名靠前的人臉向量,再將重構(gòu)的測(cè)試人臉圖像與前80位重構(gòu)的人臉圖像進(jìn)行比較,得到相似度最高的人臉[9]。人臉圖像I的重構(gòu)公式如下
(6)
其中,Irec為重構(gòu)人臉圖像,vi為本征向量,k為本征向量維數(shù),ui為人臉圖像向特征臉空間投影所得到的投影系數(shù)。投影系數(shù)ui可以通過(guò)以下公式求出
(7)
FERET人臉庫(kù)是由FERET項(xiàng)目創(chuàng)建,包含14 051幅多姿態(tài)、多光照的灰度人臉圖像,是人臉識(shí)別領(lǐng)域應(yīng)用最廣泛的數(shù)據(jù)庫(kù)之一[10]。本文在MATLAB 2013a中編寫(xiě)程序進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)樣本取自FERET的1 208個(gè)人,其中每個(gè)人大約有11幅圖像,每幅圖像都是384*256像素。實(shí)驗(yàn)中使用2種標(biāo)準(zhǔn)方法來(lái)衡量實(shí)驗(yàn)結(jié)果[11]。
1)首次命中識(shí)別率,距離測(cè)度結(jié)果中排名第一即是正確的識(shí)別結(jié)果的概率。
2)累計(jì)匹配識(shí)別率(cumulative match score,CMS),本文累計(jì)前80位識(shí)別概率之和。
圖1和圖2是基于PCA的人臉識(shí)別CMS結(jié)果和改進(jìn)的快速PCA的CMS結(jié)果。從圖2中可以看到改進(jìn)的快速PCA的首次命中識(shí)別率更高,CMS累計(jì)識(shí)別準(zhǔn)確率提高。而且實(shí)驗(yàn)中快速PCA明顯提高了計(jì)算速度。
圖1 PCA CMS曲線 圖2 改進(jìn)的快速PCA CMS曲線
針對(duì)傳統(tǒng)PCA方法在人臉識(shí)別應(yīng)用中的一些問(wèn)題,提出了一種改進(jìn)的快速PCA算法進(jìn)行人臉識(shí)別。實(shí)驗(yàn)表明,與傳統(tǒng)PCA算法相比,本文提出的方法減少了計(jì)算時(shí)間,提高了識(shí)別率。但是,實(shí)驗(yàn)中針對(duì)人臉角度變換的識(shí)別效果依然不是很理想,這將是下一步研究的工作重點(diǎn)。