姚世明,李維浩,李蔚清,蘇智勇
面向虛擬化身的人臉表情模擬技術
姚世明1,李維浩1,李蔚清2,蘇智勇1
(1. 南京理工大學自動化學院,江蘇 南京 210094;2.南京理工大學計算機科學與工程學院,江蘇 南京 210094)
為了實現基于增強現實的電子沙盤環(huán)境中的異地可視化交互功能,提出了一種面向虛擬化身的三維表情模擬技術。首先,使用RGB攝像頭跟蹤異地作業(yè)人員的表情,基于約束局部模型(CLM)提取人臉特征點數據后傳輸到本地;然后,采用基于徑向基函數的插值算法計算虛擬化身面部網格點的坐標,驅動模型模擬出與異地作業(yè)人員相同的表情;最后,為了提高變形算法的精度和效率,提出一種基于貪心算法與人臉肌群分布的插值控制點選取和分區(qū)域插值方法。實驗結果表明,該算法能夠滿足實際應用對實時性和真實感的需求。
表情模擬;徑向基函數;形變模型;肌肉模型
電子沙盤是一種虛擬化的信息顯示手段,可以模擬三維、動態(tài)、可交互戰(zhàn)場態(tài)勢環(huán)境?;谠鰪姮F實(augmented reality, AR)的電子沙盤在態(tài)勢展現的直觀性、交互操作的便捷性以及協(xié)同研討的高效性方面都優(yōu)于傳統(tǒng)的電子沙盤。在AR電子沙盤的異地協(xié)同研討作業(yè)中引入虛擬化身技術,以虛擬人物的形式將身處異地的指揮員“投射”到同一環(huán)境,“面對面”進行溝通交流,大大提升了指揮人員交流的充分性和高效性。人與人交流中,人臉表情是最主要和最直觀的表現形式,具有逼真表情的虛擬化身,使觀看者更有沉浸感。
三維人臉表情模擬技術主要包括表情動畫的跟蹤和模型驅動2部分。從上世紀70年代PARKE[1]建立第一個臉部模型到現在,三維人臉表情動畫跟蹤技術已經較為成熟,但實現高實時性和高真實性的人臉動畫重構技術仍是目前研究的難題。對于異地交互來說,表情模擬的實時性和真實感是重要指標,本文重點研究如何提高表情重構方法的效率和精度,從而滿足應用所要求的實時性和真實感。
在人臉特征點跟蹤領域,國內外研究人員提出了很多有效方法。WILLIAMS[2]提出在用戶面部貼有反光特性的標記點來跟蹤人臉特征點運動信息。此方法精度高,但用戶體驗差。何欽政和王運巧[3]采用Kinect實現三維人臉表情參數的捕捉。但其像素較低,要求拍攝距離較近。此外,目前研究較多是基于RGB視頻的特征點檢測方法。CRISTINACCE和COOTES[4]提出了基于CLM形狀模型的特征點檢測法。BULAT和TZIMITOPOULOS[5]采用基于卷積神經網絡的深度學習方法實現了基于RGB視頻的三維人臉特征點實時跟蹤,由于訓練數據的限制,檢測精度不高??紤]到本文應用對表情模擬的實時性和真實感要求較高,且表情采集者處在小范圍移動中。以上方法中,采用高像素RGB攝像頭跟蹤特征點的方案較為合理。
在基于數據驅動的表情重構技術領域,常見方法包括基于肌肉模型、基于表情基合成和基于形變算法等來實現表情動畫?;诩∪饽P偷姆椒m真實感強,但實時性差。而基于表情基合成的方法存在個性化特征不明顯的缺點。PIGHIN等[6]提出一種基于視頻的人臉表情模擬技術,采集到特征點運動數據后,采用三維曲面插值算法驅動模型產生表情動畫。目前常用的人臉模型變形的算法有拉普拉斯變形算法和徑向基插值變形算法。拉普拉斯變形算法的效率高,局部細微表情的變形效果差[7]。徑向基插值變形算法的平滑性好,但應用于復雜拓撲結構的人臉曲面時會出現局部失真現象,并且計算量較大[8]。SUWAJANAKORN等[9]提出了基于語音數據的表情重構方法。GUO等[10]使用基于卷積神經網絡的深度學習方法實現了利用單張圖片對人臉實時重構。但是該方法需要大量工作去建立帶三維特征點數據的數據庫,且對硬件性能要求較高。綜上分析,實現高實時性和高逼真度的人臉動畫重構仍然是一項具有挑戰(zhàn)性的工作。
經過對以上方法的對比分析,結合應用背景,本文提出基于單目RGB視頻驅動的人臉表情模擬技術。首先基于約束局部模型CLM 跟蹤人臉特征點的運動信息;然后采用基于徑向基函數(radial-basis function,RBF)的變形算法驅動人臉網格模型來輸出表情動畫;并基于人臉肌肉模型和貪心算法對RBF插值變形算法的效率和精度進行了優(yōu)化,提出了基于人臉肌群分布的分區(qū)域插值算法和插值控制點選取算法,實現了AR電子沙盤環(huán)境中面向虛擬化身的表情模擬功能。
本系統(tǒng)用于AR電子沙盤異地可視化交互中虛擬化身的表情模擬,主要實現跟蹤和重構人臉的表情動畫。系統(tǒng)總流程如圖1所示:第1部分為數據預處理。讀取并記錄人臉網格模型頂點的索引和坐標,選取插值控制點并與模型對應網格點綁定,計算并保存各控制點與其他網格頂點的歐氏距離;第2部分為特征點的運動跟蹤?;贑LM形狀模型在RGB攝像頭采集的視頻圖像中搜索定位出特征點坐標;第3部分為插值出所有人臉網格模型頂點坐標。用檢測到的插值控制點坐標訓練插值函數,插值出網格模型中除控制點以外的面部頂點坐標;第4部分為模型的驅動。插值的結果傳遞給模型驅動腳本,驅動模型產生形變來輸出表情動畫。
圖1 系統(tǒng)總體流程
本文采用基于CLM形狀模型的特征點檢測方法,主要工作包括模型的訓練和特征點定位,具體流程如圖2所示。特征點檢測工作一定程度上建立在SARAGIH等[11]工作的基礎上,采用了其訓練好的CLM形狀模型。特征點定位包括人臉區(qū)域定位和特征點搜索定位2部分。采用經典的VIOLA和JONES[12]人臉檢測器檢測出圖像中的人臉區(qū)域,以此縮小后續(xù)的特征點搜索范圍;然后基于CLM形狀模型對人臉區(qū)域中的特征點進行擬合定位;最后采用mean-shift算法[13]跟蹤人臉特征點的運動數據。
圖2 人臉特征點運動的跟蹤過程
如何利用檢測到的少數特征點運動信息驅動具有大量網格點的人臉模型是本文主要解決的問題。本文選用RBF插值算法驅動模型形變產生表情動畫,插值控制點從檢測到的人臉特征點中選取,訓練出人臉曲面插值函數,然后根據前一幀的模型頂點坐標插值出當前幀的頂點坐標數據,生成平滑的人臉表情動畫。
RBF[14]是一種3層的前向神經網絡,包括輸入層、隱含層和輸出層。RBF的基本思想:以核函數構成隱含層空間,并對輸入數據進行變換,將低維非線性數據變換到高維空間,使其在高維空間線性可分。RBF具有結構簡單、學習收斂速度快、能夠逼近任意非線性函數、有效克服局部極小值問題等優(yōu)點。RBF插值函數的數學表示為