首頁|必讀|視頻|專訪|運營|制造|監(jiān)管|大數(shù)據(jù)|物聯(lián)網(wǎng)|量子|元宇宙|博客|特約記者
手機|互聯(lián)網(wǎng)|IT|5G|光通信|人工智能|云計算|芯片報告|智慧城市|移動互聯(lián)網(wǎng)|會展
首頁 >> 移動互聯(lián)網(wǎng)舊 >> 正文

AI賦能游戲工業(yè)化,網(wǎng)易互娛AI Lab動捕去噪新方法入選SIGGRAPH 2021

2021年8月11日 10:46  CCTIME飛象網(wǎng)  

當游戲行業(yè)仍在聚焦探討如何讓AI真正落地、協(xié)助游戲的工業(yè)化制作時,網(wǎng)易互娛AI Lab已基于游戲研發(fā)制作中的痛點交出了一份令人驚艷的答卷。

在游戲中,各個角色存在大量動作動畫資源制作的需求,而讓游戲角色獲得如同真人一般流暢自然的動作歷來是制作者們孜孜不倦追求的目標。近年來,伴隨著游戲工業(yè)化的趨勢,光學動捕憑借其真實性和效率替代了傳統(tǒng)的關鍵幀制作方式,成為許多大制作端游和手游的首選方案。然而,光學動捕最大的弊端之一便是動捕數(shù)據(jù)清理所帶來的巨大工作量,該過程需要依賴人工完成,因此在整個流程中成本占比也最高。盡管此前已有學者提出了基于深度人工神經(jīng)網(wǎng)絡的光學動捕數(shù)據(jù)自動清洗和解算方案,但該方法的性能還無法滿足實際生產(chǎn)環(huán)境的要求,且針對動作細節(jié)的保真度也存在一定問題。

針對這一實際生產(chǎn)環(huán)境中的痛點,網(wǎng)易互娛AI Lab提出了一種針對光學動捕數(shù)據(jù)的自動清洗和解算方法,可以直接從包含錯誤和噪音的raw markers中預測出與之對應的clean markers和骨骼動畫數(shù)據(jù)。算法精度和魯棒性都超越育碧研究院(Ubisoft La Forge)發(fā)表在SIGGRAPH 2018的方法,技術(shù)創(chuàng)新性處于國際領先水平。利用該方法,傳統(tǒng)光學動捕流程中所需的人工工作量可以被大幅降低。近日,網(wǎng)易互娛AI Lab與清華大學合作對該方案進行了系統(tǒng)性技術(shù)梳理,并撰寫論文《MoCap-Solver:A Neural Solver for Optical Motion Capture Data》,該文章已被SIGGRAPH 2021收錄。

論文地址:https://dl.acm.org/doi/abs/10.1145/3450626.3459681

項目地址:https://netease-gameai.github.io/MoCapSolver

技術(shù)背景

運動捕捉(Motion Capture),簡稱動捕(MoCap),指的是將真實演員的肢體動作轉(zhuǎn)換為三維虛擬角色骨骼動畫的技術(shù)。相比于傳統(tǒng)的關鍵幀動畫制作方式,運動捕捉技術(shù)有著巨大的優(yōu)勢,既提升了三維動作資源的真實度,又提升了其生產(chǎn)效率,也因此成為了當前影視、游戲行業(yè)三維人形動畫的標準制作方式。

從技術(shù)原理上劃分,運動捕捉設備可以分成兩種類型,慣性動捕設備和光學動捕設備。其中慣性動捕設備利用固定在演員關節(jié)上的加速度傳感器來獲取演員各個關節(jié)的相對運動量;而光學動捕設備則通過大量不同視角的高速相機同步拍攝演員動作,并利用多視角三維重建技術(shù)計算貼在演員身上的一批特殊標記點(marker)的三維坐標,之后再基于這些坐標解算出演員每個關節(jié)點的位置和旋轉(zhuǎn)信息。慣性動捕設備成本較低,但是由于受到慣性傳感器的精度限制,其動作捕捉的精度也明顯低于光學動捕設備。此外,由于慣性動捕設備記錄的是每個關節(jié)相對于上一時刻的相對值,無法獲取演員在三維空間中的絕對坐標,這一特性導致慣性動捕設備無法應用于多人同時動捕的場景,因為其無法定位不同演員之間的相對位置關系。由于以上原因,雖然光學動捕設備成本高昂,但卻在運動捕捉領域占據(jù)絕對統(tǒng)治地位。

