陳 智, 董洪偉, 曹 攀
(江南大學 物聯網工程學院,江蘇 無錫 214122)
三維人臉的研究是模式識別和圖形學領域中活躍且具潛力的研究方向之一,在影視、游戲動畫、人臉識別、虛擬現實、人機交互等方面都有廣泛的應用[1~3]。目前,許多對三維人臉方面的研究,包括三維人臉重建、識別與跟蹤、姿態估計及特征點標記、三維網格語義標記等。Fanelli G等人[4~6]提出了將從深度數據估算人臉姿態表達為一個回歸問題(regression problem),利用隨機森林算法解決該問題。完成一個簡單深度特征映射到三維人臉特征點坐標、人臉旋轉角度等實值參數的學習。與文獻[6]相比,Papazov C[7]提出了一個更為復雜的三角形表面patch特征,該特征從深度圖重建成的三維點云中計算獲得,主要包括2個部分:線下測試和線上測試,將三角形表面塊patch(triangle surface patch,TSP)描述符利用快速最近鄰算法(fast library for approximate nearest neighbor,FLANN)從訓練數據中尋找最相似的表面patches。
本文提出了一種新的幾何特征描述符(正方形切平面描述符)表示人臉模型上頂點的特征,利用最小二乘支持向量機(least squares support vector machine,LSSVM)算法對三維人臉模型頂點進行訓練,實現對人臉模型上頂點的分類(屬于鼻子還是眼睛區域等),實現了三維人臉模型區域標記。新描述符并非從深度圖提取的簡單矩形區域特征,而是直接從三維人臉模型計算獲得,在人臉的姿勢、尺寸、分辨率的改變上具有一定魯棒性。具訓練過程在三維人臉模型上執行,相對于真實的深度圖數據更容易獲取數據(如文獻[6]所用的訓練數據)。
從一個三維人臉模型M的所有頂點上隨機選取一個種子點P,根據三維人臉模型的幾何結構,計算該種子點的法向量,此時根據一點和法向量即可以確定一個切平面。確定正方形的邊長L和正方形的方向。正方形的方向(正方形局部坐標系)根據全局坐標系下建立的正方形通過法向量轉換而成,建立正方形局部坐標系便于計算三維人臉上的點到正方形的投影距離,減少程序運行時間,即可確定一個正方形切平面塊S。根據正方形切平面塊S,可以計算出一個簡單且具有魯棒性的幾何描述符V。將正方形邊長分成K等份,正方形細分為K2個小正方形,如圖1(a)所示。模型M上的所有點向正方形切平面塊上投影,如果投影點在正方形內的話,那么此點一定在K2個中的某個小正方形內,稱該點屬于該小正方形或者稱小正方形包含該點。每個小正方形的描述符是每個小正方形所包含所有的點的投影距離的平均值。考慮到人臉模型的幾何特征,有些人臉部分存在于正方形上方,有些部分則存在于正方形下方,因此,每個點的投影距離有正負之分。整個正方形切平面塊的描述符V是所有小正方形的描述符的簡單串聯。

圖1 正方形切平面
訓練階段的正方形切平面描述符均取自于高分辨率的人臉網格模型,訓練模型由巴塞爾臉模型(Basel face model,BFM)[10]生成。BFM是一個公開、可獲得的基于主成分分析(principal component analysis,PCA)的三維形變模型,由200個人臉對象的高分辨率三維掃描創建而成。通過從一個正態分布取樣PCA系數,BFM用于生成任意數量的隨機網格人臉。此外,在所有生成的人臉網格模型上,對應頂點的索引均相同。例如,在所有訓練模型上,在鼻尖的頂點有相同的索引數字,因此,對于訓練模型,只需要在任意一個BFM人臉模型上進行一次人臉區域的手動標記,即可知道每個訓練模型要分割的區域上各點的索引。如每個模型鼻子區域的所有頂點的索引均相同。
對訓練模型進行手動分割標記(只需分割標記一次),將一個三維人臉模型分割為10個區域:左眉毛、右眉毛、左眼睛、右眼睛、左臉頰、右臉頰、鼻子、上嘴唇、下嘴唇、下巴,剩余部分屬于其他區域。如圖2,對三維人臉模型進行區域分割,不同的分割區域用不同的顏色標記,每個區域包含很多三維人臉模型頂點。由于三維人臉模型額頭部分包含的頂點相對較少,特征信息也相對較少,所以將額頭區域劃分至其他區域。人臉模型的每個區域所包含的所有頂點屬于同一類,根據上述BFM數據庫特點可知,數據庫中任何一個人臉模型每個區域所包含的所有頂點的索引均一致。

