王偉
摘 要: 提出一種基于局部二值模式(LBP)和支持向量機(jī)(SVM)相結(jié)合的三維人臉表情識別算法。該算法使用BDPCA重構(gòu)降低圖像維數(shù)、保存主要特征、消除噪聲影響及縮短運(yùn)算時間;使用LBP來表征人臉表情特征,通過融合了紋理特征的統(tǒng)計直方圖展現(xiàn)人臉圖像;再使用支持向量機(jī)作為匹配準(zhǔn)則。該算法在Bosphorus人臉數(shù)據(jù)庫進(jìn)行測試,并與類似算法進(jìn)行對比,結(jié)果令人滿意,證明該算法適用于三維人臉表情識別。
關(guān)鍵詞: 人臉表情識別; 局部二值模式; 支持向量機(jī); 紋理特征
中圖分類號:TP391 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2017)07-60-05
3D facial expression recognition based on combination of texture features
and support vector machine
Wang Wei
(No.36 Research Institute of China Electronics Technology Group Corporation, Jiaxing, Zhejiang 314033, China)
Abstract: This paper presents a novel 3D facial expression recognition algorithm using Local Binary Patterns (LBP) and Support Vector Machine (SVM). First, to preserve the main information, reduce dimensions, remove noises and shorten the computing time, BDPCA reconstruction is utilized to depict the human face accurately. Then the LBP framework for face representation is introduced. The facial expression features are all extracted and encoded by LBP. So the faces are represented by taking advantage of the statistical histograms that fuse the texture features of each face. Finally the SVM is used as matching strategy to address the recognition task. The proposed algorithm is tested on Bosphorus database, and compared with similar algorithms, the result is satisfactory. It is proved that the algorithm is suitable for 3D facial expression recognition.
Key words: facial expression recognition; LBP; SVM; texture feature
0 引言
隨著計算機(jī)及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,生物特征識別技術(shù)應(yīng)運(yùn)而生。生物特征識別技術(shù)是為了進(jìn)行身份驗(yàn)證而采用自動技術(shù)測量生理特征或行為特征,并將這些特征與數(shù)據(jù)庫的模板數(shù)據(jù)進(jìn)行比較,從而完成認(rèn)證的一種解決方案。生理特征包括指紋、掌形、毛孔、靜脈、虹膜、視網(wǎng)膜、顱骨、DNA等,行為特征包括聲音、簽名、步態(tài)、擊打鍵盤的力度等,這些特征是每個人所特有的。
人臉識別技術(shù)隸屬于生物識別技術(shù),是利用計算機(jī)提取出臉部特征并對這些特征進(jìn)行分析,從而進(jìn)行身份驗(yàn)證的一門技術(shù),涉及到計算機(jī)視覺、數(shù)字圖像處理、模式識別、人工智能等多學(xué)科,是機(jī)器視覺和模式識別領(lǐng)域最富有挑戰(zhàn)性的課題之一,具有廣泛應(yīng)用的意義。目前人臉表情識別技術(shù)是國內(nèi)外研究熱點(diǎn),其在信號處理、模式識別、人機(jī)交互等方面有廣泛應(yīng)用。
主成分分析(PCA[1])最早被Turk和Pentland運(yùn)用于人臉識別。PCA是圖像壓縮中的一種最優(yōu)正交變換,是一種基于目標(biāo)統(tǒng)計的方法,在人臉識別中主要用于提取特征向量。雖然基于PCA的人臉識別取得了巨大成功,但因其本生存在缺陷,它的識別率一直都不高。針對缺陷人們又相繼提出了基于PCA的改進(jìn)算法,如2DPCA[2]和BDPCA[3]等。
局部二值模式(LBP[4])因其在圖像分析中的巨大優(yōu)越性,近年來被廣泛運(yùn)用于人臉表情識別[5]。LBP是一種灰度范圍內(nèi)的紋理描述方式,從局部紋理近鄰定義中衍生出來,最初是為了輔助性地度量局部圖像對比度而提出的[6]。盡管LBP為表情識別提供了一種簡單而有效方法,但是由于自身缺點(diǎn),在人臉識別的應(yīng)用中還存在許多亟待解決的問題。
針對LBP算法自身存在的問題,本文提出了一種基于紋理特征和支持向量機(jī)相結(jié)合的人臉表情算法。首先,對于經(jīng)過預(yù)處理的圖像,我們使用BDPCA重構(gòu)來保存主要特征及消除噪聲影響,并為后續(xù)算法降低運(yùn)算復(fù)雜度。接著,我們提取人臉表情紋理信息,用LBP算子編碼并將它們進(jìn)行融合來表征人臉。最后,我們用支持向量機(jī)作為匹配準(zhǔn)則進(jìn)行識別。本文算法的實(shí)現(xiàn)過程如圖1所示。
1 人臉圖像標(biāo)準(zhǔn)化
1.1 BDPCA重構(gòu)
由于BDPCA重構(gòu)是PCA重構(gòu)的改進(jìn)算法,其核心算法與PCA相同,所以本文在介紹BDPCA重構(gòu)之前,先介紹PCA重構(gòu)的原理和方法。
主成分分析(Principal Component Analysis,PCA)目的是通過線性變換尋找一組最優(yōu)的單位正交向量基(即主成分)[7],用它們的線性組合來重構(gòu)原樣本,并使重構(gòu)以后的樣本和原樣本的均方誤差最小。
我們將一幅大小為m×n的人臉圖像每列相連,構(gòu)成一個大小為維的列向量,并把D稱作人臉圖像的維數(shù)。設(shè)M是訓(xùn)練樣本的數(shù)目,Xj為第j幅人臉圖像形成的人臉向量,可通過下列計算,提取其特征向量和特征值:
⑴
⑵
⑶
將計算得到特征值從大到小排列:λ1?λ2?…λi?0,其對應(yīng)的特征向量為μi。為實(shí)現(xiàn)降低維數(shù),我們只選取前d個特征向量作為新的特征空間。由于這些特征向量所對應(yīng)的圖像和人臉非常接近,故稱之為“特征臉[8]”。這樣,我們將人臉圖像都在這個特征空間Wj上做投影,便得到其重構(gòu)圖像。
⑷
其中,Y為重構(gòu)的圖像;U=[μ1,μ2,…,μr]為特征矩陣;X為原始圖像。
BDPCA重構(gòu)的實(shí)現(xiàn)途徑與PCA重構(gòu)大致相同,其具體實(shí)現(xiàn)如下所述。
⑸
這里Wcol是m×dcol列投影矩陣,Wrow是n×drow行投影矩陣,訓(xùn)練集的均值圖像。
⑹
⑺
其中,Srow是n×n行散布矩陣,Scol是n×m列散布矩陣。
⑻
這里Xr就是人臉圖像X的重構(gòu)圖像。
BDPCA重構(gòu)后圖像如圖2所示,其中(a)為原始圖像,(b)、(c)、(d)是圖像(a)的重構(gòu)圖像,其重構(gòu)所用的dcol×drow分別為11×11、15×15和19×19。
1.2 基于形狀檢索的三維人臉描述
由于本文算法不能直接處理三維人臉圖像,只能將三維人臉圖像轉(zhuǎn)化成二維人臉圖像再進(jìn)行處理。所以我們引入形狀檢索來計算那些基于曲率的描述符。對于每一個三角形網(wǎng)格的頂點(diǎn)p來說,首先定義一個局部三維坐標(biāo)系,該坐標(biāo)系的原點(diǎn)在頂點(diǎn)上,z軸位于該頂點(diǎn)的法向量方向上。通過計算與頂點(diǎn)毗連的人臉法向量的平均值得到頂點(diǎn)法矢量。假設(shè)x和y是兩正交軸,并且是在垂直于法向量的切平面隨機(jī)選取的,于是在頂點(diǎn)p鄰域內(nèi)的頂點(diǎn)就轉(zhuǎn)化成一個局部坐標(biāo)系,用三次多項式來表示該頂點(diǎn):
⑼
把該函數(shù)規(guī)范化,得到如下公式:
⑽
為了求解上述近似方程⑼和⑽,我們利用最小方湊合的方法得到局部擬合函數(shù)z(x,y)。最大曲率kmax和最小曲率kmin(kmax>kmin)可以經(jīng)過Weingarten矩陣(形狀算子)計算得到。所以,形狀檢索定義為:
⑾
2 人臉表情特征提取及識別
2.1 LBP算法介紹
局部二值模式(Local Binary Pattern)是一種灰度范圍內(nèi)的紋理描述方式[9]?;镜腖BP算子定義在3×3的鄰域,把鄰域中心像素點(diǎn)作為閾值,用其相鄰的8個像素的灰度值跟它進(jìn)行比較,若周圍像素點(diǎn)的灰度值大于中心點(diǎn)的灰度值,則該像素位置被標(biāo)記1,否則為0。于是,3×3鄰域內(nèi)的8個點(diǎn)就產(chǎn)生一個8-bit 的無符號數(shù),再按其位置賦以不同權(quán)重,最后求和得一個整數(shù),即得到該窗口的LBP值,并且用這個數(shù)反映該區(qū)域的紋理特征。基本的LBP算子的計算方法如圖3所示。
Ojala等對LBP算子進(jìn)行了發(fā)展和改進(jìn),將3×3的鄰域擴(kuò)展到任意鄰域,并且用圓形鄰域代替了正方形鄰域。這樣,改進(jìn)后的LBP算子在半徑為R的圓形鄰域內(nèi)可有任意多個像素點(diǎn),其編碼計算公式表示為:
⑿
其中,,為階躍函數(shù);gc為中心像素點(diǎn)(xc,yc)的灰度值;N為領(lǐng)域像素點(diǎn)的個數(shù);gp為領(lǐng)域像素點(diǎn)的灰度值。此外,還可以用符號表示在半徑為R的圓形區(qū)域內(nèi)P個像素點(diǎn)的LBP算子。常見的LBP算子有、、、等。
2.2 LBP人臉特征提取
根據(jù)文獻(xiàn)[9],不同區(qū)域所包含的人臉表情信息不同,所以在進(jìn)行特征提取時,根據(jù)人臉的不同區(qū)域分別賦予不同的權(quán)值。這樣既減少了臉局部區(qū)域失真,又保證了識別率。于是人臉表情圖像就被分割成大小相同的小區(qū)域來分別提取LBP直方圖,每個區(qū)域所對應(yīng)的直方圖再乘以相應(yīng)的權(quán)值。最后,把所有的乘以不同權(quán)值的直方圖級聯(lián)起來,組成一個總的直方圖作為表情特征。匹配準(zhǔn)則可為表示為:
⒀
這里hi表示人臉圖像第i個區(qū)域的直方圖,wi是其對應(yīng)的權(quán)值。設(shè)置合適的權(quán)值對于最后的識別率起至關(guān)重要的作用。本文中,對于起重要作用的區(qū)域,我們設(shè)置的權(quán)值較大;而對于起作用較小甚至不起作用的區(qū)域,所設(shè)置的權(quán)值相對較小。人臉特征提取具體實(shí)現(xiàn)過程如圖4所示。
2.3 支持向量機(jī)
支持向量機(jī)(Support vector machine,SVM)是一種應(yīng)用廣泛的數(shù)據(jù)學(xué)習(xí)分類方法,在回歸估計與模式識別領(lǐng)域取得了巨大成功。SVM旨在尋找一個具有最大邊界值的高維空間,在該空間內(nèi)可用幾何和線性代數(shù)的方法將經(jīng)過非線性變換的原始數(shù)據(jù)進(jìn)行分類。支持向量機(jī)不但能使兩類不同數(shù)據(jù)之間的差異最大化,保證分類準(zhǔn)確率,而且能夠解決人臉表情樣本不足及不同表情之間量大差異問題。
人臉表情識別是一種非線性分類模式。表情數(shù)據(jù)經(jīng)由SVM引入到高維特征空間,在這個空間里,通過某一非線性映射函數(shù),運(yùn)用線性代數(shù)和幾何的方法將表情數(shù)據(jù)分類。我們將這一非線性映射函數(shù)稱之為核函數(shù),SVM通過利用核函數(shù)獲得分類學(xué)習(xí)能力。
SVM最初用于兩類數(shù)據(jù)的分類。但隨著區(qū)分?jǐn)?shù)據(jù)類別的增多,學(xué)者們又提出了“一對一”和“一對多”這兩個步驟相結(jié)合的多類SVM分類器。一對多分類時將所有圖像數(shù)據(jù)分成兩類,一部分?jǐn)?shù)據(jù)歸為一類,余下的數(shù)據(jù)歸為另一類,以此類推。一對一分類僅能將圖像劃分成互不相同的兩類。事實(shí)上,三維人臉表情識別也是一對多分類過程。
3 實(shí)驗(yàn)結(jié)果與分析
本文人臉數(shù)據(jù)庫采用Bosphorus[10]人臉數(shù)據(jù)庫。Bosphorus人臉數(shù)據(jù)庫是土耳其Bogazici大學(xué)創(chuàng)立出用于研究二維和三維人臉技術(shù)的數(shù)據(jù)庫。該數(shù)據(jù)庫主要用于表情識別、臉部動作單元檢測、不利條件下的人臉識別以及三維人臉重構(gòu)等領(lǐng)域的研究。Bosphorus人臉數(shù)據(jù)庫一共包含有4666張人臉圖片,一共由105個采集者提供。
人臉表情一般分為6種基本表情(生氣、厭惡、害怕、高興、悲傷和驚訝)和中性表情,總共7種??紤]到生氣和厭惡這兩種表情接近,兩者界定比較困難,本文實(shí)驗(yàn)把厭惡表情歸并到生氣表情中。
本實(shí)驗(yàn)中每人擁有6種表情,從人臉數(shù)據(jù)庫中的80個采集者中選取了1680張人臉圖片,男女各40人。50個個體作為訓(xùn)練集,其余的作為測試集。經(jīng)過預(yù)處理的人臉表情圖像如圖5所示,從左到右依次為生氣、害怕、高興、悲傷、驚訝和中性。
使用不同維數(shù)的BDPCA重構(gòu),得到結(jié)果也不相同,因此本文第一步是找出最恰當(dāng)?shù)奶卣骶仃嚨木S數(shù)。本文算法與文獻(xiàn)[9]所用的人臉數(shù)據(jù)庫相同,且文獻(xiàn)[9]已經(jīng)通過實(shí)驗(yàn)證明,在三維人臉表情識別中,BDPCA重構(gòu)的特征矩陣最合適的維數(shù)是255。作為文獻(xiàn)[9]的后續(xù)研究,本文采信其實(shí)驗(yàn)結(jié)果,該維數(shù)也是本文實(shí)驗(yàn)時BDPCA重構(gòu)的維數(shù)。
描述了運(yùn)用本文算法的情況下,6種不同基本表情和中性表情在Bosphorus人臉數(shù)據(jù)庫上的識別率也有所不同。從圖中可以直觀看出,在7種不同的表情中,高興的識別率最高,達(dá)到了98.45%。驚訝的是第二高識別率的表情,也達(dá)到了98.28%。這是因?yàn)樽彀秃兔济冗@些在人臉表情識別中起更重要作用的臉部特征,在高興和驚訝這兩種表情上表現(xiàn)得更明顯。但是某些表情的識別率相對低一些,其中悲傷的識別率最低,為92.39%。害怕的識別率次低,為94.37%。
表1比較了本文算法與其他相近算法在Bosphorus數(shù)據(jù)庫上的識別率??梢钥闯?,本文算法的識別率要高。與LBP+SVM算法相比,本文算法總識別率及大多數(shù)人臉表情的識別率要高,說明經(jīng)過BDPCA重構(gòu)后,本算法不僅降低了維數(shù),而且突出了主要信息,去除了次要信息,因而提高了人臉表情識別準(zhǔn)確率。
與BDPCA+LBP+開方距離的算法相比,本文算法在總識別率和個別表情識別率均表現(xiàn)更好。這說明對于同為匹配準(zhǔn)則的SVM和開方距離,由于SVM比開方距離要復(fù)雜得多,因而分類的結(jié)果更準(zhǔn)確,使所有表情的識別率均有所提高。
與SI算法相比較,本文算法的識別率均有較大幅度提高。由于本文算法充分利用了局部紋理特征,匹配準(zhǔn)則也更加優(yōu)越,而SI人臉表情算法只考慮了全局紋理信息,識別過程中只把人臉表情圖像當(dāng)作一個整體去識別,所以其識別率比本文算法低。
為了探究本文算法的識別速度,我們將不同算法識別631幅人臉表情圖像花費(fèi)的總時間,分別進(jìn)行統(tǒng)計,具體結(jié)果如表2。從表2可以看出,本文算法的識別時間比LBP+SVM識別算法要短。這是因?yàn)楸疚乃惴ń?jīng)過BDPCA重構(gòu),降低了人臉圖像的維數(shù),提高了運(yùn)算效率,因而縮短了運(yùn)算時間。但識別時間比BDPCA+LBP+開方距離的算法及SI人臉?biāo)惴ㄋㄙM(fèi)時間要長,這是由于SVM算法比開方距離復(fù)雜得多,因而在識別過程中花費(fèi)了更多時間。
4 結(jié)束語
針對LBP算子本身存在的不完善性,我們提出了一種基于LBP和SVM的人臉表情識別算法。首先,我們使用BDPCA重構(gòu)的方法來減小圖像維數(shù)、保留主要特征、降低噪聲影響以及提高運(yùn)算效率。接著,用LBP來表征人臉表情特征,降低表情變化影響的同時,又將人臉圖像通過融合紋理特征的統(tǒng)計直方圖展現(xiàn)出來。最后,使用支持向量機(jī)作為人臉表情識別的匹配準(zhǔn)則。本文算法在Bosphorus人臉數(shù)據(jù)庫取得了較高的識別率,與相近算法在識別準(zhǔn)確率和識別時間上相比,更具優(yōu)勢,說明本文該算法適合三維人臉表情識別。
參考文獻(xiàn)(References):
[1] M. A. Turk and A. P. Pentland.Face recognition using
eigenfaces[C]. in Proc. Cvpr'91 IEEE Computer Society Conf. Digital Object Identifier,1991:586-591
[2] J. Yang, D. Zhang, A. F. Frangi, and J. Yang.
Two-dimendional pca: a new approach to appearance-
based face representation and recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2004.26(1):131-137
[3] Y. Sun, S. Chen and B. Yin.Color face recognition based
on quaternion matrix representation[J]. Pattern Recognition Letters,2011.32:597-605
[4] C. Shan, S. Gong, and P. W. McOwan. Facial expression
recognition based on local binary patterns: A comprehensive study[J]. Image and Vision Computing,2009.27(6):803-816
[5] T. Ojala, M. Pietik?inen, and T. M?enp??.Multiresolution
gray-scale and rotation invariant texture classification with local binary patterns[J]. IEEE Transaction on Pattern Analysis and Machine Intelligence,2002.24(7):971-987
[6] J. Yang, D. Zhang, A. F. Frangi, and J. Yang.
Two-dimendional pca: a new approach to appearance-
based face representation and recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2004.26(1):131-137
[7] T. Jabeed, M. H. Kabir, and O. Chae.Robust facial
expression recognition based on local directional pattern[J]. ETRI Journal,2010.32(5):784-794
[8] L. Broadbent, K. Emrith, A. R. Farooq, M. L. Smith, and
L. N. Smith. 2.5D Facial Expression Recognition using Photometric Stereo and The Area Weighted Histogram of Shape Index[C]. in Proc. IEEE Int. Workshop Robot Human Interact. Commun, Institute of Electrical and Electronics Engineers Inc,2012.9:490-495
[9] W. Wang, W. H. Zheng and Y. M. Ma. 3D Facial
Expression Recognition Based on Combination of Local Features and Globe Information[C]. in IHMSC,2014.2:20-25
[10] Savran, N. Alyüz, H. Dibeklioglu, O. ?eliktutan, B.
G?kberk, B. Sankur, and L. Akarun.Bosphorus Database for 3D Face Analysis. The First COST 2101 Workshop on Biometrics and Identity Management (BIOID 2008)[J]. Roskilde University, Denmark,2008.5:7-9