表演二維表情動畫思索

時間:2022-06-08 02:59:00

導(dǎo)語:表演二維表情動畫思索一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

表演二維表情動畫思索

在卡通動畫制作中,如何創(chuàng)作出形象生動的卡通表情動畫是一個值得討論的問題.完全依靠動畫師手工完成的卡通表情動畫不但難以確保其效果生動、形象,而且對動畫師的制作技術(shù)、經(jīng)驗和工作量也是一種挑戰(zhàn).如何自動或半自動地生成出較為生動形象的表情動畫,已成為CAD領(lǐng)域的一個熱門話題,也是學(xué)術(shù)界和產(chǎn)業(yè)界共同關(guān)心的問題.事實上,在卡通人臉動畫制作中,靜態(tài)二維卡通人臉圖像的繪制對于動畫師而言并非難事,且隨著光學(xué)運動捕獲系統(tǒng)的使用,稀疏二維動態(tài)人臉表情數(shù)據(jù)的獲取也越來越容易和普及.因此,基于靜態(tài)二維卡通人臉圖像及動態(tài)人臉表情數(shù)據(jù)融合,高效生成二維卡通人臉表情動畫是一個可行的思路.本文使用靜態(tài)二維卡通人臉圖像,配合動作捕獲設(shè)備獲取的表情數(shù)據(jù)進(jìn)行人臉表情動畫生成.輸入的人臉圖像首先被矢量化,并隨之對人臉五官區(qū)域進(jìn)行劃分;進(jìn)而將捕獲得到的二維人臉表情數(shù)據(jù)重定向到卡通人臉矢量圖上;最后使用移動最小二乘[1](movingleastsquares,MLS)算法對矢量人臉的面部及五官進(jìn)行變形,以自動合成與原始表情數(shù)據(jù)類似的卡通人臉動畫.

1相關(guān)工作

現(xiàn)有的人臉表情動畫制作技術(shù)主要分為以下幾類:1)基于關(guān)鍵幀插值的動畫制作技術(shù).動畫師制作若干關(guān)鍵幀表情,通過差值生成2幀之間的過渡幀,這類方法被稱為關(guān)鍵幀差值方法.傳統(tǒng)的二維卡通動畫制作大多采用這類方法,其優(yōu)點是簡單、便捷,有經(jīng)驗的動畫師通過制作高質(zhì)量的關(guān)鍵幀就可以做出較生動的卡通動畫;同時作為許多前沿的動畫制作技術(shù)的基本框架[2],它有很強的兼容性.但這類方法的效果依賴于關(guān)鍵幀的質(zhì)量和數(shù)目,對動畫師的經(jīng)驗要求較高,也無法生成較為復(fù)雜的人臉表情變化.2)基于參數(shù)化的表情動畫制作技術(shù).此類方法將人臉表情抽象成若干不同的參數(shù),用戶只需要調(diào)整參數(shù)即可實現(xiàn)不同表情之間的變化.最常用的參數(shù)化方法有面部動作編碼系統(tǒng)[3](facialactioncodingsystem,F(xiàn)ACS)和MPEG-4[4]的人臉動畫驅(qū)動方法.此類方法在組合的參數(shù)相互之間產(chǎn)生沖突時大多缺乏調(diào)度機(jī)制,導(dǎo)致表情不自然;同時為了得到某一個特定的表情需要調(diào)整很多參數(shù),這需要煩瑣的手工調(diào)試.3)基于混合模型的表情動畫制作技術(shù).此類方法在三維動畫中被廣泛應(yīng)用,其思路是不考慮人臉的物理屬性,而是直接采用一組三維表情模型(即變形目標(biāo))來定義一個線性空間,新的人臉表情由這組模型的線性組合來構(gòu)成[5-6].此類方法直觀方便,但缺點是變形目標(biāo)的創(chuàng)建過程復(fù)雜,需要大量藝術(shù)家的工作;且當(dāng)變形目標(biāo)的數(shù)量較大時,模型線性組合系數(shù)的人工調(diào)整會較煩瑣,致使動畫師難以實現(xiàn)制作意圖.4)基于表演驅(qū)動的表情動畫制作技術(shù).此類方法是請演員來表演一段表情,然后使用這段表情數(shù)據(jù)來驅(qū)動卡通形象做出相同的表情.捕獲表情的過程又分為使用動作捕獲設(shè)備捕獲表情和普通表情視頻驅(qū)動2種類型,前者驅(qū)動的動畫較為生動形象[7-8],而后者的優(yōu)點在于數(shù)據(jù)捕獲更加方便快捷[9-10].該類方法較為高效,且能夠生成相對形象的表情動畫,因此其在表情動畫制作中的應(yīng)用日益廣泛;但其運動數(shù)據(jù)與人臉模型融合的步驟仍然需要大量的人工干預(yù).相對以上卡通動畫制作方法,本文提出的卡通人臉合成方法主要具有高效性和易用性的特點.在整個驅(qū)動流程中,除指派輪廓線到特定的面部器官和在卡通表情上設(shè)置相應(yīng)的特征點這2個步驟需要用戶交互以外,其余部分都可以自動實時完成,因此只需動畫師制作一張靜態(tài)人臉的卡通形象,以及演員在鏡頭面前表演相應(yīng)表情,即可快速地生成表情動畫.整個算法流程圖如圖1所示.

