苗語,石樂民,劉橋,盛譯丹,梁銘
(1.長春理工大學 計算機科學技術學院,長春 130022;2.長春理工大學 機電工程學院,長春 130022)
?
表情數(shù)據驅動三維人臉模型方法
苗語1,石樂民1,劉橋1,盛譯丹1,梁銘2
(1.長春理工大學計算機科學技術學院,長春130022;2.長春理工大學機電工程學院,長春130022)
摘要:提出了一種利用面部表情數(shù)據驅動三維人臉模型中骨骼特征點運動的方法。首先,利用面部表情捕捉設備對面部特征點進行采集,并使用XML格式對面部表情捕捉數(shù)據進行描述;然后將采集到的面部特征點與人臉模型中骨骼特征點進行映射配對;最后,使用面向對象圖形渲染引擎演示面部表情,從而實現(xiàn)使用面部表情數(shù)據驅動三維人臉模型。方法驗證實驗的過程和結果表明了提出方法的有效性。
關鍵詞:面部表情捕捉;骨骼特征點驅動;特征點匹配
數(shù)據驅動模型是將運動數(shù)據加載到對象模型上,使后者依照加載的運動數(shù)據呈現(xiàn)相應動作。以往實施上述過程時,較多方案選擇采用了封裝的商業(yè)化軟件生成制作運動數(shù)據,如:MotionBuilder 2013、3DMax、Maya等,在這種方式下,運動數(shù)據的生成較多依賴于人工手動的編輯編排,在模型呈現(xiàn)效果的逼真性上存在較大的限定,很難讓模型達到逼真的效果[1]。近年來,隨著運動捕獲技術的快速發(fā)展,以往對于高質量、大數(shù)量的數(shù)據獲取需求得到了充分的滿足,在運動捕獲技術的支撐下,表演者的運動得以被細致、準確的捕獲。在此基礎上,通過后期處理,將原始數(shù)據轉換為標準格式的模型運動數(shù)據,可實現(xiàn)對于多種模型的驅動。因此,面部捕獲數(shù)據的提取與合成開始逐漸成為當前虛擬現(xiàn)實方面研究的熱點。
在面部表情捕捉技術研究方面,自Frederic I Parke在1972年發(fā)表《Computer Generated Animation of Faces》[2]以來,學術界對真實情感建模及表情重建開展了大量的研究,并將取得的研究進展運用到了電影、虛擬現(xiàn)實、游戲、人體工程學等實際領域,取得顯著的技術進步。
2009年上映的電影《阿凡達》將人類面部表情的識別和制作帶到一個新的高度。在影片的制作過程中,采用了創(chuàng)新的表情捕捉系統(tǒng),該系統(tǒng)通過頭戴式面部捕捉設備對演員面部特定部位的高亮跟蹤點進行捕捉采集,并與影片角色的面部對應位置進行了精密地綁定。通過攝像頭實施記錄跟蹤上述跟蹤點的位置變化,同步更新和驅動影片角色的面部表情,實現(xiàn)了真人面部數(shù)據驅動的虛擬影片角色面部表情呈現(xiàn)。此后的電影《猩球崛起》則首次采用了“臉部肌肉組織模擬技術”[3],進一步推進了影片角色面部表情的捕捉和表達性能。
隨著面部捕捉技術在影視、游戲、虛擬現(xiàn)實等應用領域中的使用和推廣,其存在的一些限制和不足逐漸顯現(xiàn),目前從面部捕獲數(shù)據驅動表情的呈現(xiàn)效果來看,還存在以下方面的問題:
(1)在影視、游戲中,由于角色是單獨進行表演的,演員通過眼神在與虛擬人物交互時,眼神無法正確匹配。
(2)面部表情的捕捉常與身體動作捕捉分開進行,會導致角色的面部表情與身體運動表達的脫節(jié)。
本文使用有標記點的面部數(shù)據采集方式捕捉演員實際面部表情,利用面部表情捕捉設備對面部特征點進行采集并使用XML格式對面部表情捕捉數(shù)據進行描述;在此基礎上,將采集到的面部特征點與人臉模型中骨骼特征點位置進行綁定,最后通過OGRE引擎實現(xiàn)基于面部表情數(shù)據驅動演示三維人臉模型。
本文采用有標記點面部表情捕捉方式,識別采集對象的面部感光標識點,并附加LED光源加強光照,增強標記點的映像效果,對感光標識點坐標或相對位置數(shù)據進行捕獲。在數(shù)據采集默認的情況下,面部動作捕獲數(shù)據的格式為BVH、C3D等[4],上述格式均采用層次化的運動描述方法記錄運動數(shù)據。針對采集數(shù)據支持層次化方式封裝的特點,本文選擇XML格式數(shù)據文件作為數(shù)據記錄和表達的載體,其具備以下方面的優(yōu)點:
(1)降低面部表情數(shù)據內容與數(shù)據內容形式的耦合。通過將面部數(shù)據的顯示樣式從XML文檔中分離并放入樣式表文件中,使得在改動數(shù)據的表現(xiàn)形式時無需改動數(shù)據本身,僅改動控制數(shù)據顯示的樣式表文件即可。
(2)提高面部表情的檢索效率。由于保存的XML文件是通過屬性的方式對面部表情進行定義,將格式與數(shù)據分開進行存儲,簡便快速的對文檔中面部表情數(shù)據進行檢索,在檢索時,只需查找到相關節(jié)點的屬性就能快速找到指定內容,無需再次遍歷整個XML文件。
(3)改進多種設備和軟件系統(tǒng)之間的數(shù)據兼容性?;赬ML格式數(shù)據文件采用文本方式表達的基本屬性,其內容可以廣泛被用戶和各類系統(tǒng)閱讀、導入和使用,將其作為數(shù)據載體,能夠改進多種設備和軟件系統(tǒng)之間的兼容性。
在本文研究工作中,使用自主研發(fā)的面部數(shù)據轉換與保存插件,主要是對面部特征點的提?。?]。對所采集記錄的每一幀圖像中27個面部表情數(shù)據三維坐標進行保存。其實現(xiàn)過程如下:
(1)目標對象及捕捉環(huán)境的標定。判別采集目標,根據感光標識點是否在面部捕捉軟件中識別的個數(shù)調整目標對象與鏡頭的相對位置關系,確保全部感光標識點被面部捕捉采集設備正確識別。
(2)校驗數(shù)據采集配置及環(huán)境。檢查目標對象是否為處于非標準姿勢,(相對于面向捕捉相機的姿勢),檢測環(huán)境及主動光源光照強度是否達到預定采集要求、目標對象面部部署的感光標識點是否被遮擋等情況。如檢測發(fā)現(xiàn)采集要求不滿足時,可采用動作捕捉軟件對動作進行校正,校正后重新計算傳回各標識點的三維數(shù)據。
(3)將捕獲到面部標識點的三維數(shù)據保存至XML文件中。上述用于記錄和呈現(xiàn)面部表情捕捉數(shù)據的XML文件內容項包括:(a)數(shù)據幀采集時間戳節(jié)點(數(shù)據項的標簽名為<face timestamp>),其用于保存獲取該幀數(shù)據的時間信息;(b)頭部位置標定數(shù)據節(jié)點(數(shù)據項的標簽名為<root>),對應感光表示點的個數(shù)標簽名分別為<root-1>、<root-2>、<root-3>和<root-4>,其用于表示目標對象的頭部空間位置;(c)面部骨骼節(jié)點的空間位置坐標(數(shù)據項的標簽名為<section>),對應23個采集點的個數(shù),采用與頭部位置標定數(shù)據節(jié)點同樣的方式依次定名為<section-1>,<section-2>,……。對于每一條面部骨骼節(jié)點空間位置坐標數(shù)據,有三個字段分別是標注其在三維空間中的X、Y、Z坐標,其在對應的骨骼節(jié)點標簽中分別以“X”、“Y”、“Z”命名各字段。采用上述規(guī)格創(chuàng)建的XML格式文件內容示例及其與實際目標對象的映射關系如圖1所示。
圖1 XML格式文件內容示意圖
根據MPEG-4標準[6],人臉模型上定義了數(shù)據在空間上可參考的特征點,將這些特征點可分為不同的區(qū)域進行處理,并定義索引來表示特征點所在的區(qū)域,所有符合MPEG-4人臉動畫標準的人臉模型均定義了上述所有特征點位置[7]。
在本文的研究工作中,使用3Dmax軟件對人臉模型進行構建:首先,建立人臉面部模型,定義人臉模型面部骨骼特征點數(shù)量;其次,建立骨骼空間結構,在各個特征點之間構建關聯(lián),以配置和表達面部骨骼模型運動特性;最后,根據捕獲到的面部數(shù)據特征點名稱建立人臉模型特征點的映射關系,實現(xiàn)對人臉模型骨骼特征點的驅動,從而實現(xiàn)演員面部表情數(shù)據驅動虛擬角色面部運動并呈現(xiàn)表演效果。
上述過程中的人臉模型在軟件默認的工作情況下采用3DS格式保存,該格式不支持OGRE對其直接讀入和使用。因此,使用3DMax軟件將面部模型進行轉換,將其輸出為網格格式,以支持使用OGRE進行三維數(shù)據表達,從而構建了3DMax和OGRE之間的兼容渠道。人臉模型如下圖2所示。
圖2 面部模型骨骼點示意圖
初始情況下,面部模型的世界坐標系與OGRE中的世界坐標系存在差異性。同時每個特征點也有其局部坐標系,在面部捕捉采集數(shù)據時,設置的特征點坐標與OGRE的世界坐標系也不相同,如圖3所示。在開展數(shù)據驅動之前,需要統(tǒng)一各類數(shù)據的坐標系。本文把面部模型的世界坐標系,局部坐標和采集數(shù)據的特征點的坐標系都轉換為與OGRE統(tǒng)一的坐標系[8]。
統(tǒng)一坐標系后,根據面部特征點位置變換參數(shù)與人臉模型骨骼特征點之間的對應關系,提取XML格式文件中的序列幀信息,這些信息對應于人臉模型中向量肌肉的收縮或者面部動作編碼動作,通過跟蹤面部表情的各個特征點映射到面部模型上,從而驅動面部模型的運動。
圖3 坐標系示意圖
一方面,將轉化得到的人臉模型導入OGRE演示平臺,提取人臉模型中各個特征點名稱、特征點索引,根據人臉模型的特征點數(shù)量,創(chuàng)建臨時特征點集合。其次,讀取XML文件中的面部表情數(shù)據,逐幀提取面部表情數(shù)據,根據人臉模型的特征點名稱、特征點索引與XML格式文件中的特征點名稱及索引進行綁定。另一方面,將保存完成的面部表情信息與人臉模型骨骼特征點進行映射,實現(xiàn)數(shù)據驅動。雖然人物臉部特征的差異性較大,但是對于表情呈現(xiàn)的效果仍可滿足基本的演示需求,在保證面部數(shù)據與模型特征點的同步工作情況下,運用OGRE能夠實現(xiàn)面部表情的有效演示。
上述研究工作在實際實現(xiàn)過程中,采用有標記點的OptiTrack動作捕捉系統(tǒng)配合ARENA動作捕捉軟件共同對面部表情進行捕捉,捕獲面部表情動作采用VS2008和OGRE軟件支持環(huán)境進行實際驗證。運動捕獲后,將捕獲的三維運動數(shù)據轉換為模型驅動數(shù)據,加載到三維模型進行模型驅動實驗。圖4顯示了演示產生的表情效果圖,包括張嘴表情、皺眉表情和挑眉表情三種面部表情效果。
本文提出了一種基于面部表情捕捉設備對面部表情變化進行數(shù)據采集,實現(xiàn)面部表情采集數(shù)據驅動面部模型中骨骼點運動的方法。采用面部表情捕捉數(shù)據,對各種角色模型進行驅動,使面部骨骼模型能夠按照面部表情運動軌跡正常運動。通過使用該方法,能夠提高數(shù)據在多個軟硬件系統(tǒng)平臺的可用性,實現(xiàn)了演員面部動作采集驅動角色面部表情,并達成合理的呈現(xiàn)效果。本文為面部表情合成提供了新的技術路線,改進和擴展了面部數(shù)據捕捉的使用方式和應用范圍。
圖4 顯示的是表情效果圖
參考文獻
[1]高湘冀,鄭江濱.基于視覺運動捕獲數(shù)據的三維模型驅動方法[J].中國體視學與圖像分析,2009,14(2):182-186.
[2]Parker F.Computer Generated Animation of Faces [C].In Proceedings ACM ANN Conference. New York,1972.
[3]蔣斌,賈克斌,楊國勝.人臉表情識別的研究進展[J].計算機科學,2011,38(4):29-31.
[4]郭力,何明耘,陳雷霆.基于BVH的OGRE骨骼動畫[J].汁算機應用研究,2009,26(9):6-10.
[5]王淑媛.人臉識別特征提取算法研究[D].長春:長春理工大學,2005.
[6]Ovevriew of the MPEG-4 Standard[S].ISO IECJTC1 SC29 WG11N2323,Dublin,Ireland,1998.
[7]於俊,汪增福.一種基于MPEG-4的單位人臉表情運動算法[J].中國科學技術大學學報,2011,41(4):307-315.
[8]宋曉,付林,龔光紅,等.一種虛擬人動作及面部表情的驅動機制[J].中國傳媒大學學報:自然科學版,2011,18 (3):67-71.
The Method of Facial Expression Data Driven 3D Face Model
MIAO Yu1,SHI Lemin1,LIU Qiao1,SHENG Yidan1,LIANG Ming2
(1.School of Computer Science and Technology,Changchun University of Science and Technology,Changchun 130022;2.School of Mechatronical Engineering,Changchun University of Science and Technology,Changchun 130022)
Abstract:This paper proposes a method which utilizes the facial expression data driving skeletal feature points in three-dimension(3D)face model. Firstly,we capture the facial feature points with the face capture devices,and adopt XML-format file to specify the captured data. Then we continue to map the collected facial feature points to the skeletal feature points of the facial model. Finally,we utilize the Object-oriented Graphics Rendering Engine (OGRE)enabling to present the facial expressions. In this way,we are enabled to drive the 3D facial models with the facial expression data. We compose the procedures and results of validating the method at the end of paper.
Key words:facial capture;skeletal features point driving;feature point matching
中圖分類號:TP391
文獻標識碼:A
文章編號:1672-9870(2016)02-0112-04
收稿日期:2015-10-27
作者簡介:苗語(1980-),女,博士,講師,E-mail:custmiao@126.com