CVPR 2024 | 文字一鍵轉3D數字人骨骼動畫,阿爾伯塔大學提出MoMask框架

机器之心發表於2024-04-29

圖片

AIxiv專欄是機器之心釋出學術、技術內容的欄目。過去數年,機器之心AIxiv專欄接收報導了2000多篇內容,覆蓋全球各大高校與企業的頂級實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或者聯絡報導。投稿郵箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com。

想象一下,你僅需要輸入一段簡單的文字描述,就可以生成對應的 3D 數字人動畫的骨骼動作。而以往,這通常需要昂貴的動作捕捉裝置或是專業的動畫師逐幀繪製。這些骨骼動作可以進一步的用於遊戲開發,影視製作,或者虛擬現實應用。來自阿爾伯塔大學的研究團隊提出的新一代 Text2Motion 框架,MoMask,正在讓這一切變得可能。CVPR 2024 | 文字一鍵轉3D數字人骨骼動畫,阿爾伯塔大學提出MoMask框架
影片 1: 給定指定的動作描述,MoMask 可生成對應的骨骼動畫(影片包含背景音樂)

MoMask 框架是基於多層離散化動作表示的,利用生成式掩碼技術,能夠生成更高質量的 3D 人體動作。如影片 1 中展示,MoMask 可以根據文字描述,精細控制生成的動作內容。在 HumanML3D 資料集上,MoMask 的生成質量可達到 FID 為 0.045,超過了現有的最優工作如 T2M-GPT(0.141)和 ReMoDiffuse(0.103)。這項研究成果已被 CVPR 2024 收錄,並且其程式碼和模型已在 GitHub 上開源,擁有 500 + 星標。

圖片

  • 論文題目:MoMask: Generative Masked Modeling of 3D Human Motions
  • 論文連結:https://arxiv.org/abs/2312.00063
  • 程式碼連結:https://github.com/EricGuo5513/momask-codes
  • Huggingface Space 連結:https://huggingface.co/spaces/MeYourHint/MoMask

MoMask 模型介紹

圖片

圖 2:MoMask 框架結構與訓練流程

MoMask 框架主要包含三個關鍵的神經網路模組:

  • 殘差量化模型 (Residual VQ-VAE),將人體動作轉換為多層離散的動作標記(Token)。基層(即第一層)的動作標記包含了動作的基本資訊,而殘差層則對應更細粒度的動作資訊。
  • Masked Transformer:對基層的動作標記進行建模,採用隨機比例的隨機掩碼,並根據文字資訊預測被掩碼的動作標記,用於生成基層動作標記。
  • Residual Transformer:對殘差層的動作標記進行建模,根據前 j 層的動作標記預測第 j 層的動作標記,以此來建模殘差層的動作序列。

圖片

圖 3: T2M-GPT 的動作離散化模型 (VQ-VAE)

動作序列離散化。MoMask 採用基於離散表達的生成式框架,首先將連續的動作表達進行離散化。如圖 3,傳統的 VQ-VAE 在量化(Quantization)過程中存在資訊損失問題,因為它將每個隱向量替換為碼書(Codebook)中最相近的碼向量,這兩個向量之間的差異導致了資訊的丟失。為了解決這個問題,MoMask 採用了多層量化的方法(圖 2.a),逐層對隱向量和碼向量之間的殘差進一步量化,從而提高了隱向量的估計精度。隨著層數加深,每一層所建模的資訊量(即殘差)也逐步減少。訓練時,為了儘可能增加每一個量化層的容量,我們隨機丟棄掉末尾的若干個殘差層。最終,動作序列被轉化為多層的離散動作標記,其中基層標記包含了動作的主要內容,而殘差層則用於填補動作的細節。接下來,MoMask 使用 Masked Transformer 生成基層動作標記,並使用 Residual Transformer 逐層預測殘差層的動作標記。

生成式掩碼建模。如圖 2.b,文字描述首先透過 CLIP 編碼成語義向量,同時基層的動作標記序列被隨機掩碼。然後,這些掩碼的動作標記序列和 CLIP 文字向量一起輸入到 Transformer 中進行訓練,其目標是準確預測被掩碼掉的動作標記。與以往基於掩碼的預訓練模型不同的是,這裡掩碼標記的比例是隨機的,並且可以在 0 到 1 的區間取值,這意味著掩碼的程度也是隨機的。最壞情況下,所有標記都被掩碼,而最好情況下,所有標記都被保留。

殘差層標記預測。由於殘差層包含了更細粒度的動作資訊,因此根據前面 j > 1 層的動作標記內容,可以基本確定第 j 層的動作標記。在訓練時,隨機選擇一個殘差層 j 進行預測,將已知的前 j 層的動作標記、CLIP 文字向量以及第 j 層的編碼輸入到 Transformer 中,使用交叉熵損失函式來最佳化模型。

圖片

圖 4: MoMask 推斷流程

生成過程。圖 4 描述了 MoMask 框架中的生成過程。從基層的動作標記序列開始,所有的動作標記都被掩碼,然後透過 Masked Transformer 進行預測,得到完整的標記序列。接著,僅置信度最高的一部分標記被保留,剩下的標記將被重新掩碼(Remask),並重新預測。透過一個預設的排程函式 (Schedule function),在經過一定次數的掩碼與預測後,得到最終的基層動作標記序列。然後,Residual Transformer 根據基層的標記序列,逐層地預測殘差層的標記序列。最終,所有標記序列被輸入到 RVQ-VAE 的解碼器中,並解碼獲得對應的動作序列。因此,無論動作序列的長度為多少,MoMask 只需要固定步數去生成該序列。通常情況下,MoMask 僅需要進行不超過 20 步的迭代,包括基礎與殘差層的生成。

實驗結果CVPR 2024 | 文字一鍵轉3D數字人骨骼動畫,阿爾伯塔大學提出MoMask框架
影片 2:MoMask 與基線方法的對比

在影片 2 中,MoMask 與其他三個基線方法進行了對比,包括主流的擴散模型(MDM、MLD)和 GPT 模型(T2M-GPT)。MoMask 在應對挑戰性動作(如絆腳和抱腳)以及更精細的文字控制方面表現更出色。

在下表中,我們對 MoMask 在 HumanML3D 和 KIT-ML 資料集上的效能進行了更全面的分析。可以看出,MoMask 框架在 R-Precision 和 FID 等指標上始終表現最優,在 HumanML3D 資料集上,生成質量達到了 FID 為 0.045。

圖片

圖 5 展示了 Masked Transformer 推斷步數對生成動作的整體質量影響,其中 FID 和 MM-Dist 分別指示了動作生成質量以及動作與文字內容的匹配程度,值越低代表效能越好。從圖中可以看出,僅需要進行 10 步推斷,生成質量就可以收斂到最優水平。

圖片

圖 5: 推斷步數對生成質量影響

應用:動作時序補齊

MoMask 還可用於動作序列的時序補齊,即根據文字對動作序列指定的區間進行編輯或修改。在影片 3 中,展示了基於 MoMask 對動作序列的字首、中間部分和字尾,根據給定的文字進行內容補齊。CVPR 2024 | 文字一鍵轉3D數字人骨骼動畫,阿爾伯塔大學提出MoMask框架 影片 3: 基於 MoMask 的動作時序補齊

相關文章