陳 智, 董洪偉, 曹 攀
(江南大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 無錫 214122)
三維人臉的研究是模式識(shí)別和圖形學(xué)領(lǐng)域中活躍且具潛力的研究方向之一,在影視、游戲動(dòng)畫、人臉識(shí)別、虛擬現(xiàn)實(shí)、人機(jī)交互等方面都有廣泛的應(yīng)用[1~3]。目前,許多對(duì)三維人臉方面的研究,包括三維人臉重建、識(shí)別與跟蹤、姿態(tài)估計(jì)及特征點(diǎn)標(biāo)記、三維網(wǎng)格語義標(biāo)記等。Fanelli G等人[4~6]提出了將從深度數(shù)據(jù)估算人臉姿態(tài)表達(dá)為一個(gè)回歸問題(regression problem),利用隨機(jī)森林算法解決該問題。完成一個(gè)簡(jiǎn)單深度特征映射到三維人臉特征點(diǎn)坐標(biāo)、人臉旋轉(zhuǎn)角度等實(shí)值參數(shù)的學(xué)習(xí)。與文獻(xiàn)[6]相比,Papazov C[7]提出了一個(gè)更為復(fù)雜的三角形表面patch特征,該特征從深度圖重建成的三維點(diǎn)云中計(jì)算獲得,主要包括2個(gè)部分:線下測(cè)試和線上測(cè)試,將三角形表面塊patch(triangle surface patch,TSP)描述符利用快速最近鄰算法(fast library for approximate nearest neighbor,FLANN)從訓(xùn)練數(shù)據(jù)中尋找最相似的表面patches。
本文提出了一種新的幾何特征描述符(正方形切平面描述符)表示人臉模型上頂點(diǎn)的特征,利用最小二乘支持向量機(jī)(least squares support vector machine,LSSVM)算法對(duì)三維人臉模型頂點(diǎn)進(jìn)行訓(xùn)練,實(shí)現(xiàn)對(duì)人臉模型上頂點(diǎn)的分類(屬于鼻子還是眼睛區(qū)域等),實(shí)現(xiàn)了三維人臉模型區(qū)域標(biāo)記。新描述符并非從深度圖提取的簡(jiǎn)單矩形區(qū)域特征,而是直接從三維人臉模型計(jì)算獲得,在人臉的姿勢(shì)、尺寸、分辨率的改變上具有一定魯棒性。具訓(xùn)練過程在三維人臉模型上執(zhí)行,相對(duì)于真實(shí)的深度圖數(shù)據(jù)更容易獲取數(shù)據(jù)(如文獻(xiàn)[6]所用的訓(xùn)練數(shù)據(jù))。
從一個(gè)三維人臉模型M的所有頂點(diǎn)上隨機(jī)選取一個(gè)種子點(diǎn)P,根據(jù)三維人臉模型的幾何結(jié)構(gòu),計(jì)算該種子點(diǎn)的法向量,此時(shí)根據(jù)一點(diǎn)和法向量即可以確定一個(gè)切平面。確定正方形的邊長L和正方形的方向。正方形的方向(正方形局部坐標(biāo)系)根據(jù)全局坐標(biāo)系下建立的正方形通過法向量轉(zhuǎn)換而成,建立正方形局部坐標(biāo)系便于計(jì)算三維人臉上的點(diǎn)到正方形的投影距離,減少程序運(yùn)行時(shí)間,即可確定一個(gè)正方形切平面塊S。根據(jù)正方形切平面塊S,可以計(jì)算出一個(gè)簡(jiǎn)單且具有魯棒性的幾何描述符V。將正方形邊長分成K等份,正方形細(xì)分為K2個(gè)小正方形,如圖1(a)所示。模型M上的所有點(diǎn)向正方形切平面塊上投影,如果投影點(diǎn)在正方形內(nèi)的話,那么此點(diǎn)一定在K2個(gè)中的某個(gè)小正方形內(nèi),稱該點(diǎn)屬于該小正方形或者稱小正方形包含該點(diǎn)。每個(gè)小正方形的描述符是每個(gè)小正方形所包含所有的點(diǎn)的投影距離的平均值??紤]到人臉模型的幾何特征,有些人臉部分存在于正方形上方,有些部分則存在于正方形下方,因此,每個(gè)點(diǎn)的投影距離有正負(fù)之分。整個(gè)正方形切平面塊的描述符V是所有小正方形的描述符的簡(jiǎn)單串聯(lián)。
圖1 正方形切平面
訓(xùn)練階段的正方形切平面描述符均取自于高分辨率的人臉網(wǎng)格模型,訓(xùn)練模型由巴塞爾臉模型(Basel face model,BFM)[10]生成。BFM是一個(gè)公開、可獲得的基于主成分分析(principal component analysis,PCA)的三維形變模型,由200個(gè)人臉對(duì)象的高分辨率三維掃描創(chuàng)建而成。通過從一個(gè)正態(tài)分布取樣PCA系數(shù),BFM用于生成任意數(shù)量的隨機(jī)網(wǎng)格人臉。此外,在所有生成的人臉網(wǎng)格模型上,對(duì)應(yīng)頂點(diǎn)的索引均相同。例如,在所有訓(xùn)練模型上,在鼻尖的頂點(diǎn)有相同的索引數(shù)字,因此,對(duì)于訓(xùn)練模型,只需要在任意一個(gè)BFM人臉模型上進(jìn)行一次人臉區(qū)域的手動(dòng)標(biāo)記,即可知道每個(gè)訓(xùn)練模型要分割的區(qū)域上各點(diǎn)的索引。如每個(gè)模型鼻子區(qū)域的所有頂點(diǎn)的索引均相同。
對(duì)訓(xùn)練模型進(jìn)行手動(dòng)分割標(biāo)記(只需分割標(biāo)記一次),將一個(gè)三維人臉模型分割為10個(gè)區(qū)域:左眉毛、右眉毛、左眼睛、右眼睛、左臉頰、右臉頰、鼻子、上嘴唇、下嘴唇、下巴,剩余部分屬于其他區(qū)域。如圖2,對(duì)三維人臉模型進(jìn)行區(qū)域分割,不同的分割區(qū)域用不同的顏色標(biāo)記,每個(gè)區(qū)域包含很多三維人臉模型頂點(diǎn)。由于三維人臉模型額頭部分包含的頂點(diǎn)相對(duì)較少,特征信息也相對(duì)較少,所以將額頭區(qū)域劃分至其他區(qū)域。人臉模型的每個(gè)區(qū)域所包含的所有頂點(diǎn)屬于同一類,根據(jù)上述BFM數(shù)據(jù)庫特點(diǎn)可知,數(shù)據(jù)庫中任何一個(gè)人臉模型每個(gè)區(qū)域所包含的所有頂點(diǎn)的索引均一致。
圖2 三維人臉區(qū)域分割標(biāo)記
LSSVM用不等式約束替代了SVM的等式約束,以誤差平方和損失函數(shù)作為訓(xùn)練集的經(jīng)驗(yàn)損失,將問題轉(zhuǎn)換為線性矩陣求解問題。若初始空間具有式(1)的模型
y(x)=ωTψ(t)+b
而如果暫態(tài)直流偏置磁鏈和剩磁疊加后使得A相工作磁鏈正向偏移,則涌流峰值出現(xiàn)的時(shí)刻將在合閘后A 相電壓的下一個(gè)下降沿過零點(diǎn),該點(diǎn)與初始合閘點(diǎn)的時(shí)間差在5~10 ms;若疊加后使得A相工作磁鏈負(fù)向偏移,則涌流峰值出現(xiàn)的時(shí)刻將在合閘后A 相電壓的下一個(gè)上升沿過零點(diǎn),該點(diǎn)與初始合閘點(diǎn)的時(shí)間差在10~15 ms。
(1)
s.t.yi[ωTψ(xi)+b]=1-ei,i=1,2,…,n
(2)
式中γ為正則化參數(shù);ei為誤差變量。ω的維數(shù)趨于無窮時(shí),可建立解決上述問題的拉格朗日對(duì)偶問題。該問題的解為
(3)
式中K(x,xi)為核函數(shù);ai為第i個(gè)拉格朗日算子。
訓(xùn)練實(shí)驗(yàn)選取徑向基函數(shù)(radial basis function,RBF)作為核函數(shù),其定義為
(4)
式中σ2為核函數(shù)參數(shù),實(shí)驗(yàn)選取默認(rèn)值。
通過BFM生成55個(gè)三維人臉模型,其中,50個(gè)人臉模型作為訓(xùn)練數(shù)據(jù),余下5個(gè)人臉模型作為測(cè)試數(shù)據(jù),測(cè)試數(shù)據(jù)依然取10 000個(gè)樣本點(diǎn),并且已知每個(gè)樣本點(diǎn)屬于何區(qū)域,通過測(cè)試數(shù)據(jù)計(jì)算三維人臉模型網(wǎng)格點(diǎn)分類的準(zhǔn)確率。為了測(cè)試所提方法的有效性,從網(wǎng)上下載獲取了其他三維人臉模型,對(duì)模型上所有的網(wǎng)格點(diǎn)通過訓(xùn)練好的LSSVM模型進(jìn)行分類。因?yàn)槠渌四樐P团cBFM生成的人臉模型的尺寸、坐標(biāo)單位等不一致,所以,對(duì)這些測(cè)試模型進(jìn)行了后期處理,對(duì)正方形的邊長按照模型尺寸的比例進(jìn)行選取。
本文三維人臉標(biāo)記與分割所用的訓(xùn)練和測(cè)試的三維人臉模型由BFM生成,50個(gè)模型作為訓(xùn)練數(shù)據(jù),5個(gè)模型作為測(cè)試數(shù)據(jù)。每個(gè)模型包含53 490個(gè)頂點(diǎn)和106 466個(gè)三角形網(wǎng)格,每個(gè)訓(xùn)練模型選取10 000個(gè)頂點(diǎn)樣本。用C++和OpenGL,OpenCV等庫對(duì)三維人臉模型數(shù)據(jù)進(jìn)行采樣,得到每個(gè)樣本的正方形切平面描述符。用Python版本的LSSVM工具箱對(duì)數(shù)據(jù)集進(jìn)行訓(xùn)練和測(cè)試,并在MATLAB平臺(tái)下對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行可視化。
利用已訓(xùn)練好的模型對(duì)測(cè)試數(shù)據(jù)集上三維人臉模型的所有頂點(diǎn)進(jìn)行分類,并計(jì)算頂點(diǎn)分類的準(zhǔn)確率。準(zhǔn)確率(accuracy rate)計(jì)算公式為
(5)
根據(jù)文獻(xiàn)[10]提出的類似描述符參數(shù)選取以及參數(shù)優(yōu)化策略,經(jīng)過多次實(shí)驗(yàn),發(fā)現(xiàn)正方形邊長L和正方形劃分的小正方形數(shù)目K22個(gè)參數(shù)的選取對(duì)頂點(diǎn)分類的準(zhǔn)確率具有一定影響,實(shí)驗(yàn)中,選取L∈{60,80,100},K2∈{9,16,25,36}進(jìn)行對(duì)比,具體對(duì)比結(jié)果如表1和表2所示。
表1 L對(duì)分類準(zhǔn)確率的影響(K2=16)
表2 K2對(duì)分類準(zhǔn)確率的影響(L=80mm)
可以看出:L=80 mm,K2=25時(shí)頂點(diǎn)分類準(zhǔn)確率最高。對(duì)該情況下的三維人臉模型區(qū)域進(jìn)行標(biāo)記,可視化結(jié)果如圖3所示,左列為原始三維模型數(shù)據(jù),右列為標(biāo)記后的結(jié)果。前2個(gè)模型標(biāo)記圖為由BFM生成的三維人臉模型區(qū)域標(biāo)記的結(jié)果,模型有53 490個(gè)頂點(diǎn)。為了驗(yàn)證本文方法的一般性和對(duì)分辨率具有不變性,后2個(gè)模型標(biāo)記圖為非BFM生成的其他三維人臉模型的標(biāo)記結(jié)果,左列模型約有5 000個(gè)頂點(diǎn)。圖中均為對(duì)三維人臉模型的所有頂點(diǎn)進(jìn)行標(biāo)記的結(jié)果。
圖3 三維人臉模型區(qū)域標(biāo)記結(jié)果
圖3中4個(gè)模型頂點(diǎn)數(shù)目、三角形面數(shù)目和頭部姿勢(shì)均不同,驗(yàn)證了所提方法對(duì)于姿勢(shì)、模型尺寸和模型分辨率具有較好的魯棒性。
對(duì)不同的眉毛、眼睛、臉頰區(qū)域也能進(jìn)行很好的區(qū)分,將左右眉毛、左右眼睛和左右臉頰用同一顏色、不同符號(hào)進(jìn)行顯示。與在深度圖上選取特征方法相比,本文提出的描述符和直接對(duì)三維模型處理的方法具有一定的優(yōu)勢(shì)。由于手動(dòng)分割人臉區(qū)域時(shí),很難避免分割粗糙,區(qū)域交界處部分頂點(diǎn)未包含,因此,在區(qū)域交界處頂點(diǎn)的分類誤差相對(duì)略大,特別是嘴唇之間的部分。另外,三維人臉模型中額頭和下巴的頂點(diǎn)和特征相對(duì)較少,因此,相較于其他區(qū)域,該2個(gè)區(qū)域的頂點(diǎn)分類誤差亦略大。
提出了一種基于正方形切平面描述符的三維人臉區(qū)域標(biāo)記方法。將幾何特征描述符作為選取樣本的特征,通過LSSVM算法,對(duì)三維人臉模型進(jìn)行區(qū)域分類和標(biāo)記。有效地識(shí)別出三維人臉模型的眉毛、眼睛、鼻子、嘴巴和臉頰等區(qū)域,對(duì)三維人臉特征點(diǎn)的定位及其他三維人臉方面研究均有重要意義。所提方法對(duì)三維人臉模型頭部姿態(tài)、模型尺寸、模型分辨率具有較好的魯棒性。與基于深度圖的方法相比,本文方法具有更好的泛化能力,是一種行之有效的特征提取方法。
參考文獻(xiàn):
[1] Cao C,Weng Y,Lin S,et al.3D shape regression for real-time facial animation[J].ACM Transactions on Graphics,2013,32(4):96.
[2] 張翠平,蘇光大.人臉識(shí)別技術(shù)綜述[J].中國圖象圖形學(xué)報(bào),2000,5(11):885-894.
[3] 王躍明,潘 綱,吳朝暉.三維人臉識(shí)別研究綜述[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2008,20(7):819-829.
[4] Fanelli G,Gall J,Gool L V.Realtime head pose estimation with random regression forests[C]∥IEEE Intemational Conference on Automatic Face and Gesture Recognition,2011:617-624.
[5] Fanelli G,Weise T,Gall J,et al.Realtime head pose estimation from consumer depth cameras[C]∥2011 Proceedings of Pattern Recognition,DAGM Symposium,Frankfurtam Main,Germany,2011:101-110.
[6] Fanelli G,Dantone M,Gall J,et al.Random forests for real time 3D face analysis[J].International Journal of Computer Vision,2013,101(3):437-458.
[7] Papazov C,Marks T K,Jones M.Real-time 3D head pose and facial landmark estimation from depth images using triangular surface patch features[C]∥IEEE Conference on Computer Vision and Pattern Recognition,2015:4722-4730.
[8] Shapira L,Shalom S,Shamir A,et al.Contextual part analogies in 3D objects[J].International Journal of Computer Vision,2010,89(2):309-326.
[9] Kalogerakis E,Hertzmann A,Singh K.Learning 3D mesh segmentation and labeling[J].ACM Transactions on Graphics,2010,29(4):157-166.
[10] Paysan P,Knothe R,Amberg B,et al.A 3D face model for pose and illumination invariant face recognition[C]∥IEEE International Conference on Advanced Video & Signal Based Surveillance,IEEE Computer Society,2009:296-301.
[11] Lingras P,Butz C J.Rough support vector regression[J].Euro-pean Journal of Operational Research,2010,206(2):445-455.
[12] Javed F,Arshad N,Wallin F,et al.Forecasting for demand response in smart grids:An analysis on use of anthropologic and structural data and short term multiple loads forecasting[J].Applied Energy,2012,96:150-160.
[13] Yuan X H,Chen C,Yuan Y B,et al.Short-term wind power prediction based on LSSVM-GSA model[J].Energy Conversion and Management,2015,101:393-401.