康文慧
(安徽工商職業(yè)學(xué)院信息工程學(xué)院,安徽 合肥 231131)
數(shù)字媒體時(shí)代,動(dòng)畫行業(yè)迅速興起。虛擬空間技術(shù)使動(dòng)畫變得生動(dòng)起來(lái),為用戶帶來(lái)新的視覺(jué)享受。許多學(xué)者開展了對(duì)交互式動(dòng)畫設(shè)計(jì)方法的研究,張巧靈等[1]研究了牛骨三維模型建立及交互演示方法,預(yù)先對(duì)三維動(dòng)畫空間定位,然后進(jìn)行交互設(shè)計(jì);馬洪石等[2]研究了Web端室內(nèi)三維交互系統(tǒng)的快速構(gòu)建方法,主要將層次模型應(yīng)用到其中,構(gòu)建具備交互能力的三維原型系統(tǒng)。上述交互式動(dòng)畫設(shè)計(jì)方法能夠?qū)崿F(xiàn)動(dòng)畫交互,但在應(yīng)用過(guò)程中,還存在不足之處。本文設(shè)計(jì)數(shù)字媒體時(shí)代下交互式動(dòng)畫設(shè)計(jì)方法,以期提高交互式動(dòng)畫的交互效果,使形成動(dòng)畫的各個(gè)階段都能夠取得較好的效果與體驗(yàn)。
基于動(dòng)畫的格式不同、類型不同,想要使動(dòng)畫人物變得更加生動(dòng)飽滿,就要根據(jù)模型的特點(diǎn)對(duì)三維空間的場(chǎng)景進(jìn)行仿真建模,收集真實(shí)模型的形態(tài)特征和數(shù)據(jù)信息,以此為基礎(chǔ)完成同等比例的場(chǎng)景中交互式動(dòng)畫設(shè)計(jì)。收集的主要內(nèi)容包括圖像基本信息、空間全景設(shè)計(jì)與相關(guān)人物動(dòng)作,將核心數(shù)據(jù)結(jié)合到一起,構(gòu)成一個(gè)相對(duì)完整的仿真模型[3],科學(xué)合理地連接虛擬與現(xiàn)實(shí)世界。
在建模過(guò)程中,交互動(dòng)畫節(jié)點(diǎn)的移動(dòng)速度決定動(dòng)畫的最終呈現(xiàn)效果,為了保證動(dòng)畫的一致性與完整性,以場(chǎng)景作為一個(gè)靜態(tài)的空間[4],準(zhǔn)確地利用坐標(biāo)來(lái)描述節(jié)點(diǎn)。假設(shè)存在一點(diǎn)Pl,其平面坐標(biāo)為(u,v),三維坐標(biāo)為(Xw,Yw,Zw),使平面與三維坐標(biāo)相互轉(zhuǎn)化,最后得到統(tǒng)一后的坐標(biāo)表達(dá)式為
(1)
其中,ax為虛擬空間中的轉(zhuǎn)換因子,ay為現(xiàn)實(shí)平面中的轉(zhuǎn)換因子,xd(1)與xd(2)分別代表橫軸上隨機(jī)兩個(gè)點(diǎn),(u0,v0)為處理后的Pl的坐標(biāo)。
將歸化后的坐標(biāo)逐一進(jìn)行迭代,實(shí)現(xiàn)坐標(biāo)的代償作用[5],當(dāng)xw迭代成xd時(shí),兩者的關(guān)系為
(2)
其中,xn為迭代后的坐標(biāo),δ為迭代次數(shù),k為系數(shù)。
可推算出實(shí)際坐標(biāo)的表達(dá)式為
(3)
其中,R代表矩陣,(Xc,Yc,Zc)代表實(shí)際坐標(biāo)。
為了使動(dòng)畫可以不依靠人工操作,而自動(dòng)化地進(jìn)行交互處理,將所采集的數(shù)據(jù)信息分類成特征集,按照虛擬空間的運(yùn)行模式來(lái)逐一融合[6],得到的向量為x1,x2,x3,x4,其表達(dá)式為
(4)
其中,m為特征因子,p1,p2,p3為場(chǎng)景的特征向量。
動(dòng)畫模型η及函數(shù)Rx描述為
(5)
并滿足條件:
(6)
其中,L(η)為場(chǎng)景中的檢驗(yàn)函數(shù),w(i,j)為動(dòng)畫中的節(jié)點(diǎn)坐標(biāo),d為圖像邊緣的模糊值,Z(i)為像素點(diǎn)的權(quán)重,而獲得的動(dòng)畫重構(gòu)仿真函數(shù)[7]為
(7)
其中,r為距離。
r能直接表明像素點(diǎn)的密集程度[8],而后得到的虛擬空間大小范圍公式為
G1=(1+μY)(1+λY)G,
(8)
其中,G1為三維空間中場(chǎng)景,G為實(shí)際模擬的場(chǎng)景,μ為一個(gè)整數(shù),λ為系數(shù),通過(guò)對(duì)這幾個(gè)元素的控制,來(lái)確定空間中場(chǎng)景的實(shí)際大小。
而對(duì)于場(chǎng)景的特征模型,可采用反向思維,通過(guò)誤差的范圍來(lái)確定模型重構(gòu)的幾率[9]。假設(shè)虛擬的模型為A,實(shí)際的數(shù)量為N,那么誤差的表達(dá)式為
(9)
其中,l1,l2為誤差,ω為誤差的特征向量。
基于誤差變化生成的三維動(dòng)畫場(chǎng)景模型[10]為
(10)
其中,κ代表自動(dòng)生成的模型,P代表概率,q代表隨機(jī)因子,根據(jù)重構(gòu)圖像的邊緣信息就可以生成動(dòng)畫的主要部分,有效地激發(fā)出動(dòng)畫的自主匹配能力。
動(dòng)畫模擬需要在三維空間建立過(guò)程中對(duì)動(dòng)畫軌跡進(jìn)行模擬。目前,最為可靠且成熟的捕捉技術(shù)是軌跡模擬與動(dòng)畫插件技術(shù),不但可以快速地構(gòu)成一個(gè)模擬動(dòng)作,還可以識(shí)別出更加細(xì)致的人類行為,使動(dòng)畫的移動(dòng)更加順暢。運(yùn)動(dòng)捕捉模塊如圖1所示。
圖1 運(yùn)動(dòng)捕捉模塊
利用攝像或者視頻對(duì)動(dòng)作進(jìn)行采集,然后將拍攝到的圖像進(jìn)行模擬分析,通過(guò)捕捉技術(shù)將動(dòng)作分解成多個(gè)點(diǎn)的集合。利用點(diǎn)與點(diǎn)之間的相關(guān)性將其連接,形成一個(gè)連續(xù)的、光滑的三維動(dòng)畫,最后對(duì)動(dòng)畫的每個(gè)細(xì)節(jié)進(jìn)行逐一處理,獲取相關(guān)數(shù)據(jù),保存已經(jīng)優(yōu)化的動(dòng)畫,將其加入到三維空間中進(jìn)行交互。整個(gè)交互流程如圖2所示。
圖2 交互式動(dòng)畫交互流程
但是在交互過(guò)程中,最難控制的就是節(jié)點(diǎn)的變化性與移動(dòng)性,這兩者直接決定節(jié)點(diǎn)的穩(wěn)定性[11],為此需要進(jìn)一步處理。假設(shè)節(jié)點(diǎn)移動(dòng)的加速度為ai,可以利用虛擬與現(xiàn)實(shí)之間的比例關(guān)系計(jì)算得出ai,然后就能夠得到節(jié)點(diǎn)的位置范圍[12],描述出節(jié)點(diǎn)運(yùn)動(dòng)的曲線。
(11)
其中,t為時(shí)間,vi為速度,ri為距離。
在確定距離與速度的情況下,對(duì)t時(shí)節(jié)點(diǎn)的速率進(jìn)行計(jì)算,則
(12)
交互式動(dòng)畫最常用的交互方法為SPH法,其中涉及的元素有速度、時(shí)間與網(wǎng)速,在此基礎(chǔ)上建立光滑函數(shù),來(lái)描述每個(gè)節(jié)點(diǎn)在虛擬空間的連接變化[13]。
(13)
而節(jié)點(diǎn)的排列變化為
(14)
結(jié)合上述公式,得到
(15)
其中,Wp表示函數(shù)關(guān)系,h表示場(chǎng)景大小,r為距離。
與其他函數(shù)相比,該函數(shù)可以精確到每一個(gè)節(jié)點(diǎn)之間的細(xì)微距離,在計(jì)算中只需對(duì)距離進(jìn)行限制,最大程度地降低了計(jì)算的失誤率,減少元素的輸出[14],避免過(guò)多的變量影響計(jì)算結(jié)果。
當(dāng)節(jié)點(diǎn)間距離為負(fù)時(shí),其排列變化也會(huì)發(fā)生改變,逐漸縮短距離,直到消失。與此同時(shí),當(dāng)距離為負(fù)時(shí),節(jié)點(diǎn)移動(dòng)速度會(huì)直線上升,不再進(jìn)行有規(guī)律運(yùn)動(dòng),而是沒(méi)有方向地混亂變換位置[15],其數(shù)學(xué)表達(dá)式為
(16)
而運(yùn)動(dòng)的規(guī)律為
(17)
當(dāng)距離r接近0時(shí),節(jié)點(diǎn)的規(guī)律性增強(qiáng),其交互能力相對(duì)更強(qiáng)。而對(duì)于動(dòng)畫動(dòng)作的光滑性來(lái)說(shuō),只涉及動(dòng)畫中點(diǎn)的變化,其表達(dá)式為
(18)
光滑因子的表達(dá)式為
(19)
運(yùn)用SPH算法,能夠有效地完成動(dòng)畫的復(fù)刻與模擬,實(shí)現(xiàn)交互式動(dòng)畫設(shè)計(jì)。
此次實(shí)驗(yàn)中應(yīng)用的硬件配置:Intel?Pentium?Dual CPU2200、顯示卡、DELL顯示器等。
系統(tǒng)軟件配置:三維視景仿真軟件、可視化仿真建模軟件、DI-Guy人體交互仿真軟件。
仿真系統(tǒng)的整體結(jié)構(gòu)流程如圖3所示。
圖3 視景仿真結(jié)構(gòu)流程圖
在整個(gè)交互過(guò)程中,同時(shí)使用硬件系統(tǒng)與軟件系統(tǒng),實(shí)時(shí)控制實(shí)驗(yàn)過(guò)程,直到完成實(shí)驗(yàn)為止。為了減少實(shí)驗(yàn)時(shí)間預(yù)先對(duì)實(shí)驗(yàn)場(chǎng)景建模與場(chǎng)景驅(qū)動(dòng),采用場(chǎng)景驅(qū)動(dòng)軟件平臺(tái),渲染仿真場(chǎng)景并進(jìn)行驅(qū)動(dòng)控制。該仿真系統(tǒng)在VC++環(huán)境下使用,利用視景仿真軟件的應(yīng)用程序接口與圖形化界面實(shí)現(xiàn)場(chǎng)景的視景渲染。
以人體關(guān)節(jié)活動(dòng)情況為例,制作人體關(guān)節(jié)動(dòng)畫,然后進(jìn)行交互,對(duì)比結(jié)果如表1所示。
表1 人體關(guān)節(jié)動(dòng)畫前彎、后彎位置交互效果
由表1可知,在交互中,運(yùn)用本文方法設(shè)計(jì)的人體動(dòng)畫位置,與實(shí)際前彎、后彎位置基本保持一致,而其他兩種方法與實(shí)際位置具有一定的差距,動(dòng)畫交互效果不佳。
人體動(dòng)畫關(guān)節(jié)左歪、右歪位置交互結(jié)果如表2所示。
表2 人體關(guān)節(jié)動(dòng)畫左歪、右歪位置交互效果
人體左轉(zhuǎn)、右轉(zhuǎn)位置交互結(jié)果如表3所示。
表3 人體關(guān)節(jié)動(dòng)畫左轉(zhuǎn)、右轉(zhuǎn)位置交互效果
由表3可以發(fā)現(xiàn),本文提出的交互式動(dòng)畫設(shè)計(jì)方法,在交互設(shè)計(jì)后人體關(guān)節(jié)動(dòng)畫在各個(gè)角度的位置與實(shí)際位置都能夠保持較小的誤差,而其他兩種方法都發(fā)生了不同的較大誤差,交互效果不佳,不能按照用戶需求與動(dòng)畫交互。
在此基礎(chǔ)上進(jìn)一步驗(yàn)證該方法的有效性,對(duì)比三種方法動(dòng)畫交互的實(shí)時(shí)性,結(jié)果如圖4所示。
由圖4可知,本文提出的交互式動(dòng)畫設(shè)計(jì)方法的實(shí)時(shí)性較好,當(dāng)用戶下達(dá)指令后能夠在短時(shí)間內(nèi)實(shí)現(xiàn)動(dòng)畫的交互,較其他兩種方法,應(yīng)用效果更好。
圖4 動(dòng)畫交互實(shí)時(shí)性對(duì)比
虛擬世界中的交互式動(dòng)畫設(shè)計(jì),不但將數(shù)字媒體推向了新的高度,也是動(dòng)畫產(chǎn)業(yè)以及技術(shù)成熟的標(biāo)志。本文提出的交互式動(dòng)畫設(shè)計(jì)方法,在傳統(tǒng)技術(shù)的基礎(chǔ)上進(jìn)行創(chuàng)新,使現(xiàn)代技術(shù)手段與虛擬技術(shù)融合,彌補(bǔ)了傳統(tǒng)方法的不足。本文方法在實(shí)驗(yàn)部分對(duì)比指標(biāo)不是很全面,后續(xù)研究將通過(guò)實(shí)驗(yàn)進(jìn)一步完善。