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