孫廣梅
(南首爾大學(xué)影像設(shè)計(jì)學(xué)院,忠清南道天安 31020)
微表情是動(dòng)畫人物基本情緒的表達(dá),以及微妙情緒變化的直接反映,在動(dòng)畫設(shè)計(jì)與動(dòng)畫表演當(dāng)中,有著重要的作用.將動(dòng)畫人物的心理情緒,通過(guò)五官之下的細(xì)微變化表達(dá)出來(lái),使動(dòng)畫人物更加靈動(dòng)逼真,將切實(shí)的情感變化傳達(dá)給觀眾.隨著經(jīng)濟(jì)全球化的發(fā)展趨勢(shì),世界各國(guó)之間的文化交流頻繁,而動(dòng)畫作為一種獨(dú)特的文化形式,消除了各國(guó)之間的語(yǔ)言障礙,成為了各國(guó)友好交流的一種媒介[1].近年來(lái)國(guó)內(nèi)的動(dòng)畫市場(chǎng)發(fā)展迅速,動(dòng)畫電影在電影市場(chǎng)當(dāng)中占比較大,有著良好的發(fā)展前景.
三維動(dòng)畫人物與二維平面動(dòng)畫相比較,其畫面效果更加真實(shí)立體,人們?nèi)粘I畹目臻g屬于三維空間,對(duì)于人們而言,在自然中立體的影像才是真實(shí)存在的,為此觀眾在觀看動(dòng)畫表演時(shí),對(duì)三維動(dòng)畫的專注度更高,更容易被人物及場(chǎng)景所吸引.傳統(tǒng)的二維動(dòng)畫主要是以與現(xiàn)實(shí)世界的差異和距離感,吸引人們觀看;而在三維動(dòng)畫的設(shè)計(jì)與表演中,其人物視覺效果更接近于現(xiàn)實(shí)中人們所看到的效果,這使人們對(duì)其表演形式更加嚴(yán)格與苛刻,三維動(dòng)畫在設(shè)計(jì)中更容易受到約束[2-4].為此在設(shè)計(jì)三維動(dòng)畫人物時(shí),對(duì)于表情制作的分工明確細(xì)致,便于后續(xù)的多次修改優(yōu)化,板塊化的分工能夠讓動(dòng)畫人物制作者有足夠的精力,去挖掘動(dòng)畫角色的表情細(xì)節(jié),單獨(dú)劃分出的動(dòng)畫模塊,為三維人物微表情的制作提供更加完善的制作手段.
三維人物通過(guò)微表情來(lái)表達(dá)自己的內(nèi)心感受.不同表情的人之間,或在某些表情中,臉部表情會(huì)“泄露”其它信息.微表情可以短到1/25秒.盡管無(wú)意識(shí)的表達(dá)可能只持續(xù)一段時(shí)間,但有時(shí)會(huì)表達(dá)相反的情感.微表情速度快,通常觀察的人很難察覺.很少人會(huì)注意到,相對(duì)于有意識(shí)的表達(dá),“微表情”更能反映人物的真實(shí)情緒和動(dòng)機(jī).盡管人們會(huì)忽略“微表情”,但是人類大腦仍會(huì)受其影響,改變對(duì)他人表情的理解.所以,如果一個(gè)人表達(dá)一種“幸?!钡母星?,若能從“微表情”中察覺,那么就可以斷定他是幸福的.但如果有一張“微表情”會(huì)閃現(xiàn)“微笑”,除短程表達(dá)外,微表情指那些在日常中受到抑制的表達(dá).舉例來(lái)說(shuō),在明顯悲傷的情景中,大部分的表情都是憂傷的,但他的嘴角是向上翹起的,則說(shuō)明他的內(nèi)心真是感情是開心的,即微表情更能夠表達(dá)出動(dòng)畫人物的真實(shí)想法.
三維人物微表情特征是表情識(shí)別成功與否的關(guān)鍵,面部肌肉所發(fā)生的大幅度變化,反映在三維數(shù)據(jù)上的信息則是非剛性形變.通常在三維動(dòng)畫的設(shè)計(jì)過(guò)程當(dāng)中,都會(huì)選用任務(wù)的正面姿勢(shì)測(cè)試其表情設(shè)計(jì)效果,而在非正面測(cè)試當(dāng)中,其精度將無(wú)法得到保障,為此需要縮短相同表情間的差距,并與此同時(shí)增加其間的差異性,即最小化類內(nèi)差距,最大化類間差距[5].為達(dá)到這一目的,則需要利用面部動(dòng)作編碼系統(tǒng),檢測(cè)人臉特征中所產(chǎn)生微小變化,面部動(dòng)作編碼系統(tǒng)由四十四個(gè)以解剖學(xué)為基礎(chǔ)的動(dòng)作單元所構(gòu)成,并利用行動(dòng)單位完成對(duì)面部活動(dòng)的具體描述,在上述基礎(chǔ)上利用LBP 算法,將原始圖像像素標(biāo)記為fa(a=0,...,7),利用中心像素fz將每個(gè)像素的鄰域閾值處理:
將處理結(jié)果視為二進(jìn)制,得到LBP 算法具體表達(dá)式如下:
(1)
其中fa表示各鄰域像素點(diǎn)的灰度值,a表示鄰域中心像素點(diǎn)個(gè)數(shù),fz表示中心像素點(diǎn)灰度值.
為每個(gè)S(fa-fz)分配一個(gè)二項(xiàng)式因子2a,則得到如下計(jì)算:
(2)
利用大小不同的鄰域,獲取不同尺度的主要特征信息,使LBP 算子得到擴(kuò)展,由于所提取到的局部特征尚不完善,導(dǎo)致鄰域間的深度距離擴(kuò)大,需要引入方向梯度直方圖特征彌補(bǔ)LBP描述子的不足,將原始動(dòng)畫圖像劃分為相互連接的數(shù)個(gè)小單元格,并通過(guò)計(jì)算得出每個(gè)單元格邊緣方向的直方圖,使其通道分布在0-360度之間,將三維面部表情歸一化,再將常規(guī)網(wǎng)格當(dāng)中的HOG特征提取出來(lái)[6].該網(wǎng)格是由圖像當(dāng)中的初始單元格放置相等面片所構(gòu)成的,為此提取 HOG 特征的面片大小對(duì)信息獲取程度有著很大的影響,一旦出現(xiàn)多個(gè)面片重疊的情況,則會(huì)導(dǎo)致最終特征高度冗余,并在分類器不支持特征選擇時(shí),受到過(guò)度擬合的嚴(yán)重影響.基于上述研究基礎(chǔ),結(jié)合正面與側(cè)面的三維人物表情特征點(diǎn),通過(guò)三維序列分析動(dòng)態(tài)人臉,識(shí)別其微表情.
圖 2 面部動(dòng)作效果圖Fig.2 Effect Drawing of Facial Action
三維人物的面部動(dòng)態(tài)分析通常分為基于面部表面的動(dòng)態(tài)分析,以及基于面部形變的動(dòng)態(tài)分析兩種,而三維人物面部表情的分析,首先需要從表情序列中的各個(gè)三維幀當(dāng)中提取三維地標(biāo),并通過(guò)三維地標(biāo)所產(chǎn)生的信息數(shù)據(jù)創(chuàng)建出多模態(tài)融合的特征描述符,將人物的面部特征與頭部角度相結(jié)合,識(shí)別人物面部表情特征.采用鼻尖定位法估計(jì)頭部姿勢(shì),在得到鼻尖位置的精準(zhǔn)坐標(biāo)后,創(chuàng)建三維地標(biāo).動(dòng)畫人物微表情定位是指動(dòng)畫人物微表情在已知環(huán)境信息的情況下,通過(guò)傳感器數(shù)據(jù)對(duì)動(dòng)畫人物微表情進(jìn)行估計(jì).定位過(guò)程是一個(gè)帶有噪聲的多傳感器信息序列的融合過(guò)程,同時(shí)也是一個(gè)非線性非Gauss狀態(tài)的在線估計(jì)問(wèn)題.
定位中采用的傳感器可以是:相機(jī)、激光雷達(dá)等.動(dòng)畫人物微表情通過(guò)讀取傳感器的信息,從而完成自定位.當(dāng)有N個(gè)數(shù)據(jù),想要?dú)w成k個(gè)類,用K-means聚類算法可以分為如下幾個(gè)步驟:
步驟1:隨機(jī)選取k個(gè)微表情中心點(diǎn):c1,....,ck;
步驟2:對(duì)每一個(gè)微表情樣本,計(jì)算它與每個(gè)數(shù)據(jù)庫(kù)中的微表情的差距,取差距最小的作為它的歸類;
步驟3:重新計(jì)算每個(gè)類的主要微表情特征;
步驟4:如果每個(gè)微表情特征都差距很小,則算法收斂,退出;否則返回第2步.
根據(jù)人物面部表情在變化過(guò)程中的運(yùn)動(dòng)規(guī)律,將三維人物的面部劃分成多個(gè)區(qū)域,并確定各區(qū)域當(dāng)中所存在的特征點(diǎn),將面部區(qū)域動(dòng)畫參數(shù)間的聯(lián)系減少,使其相互獨(dú)立[7].采用權(quán)值自適應(yīng)的插值方式,計(jì)算面部特征點(diǎn)影響區(qū)域內(nèi)的非特征點(diǎn)的運(yùn)動(dòng)因子,在此基礎(chǔ)上加以變形,增加三維人物表情的真實(shí)性.將參數(shù)化的人臉模型作為一個(gè)整體來(lái)考慮,采用人臉動(dòng)畫定義表,定義面部動(dòng)畫參數(shù)對(duì)三維人物面部網(wǎng)格變形的控制方式.每個(gè)人臉動(dòng)畫定義表對(duì)于一個(gè)面部動(dòng)畫參數(shù),通過(guò)該參數(shù)描述人物面部的變形方式,獲取到第一組參數(shù)值后,將人物面部網(wǎng)格按照人臉動(dòng)畫定義表變形,得到與之相對(duì)應(yīng)的人物面部表情.利用人物面部區(qū)域的縮放平移或旋轉(zhuǎn)等運(yùn)動(dòng)方式,得到三維比例因子,以此確定人物面部動(dòng)畫的頂點(diǎn),得到其參數(shù)值域范圍.將人物面部動(dòng)畫相應(yīng)的特征點(diǎn)所對(duì)應(yīng)的影響區(qū)域加以控制,使運(yùn)動(dòng)因子相互疊加,得到最終的人物面部表情.
根據(jù)K-means能夠把已經(jīng)提取的大量微表情特征點(diǎn)聚類成一個(gè)含有k個(gè)微表情的集合.其類似于層次聚類,是K-means的直接擴(kuò)展.假定有N個(gè)特征點(diǎn),構(gòu)建一個(gè)深度為d、每次分叉為k的樹,做法如下:
步驟1:在根節(jié)點(diǎn),用K-means把所有樣本聚成k類,這樣得到了第一層;
步驟2:對(duì)每一層的每個(gè)節(jié)點(diǎn),把屬于該節(jié)點(diǎn)的樣本聚成k類,得到下一層;
步驟3:以此類推,最后得到葉子層,葉子層即所謂的動(dòng)畫人物面部模型.
在獲取到三維人物面部模型以及其表情動(dòng)畫參數(shù)后,需要參考真實(shí)的人臉表情變化,對(duì)三維動(dòng)畫人物面部進(jìn)行變形.由于真實(shí)人臉的生理結(jié)構(gòu)復(fù)雜,參數(shù)曲面無(wú)法表示拓?fù)浣Y(jié)構(gòu)比較復(fù)雜的形體,需要利用多邊形存儲(chǔ)其相關(guān)信息,在變形的過(guò)程中移動(dòng)特征點(diǎn),控制人物面部表情的變形,使其具有較高的真實(shí)感.首先需要確定人物面部動(dòng)畫參數(shù)所對(duì)應(yīng)的特征點(diǎn),計(jì)算周邊區(qū)域內(nèi)的非特征點(diǎn)運(yùn)動(dòng)因子.
由于人物面部區(qū)域間的運(yùn)動(dòng)變形相互影響且相互限制,若某區(qū)域內(nèi)的參數(shù)設(shè)置失誤,則會(huì)導(dǎo)致周邊區(qū)域同樣受到影響,為此需要協(xié)調(diào)人物面部的動(dòng)作表情,如圖2當(dāng)中所示:
左側(cè)圖片為人物正常狀態(tài)下的面部動(dòng)作情況,右側(cè)圖片為人物眉毛挑起時(shí)的,眼睛受到眉毛區(qū)域的影響,使其瞳孔變大眼皮上挑,能夠得知人物面部表情發(fā)生變化時(shí),將會(huì)受到周邊區(qū)域的約束.而與此同時(shí)根據(jù)肌肉的分布與運(yùn)動(dòng)情況,將其按照基本規(guī)則劃分區(qū)域,建立一個(gè)插值函數(shù),計(jì)算特征點(diǎn)影響區(qū)域內(nèi),各個(gè)非特征點(diǎn)的運(yùn)動(dòng)因子.若特征點(diǎn)與非特征點(diǎn)之間的距離越短,則說(shuō)明其兩者的運(yùn)動(dòng)因子越接近,非特征點(diǎn)在特征點(diǎn)作用下的運(yùn)動(dòng)因子表達(dá)式如下:
(3)
其中dm表示特征點(diǎn)與非特征點(diǎn)之間的距離;dmax表示影響區(qū)域內(nèi),特征點(diǎn)與非特征點(diǎn)之間的最遠(yuǎn)距離;e表示權(quán)重系數(shù),且e∈(0,+);fap表示特征點(diǎn)對(duì)應(yīng)的人物面部動(dòng)畫參數(shù).
權(quán)重系數(shù)的設(shè)置是根據(jù)人臉模型的具體情況所調(diào)整的,若系數(shù)設(shè)置出現(xiàn)問(wèn)題,將會(huì)導(dǎo)致人物面部表情的生成過(guò)程中,出現(xiàn)區(qū)域邊界處拉伸過(guò)度的情況.為避免這一問(wèn)題,將人物面部模型的單元面片尺度假設(shè)為x,并將能夠影響邊界運(yùn)動(dòng)因子的模小于單元面片尺度:
‖r-m*fap‖ (4) 將權(quán)重系數(shù)設(shè)置恰當(dāng),以便得到平滑自然的人物表情效果,至此多個(gè)人物面部動(dòng)畫參數(shù),在共同作用下的非特征點(diǎn)運(yùn)動(dòng)因子得以確定,至此完成人臉表情的識(shí)別. 將三維人物面部區(qū)域按照不同的功能,劃分為平坦區(qū)域與凹凸區(qū)域,平坦區(qū)域的映射關(guān)系簡(jiǎn)單,極少有紋理映射錯(cuò)位的現(xiàn)象發(fā)生;而凹凸的部分則需要在圖像上標(biāo)注多個(gè)特征點(diǎn),并利用插值法獲取沒有對(duì)應(yīng)紋理的面部網(wǎng)格坐標(biāo)[8].將該坐標(biāo)變換成為柱面坐標(biāo),將平坦區(qū)域特征點(diǎn)當(dāng)中的已知紋理坐標(biāo),獲取最大紋理坐標(biāo)值以及最小紋理坐標(biāo)值,對(duì)應(yīng)于三維人物面部模型中的相應(yīng)要映射的部位,獲取所對(duì)應(yīng)區(qū)域的坐標(biāo)范圍,得到該區(qū)域所對(duì)應(yīng)特征點(diǎn)的紋理坐標(biāo).紋理圖像在映射到物體時(shí)可能會(huì)出現(xiàn)部分不協(xié)調(diào),這些不協(xié)調(diào)可能會(huì)導(dǎo)致紋理貼圖受到局限,微表情作為一種重要的表現(xiàn)手段[9],其制作手法必須注重人物角色的微弱變化,并將其作為角色內(nèi)心活動(dòng)的重要表現(xiàn)形式,使動(dòng)畫作品中短暫出現(xiàn)的微表情關(guān)鍵幀,給觀眾帶來(lái)的情感體驗(yàn)是一致的.有些動(dòng)畫人物設(shè)計(jì)僅針對(duì)五官的變化,將情緒表達(dá)融入五官當(dāng)中,笑容作為各個(gè)表情中,感情表現(xiàn)范圍最廣的形態(tài),能夠搭配不同的眼神狀態(tài),給觀眾呈現(xiàn)出完全不同的動(dòng)畫人物情緒. 采用概率回退對(duì)動(dòng)畫人物微表情制作的初始狀態(tài)進(jìn)行估計(jì),利用窗口濾波對(duì)微表情集合進(jìn)行更新,并動(dòng)態(tài)更新微表情集合的大小,自適應(yīng)粒子濾波算法從計(jì)算復(fù)雜度和算法穩(wěn)健性上較好地解決了動(dòng)畫人物微表情制作感情定位不準(zhǔn)的問(wèn)題.下面將給出算法實(shí)現(xiàn)的具體步驟: 步驟2:進(jìn)行微表情集合更新,得到當(dāng)前時(shí)刻的微表情集合St及其有效度W -和覆蓋的格點(diǎn)數(shù)bt; 步驟3:計(jì)算下一時(shí)刻的微表情集合St+1所含粒子數(shù)Nt+1; 步驟4:統(tǒng)計(jì)粒子數(shù),鎖定微表情,準(zhǔn)確表達(dá)感情. 由于三維動(dòng)畫的原畫取景框面積較大,而微表情制作所需求的景別劃分較少,僅對(duì)人物面部表情設(shè)計(jì)刻畫.其動(dòng)畫整體的光影變化豐富,而人物面部表情則多采用平涂色塊的設(shè)計(jì)方式,為使兩者之間相互協(xié)調(diào),需要掌握該動(dòng)畫的整體設(shè)計(jì)風(fēng)格,減小人物風(fēng)格所受到的約束.首先明確三維人物角色的面部線條與結(jié)構(gòu)動(dòng)態(tài),以此確保動(dòng)畫人物的動(dòng)作趨勢(shì)以及力度處于合適的范圍里,將動(dòng)畫人物的微表情擬人化,無(wú)論是虛擬角色,動(dòng)物角色或是其他角色,若仍采用其原有的結(jié)構(gòu)與運(yùn)動(dòng)規(guī)律,將會(huì)導(dǎo)致所呈現(xiàn)出的表達(dá)效果不清晰,無(wú)法向觀眾準(zhǔn)確傳遞想要表達(dá)的情感,將其擬人化后,則能夠使觀眾更加容易理解與接受[10].動(dòng)作表情作為人們意識(shí)的最直觀體現(xiàn),將人物角色所擁有的情緒價(jià)值通過(guò)微表情傳遞,使角色性格更加飽滿.隨著時(shí)代的進(jìn)步與發(fā)展,社會(huì)熱點(diǎn)事件,以及人們對(duì)事物的關(guān)注點(diǎn)也有所改變,而動(dòng)畫制作若想吸引觀眾的關(guān)注度,則需要緊隨時(shí)代的腳步.動(dòng)畫的設(shè)計(jì)與制作一開始雖然是為了突出個(gè)性表達(dá)自我觀點(diǎn)[11],但經(jīng)過(guò)長(zhǎng)久的發(fā)展,已經(jīng)形成了標(biāo)準(zhǔn)的規(guī)則與體系[12].人物表情的設(shè)計(jì),受到模式化的影響,可能會(huì)與實(shí)際所想要表達(dá)的情感出現(xiàn)偏差,利用人物面部凹凸明顯區(qū)域中的網(wǎng)格點(diǎn)紋理坐標(biāo)[13],在相應(yīng)部位的邏輯網(wǎng)格中定位邊界點(diǎn),得到三維人物面部的各網(wǎng)格坐標(biāo). 在上述研究結(jié)束后,設(shè)計(jì)仿真對(duì)照實(shí)驗(yàn),分析三維人物微表情制作對(duì)動(dòng)畫設(shè)計(jì)的影響,將微表情應(yīng)用前后的設(shè)計(jì)效果相比較,分析其兩者間的差異性,并得出實(shí)驗(yàn)結(jié)論. 由于三維人物微表情制作隨著計(jì)算機(jī)硬軟件的支持發(fā)展快速,市面上的三維制作軟件層出不窮,為保證實(shí)驗(yàn)過(guò)程的嚴(yán)謹(jǐn)性,需要分析下列軟件性能,選擇最為合適的三維制作軟件完成實(shí)驗(yàn)?zāi)M: 表1 常用三維制作軟件性能對(duì)比Tab.1 Performance Comparison of Commonly Used 3D Production Software 通過(guò)上表當(dāng)中的分析能夠得知,雖然三維動(dòng)畫制作軟件多種多樣,但對(duì)于制作效果而言,Maya的三維動(dòng)畫角色制作更加成熟,為此該實(shí)驗(yàn)利用Maya來(lái)完成仿真模擬平臺(tái)的搭建.將三維人物面部模型的相關(guān)數(shù)據(jù)信息輸入制作界面,按照計(jì)算機(jī)程序中的網(wǎng)格點(diǎn)邏輯層次開始交互操作,采用常規(guī)制作方法將如下圖所示的六種基本表情輸入到程序中(如圖3):得到如下所示的實(shí)驗(yàn)結(jié)果(如圖4): 將如下人物微表情輸入到計(jì)算機(jī)程序當(dāng)中,將所得到的結(jié)果與常規(guī)制作方法相對(duì)比(如圖5): 得到如下所示的實(shí)驗(yàn)?zāi)M結(jié)果(如圖6): 由上述的實(shí)驗(yàn)結(jié)果對(duì)比能夠得知,當(dāng)在動(dòng)畫設(shè)計(jì)制作程序中輸入微笑、驚訝、氣憤、恐懼、厭惡以及悲傷六種基本表情后,所制作出的三維人物由于原始數(shù)據(jù)的不足,僅能夠?qū)Ρ砬閰?shù)值以及動(dòng)畫顯示幀數(shù)進(jìn)行調(diào)整,無(wú)法分區(qū)域調(diào)整人物面部動(dòng)作,導(dǎo)致其生成效果生硬且不自然,無(wú)法滿足觀眾對(duì)三維動(dòng)畫的期待值.將人物微表情制作加入動(dòng)畫設(shè)計(jì)當(dāng)中后,其設(shè)計(jì)素材得以豐富,能夠在各表情幀當(dāng)中分解出人物情緒的細(xì)微變化,并將人物面部表情寫成函數(shù)形式,將面部區(qū)域按照規(guī)則劃分,并采用不同的字母數(shù)字命名,分別控制各區(qū)域的肌肉運(yùn)動(dòng)參數(shù)值,能夠使表情傳達(dá)更加準(zhǔn)確,按照所需要表現(xiàn)的人物情緒,生成特定的人臉表情動(dòng)畫. 人類的面部生理結(jié)構(gòu)復(fù)雜,是由三維曲面所構(gòu)成的可變形體,具有幾十塊面部神經(jīng)肌肉,其可塑性極強(qiáng),能夠隨著情緒的變化產(chǎn)生不同的微表情,以此來(lái)按照情緒來(lái)表達(dá)與傳遞,是人們?cè)谌粘5纳罟ぷ髦?,必不可少的交流方?在三維動(dòng)畫人物制作時(shí),為提高動(dòng)畫的真實(shí)性,使觀眾對(duì)其產(chǎn)生濃厚的興趣,將人臉表情應(yīng)用到動(dòng)畫的設(shè)計(jì)制作當(dāng)中.近年來(lái)計(jì)算機(jī)技術(shù)發(fā)展飛快,人們對(duì)多媒體的交互性能需求也隨之增長(zhǎng),利用計(jì)算機(jī)程序,將人臉表情動(dòng)畫技術(shù),應(yīng)用到人物設(shè)計(jì)當(dāng)中,建立真實(shí)的三維人物面部模型,分析人物面部參數(shù)的獲取方法,以及在實(shí)際應(yīng)用當(dāng)中的可行性,并利用具體參數(shù)生成人物微表情,利用人臉信息,建立三維表情數(shù)據(jù)庫(kù),將真實(shí)人臉的表情狀態(tài)應(yīng)用到三維動(dòng)畫人物制作.利用網(wǎng)格插值法,劃分特征點(diǎn)區(qū)域,通過(guò)自適應(yīng)權(quán)重設(shè)計(jì),滿足三維人臉網(wǎng)格模型的需要,減小人物面部網(wǎng)格在變形過(guò)程中出現(xiàn)邊緣區(qū)域拉伸過(guò)度的情況發(fā)生,確保人臉網(wǎng)格的平滑.1.4 三維網(wǎng)格點(diǎn)紋理坐標(biāo)定位
2 仿真實(shí)驗(yàn)
3 結(jié)束語(yǔ)