利用光學動捕設備進行動捕的流程分為以下幾個步驟:

1.演員裝扮:演員穿著緊身動捕服裝,并在衣服表面需要捕捉的關節(jié)附近粘貼一定數(shù)量的marker點(標記點),marker點總數(shù)以及每個marker點粘貼的位置構(gòu)成一套marker configuration;

2.演員標定:構(gòu)建一個與演員體型相適配的人形模版模型,并獲取粘貼在真實演員衣服上的每個marker在該人形模版模型上的位置,模版模型的骨架結(jié)構(gòu)叫template skeleton。構(gòu)建方式一般為捕捉一小段該演員的簡單動作,然后用算法自動去擬合模版模型和marker位置,這個過程也叫range of motion(ROM)標定。當然也可以在motion builder等軟件中人工進行這種標定。

3.動作捕捉:演員在被一圈高速紅外相機圍繞的動捕場景內(nèi)按照劇本表演出規(guī)定的動作,所有相機同步進行拍攝,然后動捕軟件利用多視角幾何和目標跟蹤算法,計算出每一個時刻演員身上每個marker點在三維空間中的坐標;

4.動捕數(shù)據(jù)清洗:由于遮擋、傳感器測量誤差、重建和跟蹤算法本身的誤差等原因,上一步動捕軟件輸出的marker坐標中往往存在很多錯誤,需要人工對這些錯誤進行修復,這個步驟也叫動捕數(shù)據(jù)清洗。清洗過程需要耗費大量人力,因此該步驟也是傳統(tǒng)光學動捕流程中成本最高的部分。

5.動捕解算:利用動捕解算軟件、基于步驟2中的演員標定信息,從捕捉到的marker序列中恢復人體各個骨骼關節(jié)的位置和旋轉(zhuǎn)信息,從而得到三維骨骼動畫數(shù)據(jù)(也叫skeletal motion或簡稱motion)。下圖對比了從不經(jīng)過人工清洗的marker數(shù)據(jù)(左,也叫raw markers)和經(jīng)過人工清洗的marker數(shù)據(jù)(右,也叫clean markers)中解算得到的骨骼動畫的差別。

6.動作重定向:將解算得到的骨骼動畫數(shù)據(jù)重定向到不同體型的三維虛擬角色上,變成對應角色的動畫資源。

目前業(yè)界對光學動捕數(shù)據(jù)的清洗和解算主要依賴vicon blade、vicon shogun、autodesk motionbuilder等商業(yè)軟件提供內(nèi)置工具,處理流程與前文技術(shù)背景中描述一致,其特點為高度依賴人工對動捕marker數(shù)據(jù)中的錯誤進行修正,否則解算出的骨骼動畫數(shù)據(jù)會存在明顯的缺陷。典型的處理流程為,先對raw markers進行自動解算得到存在缺陷的骨骼動畫,人工對得到對動畫進行逐幀預覽,尋找存在問題的區(qū)間,然后人工糾正該區(qū)間內(nèi)導致解算結(jié)果異常的marker點。不斷重復這一過程,直到整個動捕動作序列都能被正確解算。

為了解決這一實際生產(chǎn)環(huán)境中的痛點,育碧研究院(ubisoft la forge)的研究員Daniel Holden在2018年首次提出了一種基于深度人工神經(jīng)網(wǎng)絡的光學動捕數(shù)據(jù)自動清洗和解算方案,并發(fā)表在圖形學頂級期刊TOG上(在SIGGRAPH 2018展示)。然而,育碧的方案雖然可以自動清洗和解算,但是該方法的性能還無法滿足實際生產(chǎn)環(huán)境的要求。一方面,該方法的魯棒性不足。該方法高度依賴粘貼在演員軀干上(環(huán)繞胸部和腹部的兩圈)的少量關鍵marker(也叫參考marker)的質(zhì)量。一旦輸入的raw markers中包含參考marker的錯誤,該方法的解算結(jié)果就會出現(xiàn)明顯錯誤。而在實際動捕環(huán)境下,這些參考marker很容易因為被四肢遮擋而導致捕捉錯誤。另一方面,該方法對動作細節(jié)的保真度也存在一定問題。本質(zhì)上來說,該方法基于逐幀處理的算法框架,沒有考慮相鄰動作幀之間在時間和空間上的連續(xù)性,導致其輸出的動畫存在明顯的抖動。為了解決這個問題,該方法引入了一個后處理操作對輸出的動畫進行平滑、從而抑制抖動。但是,這個平滑操作在消除抖動的同時也會抹去動作本身的運動細節(jié),降低保真度。

