任你旋轉(zhuǎn)跳躍不停歇,也能完美呈現(xiàn)3D姿態(tài)估計 | 代碼開源
魚羊 十三 發(fā)自 凹非寺
量子位 報道 | 公眾號 QbitAI
讓AI通過預測,捕捉你「左手畫龍,右手畫彩虹」的動作,對于AI理解人類行為至關(guān)重要。
想要做到這一點,人體運動數(shù)據(jù)不可或缺,但實際上,真實的3D運動數(shù)據(jù)恰恰是稀缺資源。
現(xiàn)在,來自馬克斯·普朗克智能系統(tǒng)研究所的一項研究,利用對抗學習框架,在缺少真實3D標簽的情況下,也能對實時視頻里的人體運動,做出運動學上的合理預測。
就像這樣,奔跑、跳躍都能跟得上:
并且,相比前輩,這一名為VIBE的方法更懂人心,連胳膊要抬幾度,都計算得明明白白。
那么,VIBE到底是如何做到的?
對抗學習框架
關(guān)鍵創(chuàng)新,在于采用了對抗學習框架。
一方面,利用時間(temporal)生成網(wǎng)絡,預估視頻序列中每個幀的SMPL人體模型參數(shù)。
注:SMPL,即A Skinned Multi-Person Linear Model,馬普所提出的一種人體建模方法。
具體來說,給定一個單人視頻作為輸入,使用預先訓練的CNN提取每個幀的特征。
訓練雙向門控循環(huán)單元組成的時間編碼器,輸出包含過去和將來幀中信息的潛在變量。
然后,利用這些特征對SMPL人體模型的參數(shù)進行回歸。
另一方面,運動鑒別器能夠以SMPL格式訪問大量人體動作。
將生成器生成的樣本,和取自AMASS的樣本作為鑒別器的輸入,訓練其辨別真實動作和“偽”動作。
AMASS是一個大型開源3D運動捕捉數(shù)據(jù)集,包含40個小時的運動數(shù)據(jù),344個主題,超過11000個動作。(項目地址見文末)
由于循環(huán)網(wǎng)絡在順序處理輸入時會更新其隱藏狀態(tài),最終的隱藏狀態(tài)將保留該序列中信息的摘要。研究人員在鑒別器中引入了自注意力機制,來放大最終表示中最重要的幀的作用。
多項性能指標達SOTA
老規(guī)矩,先來看下數(shù)據(jù)集。
對于訓練數(shù)據(jù)集,混合使用了2D和3D數(shù)據(jù)集。PennAction和PoseTrack是唯一的ground-truth 2D視頻數(shù)據(jù)集,3D數(shù)據(jù)集方面采用的是MPI-INF3DHP和Human3.6M。除此之外,還利用AMASS進行對抗性訓練,獲得真實樣本。
在評估、對比方面,采用的數(shù)據(jù)集主要是3DPW、MPI-INF3DHP和Human3.6M。
那么,在訓練后,在上述三個數(shù)據(jù)集上,采用最先進方法結(jié)果的比較,如表1所示:
△表1:在3DPW、MPI-INF-3DHP、H36M三個數(shù)據(jù)集上,各個最先進方法的結(jié)果比較
研究人員在這個三個數(shù)據(jù)集上,將VIBE和其他最先進的,基于幀和時間的模型做了性能比較。
可以不難看出,VIBE在3DPW和MPI-INF-3DHP這兩個數(shù)據(jù)集上的表現(xiàn)是比較好的,性能上超越了其他模型。
在H36M數(shù)據(jù)集上,也得到相對接近于目前最優(yōu)值的結(jié)果。
除此之外,表1中還涉及了一個加速度誤差(acceleration error),從數(shù)值上可以看出,VIBE與基于幀的HMR方法相比,誤差是較小的,也就是結(jié)果更加平滑。
但與基于時間的模型相比,加速度誤差卻比較高,但是這里卻存在一個問題,基于時間的模型,采用了較為“激進”的平滑處理方式,會使得快速運動視頻的準確性降低,如下圖所示。
△上:VIBE;下:基于時間的HMR。
VIBE模型能夠恢復正確的全局旋轉(zhuǎn),這是前人提出的方法中存在的一個比較嚴重的問題,這也是在表1中MPJPE和PVE指標比較好的原因。
此外,實驗還證明,有和沒有運動鑒別器DM,對模型的性能也具有較大的影響,如表2所示。
△表2:運動鑒別器DM的消融實驗
還嘗試了幾種自注意力的配置,將VIBE方法與靜態(tài)合并方法進行了比較,結(jié)果如表3所示。
△表3:自注意力的消融實驗
GitHub已開源,快速上手玩Demo
除了吊炸天的實驗效果,另一個令人激動的消息是,論文代碼已開源!
研究人員在實現(xiàn)過程中采用的是Pytorch,實驗設備需要同時支持 CPU 和 GPU 的推理,在RTX2080Ti上速度高達30幀/秒,以及是在3DPW 和 MPI-INF-3DHP 數(shù)據(jù)集上實現(xiàn) SOTA 結(jié)果。
準備工作也很簡單,首先要克隆這個項目,只需輸入:
git?clone?https://github.com/mkocabas/VIBE.git
使用 pip 或 conda 安裝需求:
#?pip
bash?install_pip.sh
#?conda
bash?install_conda.sh
接下來在這個GitHub項目中,下載好數(shù)據(jù)集,可以運行:
bash?prepare_data.sh
然后就可以運行已經(jīng)準備好的demo代碼了(可以在任意視頻上運行VIBE):
#?Run?on?a?local?video
python?demo.py?--vid_file?sample_video.mp4?--output_folder?output/?--display
#?Run?on?a?YouTube?video
python?demo.py?--vid_file?https://www.youtube.com/watch?v=wPZP8Bwxplo?--output_folder?output/?--display
當然,如果你沒有上述實驗所需要的設備、環(huán)境,可以采用Google Colab。同樣,研究人員也為你準備好了Colab的“快速通道”,來運行demo,可戳下方鏈接:
https://colab.research.google.com/drive/1dFfwxZ52MN86FA6uFNypMEdFShd2euQA
那么,趕緊上手來試試吧!
傳送門
論文地址:https://arxiv.org/abs/1912.05656
GitHub地址:https://github.com/mkocabas/VIBE
AMASS數(shù)據(jù)集:https://amass.is.tue.mpg.de/
- 商湯林達華萬字長文回答AGI:4層破壁,3大挑戰(zhàn)2025-08-12
- 商湯多模態(tài)大模型賦能鐵路勘察設計,讓70年經(jīng)驗“活”起來2025-08-13
- 以“具身智能基座”為核,睿爾曼攜全產(chǎn)品矩陣及新品亮相2025 WRC2025-08-11
- 哇塞,今天北京被機器人人人人人塞滿了!2025-08-08