專利名稱:一種基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)三維動(dòng)畫領(lǐng)域,尤其涉及一種基于非線性流形學(xué)習(xí)的三 維人體運(yùn)動(dòng)合成方法。
背景技術(shù):
現(xiàn)有的數(shù)據(jù)驅(qū)動(dòng)的運(yùn)動(dòng)合成技術(shù)提供了很多方法,如運(yùn)動(dòng)過(guò)渡、運(yùn)動(dòng)融合、 運(yùn)動(dòng)圖模型等,使得用戶可以將多個(gè)已有運(yùn)動(dòng)數(shù)據(jù)作為輸入,經(jīng)過(guò)一系列算法 處理合成得到新的運(yùn)動(dòng)序列。但是,如何精確控制運(yùn)動(dòng)合成的結(jié)果一直是數(shù)據(jù) 驅(qū)動(dòng)運(yùn)動(dòng)合成方法所面臨的難點(diǎn)。采用非線性流形降維技術(shù)能夠發(fā)掘已有運(yùn)動(dòng) 數(shù)據(jù)的最本質(zhì)運(yùn)動(dòng)特征,并可用于指導(dǎo)生成具有新特性的運(yùn)動(dòng)數(shù)據(jù)。但現(xiàn)有很 多基于非線性流形學(xué)習(xí)的運(yùn)動(dòng)很成方法都存在對(duì)運(yùn)動(dòng)合成結(jié)果控制不精確的問(wèn) 題,難以滿足現(xiàn)實(shí)應(yīng)用的需求?,F(xiàn)有的基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合 成和編輯可以分為以下幾類
人體運(yùn)動(dòng)數(shù)據(jù)重新排列通過(guò)非線性流形學(xué)習(xí)方法將三維人體運(yùn)動(dòng)序列投 影到低維流形上,通過(guò)用戶指定的起始幀和若干關(guān)鍵幀進(jìn)行重排得到新的運(yùn)動(dòng) 序列。但這種方式其本質(zhì)在于對(duì)原始運(yùn)動(dòng)幀的重新排序,并未實(shí)際生成具有新 特性的運(yùn)動(dòng)數(shù)據(jù)。
建立逆向映射模型的合成方法采用非線性流形學(xué)習(xí)方法得到高維運(yùn)動(dòng)數(shù) 據(jù)在低維流形上的分布,基于己有低維流形到高維樣本的對(duì)應(yīng)關(guān)系通過(guò)RBF函 數(shù)訓(xùn)練得到一個(gè)逆向映射的產(chǎn)生式模型,用于從低維樣本合成對(duì)應(yīng)的高維運(yùn)動(dòng) 數(shù)據(jù)。但是由于原始樣本分布的稀疏性及低維流形維度較小,重建得到的三維 人體姿態(tài)存在失真現(xiàn)象,并且所生成新運(yùn)動(dòng)相鄰幀之間存在較大跳變。
稀疏運(yùn)動(dòng)集的低維空間交互合成方法將原始運(yùn)動(dòng)數(shù)據(jù)通過(guò)非線性流形學(xué) 習(xí)投影到低維流形空間并對(duì)其可視化,用戶直接在低維流形空間中采取勾畫草 圖、指定關(guān)鍵幀等方式控制原始運(yùn)動(dòng)數(shù)據(jù)在時(shí)域和空域上進(jìn)行插值生成新的運(yùn) 動(dòng)數(shù)據(jù)。但該方法的不足之處在于數(shù)據(jù)樣本在低維空間中分布比較松散,合成 運(yùn)動(dòng)的語(yǔ)義不能做到精確控制。
發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有技術(shù)的不足,提供一種基于非線性流形學(xué)習(xí)的三 維人體運(yùn)動(dòng)合成方法。
基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方法包括如下步驟-1) 將一組經(jīng)過(guò)預(yù)處理的長(zhǎng)度相同的三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組向 量,作為非線性流形學(xué)習(xí)方法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀疏 三維人體運(yùn)動(dòng)樣本映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間;
2) 對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣,并將重采樣系數(shù) 集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間中分布密集且均 勻的運(yùn)動(dòng)樣本;
3) 將密集重采樣得到的高維運(yùn)動(dòng)樣本通過(guò)非線性流形學(xué)習(xí)重映射得到最終 的低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間;
4) 用戶通過(guò)交互在低維語(yǔ)義參數(shù)空間中選擇合成的運(yùn)動(dòng)語(yǔ)義參數(shù),系統(tǒng)將 該運(yùn)動(dòng)語(yǔ)義參數(shù)映射到高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列。
所述的將一組經(jīng)過(guò)預(yù)處理的長(zhǎng)度相同的三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組 向量,作為非線性流形學(xué)習(xí)方法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀 疏三維人體運(yùn)動(dòng)樣本映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間步驟-
1) 從每個(gè)原始運(yùn)動(dòng)樣本中提取一段完整的運(yùn)動(dòng)周期;
2) 通過(guò)時(shí)間變形方法調(diào)整運(yùn)動(dòng)之間的"步調(diào)" 一致并保證運(yùn)動(dòng)數(shù)據(jù)的長(zhǎng)度 相同,運(yùn)動(dòng)數(shù)據(jù)預(yù)處理后,所有運(yùn)動(dòng)數(shù)據(jù)樣本在原始數(shù)據(jù)空間中具有相同的長(zhǎng) 度和自由度;
3) 將一組三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組向量,作為非線性流形學(xué)習(xí)方 法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀疏三維人體運(yùn)動(dòng)樣本映射到低 維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間。
所述的對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣,并將重采樣 系數(shù)集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間中密集且均 勻分布的運(yùn)動(dòng)樣本步驟-
1) 對(duì)于一組經(jīng)過(guò)預(yù)處理后的運(yùn)動(dòng)集M,戶—為,…,mJ,用戶指定采樣數(shù)目 N和等待時(shí)間t,將Af,w通過(guò)非線性流形學(xué)習(xí)方法映射得到維度為d的低維流形,
記為& ={^,A,...,;^ ,"為該組運(yùn)動(dòng)集合的本征運(yùn)動(dòng)語(yǔ)義的維度;
2) 在d維流形上求取樣本集合;^的外包圍盒;
3) 在外包圍盒內(nèi)部隨機(jī)產(chǎn)生一點(diǎn)^,在低維流形上找到距^最近的d+l個(gè)點(diǎn) A》;,...,^+1,同時(shí)隨機(jī)生成一組權(quán)重^,>^,...,^+1, (^>^^1,2>,=1,用于合成低 維流形中新的樣本點(diǎn);/=1>^,并將該組權(quán)重系數(shù)^1,2,...,~+1賦給對(duì)應(yīng)的高維 運(yùn)動(dòng)樣本得到新運(yùn)動(dòng)m,-:gw,.m,,其中附,是與A相對(duì)應(yīng)的高維運(yùn)動(dòng)樣本;進(jìn)行上 述重采樣時(shí),可采用公式'、3)判斷新樣本在低維空間中的分布是否足夠均勻,若滿足公式l, m^-m^U附',/^n,L^',否則丟棄p'和附';<formula>formula see original document page 7</formula>
其中^'是用于合成低維流形中新的樣本點(diǎn),是;7"是集合;^;,...,^中距離^, 最遠(yuǎn)的點(diǎn),2為用戶指定的閾值,用于控制樣本采樣的密度,0.5Sh3較為適宜, 用戶指定采樣數(shù)目,、《in分別為已有樣本在維度/上的最大坐標(biāo)和最小
坐標(biāo),"為該組運(yùn)動(dòng)集合的本征運(yùn)動(dòng)語(yǔ)義的維度,p采用歐式距離計(jì)算樣本點(diǎn)之
間的距離;
4) 重復(fù)步驟3),直到采樣數(shù)目達(dá)到了N或者采樣時(shí)間超過(guò)t;
5) 若采樣不夠密集,可將新采樣后的m^作為已有樣本,重復(fù)步驟l) ~步 驟4)。
所述的將用戶在低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間中交互合成的運(yùn)動(dòng)語(yǔ)義參數(shù)映射到 高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列步驟
1) 用戶通過(guò)鼠標(biāo)左鍵在低維流形表示中選擇需要合成的運(yùn)動(dòng)約束,系統(tǒng)自動(dòng) 重建出對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù),用戶通過(guò)鼠標(biāo)右鍵選取運(yùn)動(dòng)語(yǔ)義參數(shù)空間中的已 有采樣點(diǎn)進(jìn)行實(shí)時(shí)預(yù)覽,以確定所需生成的新運(yùn)動(dòng)樣本的語(yǔ)義特征;
2) 給定運(yùn)動(dòng)語(yǔ)義參數(shù)空間中用戶指定的一個(gè)新樣本》,首先在低維流形上 找到》的k個(gè)最近鄰樣本,并將其按照到》距離的升序排列得到樣本集合
,根據(jù)如下公式求取得到采用這k個(gè)近鄰對(duì)》進(jìn)行線性擬合的加權(quán)系
數(shù)集合;
其中D^a)表示兩個(gè)樣本/7, /7,在低維空間中的歐氏距離,》為給定運(yùn)動(dòng)語(yǔ) 義參數(shù)空間中用戶指定的一個(gè)新樣本,a為》的a個(gè)最近鄰樣本中的第/個(gè)樣本,
A為A個(gè)最近鄰樣本距離最遠(yuǎn)的樣本,w,為線性擬合的加權(quán)系數(shù);
3) 將w'規(guī)一化后映射到與該組近鄰樣本相對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù)集合 Wl,m2,..,,根據(jù)如下公式合成得到重建得到的新運(yùn)動(dòng)數(shù)據(jù);
附
<formula>formula see original document page 7</formula>
其中化是經(jīng)過(guò)規(guī)一化處理后的權(quán)重系數(shù),m,為低維空間中A:個(gè)最近鄰樣本 里的第/個(gè)樣本對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù),&是重建得到的運(yùn)動(dòng)數(shù)據(jù)。本發(fā)明與現(xiàn)有技術(shù)相比具有的有益效果
1 )通過(guò)非線性流形學(xué)習(xí)方法把三維人體運(yùn)動(dòng)的運(yùn)動(dòng)語(yǔ)義映射到低維空間, 用戶對(duì)合成的運(yùn)動(dòng)語(yǔ)義的控制交互在低維空間上進(jìn)行,使得控制合成的三維人 體運(yùn)動(dòng)語(yǔ)義更加簡(jiǎn)單,提高了三維人體動(dòng)畫的制作效率;
2) 對(duì)稀疏三維人體運(yùn)動(dòng)樣本進(jìn)行分布均勻的密集重采樣,可以對(duì)合成的運(yùn) 動(dòng)語(yǔ)義進(jìn)行精確地控制;
3) 不僅能夠?qū)θ缣囟P(guān)節(jié)的運(yùn)動(dòng)位置、物理運(yùn)動(dòng)特征等運(yùn)動(dòng)物理參數(shù)進(jìn)行 較為精確的控制,還可用于合成具有如運(yùn)動(dòng)風(fēng)格等高層運(yùn)動(dòng)語(yǔ)義的新運(yùn)動(dòng)數(shù)據(jù)。
下面結(jié)合附圖和具體實(shí)施對(duì)本發(fā)明作進(jìn)一步的說(shuō)明;
圖1為右手抓取運(yùn)動(dòng)樣本的密集采樣及構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間過(guò)程示意圖2 (a)為用戶在低維運(yùn)動(dòng)語(yǔ)義空間中交互選擇重建樣本點(diǎn)界面示意圖2 (b)為對(duì)用戶選擇的樣本點(diǎn)重建得到的三維人體運(yùn)動(dòng);
圖3 (a)為右手抓取運(yùn)動(dòng)在低維空間中的語(yǔ)義本征示意圖3 (b)為沿著V方向的四個(gè)右手抓取運(yùn)動(dòng)的重建示意圖,重建得到的運(yùn)
動(dòng)右手腕關(guān)節(jié)最終位置沿著V向量方向,右手腕關(guān)節(jié)達(dá)到的最終位置從下到上
分布;
圖3 (c)為沿著H方向的四個(gè)右手抓取運(yùn)動(dòng)的重建示意圖,重建得到的運(yùn) 動(dòng)右手腕關(guān)節(jié)最終位置沿著H向量方向,右手腕關(guān)節(jié)達(dá)到的最終位置從左到右 分布;
圖4 (a)為三種不同風(fēng)格的走路運(yùn)動(dòng)樣本在低維流形中的分布示意圖; 圖4 (b)為合成得到的走路運(yùn)動(dòng)從左至右貓步風(fēng)格逐漸減弱示意圖; 圖4 (c)為合成得到的走路運(yùn)動(dòng)從左至右擺臂幅度越來(lái)越小示意圖; 圖4 (d)為合成得到的走路運(yùn)動(dòng)從左至右貓步風(fēng)格逐漸減弱,擺臂幅度風(fēng)
格逐漸增強(qiáng)示意圖。
具體實(shí)施例方式
基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方法包括如下步驟
1) 將一組經(jīng)過(guò)預(yù)處理的長(zhǎng)度相同的三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組向 量,作為非線性流形學(xué)習(xí)方法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀疏 三維人體運(yùn)動(dòng)樣本映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間;
2) 對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣,并將重采樣系數(shù) 集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間中分布密集且均勻的運(yùn)動(dòng)樣本;
3) 將密集重采樣得到的高維運(yùn)動(dòng)樣本通過(guò)非線性流形學(xué)習(xí)重映射得到最終 的低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間;
4) 用戶通過(guò)交互在低維語(yǔ)義參數(shù)空間中選擇合成的運(yùn)動(dòng)語(yǔ)義參數(shù),系統(tǒng)將 該運(yùn)動(dòng)語(yǔ)義參數(shù)映射到高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列。
所述的將一組經(jīng)過(guò)預(yù)處理的長(zhǎng)度相同的三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組 向量,作為非線性流形學(xué)習(xí)方法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀
疏三維人體運(yùn)動(dòng)樣本映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間步驟-
1) 從每個(gè)原始運(yùn)動(dòng)樣本中提取一段完整的運(yùn)動(dòng)周期;
2) 通過(guò)時(shí)間變形方法調(diào)整運(yùn)動(dòng)之間的"步調(diào)" 一致并保證運(yùn)動(dòng)數(shù)據(jù)的長(zhǎng)度 相同,運(yùn)動(dòng)數(shù)據(jù)預(yù)處理后,所有運(yùn)動(dòng)數(shù)據(jù)樣本在原始數(shù)據(jù)空間中具有相同的長(zhǎng) 度和自由度。
3) 將一組三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組向量,作為非線性流形學(xué)習(xí)方 法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀疏三維人體運(yùn)動(dòng)樣本映射到低 維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間。
為了求取嵌入在復(fù)雜高維流形上的三維人體運(yùn)動(dòng)語(yǔ)義參數(shù)空間,可以考慮 采用各種流形降維方法,考慮到三維人體運(yùn)動(dòng)數(shù)據(jù)在高維流形上的分布是非線 性的且在進(jìn)行本征語(yǔ)義參數(shù)分析時(shí)需考慮到運(yùn)動(dòng)樣本集的全局特性,采用 ISOMAP方法將經(jīng)過(guò)預(yù)處理的三維人體運(yùn)動(dòng)數(shù)據(jù)映射到低維流形以構(gòu)建低維運(yùn) 動(dòng)語(yǔ)義參數(shù)空間,具體步驟如下
(1 )將經(jīng)過(guò)預(yù)處理的N個(gè)長(zhǎng)度均為L(zhǎng)的三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為3*K*L 維的向量,作為ISOMAP算法的輸入數(shù)據(jù)集X,其中K為所采用人體骨架除去 根結(jié)點(diǎn)后的關(guān)節(jié)數(shù),每個(gè)關(guān)節(jié)具有3個(gè)旋轉(zhuǎn)數(shù)據(jù);
(2) 計(jì)算局部鄰域選擇距離度量函數(shù)計(jì)算數(shù)據(jù)集X中每一對(duì)數(shù)據(jù)點(diǎn);q, 》之間的距離,^,有兩種方式計(jì)算數(shù)據(jù)點(diǎn)、的局部鄰域M , 7v,=AIA^,》<^,或者^(guò)取數(shù)據(jù)點(diǎn)a的k最近鄰。特別注意的是計(jì)算D^^ 時(shí)應(yīng)該為人體骨架上不同層次的關(guān)節(jié)點(diǎn)設(shè)置不同的權(quán)重,距離根節(jié)點(diǎn)越近的關(guān) 節(jié)點(diǎn)其權(quán)重值越大;
(3) 計(jì)算測(cè)地線距離,構(gòu)建距離矩陣A"》以局部鄰域的數(shù)據(jù)點(diǎn),構(gòu)建無(wú) 向連接圖Grr-《巧,其中E為〈^,;c,, ;c,M,局部鄰域數(shù)據(jù)點(diǎn)之間的連接。以 ^//,》即無(wú)向圖的最短路徑來(lái)近似表示流形的測(cè)地線距離^^。
(4) 應(yīng)用MDS求解數(shù)據(jù)的d維低維流形嵌入,即得到上述運(yùn)動(dòng)樣本集的低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間。
所述的對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣,并將重采樣 系數(shù)集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間中密集且均 勻分布的運(yùn)動(dòng)樣本步驟
1) 對(duì)于一組經(jīng)過(guò)預(yù)處理后的運(yùn)動(dòng)集7^,=/^,附2,...,附^,用戶指定采樣數(shù)目 N和等待時(shí)間t,將M^通過(guò)非線性流形學(xué)習(xí)方法映射得到維度為d的低維流形, 記為,"為該組運(yùn)動(dòng)集合的本征運(yùn)動(dòng)語(yǔ)義的維度;
2) 在"維流形上求取樣本集合j^的外包圍盒;
3) 在外包圍盒內(nèi)部隨機(jī)產(chǎn)生一點(diǎn)p,在低維流形上找到距/7最近的d+l個(gè)點(diǎn) A>;,...,^+1,同時(shí)隨機(jī)生成一組權(quán)重^,^2,...,^+1, 0SW^l,§w=l,用于合成低 維流形中新的樣本點(diǎn);/=1>,^,并將該組權(quán)重系數(shù)^,2,...,巧+1賦給對(duì)應(yīng)的高維
,
運(yùn)動(dòng)樣本得到新運(yùn)動(dòng)m,-^w^,其中^是與p,:相對(duì)應(yīng)的高維運(yùn)動(dòng)樣本;進(jìn)行上 述重采樣時(shí),可采用公式',3)判斷新樣本在低維空間中的分布是否足夠均勻,
若滿足公式l, Mm,m^U附',a, = ;^L^',否則丟棄y和附';
<formula>formula see original document page 10</formula>
其中p是用于合成低維流形中新的樣本點(diǎn),是/7"是集合/^;,…,;^中距離/7' 最遠(yuǎn)的點(diǎn),A為用戶指定的閾值,用于控制樣本釆樣的密度,0.5W"較為適宜, 用戶指定采樣數(shù)目,C_ 、 分別為已有樣本在維度/上的最大坐標(biāo)和最小 坐標(biāo),"為該組運(yùn)動(dòng)集合的本征運(yùn)動(dòng)語(yǔ)義的維度,Z)采用歐式距離計(jì)算樣本點(diǎn)之 間的距離;
4) 重復(fù)步驟3),直到采樣數(shù)目達(dá)到了N或者采樣時(shí)間超過(guò)t;
5) 若采樣不夠密集,可將新采樣后的JVC作為已有樣本,重復(fù)步驟l) ~步 驟4)。圖1表示了九個(gè)稀疏的右手抓取運(yùn)動(dòng)樣本的密集采樣及構(gòu)建運(yùn)動(dòng)語(yǔ)義參 數(shù)空間過(guò)程。
所述的將用戶在低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間中交互合成的運(yùn)動(dòng)語(yǔ)義參數(shù)映射到 高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列步驟
l)用戶通過(guò)鼠標(biāo)左鍵在低維流形表示中選擇需要合成的運(yùn)動(dòng)約束,系統(tǒng)自動(dòng) 重建出對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù),用戶通過(guò)鼠標(biāo)右鍵選取運(yùn)動(dòng)語(yǔ)義參數(shù)空間中的已 有采樣點(diǎn)進(jìn)行實(shí)時(shí)預(yù)覽,以確定所需生成的新運(yùn)動(dòng)樣本的語(yǔ)義特征;圖2表示 了用戶在低維空間中通過(guò)交互實(shí)時(shí)重建得到三維人體運(yùn)動(dòng)的界面;2)給定運(yùn)動(dòng)語(yǔ)義參數(shù)空間中用戶指定的一個(gè)新樣本》,首先在低維流形上 找到》的k個(gè)最近鄰樣本,并將其按照到》距離的升序排列得到樣本集合 A,A,...,A,根據(jù)如下公式求取得到采用這k個(gè)近鄰對(duì)》進(jìn)行線性擬合的加權(quán)系
其中D(^,^;表示兩個(gè)樣本^, A在低維空間中的歐氏距離,》為給定運(yùn)動(dòng)語(yǔ)
義參數(shù)空間中用戶指定的一個(gè)新樣本,A為》的^個(gè)最近鄰樣本中的第z'個(gè)樣本, ^為^:個(gè)最近鄰樣本距離最遠(yuǎn)的樣本,w,.為線性擬合的加權(quán)系數(shù);
3)將^規(guī)一化后映射到與該組近鄰樣本相對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù)集合 ,根據(jù)如下公式合成得到重建得到的新運(yùn)動(dòng)數(shù)據(jù);
<formula>formula see original document page 11</formula>
其中化是經(jīng)過(guò)規(guī)一化處理后的權(quán)重系數(shù),附,為低維空間中^個(gè)最近鄰樣本 里的第/個(gè)樣本對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù),^是重建得到的運(yùn)動(dòng)數(shù)據(jù)。
圖3給出了右手抓取這個(gè)運(yùn)動(dòng)的重建結(jié)果,圖3 (b)中生成的運(yùn)動(dòng)沿著圖 3 (a)中所示的V向量方向,右手腕關(guān)節(jié)達(dá)到的最終位置從下到上分布;而圖 3 (c)中生成的運(yùn)動(dòng)沿著H向量方向,抓取運(yùn)動(dòng)右手腕關(guān)節(jié)到達(dá)的最終位置從 左到右分布。H與V接近于正交,且其分布與原始運(yùn)動(dòng)空間中右手腕關(guān)節(jié)達(dá)到 最終位置的分布相一致,因此該低維運(yùn)動(dòng)語(yǔ)義空間所表達(dá)的抓取運(yùn)動(dòng)的本征就 是右手腕關(guān)節(jié)的最終位置。說(shuō)明本發(fā)明可以對(duì)如特定關(guān)節(jié)的運(yùn)動(dòng)位置、物理運(yùn) 動(dòng)特征等運(yùn)動(dòng)物理參數(shù)進(jìn)行較為精確的控制。
圖4中采用三組不同風(fēng)格的走路運(yùn)動(dòng)樣本(包括正常走路、大幅度擺臂走 路及貓步)構(gòu)建低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間。如圖4 (a)所示,三種不同風(fēng)格的走 路運(yùn)動(dòng)分布在低維流形空間的三個(gè)角落,這表明低維流行中的樣本分布情況能 夠很好的區(qū)分與表達(dá)不同運(yùn)動(dòng)風(fēng)格。圖4 (b)、圖4 (c)、圖4 (d)給出了基于 該低維運(yùn)動(dòng)語(yǔ)義空間合成不同風(fēng)格走路運(yùn)動(dòng)的結(jié)果。從合成結(jié)果可以看到,用 戶完全可以通過(guò)本文所述方法所構(gòu)建的低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間對(duì)運(yùn)動(dòng)風(fēng)格進(jìn)行 控制與合成。
權(quán)利要求
1、一種基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方法,其特征在于包括如下步驟1)將一組經(jīng)過(guò)預(yù)處理的長(zhǎng)度相同的三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組向量,作為非線性流形學(xué)習(xí)方法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀疏三維人體運(yùn)動(dòng)樣本映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間;2)對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣,并將重采樣系數(shù)集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間中分布密集且均勻的運(yùn)動(dòng)樣本;3)將密集重采樣得到的高維運(yùn)動(dòng)樣本通過(guò)非線性流形學(xué)習(xí)重映射得到最終的低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間;4)用戶通過(guò)交互在低維語(yǔ)義參數(shù)空間中選擇合成的運(yùn)動(dòng)語(yǔ)義參數(shù),系統(tǒng)將該運(yùn)動(dòng)語(yǔ)義參數(shù)映射到高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列。
2、 根據(jù)權(quán)利要求1所述的一種基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方 法,其特征在于所述的將一組經(jīng)過(guò)預(yù)處理的長(zhǎng)度相同的三維人體運(yùn)動(dòng)數(shù)據(jù)分別 展開(kāi)為一組向量,作為非線性流形學(xué)習(xí)方法的輸入,通過(guò)非線性流形學(xué)習(xí)方法 將這一組稀疏三維人體運(yùn)動(dòng)樣本映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間步 驟1) 從每個(gè)原始運(yùn)動(dòng)樣本中提取一段完整的運(yùn)動(dòng)周期;2) 通過(guò)時(shí)間變形方法調(diào)整運(yùn)動(dòng)之間的"步調(diào)"一致并保證運(yùn)動(dòng)數(shù)據(jù)的長(zhǎng)度 相同,運(yùn)動(dòng)數(shù)據(jù)預(yù)處理后,所有運(yùn)動(dòng)數(shù)據(jù)樣本在原始數(shù)據(jù)空間中具有相同的長(zhǎng) 度和自由度;3) 將一組三維人體運(yùn)動(dòng)數(shù)據(jù)分別展開(kāi)為一組向量,作為非線性流形學(xué)習(xí)方 法的輸入,通過(guò)非線性流形學(xué)習(xí)方法將這一組稀疏三維人體運(yùn)動(dòng)樣本映射到低 維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間。
3、 根據(jù)權(quán)利要求1所述的一種基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方 法,其特征在于所述的對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣, 并將重采樣系數(shù)集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間 中密集且均勻分布的運(yùn)動(dòng)樣本步驟1)對(duì)于一組經(jīng)過(guò)預(yù)處理后的運(yùn)動(dòng)集Mse,=—馬,…,氣j,用戶指定采樣數(shù)目 N和等待時(shí)間t,將M^通過(guò)非線性流形學(xué)習(xí)方法映射得到維度為J的低維流形, 記為& = {^,^,...,凡} , ^為該組運(yùn)動(dòng)集合的本征運(yùn)動(dòng)語(yǔ)義的維度;2) 在^維流形上求取樣本集合/^的外包圍盒;3) 在外包圍盒內(nèi)部隨機(jī)產(chǎn)生一點(diǎn)p,在低維流形上找到距p最近的d+l個(gè) 點(diǎn)a',K,…,;^,同時(shí)隨機(jī)生成一組權(quán)重^^2,...,^+1, (Xw,《l,gw,.-1,用于合成J+l ,=1低維流形中新的樣本點(diǎn);/=2>^,并將該組權(quán)重系數(shù)^,2,...,^1賦給對(duì)應(yīng)的高 維運(yùn)動(dòng)樣本得到新運(yùn)動(dòng)m'-^w,m,.,其中m,是與A相對(duì)應(yīng)的高維運(yùn)動(dòng)樣本;進(jìn)行 上述重采樣時(shí),可采用公式 3)判斷新樣本在低維空間中的分布是否足夠均勻,若滿足公式i, mre,=mre,(Jw', a =;^L^',否則丟棄y和附';' — 1義#其中p是用于合成低維流形中新的樣本點(diǎn),是p"是集合p";,...,^中距離p,最遠(yuǎn)的點(diǎn),A為用戶指定的閾值,用于控制樣本采樣的密度,0.5S義S3較為適宜, iV用戶指定采樣數(shù)目,、 c"分別為己有樣本在維度/上的最大坐標(biāo)和最小坐標(biāo),"為該組運(yùn)動(dòng)集合的本征運(yùn)動(dòng)語(yǔ)義的維度,D采用歐式距離計(jì)算樣本點(diǎn)之間的距離;4) 重復(fù)步驟3),直到采樣數(shù)目達(dá)到了AA或者采樣時(shí)間超過(guò),;5) 若采樣不夠密集,可將新采樣后的il^,作為已有樣本,重復(fù)步驟l) ~步 驟4)。
4、根據(jù)權(quán)利要求1所述的一種基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方 法,其特征在于所述的將用戶在低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間中交互合成的運(yùn)動(dòng)語(yǔ)義 參數(shù)映射到高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列步驟1) 用戶通過(guò)鼠標(biāo)左鍵在低維流形表示中選擇需要合成的運(yùn)動(dòng)約束,系統(tǒng)自動(dòng) 重建出對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù),用戶通過(guò)鼠標(biāo)右鍵選取運(yùn)動(dòng)語(yǔ)義參數(shù)空間中的已 有采樣點(diǎn)進(jìn)行實(shí)時(shí)預(yù)覽,以確定所需生成的新運(yùn)動(dòng)樣本的語(yǔ)義特征;2) 給定運(yùn)動(dòng)語(yǔ)義參數(shù)空間中用戶指定的一個(gè)新樣本》,首先在低維流形上 找到》的k個(gè)最近鄰樣本,并將其按照到》距離的升序排列得到樣本集合 A,A,...,A,根據(jù)如下公式求取得到采用這k個(gè)近鄰對(duì)》進(jìn)行線性擬合的加權(quán)系 數(shù)集合;其中Dfp, AJ表示兩個(gè)樣本^, A在低維空間中的歐氏距離,》為給定運(yùn)動(dòng)語(yǔ) 義參數(shù)空間中用戶指定的一個(gè)新樣本,A為》的A個(gè)最近鄰樣本中的第/個(gè)樣本,^為A個(gè)最近鄰樣本距離最遠(yuǎn)的樣本,w,為線性擬合的加權(quán)系數(shù);3)將w,規(guī)一化后映射到與該組近鄰樣本相對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù)集合 Wl,m2,...^ ,根據(jù)如下公式合成得到重建得到的新運(yùn)動(dòng)數(shù)據(jù);A:<formula>formula see original document page 4</formula>其中^是經(jīng)過(guò)規(guī)一化處理后的權(quán)重系數(shù),m,為低維空間中^個(gè)最近鄰樣本 里的第/個(gè)樣本對(duì)應(yīng)的高維運(yùn)動(dòng)數(shù)據(jù),A是重建得到的運(yùn)動(dòng)數(shù)據(jù)。
全文摘要
本發(fā)明公開(kāi)了一種基于非線性流形學(xué)習(xí)的三維人體運(yùn)動(dòng)合成方法,以制作真實(shí)感的三維人體運(yùn)動(dòng)動(dòng)畫,其特征是首先將一組稀疏三維人體運(yùn)動(dòng)樣本通過(guò)非線性流形學(xué)習(xí)映射到低維流形上構(gòu)建運(yùn)動(dòng)語(yǔ)義參數(shù)空間;然后對(duì)低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間進(jìn)行分布均勻的密集重采樣,并將重采樣系數(shù)集應(yīng)用于原始運(yùn)動(dòng)空間中分布稀疏的運(yùn)動(dòng)樣本,得到高維空間中密集且均勻分布的運(yùn)動(dòng)樣本;然后將新采樣得到的高維運(yùn)動(dòng)樣本重映射得到最終的低維運(yùn)動(dòng)語(yǔ)義參數(shù)空間;最后用戶通過(guò)交互在低維語(yǔ)義參數(shù)空間中選擇合成的運(yùn)動(dòng)語(yǔ)義參數(shù),系統(tǒng)將該運(yùn)動(dòng)語(yǔ)義參數(shù)映射到高維運(yùn)動(dòng)空間得到新的運(yùn)動(dòng)序列。本發(fā)明不僅能夠?qū)θ缣囟P(guān)節(jié)的運(yùn)動(dòng)位置、物理運(yùn)動(dòng)特征等運(yùn)動(dòng)物理參數(shù)進(jìn)行較為精確的控制,還可用于合成具有如運(yùn)動(dòng)風(fēng)格等高層運(yùn)動(dòng)語(yǔ)義的新運(yùn)動(dòng)數(shù)據(jù)。
文檔編號(hào)G06T15/70GK101655990SQ200910100218
公開(kāi)日2010年2月24日 申請(qǐng)日期2009年6月25日 優(yōu)先權(quán)日2009年6月25日
發(fā)明者莊越挺, 王宇杰, 俊 肖 申請(qǐng)人:浙江大學(xué)