技術(shù)思路

針對育碧方案存在的問題,我們提出了一種全新的算法框架。由于clean markers在三維空間中的位置是由演員體型、動捕marker在演員身體(貼在動捕服)上的分布和演員的動作三方面因素決定的,得到這三個信息,我們就可以通過前向動力學(forward kinematics, FK)和線性蒙皮運算(linear blend skinning, LBS)完全恢復出對應的clean markers。

基于這一觀察,我們的核心思路為:利用大量動捕數(shù)據(jù),訓練一個從raw markers預測上述三方面信息的深度人工神經(jīng)網(wǎng)絡。為了更好的實現(xiàn)這一目標,我們首先設計了一個自編碼器(MoCap-Encoders)結(jié)構(gòu),該自編碼器包含template skeleton、marker configuration和motion三個分支,分別對應了演員的體型、marker在動捕服裝上的分布、以及演員動作。在大量動捕數(shù)據(jù)上進行訓練后,該自編碼器可以將將 template skeleton、marker configuration和motion三種數(shù)據(jù)編碼成低維空間的隱向量,也可以從隱向量中恢復出對應的原始數(shù)據(jù)。也就是說,MoCap-Encoders從大量數(shù)據(jù)中學習出了一種關于這三方面數(shù)據(jù)的更為高效、緊湊的表達。之后,我們再訓練一個從raw markers預測這三個分支隱向量的網(wǎng)絡(MoCap-Solver),從預測出的隱向量中可以解碼出對應的 template skeleton、marker configuration和motion。其中的motion就是需要解算的骨骼動畫,再通過前向動力學(forward kinematics, FK)和線性蒙皮運算(linear blend skinning, LBS)就可以計算出對應的清洗后的clean markers。

此外,我們還從真實數(shù)據(jù)中訓練了一個對關鍵參考marker的質(zhì)量進行評估的深度人工神經(jīng)網(wǎng)絡,利用該網(wǎng)絡挑選raw markers中參考marker可靠性高的幀做剛體對齊,有效避免了算法精度過渡依賴少量參考marker質(zhì)量的問題,大幅提升了算法的魯棒性。

技術(shù)實現(xiàn)

本方法包含訓練階段和預測階段,預測階段直接以光學動捕的raw markers為輸入,自動輸出清洗后的clean markers和解算出的骨骼動畫。這里主要介紹訓練階段的做法,訓練階段包含三個重點步驟:數(shù)據(jù)準備、數(shù)據(jù)規(guī)范化(normalization),以及深度人工神經(jīng)網(wǎng)絡結(jié)構(gòu)搭建和訓練。

1.數(shù)據(jù)準備

2.數(shù)據(jù)規(guī)范化

由于真實運動包含很多人物根骨骼的全局位移和全局旋轉(zhuǎn),這極大增加了后續(xù)人工神經(jīng)網(wǎng)絡學習的復雜度。例如,同樣的動作在不同的位置、朝著不同的方向做,會導致捕捉的marker點三維坐標存在巨大差距。此外,由于遮擋原因,真實動補數(shù)據(jù)中包含很多跟蹤失敗的點,其表現(xiàn)為保持在最后一次被成功跟蹤的位置不動,隨著人物遠離該位置,這些點就會變成毫無規(guī)律的離群點,也會給后續(xù)網(wǎng)絡的學習造成干擾。所以數(shù)據(jù)規(guī)范化的目標有兩個:離群marker的處理和坐標系規(guī)范化。

為了處理離群marker,我們首先提取序列中每一幀所有marker之間的距離矩陣(如上圖),該矩陣記錄了所有marker兩兩之間的歐式距離,然后選擇距離矩陣最接近所有幀的距離矩陣平均值的那一幀作為序列的參考幀。之后,將每一幀與參考幀的距離矩陣進行對比,所有導致該幀的距離矩陣與參考幀的距離矩陣存在30厘米以上差異的marker點都被標記為離群marker點。離群marker點的坐標會被替換成新的位置,新的位置可以使對應幀的距離矩陣與參考幀的盡量接近。這些新的位置可以通過簡單的數(shù)學優(yōu)化方法得到。

