
資陽動畫數(shù)學課件制作之幀插值
3)幀插值 根據(jù)配準曲線來插值生成單獨的一幀運動B(t,)的方法如下:先找到時間配置曲線上對應點S(“ ,),根據(jù)方位配準曲線對應的點A(ui)的值對齊S(u,)點對應的兩幀,之后按權重w(t,)計算加權平 均值,最后加入各種約束。 假定對于插值幀B(t。),“。的值是已經(jīng)知道的。首先創(chuàng)建這個幀,然后按照時間順序產生其他 的幀:假設B(t、,)不是第一個插值幀,而是需要插值的幀序列中某一中間幀,那么需要首先創(chuàng)建前 向幀(B(11),B(t2),…),然后創(chuàng)建后向幀(B(t-i),B(t-2),…)。我們需要u(t)嚴格遞增,這樣在 插值時間I不斷向前的情況下,全局時間2也會持續(xù)向前。
下面給㈩前向順序下產生插值幀的過程,相反方向產生幀的情況類似處理。 (1)沿配準曲線前進。 對于是個輸入待混合運動,可利用公式(5.8)計算: △J/=I乏:議,+f,r1,I名壽I。。,,l—,l△, c,.8, *flash動畫創(chuàng)作與后刪視頻處理技術* 這個公式可以用來計算全局時間參數(shù)“向前流動的速度,它是根據(jù)輸入運動時間配準曲線變化率 的插值權重組合而得。 (2)幀的定位和朝向。 一旦c4,定下來后,可以從輸入的運動中提取出幀序列M,(S+(“,)),且每個幀的原始配置是用 A,(“,)進行轉換的。這樣就產生了一組相互匹配的幀,使得可以通過一個變換丁(,,,在地面上 進行移位和旋轉。
這種情況下,整個變換應用到M;(S+(cJ,))上,則變換矩陣是丁(f,)A,(2/,) 。
對于插值的第一幀,丁(I。)可以任意選擇。對于其他幀,丁(,,)的選擇必須使得B(t,)的位置和 朝向與前一幀B(t,-I)-致。具體來說,臨時假定饑、(t)是l且對于f>,,:的所有的插值權重都是0 。則剩下的插值應該是簡單地用丁(t真…,)A/(“,—,)對M,的一部分進行直接拷貝和變換,所以 它和B(ti.-:)可以光滑地銜接在一起。如果△7\(,,)定義為 △T,(f,)=丁(f,—,)A](“廣1)A)—’(z4,), (5,il,然后設置丁(t,)=AT(,,)就得到這 個結果。
更一般的,每個運動M,會對T(t,)進行表決,即衡量它們相對局部坐標系統(tǒng)不變(也就是,△T\ (,,))的程度,然后這個表決結果根據(jù)插值權重進行平均。為了進行平均,必須選擇恰當?shù)膮?shù)來表 示rTj(,,)。我們的算法是首先在需要變換的幀序列的中心附近計算一個起始點。特別的,每個M (S ,(zJ,))都用△丁,(f,)A,(“,:)進行轉換過,這樣新的根節(jié)點的位置就被投影到地面且被統(tǒng)一 了。然后ATj(,,)采用參數(shù)集合I《1,-r+,z+}表示,代表的意義是對應于這個起始點旋轉乒后平移 (lj,z,)。最終,丁(t,)為 丁(t,,=|∑w,乒+,∑tL':/。r+,∑u,+:c:,l ( 5.111) / / /
轉載請注明:
資陽flash動畫制作公司:http://www.haldonestatewines.com/city169/