羅江林 王青青 朱妹麗
摘 要:為了實時得到真實感強的動畫角色表情,對均一權值進行改進,并將其應用于拉普拉斯算法表情遷移中,更加精確地保留了目標模型的局部信息,克服了傳統的拉普拉斯算法在表情控制中穩定性差、實時性不強的不足,并進行了實驗驗證。仿真實驗結果表明:改進的算法能夠真實的、高效的實現表情的遷移,并且實時性到達了30fps。
關鍵詞:拉普拉斯算法 表情遷移 表情控制 網格約束
中圖分類號:TP39 文獻標識碼:A 文章編號:1672-3791(2018)03(c)-0021-03
在計算機技術、數字動畫技術和計算機圖形學發展的推動下,人臉表情動畫已經向著數字化、網絡化、智能化方向發展。人臉表情動畫是通過一定的方法控制人臉模型發生形變,使得動畫角色能夠模擬真實人臉的各種表情動作,從而高效實現動畫生產中角色面部動作的真實采集和制作。從目前的技術發展來看,人臉表情遷移技術已經被廣泛的應用于影視特效、虛擬教學、增強現實聊天等方面。
傳統的表情控制技術是在演員面部設計拓撲結構,設置標記點,使用多臺攝像機對標記點進行二維數據采集,通過系統解算,實現表情的控制。這種技術造成了系統成本昂貴;每次進行數據采集時都要對演員的面部拓撲結構重新進行標記和對位,操作比較繁瑣;捕捉和采集的數據要耗費大量的時間進行反向運動和深度信息解算后,才能對角色模型進行表情控制,并且不能做到實時控制。
20世紀70年代,Parke[1]將面部幾何參數和表情參數結合起來實現動畫角色的面部表情變化,僅僅能夠模擬簡單的人臉表情變化,但是真實感和實時性還是比較差。之后國內外的學者在表情控制方面進行了大量的研究,2001年,浙江大學的梅麗等人[2]通過特定人臉的肌肉向量的變化來驅動人臉三維多邊形網絡模型的變形,從而得到各種表情,由于此方法沒有考慮皺眉等細節信息,因此,在進行表情遷移時真實感不強。2006年,Zhang Q等人[3]首先建立樣本圖像數據庫,然后通過表情映射算法生成新的表情序列,這種方法合成的人臉表情逼真、自然,但是在訓練階段需要大量的數據,并且數據僅僅是針對特定人,移植性差。
為了解決表情樣本庫的約束和得到逼真的動畫表情,研究人員提出了更多的解決方法。Deng Z等人[4]分析了捕獲到的演員的面部數據和人臉樣本之間的關系,利用徑向基回歸算法將演員的面熟數據映射到目標角色上,從而實現表情的合成,這種方法有效地降低了樣本之間的影響。為了解決表情的真實感,Zhao 等人[5]利用Lucas-Kanade光流跟蹤算法對特征點進行跟蹤,得到表情變化過程中特地點的運動軌跡,這樣會得到表情變化值,然后利用對偶拉普拉斯變換將此表情變化值遷移到角色模型中,從而實現表情的遷移,這種算法雖然真實感強,但是在捕獲視頻流時容易受到光照得外界環境的干擾。
為了解決樣本量大、真實感差等問題,本文利用改進的拉普拉斯遷移算法來實現表情的控制,此方法能夠補償姿態、光照等條件的變化,并且對表情變化的細節也能很好的表達,從而增強了表情遷移的真實感.
1 基于拉普拉斯算子的表情遷移算法
拉普拉斯網格變形技術是在微分坐標基礎發展起來的一種表面變形技術。此技術的特點是能夠最大程度地保留網絡的局部信息,具有平移不變的特性。拉普拉斯算子可以定義為:
對于給定的動畫角色人臉模型MF,可以看成是網格模型中所有邊E和所有頂點(n是頂點的個數)的集合,其中。將頂點vp與其鄰接點的坐標的加權和的均值差定義為頂點vp的拉普拉斯坐標α(vp)[6]:
通過對拉普拉斯坐標進行處理,得到角色表情的最終變形。通常情況下,利用拉普拉斯遷移算法會涉及到3個部分的技術,即為模型的坐標轉換位拉普拉斯坐標、網格變形控制以及網格重構,但是本文對拉普拉斯坐標進行隱式轉換,在進行變形的同時實現了網格的重構和變形。
根據參考文獻[7]可知,拉普拉斯算子L是奇異的,即為解具有非唯一性。為了得到唯一的全局最優解,需要對滿秩的線性系統進行求解。
同理可得在y和z軸上的線性表示。利用最小二乘法處理式(4)中的約束點,將約束點加載在線性系統中,這種處理方式并沒有對原有的線性系統進行刪行處理,這樣勢必會造成未知數的個數小于方程的個數,造成線性系統無解,但是這是一個滿秩的線性系統,因為通過最小二乘法得到其唯一解為:
由此得到了網格變形后表情的遷移數據,完成了基于拉普拉斯的算子的變形。
2 表情遷移算法的改進
傳統的拉普拉斯變形技術是通過拉普拉斯坐標僅是對網格曲面法向量的近似,而本文通過頂點與相鄰接頂點對拉普拉斯坐標的貢獻因子w進一步精確的逼近網格曲面,更好地保留了網格的局部信息。對于w的取值,學者們也給出了不同的計算方法,如Meyer等人[7]在式(1)的基礎上利用余切權值得到表情變化的計算方法,其表示如下。
通過式(7)和圖1可知,的變化是隨著網格的幾何形狀發生改變的,而是與網格的拓撲結構相關的。但是這種計算方法存在的問題是余切值會出現負值,并且當φpq或者接近180(±π)時,余切值是接近無窮大的,這樣會造成系統的不穩定性。因此,本文在余切權值的理論基礎上利用均值法來計算每個頂點的權重因子,如式(11)所示。
通過上述描述與分析,本文改進的拉普拉斯表情遷移算法主要包括如下幾個步驟。
(1)對于給定的動畫目標角色人臉模型MF,獲取每個頂點的拉普拉斯坐標。
(2)在含有約束點的情況下,利用最小二乘法求解拉普拉斯算子的唯一解。
(3)通過頂點的權重因子,求出變形后頂點的位置,從而將表演者的表情遷移到動畫角色上。
3 仿真結果分析
本文在實際的應用中,針對目前影視作品生產工藝中表情制作依賴Key frame和Interpolated morphing等手工技術作業方式帶來的低效率、動作不自然和質量粗糙等問題,本文采用一臺Kinect深度攝像頭進行數據采集,對采集到的面部三維數據和標準表情數據進行模式匹配,最后通過改進的拉普拉斯算法實現表情的遷移。
算法仿真環境處理器Intel(R) Core(TM) i5-3550CPU @3.30GHz 3.30GHz,內存4GB,為了說明算法的有效性,
本文首先通過設備采集到帶深度值的圖形數據,然后對圖像進行第一次識別,找到面部的區域。在正式識別之前,進行數據的訓練,將標準的表情數據和采集到的圖形數據進行一次映射,此步驟根據標準表情的數量進行迭代。訓練完畢之后,通過動態的圖像數據和角色表情映射數據進行比較,得到表情的權重值,利用改進的拉普拉斯算法對角色表情進行控制。其實驗結果見圖1、圖2。
通過圖2仿真結果可以看出,本文算法不需要在表演者面部粘貼任何特征點,避免了被動式數據采集方法特征點少、準備復雜等問題,遷移效果逼真,表情生成效率高,實時性達到了30fps。
4 結語
本文為了解決動畫中角色表情的真實感,利用改進的拉普拉斯算法進行表情控制。在實現的過程中首先對網格中的頂點求出拉普拉斯頂點,然后通過頂點的影響權重和額外添加的約束條件來盡可能地保留網格的局部信息,以此來提高計算的穩定性和實時性。
參考文獻
[1] Parke FI. Computer generated animation of faces[A].ACM Conference. ACM[C].1972:451-457.
[2] 梅麗,鮑虎軍,彭群生.特定人臉的快速定制和肌肉驅動的表情動畫[J].計算機輔助設計與圖形學學報, 2001,13(12):1077-1082.
[3] Zhang Q,Liu Z,Guo B,et al. Geometry-Driven Photorealistic Facial Expression Synthesis[J].IEEE Trans Vis Comput Graph,2006,12(1):48-60.
[4] Deng Z,Chiang PY,Fox P,et al. Animating blendshape faces by cross-mapping motion capture data[A] Symposium on Interactive 3d Graphics[C]. 2006:43-48.
[5] Zhao H,Tai CL. Subtle Facial Animation Transfer from 2D Videos to 3D Faces with Laplacian Deformation[Z]. 2007.
[6] Sorkine O. Laplacian mesh processing. In Eurographics State-of-the-Art Report[R].2005.
[7] Meyer M,Desbrun M,Schroder P,et al. Discrete Dierential-Geome try Operators for Triangulated 2-Manifolds[J]. Visualization & Mathematics III,2002, 6(8-9):35-57.