坐標系規(guī)范化的目的是消除根骨骼全局平移和旋轉(zhuǎn),因此需要marker的坐標由世界坐標系轉(zhuǎn)換到局部坐標系。為此,我們參考了[1]中的做法,以軀干附近(環(huán)繞胸部和腹部的兩圈)的一批marker為參考marker(如下圖),然后對序列整體的全局平移和旋轉(zhuǎn)進行修正。方法為在序列中選定一個參考幀,計算一個剛體變換使得參考幀的這批參考marker的位置與T-pose下的參考marker的位置盡量對齊(也叫剛體對齊)。通過這個操作,序列中所有幀的坐標系就由世界坐標系變換到了由T-pose定義的局部坐標系。

但是,這個操作高度依賴參考幀中的那批參考marker的質(zhì)量,一旦參考幀的參考marker中存在噪音和錯誤,坐標系規(guī)范化的效果就會大打折扣,整套算法的精度和魯棒性都會大幅降低。為了解決這個問題,本發(fā)明訓練了一個對參考marker的質(zhì)量進行評估的深度人工神經(jīng)網(wǎng)絡,并利用這個網(wǎng)絡挑選參考marker可靠性高的幀做參考幀進行剛體對齊。該網(wǎng)絡的結(jié)構(gòu)如下:

3.深度人工神經(jīng)網(wǎng)絡結(jié)構(gòu)搭建和訓練

接下來,我們利用上述數(shù)據(jù)和規(guī)范化方法訓練一個深度人工神經(jīng)網(wǎng)絡結(jié)構(gòu),該網(wǎng)絡包含兩個模塊,如下圖所示:

其中MoCap-Encoders為一個自編碼器,包括三個分支,分別對應template skeleton、marker configuration和motion。訓練完成的自編碼器既可以將 template skeleton、marker configuration和motion三種數(shù)據(jù)編碼成低維空間的隱向量,也可以從隱向量中恢復出對應的原始數(shù)據(jù)。MoCap-Encoders的網(wǎng)絡結(jié)構(gòu)如下圖所示:

應用/效果展示

本項目的訓練數(shù)據(jù)來源于公司采集的大規(guī)模真實動捕數(shù)據(jù),可以大于30fps的速度對光學動捕數(shù)據(jù)進行自動清洗和解算,滿足了工業(yè)上速度要求,解算得到的骨骼動畫的骨骼點平均位置誤差小于1cm,平均旋轉(zhuǎn)誤差小于4度,滿足了游戲動畫制作的精度要求。相比于目前業(yè)界領先算法,本項目算法在動作保真度和重構(gòu)marker點精度上領先,統(tǒng)計得到本算法的預測結(jié)果只有低于1%的幀出現(xiàn)了工業(yè)生產(chǎn)不可接受的視覺瑕疵,而目前業(yè)界領先算法則為10%。另外,本算法的魯棒性優(yōu)于業(yè)界領先算法,實驗結(jié)果表明本算法對演員軀干附近關鍵marker點精度的魯棒性比目前業(yè)界領先方法好。目前本項目算法已經(jīng)集成在公司動捕數(shù)據(jù)處理的工作流中。

編 輯:T01
聲明:刊載本文目的在于傳播更多行業(yè)信息,本站只提供參考并不構(gòu)成任何投資及應用建議。如網(wǎng)站內(nèi)容涉及作品版權(quán)和其它問題,請在30日內(nèi)與本網(wǎng)聯(lián)系,我們將在第一時間刪除內(nèi)容。本站聯(lián)系電話為86-010-87765777,郵件后綴為#cctime.com,冒充本站員工以任何其他聯(lián)系方式,進行的“內(nèi)容核實”、“商務聯(lián)系”等行為,均不能代表本站。本站擁有對此聲明的最終解釋權(quán)。
相關新聞              
 
人物
工信部張云明:大部分國家新劃分了中頻段6G頻譜資源
精彩專題
專題丨“汛”速出動 共筑信息保障堤壩
2023MWC上海世界移動通信大會
中國5G商用四周年
2023年中國國際信息通信展覽會
CCTIME推薦
關于我們 | 廣告報價 | 聯(lián)系我們 | 隱私聲明 | 本站地圖
CCTIME飛象網(wǎng) CopyRight © 2007-2024 By CCTIME.COM
京ICP備08004280號-1  電信與信息服務業(yè)務經(jīng)營許可證080234號 京公網(wǎng)安備110105000771號
公司名稱: 北京飛象互動文化傳媒有限公司
未經(jīng)書面許可,禁止轉(zhuǎn)載、摘編、復制、鏡像