摘要:本文研究了怎樣把現(xiàn)有的人體運(yùn)動(dòng)數(shù)據(jù)重新定向到新的動(dòng)畫(huà)角色對(duì)象上,并實(shí)現(xiàn)了一個(gè)原型系統(tǒng)——盼盼三維角色動(dòng)畫(huà)系統(tǒng)。通過(guò)這種方法, 用戶(hù)只需要從動(dòng)畫(huà)庫(kù)中選擇所需的人體運(yùn)動(dòng),便可方便地控制任意三維動(dòng)畫(huà)角色的運(yùn)動(dòng)和變形,從而重用現(xiàn)存的人體運(yùn)動(dòng)數(shù)據(jù)去控制新的角色,創(chuàng)作出一些夸張的動(dòng)畫(huà)效果。
關(guān)鍵詞:運(yùn)動(dòng)重用 三維角色 計(jì)算機(jī)動(dòng)畫(huà) 人體動(dòng)畫(huà)
一、引言
在近十幾年里,計(jì)算機(jī)動(dòng)畫(huà)技術(shù)得到了突飛猛進(jìn)的發(fā)展,以動(dòng)畫(huà)卡通、網(wǎng)絡(luò)游戲、手機(jī)游戲、多媒體產(chǎn)品等為代表的動(dòng)漫產(chǎn)業(yè)是21世紀(jì)知識(shí)經(jīng)濟(jì)的核心產(chǎn)業(yè),被稱(chēng)為21世紀(jì)最有希望的朝陽(yáng)產(chǎn)業(yè),這場(chǎng)“后現(xiàn)代產(chǎn)業(yè)浪潮”不僅給全球經(jīng)濟(jì)戰(zhàn)略結(jié)構(gòu)帶來(lái)了根本性轉(zhuǎn)變,也為進(jìn)入新世紀(jì)的中國(guó)經(jīng)濟(jì)創(chuàng)造了一次千載難逢的歷史發(fā)展機(jī)遇。
但是,目前的動(dòng)畫(huà)技術(shù)還遠(yuǎn)沒(méi)達(dá)到理想的地步。計(jì)算機(jī)輔助二維動(dòng)畫(huà)具有制作相對(duì)方便、制作成本低、對(duì)制作和運(yùn)行的硬件環(huán)境要求較低等優(yōu)點(diǎn)。但是由于傳統(tǒng)的二維對(duì)象缺少顯式的三維信息,使得自動(dòng)生成好的中間幀畫(huà)面非常困難,比如在變化過(guò)程中,特別是那些非平行于畫(huà)面的變換,引起的起各幀畫(huà)面之間對(duì)象的對(duì)應(yīng)問(wèn)題、剪影輪廓的變化問(wèn)題、各個(gè)部分的自遮擋問(wèn)題、保持形狀比例和體積問(wèn)題等等,都是研究者們一直試圖解決的難點(diǎn)問(wèn)題。
計(jì)算機(jī)動(dòng)畫(huà)之所以有那么強(qiáng)大的表現(xiàn)能力,各式各樣逼真的模型扮演著舉足輕重的地位。這些模型大多由獨(dú)立的動(dòng)畫(huà)軟件,如3DSMax、Maya、Softimage等進(jìn)行設(shè)計(jì)。怎樣給一個(gè)靜態(tài)的模型賦予生命力,并讓它動(dòng)起來(lái)一直是圖形學(xué)研究者感興趣的研究課題。三維動(dòng)畫(huà)制作系統(tǒng)中,使用關(guān)節(jié)骨架控制三維動(dòng)畫(huà)角色已非常流行,動(dòng)畫(huà)師可以非常容易地設(shè)置和控制三維角色關(guān)節(jié)進(jìn)行動(dòng)畫(huà)控制。但是準(zhǔn)確地控制三維模型的變形和運(yùn)動(dòng)使其符合實(shí)際的物理規(guī)律,特別是想要達(dá)到實(shí)時(shí)的要求,難度很大。一種解決方法為采用自動(dòng)角色動(dòng)畫(huà)。角色動(dòng)畫(huà)動(dòng)包括骨骼動(dòng)畫(huà)和頂點(diǎn)動(dòng)畫(huà)。骨骼動(dòng)畫(huà)把整個(gè)人體按生理結(jié)構(gòu)分為許多部分(圖1-2), 每個(gè)部分都有自己的幾何形體,然后再用數(shù)據(jù)結(jié)構(gòu)把所有的部分合理地組成為一個(gè)有層次的整體,例如,上臂連著前臂, 前臂連著手。骨骼動(dòng)畫(huà)與頂點(diǎn)動(dòng)畫(huà)相比,占用空間小,因?yàn)樗恍枰箜旤c(diǎn)動(dòng)畫(huà)那樣要存儲(chǔ)每一幀的各個(gè)頂點(diǎn)的數(shù)據(jù),而是只需要存儲(chǔ)每一幀的骨骼的數(shù)據(jù)。骨骼的數(shù)據(jù)量與頂點(diǎn)的數(shù)據(jù)量相比,要少得多。所以骨骼動(dòng)畫(huà)有很多優(yōu)勢(shì),不管是在游戲、電影動(dòng)畫(huà)還是虛擬現(xiàn)實(shí)中,生動(dòng)逼真的動(dòng)畫(huà)(人、動(dòng)物等)會(huì)使之增色不少。當(dāng)然骨骼動(dòng)畫(huà)處理技術(shù)難度也很高,它需要解決的一個(gè)重要的問(wèn)題是:如何得到和模型相關(guān)聯(lián)的骨架?
本文研究了把現(xiàn)有的人體運(yùn)動(dòng)數(shù)據(jù)重新定向到新的動(dòng)畫(huà)角色對(duì)象上。通過(guò)這種方法,動(dòng)畫(huà)師能夠利用現(xiàn)存的BVH人體運(yùn)動(dòng)數(shù)據(jù)去創(chuàng)造新的動(dòng)畫(huà)。動(dòng)畫(huà)角色對(duì)象常被賦予復(fù)雜的非剛體運(yùn)動(dòng)方式以達(dá)到夸張的效果,我們實(shí)現(xiàn)了三維角色的自動(dòng)綁定,使之能做到局部的非剛體變形描述。若要生成新的動(dòng)畫(huà),只需要從動(dòng)畫(huà)庫(kù)中選擇用戶(hù)所需的人體運(yùn)動(dòng),便可方便地控制新的三維動(dòng)畫(huà)角色的運(yùn)動(dòng)和變形。人體的運(yùn)動(dòng)數(shù)據(jù)可以來(lái)源于運(yùn)動(dòng)捕捉,也可以從現(xiàn)存的動(dòng)畫(huà)和影片視頻中通過(guò)圖像處理和計(jì)算機(jī)視覺(jué)的方法來(lái)獲取。基于這些素材,我們可以得到運(yùn)動(dòng)的素材庫(kù),作為動(dòng)畫(huà)師創(chuàng)作新動(dòng)畫(huà)的來(lái)源,從而豐富動(dòng)畫(huà)產(chǎn)品的多樣化和體現(xiàn)制作者的創(chuàng)造性思維。在如今的計(jì)算機(jī)動(dòng)畫(huà)中,建立模型的過(guò)程已經(jīng)變得比較簡(jiǎn)單。但是如果要讓模型動(dòng)起來(lái),還需要人們手動(dòng)去嵌入骨架,并且定義骨架驅(qū)動(dòng)表面皮膚的每一個(gè)細(xì)節(jié)。這個(gè)復(fù)雜繁瑣的過(guò)程只能由專(zhuān)業(yè)的動(dòng)畫(huà)師來(lái)完成,對(duì)于一些初學(xué)者來(lái)說(shuō)是可望而不可及的。我們實(shí)現(xiàn)的系統(tǒng)可以讓一個(gè)靜態(tài)的模型可以根據(jù)給定的運(yùn)動(dòng)數(shù)據(jù)進(jìn)行所需要的運(yùn)動(dòng)。整個(gè)過(guò)程由程序自動(dòng)實(shí)現(xiàn),不需要人手動(dòng)來(lái)操作它。這樣的創(chuàng)新使它能夠表現(xiàn)更加復(fù)雜的動(dòng)畫(huà),因此不僅能夠?yàn)閷?zhuān)業(yè)動(dòng)畫(huà)師所用,而且讓初學(xué)者也能體驗(yàn)到自己設(shè)計(jì)動(dòng)畫(huà)的樂(lè)趣。
二、相關(guān)工作
在骨架提取方面,已經(jīng)有很多自動(dòng)生成骨架的方法。①②③Baran等的Pinocchio系統(tǒng)創(chuàng)造性地提出了骨架嵌入的方法。在自動(dòng)角色動(dòng)畫(huà)方面,骨架嵌入比骨架提取要好的原因是對(duì)于復(fù)雜骨架的角色,骨架提取可能會(huì)產(chǎn)生不同的拓?fù)浣Y(jié)構(gòu),這就讓使用者很難將原來(lái)有的骨架運(yùn)動(dòng)數(shù)據(jù)運(yùn)用到其中來(lái)。雖然可以通過(guò)附屬肢體模板來(lái)鑒別復(fù)雜的附屬肢體,但是由于拓?fù)浣Y(jié)構(gòu)的復(fù)雜性,自動(dòng)生成時(shí)也會(huì)產(chǎn)生各種不同的誤差。骨架嵌入相對(duì)于骨架提取的另一個(gè)優(yōu)勢(shì)就是它能夠在骨架中定義角色所需要的很多的結(jié)構(gòu)信息,這是在提取的純幾何骨架圖中難以得到的。
幾乎所有的網(wǎng)格變形技術(shù),無(wú)論是基于表面的還是基于體積的,都可以用來(lái)作為基于骨架運(yùn)動(dòng)動(dòng)畫(huà)中的對(duì)表面進(jìn)行蒙皮。④⑤不幸的是,到目前為止,這些方法都不能實(shí)現(xiàn)實(shí)時(shí)的動(dòng)畫(huà)。Baran等的線(xiàn)性混合蒙皮(LBS)具有簡(jiǎn)單高效并且能夠利用GPU進(jìn)行運(yùn)算,并可以根據(jù)骨架進(jìn)行子空間變形等優(yōu)點(diǎn)。雖然在質(zhì)量上的不能夠達(dá)到很好的效果,但是它仍然成為在實(shí)踐應(yīng)用中最常用的方法。所以我們的系統(tǒng)采用該方法。⑥
三、原型系統(tǒng)設(shè)計(jì)設(shè)計(jì)過(guò)程
對(duì)于輸入的三維角色模型,我們首先嵌入骨架,然后通過(guò)定義骨骼運(yùn)動(dòng)對(duì)表面網(wǎng)格上每個(gè)頂點(diǎn)的變化的影響權(quán)值,將表面皮膚依附在骨骼上。對(duì)于不同的角色,我們建立不同的罰函數(shù)去懲罰那些我們不期望的骨架嵌入方式。基于樣本用支持向量機(jī)的方法求得最大邊緣解,然后對(duì)不同罰函數(shù)賦予不同的權(quán)值。用人工智能中A*啟發(fā)式的方法在指數(shù)級(jí)的搜索空間里加速尋找最優(yōu)的骨架嵌入方式。在蒙皮階段用熱擴(kuò)散方程的方法去計(jì)算骨架運(yùn)動(dòng)時(shí)每一塊骨骼對(duì)表面網(wǎng)格上頂點(diǎn)的影響權(quán)值。據(jù)骨架的變化情況,插值計(jì)算出骨架的“蒙皮”模型的各個(gè)頂點(diǎn)的位置變化。對(duì)于某個(gè)特定骨骼,“蒙皮”模型的頂點(diǎn)變換矩陣=初始姿勢(shì)的變換矩陣的逆×姿勢(shì)變換后的矩陣。另外還要考慮到一個(gè)頂點(diǎn)可能受多個(gè)骨骼運(yùn)動(dòng)的共同影響。
本文來(lái)源:http://www.nvnqwx.com/shiyongwen/2248838.htm