徐 歡
(北京工業(yè)大學(xué),北京 100124)
人臉面部表情的研究從提出[1]到現(xiàn)在有了突飛猛進的發(fā)展。分析這些研究結(jié)果,不難看出,在人臉表情識別的過程中識別效果較好的大部分是二維的圖像數(shù)據(jù)[2-3],而基于三維數(shù)據(jù)的則更多的是用于人臉的面部識別過程[4-6]。然而隨著近些年三維數(shù)據(jù)處理技術(shù)的提高[7],研究人員發(fā)現(xiàn)一些人臉面部的三維模型中也同樣包含了許多有價值的信息[8-9]。在科學(xué)研究中,把這些帶有豐富信息的三維數(shù)據(jù)加入識別人臉表情的過程中對表情更加高效的識別是一條行之有效的途徑,例如采用多視角模型[10]或三維模型[11-14]。
一些研究人員已經(jīng)嘗試進行了基于中性人臉圖像信息與已知身份的人臉表情的識別,然而在實踐過程中,仍然存在著一些問題亟需改進。綜合算法復(fù)雜度與人臉表情識別率等多方面因素的考慮,本文采用一種利用雙重特征即身份特征和表情特征的雙線性模型進行研究,對Iordanis Mpiperis等人[15]提出的基于雙線性模型的表情識別方法進一步改進。首先,需要完成的是異構(gòu)的三維人臉數(shù)據(jù)點云對齊,本文選用基于模型手動選取特征點與TPS(thin-plate spline models,薄板樣條)變形算法[16]相結(jié)合來實現(xiàn)人臉三維數(shù)據(jù)的非剛性數(shù)據(jù)配準(zhǔn)過程。在建立好對應(yīng)點云數(shù)據(jù)之后,試圖建立基于三維數(shù)據(jù)的“身份-表情”的雙線性模型,以獲得身份特征和表情特征。在識別過程中,對原有的識別算法加以改進,最大程度地降低身份特征對于表情識別過程的影響,期望通過對身份特征和表情特征在最終識別過程中的分步計算處理,最終達(dá)到提高人臉表情識別率的目的。
TPS可以被看作從一個三維實空間到另一個三維實空間的映射,即TPS可以被定義為f:R3→R3。TPS的變形過程需要2組三維輸入數(shù)據(jù),1組為待變形的點云數(shù)據(jù),另一組為目標(biāo)點云數(shù)據(jù)。為了方便描述,2組點云數(shù)據(jù)分別被定義為:
其中N1與N2分別代表點云數(shù)據(jù)F1與點云數(shù)據(jù)F2內(nèi)三維點的個數(shù),并且N1≤N2。F1與F2的對應(yīng)控制點集分別定義為:
其中,M是控制點的個數(shù),這些控制點可以被認(rèn)為是TPS變形中源點云與目標(biāo)點云的對應(yīng)控制點,并滿足映射條件:
同時,根據(jù)TPS的變形理論,TPS變形的過程中還應(yīng)滿足混合平滑約束,即滿足下述的能量函數(shù):
同時,TPS可以被分解為仿射變換部分與非仿射變換部分,即用如下公式表示:
其中:P為源點云F1中的點且其齊次坐標(biāo)為P(x,y,z,1);d為4×4仿射矩陣;K為TPS核函數(shù)且K可以表示為1 × M 階向量 K=(K1(P),...,KM(P)),其中Kj(P)=‖P -L1j‖,j=1,...,M;w 為非仿射變換矩陣且表示為M×4階矩陣。
求解TPS變形過程,即為求解矩陣d與w的過程。通常有2種方法:插值法與非插值法。如果TPS中不需要進行插值,則可以通過最小化公式來確定最優(yōu)解:
其中λ為平滑約束參數(shù),給出一個適合的λ值可以更好地優(yōu)化公式(8)表示的能量函數(shù)。
在可插值的情況中,公式(5)的條件被滿足。將公式(7)代入到公式(5)中并對w進行非仿射變換約束:w=0,進一步,可以通過公式直接求解d與w:
其中:M1'與M2'分別為控制點M1、M2的齊次坐標(biāo),且表示為M×4的矩陣;K為M×M階矩陣,表示源點云中控制點的空間關(guān)系。K中的每一個元素kij以下述方式構(gòu)成:
在本文中,待變形點云即為數(shù)據(jù)庫中每張表情人臉點云,目標(biāo)點云選取第1個人的中性表情人臉點云數(shù)據(jù),特征點為手工標(biāo)定的83個面部特征點信息。在定義以上的數(shù)據(jù)信息之后,即可通過TPS變形完成三維點云的數(shù)據(jù)對齊處理工作。
在獲得配準(zhǔn)數(shù)據(jù)的基礎(chǔ)之上,考慮利用比較典型的模式對人臉表情進行分類,然而傳統(tǒng)模式的分類方法存在著一些對識別結(jié)果不利的因素,例如:在測試一張浮腫人臉時,無法確定造成臉部這種浮腫的狀態(tài)是由于測試個體的原因,如他是一個肥胖者,或者是由于測試個體做了一個微笑的表情。因此為了解決身份因素對于表情識別過程中的影響,可以考慮分離身份特征和表情特征,這樣在分離后的識別過程中,身份特征對于表情識別的干擾將變得微乎其微。綜合以上所說的因素,通過雙線性模型來對身份特征和表情特征進行分離。
在雙線性模型的建立過程中,用vxp代表數(shù)據(jù)庫中的一個樣本三維人臉,其中x代表表情,p代表身份,由于每張人臉在經(jīng)過上一步對齊處理之后已經(jīng)有了相同的點云數(shù)量,所以這里用N代表每張人臉的點云數(shù),用K代表每張人臉的維度,則K=3N,至此,三維人臉中的每一個元素都可以用雙線性模型加以表示:
設(shè)定在數(shù)據(jù)庫中T表示人臉的總數(shù),Tp代表數(shù)據(jù)庫中的人數(shù),在第p個人中又包含了x種表情,用Tx代表所有表情的種類,則上述公式(12)又可用下述公式(13)表示:
為了確定雙線性模型在表示人臉表情方面的可行性,建立下面的誤差函數(shù):
其中hxp(t)為0-1函數(shù),當(dāng)v(t)中擁有p身份x表情的人臉是同一張人臉時,hxp(t)=1;其余的時候該函數(shù)均當(dāng)作零處理。
對誤差函數(shù)求偏導(dǎo)數(shù),并令偏導(dǎo)函數(shù)等于0,分別得到關(guān)于變量ax,bp,Wk的等式方程:
其中:nxp代表參加訓(xùn)練的樣本總數(shù)代表訓(xùn)練集中所有樣本對應(yīng)點之和。
通過對公式(15)~(17)的多次迭代,最終可以得到控制向量ax、控制向量bp以及關(guān)系矩陣Wk。不過在計算迭代過程中需要特別注意的是,迭代過程是否收斂還要取決于控制向量ax的維度I和控制向量bp的維度J,當(dāng)I小于或者等于表情的種類且J小于或者等于身份的種類時,迭代過程才收斂,因此在實驗過程中,須選取合適的I和J的值來保證迭代的收斂性。
這里提出的新的方法是基于對稱型雙線性模型建立成功的基礎(chǔ)之上,在通過雙線性模型得到3種參數(shù)后,不再直接利用識別人臉v進行計算,而是利用雙線性模型的特殊性質(zhì),即當(dāng)一個特征為定值時,雙線性模型即轉(zhuǎn)化成線性模型,可以利用模型的這個特點得到身份特征和表情特征都不知道的識別人臉的2組參數(shù)特征,具體的過程為:
1)對識別人臉的身份特征進行賦值操作,數(shù)值等于雙線性模型建模中得到的身份特征的均值:
2)在三維人臉表情數(shù)據(jù)v、關(guān)系矩陣Wk以及身份特征bp這3組變量都知道的情況下,原雙線性模型轉(zhuǎn)化為線性模型,更新表情特征:
3)在三維人臉表情數(shù)據(jù)v、關(guān)系矩陣Wk以及公式(19)中所更新的ax這3組變量都知道的情況下,更新身份特征:
重復(fù)步驟2)和步驟3),直到收斂為止。
至此,得到了三維人臉的表情參數(shù)和身份參數(shù),利用表情參數(shù)和身份參數(shù)這2組參數(shù)進行參數(shù)識別,具體算法流程將在下一節(jié)中進行闡述。
現(xiàn)有大部分的識別算法在人臉識別計算過程中仍然會涉及能夠體現(xiàn)身份屬性的身份特征的計算,即前文所提到的bp身份特征,由于身份特征參數(shù)的加入,這在一定程度上會影響到單獨表情的識別過程,因為不同的人所具有的面部輪廓的不同直接導(dǎo)致了在做不同表情時,每個人的人臉表情輪廓的不相同,而人類作為一個統(tǒng)一的整體,人臉在做不同表情的時候又有著內(nèi)在的聯(lián)系,因此考慮在原有識別算法的基礎(chǔ)之上進行修改,不再將身份特征與表情特征同時進行計算,而是采用先處理身份特征,再計算表情特征的方法,目的就是為了能夠更加徹底地分離出2種獨立特征,使人臉表情識別過程中身份特征對于表情特征的影響盡量降低到最低的范圍之內(nèi),以達(dá)到更加理想的識別效果。
具體的修改算法如下:
1)不改變雙線性模型的建立過程,首先對整體訓(xùn)練集中多人的人臉表情數(shù)據(jù)建立整體的雙線性模型,在模型建立完成后,獲得身份特征、關(guān)系矩陣和表情特征。
2)利用基于單幅圖像改進的雙線性模型對訓(xùn)練集中每張具體的表情人臉進行建模操作,得到每張人臉的1對特征,由于樣本中每個人都擁有多種表情,因此對于同一個人也就存在多組身份特征,需要對這多組身份特征進行均值化處理,處理后的均值身份特征即可以很好地表達(dá)此人的身份屬性:
其中bij代表第j個人帶有第i種表情的人臉的身份特征。
3)對識別人臉進行基于單幅圖像的雙線性模型建模操作,得到識別人臉的身份特征和表情特征。這里考慮到人臉輪廓的差異性,例如:歐美人的臉部整體輪廓相對于亞洲人要更加棱角分明,而具有相似臉部結(jié)構(gòu)的個體在做同一種表情時更加接近,因此在識別過程中需要剔除一些與識別人臉身份特征差距較大的樣本,選取身份特征更加接近的樣本集進行識別。篩選過程中用識別人臉的身份特征與訓(xùn)練集中的多組身份特征分別做二范數(shù),得到多組數(shù)值,如公式(22)所示:其中b表示識別人臉的身份特征,bj表示b與第j個人的身份特征的二范數(shù)。
對公式(22)的結(jié)果按照降序排列,截取前N組值,定義為與識別人臉身份特征最接近的N個人,N的取值取決于訓(xùn)練集中樣本的分布及數(shù)量,可通過多組實驗獲得。
4)然后將N個人對應(yīng)的表情特征進行處理,每種來自于不同人的相同表情特征取均值,作為最終的人臉表情識別模板:
其中ain表示截取后的數(shù)據(jù)中的第n個人帶有第i種表情的表情特征。
5)最后利用識別人臉的表情特征分別與做均值化后的表情識別模板進行計算,如公式(24):
其中函數(shù)f(i)表示第i種表情的函數(shù)值,a為識別人臉的表情特征,ai為均值化處理后的表情特征模板。
在整個實驗進行的過程中,考察了多個研究機構(gòu)的三維人臉及表情的數(shù)據(jù)庫,包括 BU-3DFE[17]、FRGC[18]、GavabDB[19]。最終選擇了 BU-3DFE 人臉數(shù)據(jù)庫來對實驗的結(jié)果進行評估測試,該數(shù)據(jù)庫中共包含100個不同人的表情信息,每組個體樣本在該數(shù)據(jù)庫中共包含7種不同的表情,分別為生氣、失望、害怕、高興、傷心、驚訝以及中性表情。除中性表情僅為1張外,每組樣本人臉的其余6種表情中的每一種表情又可以被細(xì)分為4種不同程度,分析這4個等級的表情,level-1和level-2程度相對較低,在表達(dá)表情時面部肌肉的伸展幅度相對較小,在表情識別的過程中,各個表情的區(qū)分不是特別的明顯,而level-3和level-4則可以更好地表達(dá)。如圖1所示。
圖1 基于level-4的不同表情
本文的實驗是表情識別,為了能夠得到較好的區(qū)分表情,得到理想的實驗效果,所以采用level-4的表情數(shù)據(jù)作為實驗數(shù)據(jù)。
為了驗證身份特征的提取對于識別效果的影響,擬進行多組獨立實驗,實驗選取數(shù)據(jù)庫中100個人中每個人強度為level-4的7種表情進行訓(xùn)練,表情特征的維度和身份特征的維度通過實驗1獲得,N的確定通過實驗2獲得,測試集選取100個人中強度為level-3的7種表情進行識別。
1)實驗1。
在實驗1中,采取單變量的原則分別進行2組實驗確定身份特征和表情特征的維度,實驗1.1中,設(shè)置身份特征的維度為90保持不變,改變表情特征的維度為4,5,6,7進行實驗,實驗結(jié)果如圖2所示。
圖2 基于不同表情特征維度的識別情況
在實驗1.2中,設(shè)置表情特征的維度為實驗1.1中使識別率最高時的7不變,改變身份特征的維度分別為60,70,80,90進行實驗,實驗結(jié)果如圖3所示。
圖3 基于不同身份特征維度的識別情況
通過2組實驗,并綜合考慮算法時間復(fù)雜度以及識別率2方面的因素,確定表情特征的維度為7,身份特征的維度為80。
2)實驗2。
通過實驗1,確定了身份特征和表情特征的維度,接下來的實驗2中,試圖確定N的取值情況。
分別改變N的值,得到如圖4所示的實驗結(jié)果。
圖4 基于不同N值的識別情況
本文提出了一種基與改進后的雙線性模型的人臉表情識別技術(shù),基于BU-3DFE的三維表情數(shù)據(jù),利用TPS算法對點云數(shù)據(jù)進行對齊處理。在獲得配準(zhǔn)數(shù)據(jù)的基礎(chǔ)上,建立對稱型的雙線性模型,并在獲得關(guān)系矩陣后,對原有識別算法加以改進,分離出身份特征與表情特征,利用身份特征對訓(xùn)練集數(shù)據(jù)做篩選操作,再利用表情特征進行最后的識別處理。
實驗結(jié)果表明改進后的算法對表情識別起到了一定的貢獻,當(dāng)有效地設(shè)置最近鄰人數(shù)N時,表情的識別率會有一定程度的增加,但當(dāng)N值設(shè)置不合理時,對表情的識別情況會起到一定的反作用,同時在新算法中也有一些不足之處,需要日后更深入的研究:1)加入身份特征篩選過程,使得原有算法更加復(fù)雜,計算時間更長,實時性得不到保證;2)在實驗中對于N值的確定需要大量的對比實驗,每當(dāng)訓(xùn)練集數(shù)據(jù)改變時都需要重新計算N值,這極大地增加了算法的計算量。
[1] Ekman P,F(xiàn)riesen W V.Facial Action Coding System:A Technique for the Measurement of Facial Movement[M].Consulting Psychologists Press,1978.
[2] Pantic M,Rothkrantz L J M.Automatic analysis of facial expressions:The state of the art[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(12):1424-1445.
[3] Fasel B,Luettin J.Automatic facial expression analysis:A survey[J].Pattern Recognition,2003,36(1):259-275.
[4] Lu Xiaoguang,Jain A.Deformation analysis for 3D face matching[C]//Proceedings of the 7th IEEE Workshops on Application of Computer Vision.2005,1:99-104.
[5] Samir C,Srivastava A,Daoudi M.Three-dimensional face recognition using shapes of facial curves[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2006,28(11):1858-1863.
[6] Chua Chin-Seng,Han Feng,Ho Yeong-Khing.3D human face recognition using point signature[C]//Proceedings of the 4th IEEE International Conference on Automatic Face and Gesture Recognition.2000:233-238.
[7] 徐成華,王蘊紅,譚鐵牛.三維人臉建模與應(yīng)用[J].中國圖象圖形學(xué)報,2004,9(8):893-903.
[8] Bowyer K,Chang Kyong,F(xiàn)lynn P.A survey of approaches and challenges in 3D and multi-modal 3D+2D face recognition[J].Computer Vision and Image Understanding,2006,101(1):1-15.
[9] Chang Kyong,Bowyer K,F(xiàn)lynn P.An evaluation of multimodal 2D+3D face biometrics[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2005,27(4):619-624.
[10] Pantic M,Rothkrantz L J M.Facial action recognition for facial expression analysis from static face images[J].IEEE Transactions on Systems,Man,and Cybernetics,Part B:Cybernetics,2004,34(3):1449-1461.
[11] Braathen B,Bartlett M,Littlewort G,et al.An approach to automatic recognition of spontaneous facial actions[C]//Proceedings of the 5th IEEE International Conference on Automatic Face and Gesture Recognition.2002:360-365.
[12] Wen Zhen,Huang Thomas S.Capturing subtle facial motions in 3D face tracking[C]//Proceedings of the 9th IEEE International Conference on Computer Vision.2003,2:1343-1350.
[13] Zalewski L,Gong Shaogang.Synthesis and recognition of facial expressions in virtual 3D views[C]//Proceedings of the 6th IEEE International Conference on Automatic Face and Gesture Recognition.2004:493-498.
[14] Mayer C,Wimmer M,Eggers M,et al.Facial expression recognition with 3D deformable models[C]//Proceedings of the 2nd IEEE International Conferences on Advances in Computer-Human Interactions.2009:26-31.
[15] Mpiperis I,Malassiotis S,Strintzis M G.Bilinear models for 3-D face and facial expression recognition[J].IEEE Transactions on Information Forensics and Security,2008,3(3):498-511.
[16] Hu Yongli,Zhu Xianghui,Sun Yanfeng,et al.Multi-sample 3D face registration based on TPS transformation and linear combination model[C]//Proceedings of the 4th IEEE International Congress on Image and Signal Processing.2011,3:1343-1348.
[17] Yin Lijun,Wei Xiaozhou,Sun Yi,et al.A 3D facial expression database for facial behavior research[C]//Proceedings of the 7th IEEE International Conference on Automatic Face and Gesture Recognition.2006:211-216.
[18] Phillips P J,F(xiàn)lynn P J,Scruggs T,et al.Overview of the face recognition grand challenge[C]//Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.2005,1:947-954.
[19] Moreno A B,Sanchez A.GavabDB:A 3D face database[C]//Proceedings of the 2nd COST Workshop on Biometrics on the Internet.2004:77-82.