2卡通人臉矢量化

輸入的卡通人臉圖像一般有位圖和矢量圖2種形式.相對于位圖,矢量圖可以在后續(xù)變形中被直接方便地使用,且存儲效率較高;此外,矢量圖也有利于處理噪聲、修正量化誤差,從而提高編輯效率和實際變形效果.本文方法以矢量圖作為卡通人臉表情動畫合成的輸入,所以當(dāng)用戶提供的卡通人臉為普通圖像時,需要預(yù)先對其進(jìn)行矢量化.此外,在矢量化人臉的基礎(chǔ)上,還需要將矢量圖中的曲線集合指派給不同面部器官,從而實現(xiàn)對不同面部器官分別進(jìn)行驅(qū)動變形的目的.卡通人臉圖像矢量化一般由輪廓提取與跟蹤、輪廓特征點抽取以及輪廓矢量化3部分工作構(gòu)成.關(guān)于這方面的研究已經(jīng)有很多,如文獻(xiàn)[11-12]等.本文基本采用文獻(xiàn)[12]描述的矢量化流程,并將面部五官指派的步驟整合在輪廓跟蹤中進(jìn)行,其流程如圖2所示.

2.1輪廓抽取與五官輪廓指派

由于卡通人臉及五官輪廓一般比較清晰,圖像構(gòu)成色塊明顯,因此只需將原始圖像轉(zhuǎn)化為灰度圖像,即可采用邊緣檢測算法提取其輪廓.本文使用Canny邊緣檢測算法進(jìn)行輪廓提??;為了消除該算法產(chǎn)生的噪聲,在進(jìn)行下一步工作之前還需進(jìn)行數(shù)學(xué)形態(tài)學(xué)的膨脹和骨架抽取操作,這樣既可以保證得到的邊緣信息不失真,又達(dá)到了消除細(xì)微噪點的目的.圖3展示了輪廓抽取以及五官指派的結(jié)果,其中輪廓跟蹤的結(jié)果已區(qū)分,不同的面部器官分別保存.圖3輪廓抽取和五官指派結(jié)果為了利用表情捕獲數(shù)據(jù)驅(qū)動人臉五官,需要將每條輪廓指派給某個特定的面部器官(包括臉、眼鏡、眉毛、鼻子、嘴),這個步驟可通過用戶手動操作來完成.在用戶選取了某條輪廓上的點時,系統(tǒng)將以此點作為根節(jié)點來跟蹤輪廓,并將跟蹤得出的輪廓賦于相應(yīng)的面部器官.輪廓跟蹤采用常用的像素八鄰域搜索算法,即在當(dāng)前點的八鄰域中搜索下一個點.但由于骨骼抽取后的邊緣可能存在“雙重邊”(既寬度為2的邊),所以本文對像素八鄰域搜索算法加以調(diào)整:即在得到每個新點之后,將其八鄰域全部標(biāo)記為“已檢測”,然后在八鄰域外的區(qū)域搜索下一個邊界點(如圖4所示,圖中黑色部分為特征邊緣.標(biāo)記Vi的像素為被識別的邊界;標(biāo)記C的像素為標(biāo)記為“已檢測”的像素;“雙重邊”如(1,2)、(1,3)、(2,2)和(2,3)).由于骨骼抽取后的邊緣寬度最大為2,所以該算法可以避免由雙重邊導(dǎo)致的搜索回溯甚至搜索中止,其具體步驟如下:Step1.建立輔助矩陣M,以保存每個點是否已訪問,將M初始化為FALSE.Step2.由用戶選取曲線上某點作為根節(jié)點.Step3.初始化搜索尺度s=1,以當(dāng)前節(jié)點為中心、邊長為2s+1按照順時針方向搜索正方形邊上的點(當(dāng)s=1時,此正方形邊上的點代表節(jié)點的八鄰域).a(chǎn))當(dāng)搜索到一個邊界節(jié)點時,檢測其已訪問性;若已訪問,則繼續(xù)進(jìn)行搜索;若未訪問,則將此點加入邊界點列數(shù)組中,并將其八鄰域內(nèi)各個點均設(shè)為已訪問,然后將此點作為根節(jié)點重復(fù)Step2;b)若未搜索到下一節(jié)點,則認(rèn)為遇到斷邊溝,將s+=1重復(fù)Step2;Step4.當(dāng)搜索尺度s大于一個特定值,則循環(huán)結(jié)束,此時的邊界點列數(shù)組即為跟蹤所得的邊界輪廓.

2.2輪廓特征點抽取與矢量化

