張靖超++常敬++郭林方
摘要:根據(jù)用戶指定的路徑,首先根據(jù)Gleicher[1]的方法得到帶有滑步的運(yùn)動(dòng)序列,滑步現(xiàn)象破壞了運(yùn)動(dòng)的真實(shí)性。根據(jù)BVH計(jì)算約束腳的位置和方向,利用向量平移旋轉(zhuǎn)約束腳去除滑步。最后利用IUP+OPENGL+LUA搭建運(yùn)動(dòng)編輯系統(tǒng)實(shí)現(xiàn)了實(shí)時(shí)生成任意角度的拐彎運(yùn)動(dòng)序列,驗(yàn)證了本系統(tǒng)的可行性。
關(guān)鍵詞:計(jì)算機(jī)動(dòng)畫; 人體運(yùn)動(dòng)編輯; 向量; 去滑步; BVH
中圖分類號: TP393
文獻(xiàn)標(biāo)志碼: A
文章編號: 2095-2163(2016)06-0036-04
0引言
隨著虛擬現(xiàn)實(shí)、電影、動(dòng)漫、游戲產(chǎn)業(yè)的高速發(fā)展,虛擬人動(dòng)畫已成為計(jì)算機(jī)領(lǐng)域的研究熱點(diǎn)。近年來,基于運(yùn)動(dòng)捕捉的動(dòng)畫由于其高效性、逼真性已成為研究的主流,但由于運(yùn)動(dòng)捕捉設(shè)備的昂貴性等因素卻限制了此技術(shù)的大規(guī)模普及推廣。為此如何提高捕捉數(shù)據(jù)的重用性即已成為本次研究的課題內(nèi)容。本文則就用戶指定路徑運(yùn)動(dòng)編輯和利用向量去除滑步的方法展開研究,并實(shí)現(xiàn)了系統(tǒng)構(gòu)建,從而獲取展示了實(shí)時(shí)生成任意角度的拐彎運(yùn)動(dòng)序列。
1相關(guān)技術(shù)
1.1BVH數(shù)據(jù)
BVH是常用的三維捕捉數(shù)據(jù)格式,其存儲數(shù)據(jù)包含2個(gè)部分:[JP]
第一部分,定義了關(guān)節(jié)樹和每個(gè)關(guān)節(jié)點(diǎn)的名稱、通道數(shù)目、關(guān)節(jié)與關(guān)節(jié)之間的相對位置, 通過各個(gè)關(guān)節(jié)的相對位置可以求出人體各部分的骨骼長度。每一個(gè)關(guān)節(jié), 都有3個(gè)旋轉(zhuǎn)因子( 相對于X、Y、Z軸的旋轉(zhuǎn)角度)來描述運(yùn)動(dòng)信息。對于不同的人體模型可以通過各部分骨骼的長度,關(guān)節(jié)旋轉(zhuǎn)的角度等來做出判斷區(qū)分。Hips 關(guān)節(jié)點(diǎn)作為整個(gè)人體的根關(guān)節(jié)點(diǎn)還含有三維空間位置參數(shù), 由此即分析給出了對人體運(yùn)動(dòng)情況的完整描述。
第二部分,記錄了運(yùn)動(dòng)的數(shù)據(jù), 定義了動(dòng)作數(shù)據(jù)持續(xù)的長度以及每幀之間的時(shí)間間隔。按照第一部分構(gòu)造的關(guān)節(jié)順序提供每幀數(shù)據(jù), 記錄了每一幀中各個(gè)關(guān)節(jié)節(jié)點(diǎn)的位置信息和旋轉(zhuǎn)信息。
綜上分析所述,可得BVH樹形層次結(jié)構(gòu)如圖1所示。
5結(jié)束語
本文重點(diǎn)介紹了利用向量平移旋轉(zhuǎn)去除滑步的過程,并搭建系統(tǒng)實(shí)現(xiàn)了直線運(yùn)動(dòng)編輯為任意角度的拐彎運(yùn)動(dòng)。基于向量的去除滑步會(huì)導(dǎo)致生成的運(yùn)動(dòng)序列根節(jié)點(diǎn)的位置發(fā)生變化,如果運(yùn)動(dòng)過于激烈則會(huì)導(dǎo)致根節(jié)點(diǎn)的路徑發(fā)生 “斷裂”,從而影響運(yùn)動(dòng)的真實(shí)性?;贗K的去滑步能夠有效解決這一問題,但是由于該方法運(yùn)算復(fù)雜,計(jì)算量大,仍然不能達(dá)到實(shí)時(shí)的要求。如何利用兩者的優(yōu)點(diǎn)實(shí)時(shí)生成逼真的運(yùn)動(dòng)序列即已成為后續(xù)研究的發(fā)展方向。
參考文獻(xiàn):[HT]
GLEICHER M. Motion path editing[C]//Proc.2001 ACM Symposium on Interactive 3D Graphics. New York:ACM, 2001:195-202.
[2]陳志華, 馬利莊, 李眾,等. 人體運(yùn)動(dòng)路徑的編輯算法[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2006,18(5):651-655.
[3] LEE J, SHIN S Y. A hierarchical approach to interactive motion editing for humanlike figures[C]//Proceedings of the 26th annual conference on Computer graphics and interactive techniques. Los Angeles, CA, USA :ACM,1999: 39-48.
[4] TOLANI D, GOSWAMI A, BADLER N I. Realtime inverse kinematics techniques for anthropomorphic limbs[J]. Graphical Models, 2000, 62(5):353-388.
[5]KOVAR L, GLEICHER M, SCHREINER J. Footskate cleanup for motion capture editing[C]// Proceedings of the 2002 ACM SIGGRAPH/Eurographics Symposium on Computer Animation(SCA). San Antonio, Texas: ACM, 2002: 97-104.
[6] LYARD E, MAGNENATTHALMANN N. A simple footskate removal method for virtual reality applications[J]. Visual Comput ,2007,23(9-11): 689-695.
[7] GUO X Y, XU S B, CHE W J, et al. Automatic motion generation based on path editing from motion capture data[M]// PAN Zhigeng, CHEOK A D, MLLER W,et al. Transactions on Edutainment IV.Berlin Heidelberg:Springer, 2010,6250: 91-104.[ZK)]
[FL)]