圖2 三維人臉區域分割標記
LSSVM用不等式約束替代了SVM的等式約束,以誤差平方和損失函數作為訓練集的經驗損失,將問題轉換為線性矩陣求解問題。若初始空間具有式(1)的模型
y(x)=ωTψ(t)+b
而如果暫態直流偏置磁鏈和剩磁疊加后使得A相工作磁鏈正向偏移,則涌流峰值出現的時刻將在合閘后A 相電壓的下一個下降沿過零點,該點與初始合閘點的時間差在5~10 ms;若疊加后使得A相工作磁鏈負向偏移,則涌流峰值出現的時刻將在合閘后A 相電壓的下一個上升沿過零點,該點與初始合閘點的時間差在10~15 ms。
(1)

s.t.yi[ωTψ(xi)+b]=1-ei,i=1,2,…,n
(2)
式中γ為正則化參數;ei為誤差變量。ω的維數趨于無窮時,可建立解決上述問題的拉格朗日對偶問題。該問題的解為
(3)
式中K(x,xi)為核函數;ai為第i個拉格朗日算子。

訓練實驗選取徑向基函數(radial basis function,RBF)作為核函數,其定義為
(4)
式中σ2為核函數參數,實驗選取默認值。
通過BFM生成55個三維人臉模型,其中,50個人臉模型作為訓練數據,余下5個人臉模型作為測試數據,測試數據依然取10 000個樣本點,并且已知每個樣本點屬于何區域,通過測試數據計算三維人臉模型網格點分類的準確率。為了測試所提方法的有效性,從網上下載獲取了其他三維人臉模型,對模型上所有的網格點通過訓練好的LSSVM模型進行分類。因為其他人臉模型與BFM生成的人臉模型的尺寸、坐標單位等不一致,所以,對這些測試模型進行了后期處理,對正方形的邊長按照模型尺寸的比例進行選取。
本文三維人臉標記與分割所用的訓練和測試的三維人臉模型由BFM生成,50個模型作為訓練數據,5個模型作為測試數據。每個模型包含53 490個頂點和106 466個三角形網格,每個訓練模型選取10 000個頂點樣本。用C++和OpenGL,OpenCV等庫對三維人臉模型數據進行采樣,得到每個樣本的正方形切平面描述符。用Python版本的LSSVM工具箱對數據集進行訓練和測試,并在MATLAB平臺下對實驗結果進行可視化。
利用已訓練好的模型對測試數據集上三維人臉模型的所有頂點進行分類,并計算頂點分類的準確率。準確率(accuracy rate)計算公式為

(5)
根據文獻[10]提出的類似描述符參數選取以及參數優化策略,經過多次實驗,發現正方形邊長L和正方形劃分的小正方形數目K22個參數的選取對頂點分類的準確率具有一定影響,實驗中,選取L∈{60,80,100},K2∈{9,16,25,36}進行對比,具體對比結果如表1和表2所示。

表1 L對分類準確率的影響(K2=16)

表2 K2對分類準確率的影響(L=80mm)
可以看出:L=80 mm,K2=25時頂點分類準確率最高。對該情況下的三維人臉模型區域進行標記,可視化結果如圖3所示,左列為原始三維模型數據,右列為標記后的結果。前2個模型標記圖為由BFM生成的三維人臉模型區域標記的結果,模型有53 490個頂點。為了驗證本文方法的一般性和對分辨率具有不變性,后2個模型標記圖為非BFM生成的其他三維人臉模型的標記結果,左列模型約有5 000個頂點。圖中均為對三維人臉模型的所有頂點進行標記的結果。

圖3 三維人臉模型區域標記結果
圖3中4個模型頂點數目、三角形面數目和頭部姿勢均不同,驗證了所提方法對于姿勢、模型尺寸和模型分辨率具有較好的魯棒性。
對不同的眉毛、眼睛、臉頰區域也能進行很好的區分,將左右眉毛、左右眼睛和左右臉頰用同一顏色、不同符號進行顯示。與在深度圖上選取特征方法相比,本文提出的描述符和直接對三維模型處理的方法具有一定的優勢。由于手動分割人臉區域時,很難避免分割粗糙,區域交界處部分頂點未包含,因此,在區域交界處頂點的分類誤差相對略大,特別是嘴唇之間的部分。另外,三維人臉模型中額頭和下巴的頂點和特征相對較少,因此,相較于其他區域,該2個區域的頂點分類誤差亦略大。
提出了一種基于正方形切平面描述符的三維人臉區域標記方法。將幾何特征描述符作為選取樣本的特征,通過LSSVM算法,對三維人臉模型進行區域分類和標記。有效地識別出三維人臉模型的眉毛、眼睛、鼻子、嘴巴和臉頰等區域,對三維人臉特征點的定位及其他三維人臉方面研究均有重要意義。所提方法對三維人臉模型頭部姿態、模型尺寸、模型分辨率具有較好的魯棒性。與基于深度圖的方法相比,本文方法具有更好的泛化能力,是一種行之有效的特征提取方法。
參考文獻:
[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] 張翠平,蘇光大.人臉識別技術綜述[J].中國圖象圖形學報,2000,5(11):885-894.
[3] 王躍明,潘 綱,吳朝暉.三維人臉識別研究綜述[J].計算機輔助設計與圖形學學報,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.