郜菲
摘? 要: 基于動(dòng)畫技術(shù)的角色與行為控制方法的幀速率低,無法達(dá)到理想的控制效果,為此,提出三維動(dòng)畫系統(tǒng)的角色與行為控制方法。運(yùn)用原始數(shù)據(jù)分解法分解三維動(dòng)畫角色與行為捕捉數(shù)據(jù),再構(gòu)造三維動(dòng)畫角色與行為檢索樣本,得到各幀運(yùn)動(dòng)數(shù)據(jù)通道值。完成上述操作步驟后,利用三維動(dòng)畫系統(tǒng)中的MEL語言構(gòu)建三維動(dòng)畫角色與行為控制模型,實(shí)現(xiàn)三維動(dòng)畫角色與行為控制,由此,完成三維動(dòng)畫系統(tǒng)的角色與行為控制方法的設(shè)計(jì)。最后,設(shè)置對比實(shí)驗(yàn),測試基于動(dòng)畫技術(shù)的角色與行為控制方法與三維動(dòng)畫系統(tǒng)的角色與行為控制方法在不同窗口的幀速率。實(shí)驗(yàn)結(jié)果表明,所提方法在不同窗口下的幀速率均保持在2.0 f/s,說明所提方法控制效果更好。
關(guān)鍵詞: 三維動(dòng)畫系統(tǒng); 行為控制; 角色控制; 動(dòng)畫技術(shù); 控制模型; 幀速率測試
中圖分類號: TN911.73?34; TP311.52? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼: A? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)19?0040?05
Abstract: The frame rate of character and behavior control method based on animation technology is low, which can not achieve the ideal control effect. Therefore, the method of character and behavior control in 3D animation system is proposed. The original data decomposition method is used to decompose 3D animation character and behavior capture data, and then construct 3D animation character and behavior retrieval samples to get the motion data channel values of each frame. After the above steps are completed, the 3D animation character and behavior control model is constructed with the MEL language in the 3D animation system to realize the 3D animation character and behavior control. Thereby, the design of character and behavior control method of 3D animation system is completed. A comparative experiment was set up to test the frame rate of character and behavior control methods based on animation technology and character and behavior control method of 3D animation system in different windows. The experimental results show that the frame rate of the proposed method is kept at 2.0 f/s in different windows, which shows that the proposed method has a better control effect.
Keywords: 3D animation system; behavior control; character control; animation technology; control model; frame rate testing
0? 引? 言
三維動(dòng)漫系統(tǒng)是使用計(jì)算機(jī)模擬一個(gè)物種集群的群體行為,因所有的三維動(dòng)漫過程都是由計(jì)算機(jī)模擬實(shí)現(xiàn)的,所以在動(dòng)漫和拍攝上的工作會大大減少,導(dǎo)致動(dòng)畫達(dá)不到生動(dòng)和自然的效果。為此,將工作中心轉(zhuǎn)為在合適的行為與角色控制下得到理想的動(dòng)畫效果。在三維動(dòng)畫系統(tǒng)中,角色與行為控制一直是研究者最感興趣的目標(biāo),雖然計(jì)算機(jī)動(dòng)畫已在許多領(lǐng)域占有重要的地位,但動(dòng)畫角色和動(dòng)畫行為的許多問題仍未得到妥善的解決[1]。以往采用的基于動(dòng)畫技術(shù)的角色與行為控制方法提出了粒子理念,當(dāng)動(dòng)畫停留在3D階段,粒子會被自身的一些強(qiáng)制規(guī)則所制約。整個(gè)粒子系統(tǒng)的運(yùn)動(dòng)規(guī)則都是由這些單獨(dú)的粒子運(yùn)動(dòng)規(guī)則所形成的,該方法用這些粒子的群體動(dòng)畫優(yōu)點(diǎn)控制群體行為和角色。但存在一個(gè)缺點(diǎn),它很難預(yù)測行為與角色規(guī)則間的交互,只有添加了新的規(guī)則之后才能調(diào)試。為此,本文提出三維動(dòng)畫系統(tǒng)的角色與行為控制方法,該方法通過分解三維動(dòng)畫角色與行為的捕捉數(shù)據(jù),實(shí)現(xiàn)動(dòng)畫行為捕捉數(shù)據(jù)中的特征提取。再針對某一類檢索的目標(biāo)運(yùn)動(dòng)特征向量,構(gòu)造三維動(dòng)畫角色與行為檢索樣本,實(shí)現(xiàn)群體角色與行為捕捉數(shù)據(jù)檢索。最后,設(shè)計(jì)控制流程,建立好的模型控制動(dòng)畫行為和動(dòng)畫角色。詳細(xì)設(shè)計(jì)過程如下。
1? 三維動(dòng)畫角色與行為捕捉數(shù)據(jù)分解
先采集原始數(shù)據(jù),在本次設(shè)計(jì)中提出一種原始數(shù)據(jù)分解法,該方法可以獲取更多真實(shí)的三維動(dòng)畫角色與運(yùn)動(dòng)數(shù)據(jù)[2]。分解過程如下:
構(gòu)造一個(gè)局部坐標(biāo)系,用于標(biāo)記采集的三維動(dòng)畫角色與行為捕捉數(shù)據(jù)。捕捉數(shù)據(jù)包含動(dòng)畫表情運(yùn)動(dòng)和頭部運(yùn)動(dòng)。先定義動(dòng)畫角色為[pt]和[pr],再計(jì)算局部坐標(biāo)系[y]軸的單位向量,選定后,將[ptprpn]作為局部坐標(biāo)系[z]軸的單位向量,最后計(jì)算正交單位向量為[Vx]。完成上述步驟后,即可得到某一幀捕捉數(shù)據(jù)的分解結(jié)果[3]。
在分解過程中,要將動(dòng)畫行為特征點(diǎn)記為標(biāo)記點(diǎn),而相對于全局坐標(biāo)系的運(yùn)動(dòng)即為動(dòng)畫角色的整體運(yùn)動(dòng)[4]。為得到頭部整體全局坐標(biāo)系的平移矩陣,應(yīng)用式(1)將局部坐標(biāo)系中的每一個(gè)特征標(biāo)記點(diǎn)的位置轉(zhuǎn)換成全局坐標(biāo)系對應(yīng)的特征標(biāo)記點(diǎn)的位置,以此得到動(dòng)畫角色與行為捕捉數(shù)據(jù)的最終分解結(jié)果:
2? 三維動(dòng)畫角色與行為檢索樣本構(gòu)造
采用原始數(shù)據(jù)分解法,分解三維動(dòng)畫角色與行為捕捉數(shù)據(jù),為得到各幀運(yùn)動(dòng)數(shù)據(jù)的通道值,提出構(gòu)建三維動(dòng)畫角色與行為檢索樣本。通道值是識別動(dòng)畫角色行為的唯一依據(jù)[6],構(gòu)造過程如下。
將動(dòng)漫角色與行為簡化為與動(dòng)畫四肢相關(guān)的8個(gè)節(jié)點(diǎn)特征,如圖1所示。
圖1對應(yīng)節(jié)點(diǎn)信息如表1所示。
表1中的8個(gè)節(jié)點(diǎn)檢索樣本構(gòu)造與選取方式相同。將這8個(gè)節(jié)點(diǎn)各幀運(yùn)動(dòng)數(shù)據(jù)的通道值按照順序排列,并用空格符分割。相同的通道值分為一類檢索樣本[7],不同的通道值按照大小順序排列,分為另一類檢索樣本。
3? 三維動(dòng)畫角色與行為控制模型
完成三維動(dòng)畫角色與行為檢索樣本的構(gòu)造后,運(yùn)用三維動(dòng)畫系統(tǒng)中的MEL語言控制動(dòng)畫角色與行為運(yùn)動(dòng)數(shù)據(jù)[8]。
先在三維動(dòng)畫系統(tǒng)界面新建一個(gè)三維動(dòng)畫轉(zhuǎn)換系統(tǒng)[9]。轉(zhuǎn)換界面如圖2所示。
MEL語言是負(fù)責(zé)確定運(yùn)動(dòng)速度和運(yùn)動(dòng)方向的變化。若周圍個(gè)體數(shù)量超過1個(gè),或者大于5個(gè),系統(tǒng)會改變動(dòng)畫角色的運(yùn)動(dòng)方向,有效控制動(dòng)畫角色的運(yùn)動(dòng)速度。
基于三維動(dòng)畫系統(tǒng)MEL語言的角色與行為控制方法框架圖,如圖3所示。
利用三維動(dòng)畫系統(tǒng)的MEL語言控制動(dòng)畫角色與行為。在設(shè)計(jì)過程中,為簡化控制過程,采用分層方法改變原有數(shù)據(jù)和編輯控制點(diǎn),使得動(dòng)畫角色與行為符合控制約束的一系列要求。
具體控制過程如下;
Step1:將分解的動(dòng)畫角色行為捕捉數(shù)據(jù)組成一個(gè)三維空間中的點(diǎn)集[10]。點(diǎn)集中包含典型的數(shù)據(jù)。因運(yùn)動(dòng)點(diǎn)較多,動(dòng)畫系統(tǒng)的空間有限,針對這一問題,采用運(yùn)動(dòng)重定向方法,在不改變動(dòng)畫的前提下,將角色與行為中不完全相同的元素融合在一起。變換過程在運(yùn)動(dòng)重定向方法中引入動(dòng)力學(xué)因素,使得角色與行為結(jié)構(gòu)能夠相互映射[11]。
Step2:將動(dòng)畫模型簡化處理。先輸入分解后的捕捉數(shù)據(jù),再依據(jù)動(dòng)畫模型建立群像場景 [12]。
Step3:使用三維動(dòng)畫系統(tǒng)優(yōu)化動(dòng)畫角色在時(shí)間和空間上的不同動(dòng)作。
Step4:重新約束動(dòng)畫角色姿態(tài),調(diào)整函數(shù)和行為參數(shù)[13]。
Step5:在原有的動(dòng)畫模型上,編輯時(shí)空后新形成的動(dòng)作[14]。
Step6:設(shè)計(jì)控制命令,使用MEL語言中的代碼識別動(dòng)畫角色與行為的某一屬性??刂泼羁梢詼?zhǔn)確約束某條命令制定的特定數(shù)據(jù)位置,實(shí)現(xiàn)動(dòng)畫角色與行為控制[15]。
MEL語言是負(fù)責(zé)確定運(yùn)動(dòng)速度變化和運(yùn)動(dòng)方向的變化。若周圍個(gè)體數(shù)量超過1個(gè),或者大于5個(gè),系統(tǒng)會改變動(dòng)畫角色的運(yùn)動(dòng)方向,有效控制動(dòng)畫角色的運(yùn)動(dòng)速度。
由此,完成三維動(dòng)畫系統(tǒng)的角色與行為控制方法的設(shè)計(jì)。
4? 實(shí)驗(yàn)分析
為檢測所提的三維動(dòng)畫系統(tǒng)的角色與行為控制方法的可行性以及控制性能,設(shè)置對比實(shí)驗(yàn)。實(shí)驗(yàn)過程及實(shí)驗(yàn)數(shù)據(jù)如下。
4.1? 實(shí)驗(yàn)流程
利用數(shù)據(jù)庫中的相近例子,作為此次實(shí)驗(yàn)的實(shí)驗(yàn)數(shù)據(jù)。實(shí)驗(yàn)數(shù)據(jù)獲取過程如下:
1) 運(yùn)用三維動(dòng)畫系統(tǒng)的Unix Shell語言優(yōu)化實(shí)驗(yàn)數(shù)據(jù),并利用當(dāng)前所生成的動(dòng)畫角色和行為作為下一個(gè)生成窗口的猜想值。猜想值指動(dòng)畫角色與行為的窗口姿勢。
2) 設(shè)置初始點(diǎn),保證控制效果達(dá)到最佳。
3) 查找。三維動(dòng)畫系統(tǒng)所生成的窗口在每一個(gè)時(shí)刻都會向前移動(dòng)一幀,但系統(tǒng)僅顯示生成的運(yùn)動(dòng)序列。為了不影響群體動(dòng)畫的控制效果,要將其他的生成姿勢作為下一個(gè)優(yōu)化的猜想值,以此來增加下一次的收斂速度。
4) 檢測動(dòng)畫技術(shù)角色與行為控制方法、平行視覺角色與行為控制方法和本次提出的三維動(dòng)畫系統(tǒng)的角色與行為控制方法在不同窗口大小的幀速率,幀速率越快,控制效果越佳,幀速率越慢,控制效果越差。
5) 檢測上述三種方法控制不同三維角色模型的紋理數(shù),紋理數(shù)越高,表明所控制角色形象越飽滿。
6) 檢測上述三種方法控制不同行為的精度,控制精度越高,表明控制性能越優(yōu)。
4.2? 實(shí)驗(yàn)數(shù)據(jù)
實(shí)驗(yàn)數(shù)據(jù)主要包括5個(gè)角色全身行為,分別為行走、跑步、跳躍、高爾夫揮棒和拳擊。其中:動(dòng)畫角色行走行為共22 132幀;動(dòng)畫角色跑步行為共6 532幀;動(dòng)畫角色跳躍行為共3 562幀;動(dòng)畫角色高爾夫揮棒行為共3 653幀;動(dòng)畫角色拳擊行為共32 613幀。這些行為是在三維動(dòng)畫系統(tǒng)下,按照120 Hz的頻率獲取的。在實(shí)驗(yàn)中,要求動(dòng)畫角色都穿戴反光標(biāo)志,這樣就可以使用照相機(jī)拍攝想要的運(yùn)動(dòng)。為不影響控制效果,將分解的角色與行為捕獲數(shù)據(jù)平行取樣為30 Hz,以此保證實(shí)驗(yàn)結(jié)果的準(zhǔn)確性。
實(shí)驗(yàn)注意事項(xiàng):三維動(dòng)畫系統(tǒng)的計(jì)算效率主要依賴提前捕獲的運(yùn)動(dòng)數(shù)據(jù)庫,若數(shù)據(jù)庫過小,會影響實(shí)驗(yàn)數(shù)據(jù)的質(zhì)量。
4.3? 實(shí)驗(yàn)結(jié)果
4.3.1? 幀速率對比結(jié)果
基于動(dòng)畫技術(shù)的角色與行為控制方法、基于平行視覺角色與行為控制方法和本次提出的三維動(dòng)畫系統(tǒng)的角色與行為控制方法在不同窗口大小的幀速率的對比實(shí)驗(yàn)結(jié)果,如表2~表4所示。
從表2~表4實(shí)驗(yàn)結(jié)果可以看出,所提的三維動(dòng)畫系統(tǒng)的角色與行為控制方法相比平行視覺角色與行為控制方法、動(dòng)畫技術(shù)角色與行為控制方法的幀速率更快,且均保持在2.0 f/s左右,說明所提方法控制效果更佳。
4.3.2? 紋理數(shù)對比結(jié)果
基于動(dòng)畫技術(shù)的角色與行為控制方法、基于平行視覺角色與行為控制方法和本次提出的三維動(dòng)畫系統(tǒng)的角色與行為控制方法控制不同三維角色模型的不同行為紋理數(shù)對比實(shí)驗(yàn)結(jié)果,如表5~表7所示。
從表5~表7實(shí)驗(yàn)結(jié)果可以看出,所提的三維動(dòng)畫系統(tǒng)的角色與行為控制方法相比平行視覺角色與行為控制方法、動(dòng)畫技術(shù)角色與行為控制方法控制不同三維角色模型不同行為紋理數(shù)更高,說明所提方法控制三維角色模型效果更佳。
4.3.3? 控制精度對比結(jié)果
基于動(dòng)畫技術(shù)的角色與行為控制方法、基于平行視覺角色與行為控制方法和本次提出的三維動(dòng)畫系統(tǒng)的角色與行為控制方法控制三維動(dòng)畫系統(tǒng)的角色與行為控制精度如圖4所示。
通過圖4實(shí)驗(yàn)結(jié)果可以看出,采用本文所提方法控制三維動(dòng)畫系統(tǒng)角色不同行為精度均高于99%以上,而基于動(dòng)畫技術(shù)的角色與行為控制方法、基于平行視覺角色與行為控制方法控制三維動(dòng)畫系統(tǒng)角色不同行為精度均低于99%,再次驗(yàn)證了所提方法的控制性能。
5? 結(jié)? 語
本文方法也可以應(yīng)用于交互式設(shè)計(jì)的三維動(dòng)畫設(shè)計(jì)當(dāng)中,比如,手的控制和動(dòng)物行為控制等。在設(shè)計(jì)中發(fā)現(xiàn),三維動(dòng)畫系統(tǒng)可以將數(shù)據(jù)庫中的先驗(yàn)信息轉(zhuǎn)換為高質(zhì)量的三維動(dòng)畫模型,使得最終生成的動(dòng)畫效果更佳。但在實(shí)驗(yàn)中發(fā)現(xiàn),基于三維動(dòng)畫系統(tǒng)的角色與行為控制方法還存在一些漏洞,需要在后續(xù)的研究中加以改善。
參考文獻(xiàn)
[1] 高猛.三維虛擬校園漫游系統(tǒng)中的角色建模與行為控制[J].現(xiàn)代電子技術(shù),2019,42(14):104?107.
[2] 朱福全,楊麗平.基于健康度的虛擬火災(zāi)逃生行為控制研究[J].計(jì)算機(jī)工程與應(yīng)用,2019,55(16):204?208.
[3] 孫玉偉,成穎,謝娟.科研人員數(shù)據(jù)復(fù)用行為研究:系統(tǒng)綜述與元綜合[J].中國圖書館學(xué)報(bào),2019,45(3):110?130.
[4] 陳昊,郭為忠,高峰,等.步行機(jī)器人核電封頭移動(dòng)焊接控制任務(wù)建模與系統(tǒng)設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與研究,2018,34(5):102?111.
[5] 梁鵬,曹龍漢,張治中.LTE?Advanced網(wǎng)絡(luò)Uu接口用戶行為分析系統(tǒng)的研究與實(shí)現(xiàn)[J].電視技術(shù),2017,41(4):135?140.
[6] 朱素芬.社區(qū)老年教育教師角色特征與角色行為研究:基于Nvivo軟件的分析[J].成人教育,2017,37(3):57?62.
[7] 鄧院昌,史晨軍.基于貝葉斯結(jié)構(gòu)方程模型的疲勞駕駛行為意圖研究[J].安全與環(huán)境學(xué)報(bào),2019,19(2):520?526.
[8] 鄭源,李麗,孟志偉.大中型泵站機(jī)組三維檢修仿真培訓(xùn)系統(tǒng)開發(fā)[J].排灌機(jī)械工程學(xué)報(bào),2018,36(7):587?592.
[9] 葉鳳華,葉歡.基于Flash和3D動(dòng)畫渲染技術(shù)的育苗機(jī)器人設(shè)計(jì)[J].農(nóng)機(jī)化研究,2018,40(3):189?192.
[10] 張濤,唐敦兵,張澤群,等.面向數(shù)字化車間的介入式三維實(shí)時(shí)監(jiān)控系統(tǒng)[J].中國機(jī)械工程,2018,29(8):990?999.
[11] 王紹陽,李大華,高強(qiáng),等.基于結(jié)構(gòu)光的三維視覺檢測系統(tǒng)在矩形鋼生產(chǎn)線上的研究與設(shè)計(jì)[J].激光雜志,2018,39(11):108?113.
[12] 史賢俊,王康,肖支才,等.面向復(fù)雜系統(tǒng)的三維Bayes網(wǎng)絡(luò)測試性驗(yàn)證模型[J].北京航空航天大學(xué)學(xué)報(bào),2019,45(7):1303?1313.
[13] 李小路,曾晶晶,王皓,等.三維掃描激光雷達(dá)系統(tǒng)設(shè)計(jì)及實(shí)時(shí)成像技術(shù)[J].紅外與激光工程,2019,48(5):25?32.
[14] 朱建軍,安攀峰,萬明.工控網(wǎng)絡(luò)異常行為的RST?SVM入侵檢測方法[J].電子測量與儀器學(xué)報(bào),2018,32(7):8?14
[15] 葉鳳華,侯潔.襯板軋制動(dòng)漫設(shè)計(jì)用AZ61合金的組織與性能研究[J].熱加工工藝,2018,47(14):82?87.