通過輪廓抽取與輪廓跟蹤步驟得到的輪廓是細(xì)密排列的邊界點列,需要在這些輪廓點中抽取特征點作為錨點,再經(jīng)過曲線擬合得到與原始圖像相近的矢量化結(jié)果.本文采用曲線簡化算法經(jīng)過輪廓特征點抽取,原始曲線被處理為一系列特征點的集合,這些點反映了原始圖像的邊緣信息.下一步需要基于特征點集合對原始人臉圖像中的輪廓邊緣信息進(jìn)行矢量化,即曲線擬合.本文采用Bézier曲線來擬合原始輪廓邊緣,Bézier曲線擬合出的是經(jīng)過所有特征點的光滑曲線,這可能與原始圖像有一定的出入,但一般情況下,這種誤差是可以接受的.部分卡通人臉圖像矢量化結(jié)果如圖6所示.

3表情重定向及驅(qū)動

3.1表情數(shù)據(jù)捕獲

在實驗中,本文利用自主研發(fā)的近紅外光學(xué)運動捕獲系統(tǒng)來采集二維表情數(shù)據(jù),其硬件設(shè)備為一臺或多臺近紅外高速攝像機(jī);該系統(tǒng)能夠通過對粘貼與人臉表面的特殊反光材質(zhì)標(biāo)記點進(jìn)行自動捕獲與跟蹤.由于近紅外攝像機(jī)成像時能夠過濾掉除近紅外光線外其他頻譜的光線,且粘貼與人臉表面的反光標(biāo)記對LED近紅外光源發(fā)出的光線具有非常高的反射率,因此能夠很容易地獲取二維人臉表情數(shù)據(jù).圖7所示為系統(tǒng)所采用的近紅外攝像機(jī)及表情捕獲結(jié)果的截圖.

3.2表情重定向

從某個演員面部采集得到的表情數(shù)據(jù)并不能直接用來驅(qū)動動畫師預(yù)先繪制好的卡通人臉圖像,因為源人臉(真實演員人臉)和目標(biāo)人臉(卡通人臉)在形狀甚至結(jié)構(gòu)上都會有所差異,如果直接用源人臉表情數(shù)據(jù)對卡通人臉進(jìn)行驅(qū)動,則會造成卡通人臉形狀的較大失真與風(fēng)格丟失.基于以上理由,在表情驅(qū)動繪制之前需要對表情數(shù)據(jù)進(jìn)行重定向,其大致思路如圖8所示.

4實驗結(jié)果

本文實驗中在人臉上共使用圖9所示20個標(biāo)記點,分別位于下頜、下嘴唇、左右嘴角、上嘴唇、左右顴骨、左右鼻翼、眉心、雙眼的上下邊緣、左右眉的兩端,以及左右眉的上部.本文采用自行研制的近紅外光學(xué)運動捕獲系統(tǒng)以60幀?s的幀速率、320×240的分辨率捕獲一系列具有代表性的表情數(shù)據(jù)獲取二維表情數(shù)據(jù),包括驚訝、瞪眼、挑眉和沮喪等.在驅(qū)動面部表情變形時,針對某一面部器官,使用特定的某些標(biāo)記點來驅(qū)動.表1所示為每個面部器官對應(yīng)的驅(qū)動點列表.本文采用的捕獲系統(tǒng)運行于Windows7平臺,計算機(jī)配置為Pentium?Dual-CoreCPUE5300@2.6GHz,內(nèi)存為2GB.在整個實驗過程中,除了人臉器官指派與重定向首幀標(biāo)注需用戶手動交互外,其余步驟均能自動完成.最終生成相應(yīng)的表情特征視頻,圖10所示視頻截圖.

5總結(jié)與討論

本文詳細(xì)描述了使用動作捕獲設(shè)備來驅(qū)動二維非真實卡通表情的一個較為完備的過程,整個過程除有兩處需要用戶交互以外,其余部分都可以自動、實時地完成,得到的結(jié)果可以滿足一般動畫制作的需要.對于需要更加細(xì)致表情表現(xiàn)的動畫制作需求,在不要求紋理細(xì)節(jié)的非真實卡通表情的范疇內(nèi),可適當(dāng)增加標(biāo)記點的設(shè)置個數(shù)來滿足需求,因此,此流程有一定的拓展性.此外,對于非真實夸張風(fēng)格的表情需求,可以結(jié)合論文文獻(xiàn)[14]方法對捕獲的表情數(shù)據(jù)進(jìn)行LoG濾波,從而用演員非夸張的表情數(shù)據(jù)模擬卡通人物夸張的表情.但此流程也有明顯的不足:

1)其受限制于矢量化技術(shù),第2節(jié)敘述的矢量化方法僅僅適用于紋理簡單的位圖的矢量化,對較復(fù)雜的位圖可能不能正常的工作:事實上目前仍沒有完備的位圖矢量化算法.

2)其僅能處理卡通人臉正面表情的變化:由于輸入缺少深度信息,因此無法建立三維數(shù)據(jù)模型,亦無法處理非正面的卡通人臉的情形.下一階段可以考慮用一些自動或者半自動的方法自動生成表情數(shù)據(jù)的深度信息,這樣用戶只需提供在某一時刻卡通人物的面部朝向,既可將此方法生成出的卡通表情動畫移植至任何動畫片段中,而不是僅僅拘泥于正面的表情動畫的生成.