重塑人體動作生成,融合擴散模型與檢索策略的新范式ReMoDiffuse來了
人體動作生成任務旨在生成逼真的人體動作序列,以滿足娛樂、虛擬現實、機器人技術等領域的需求。傳統的生成方法包括 3D 角色創建、關鍵幀動畫和動作捕捉等步驟,其存在諸多限制,如耗時較長,需要專業技術知識,涉及昂貴的系統和軟件,不同軟硬件系統之間可能存在兼容性問題等。隨著深度學習的發展,人們開始嘗試使用生成模型來實現人體動作序列的自動生成,例如通過輸入文本描述,要求模型生成與文本要求相匹配的動作序列。隨著擴散模型被引入這個領域,生成動作與給定文本的一致性不斷提高。
然而,生成動作的自然程度離使用需求仍有很大差距。為了進一步提升人體動作生成算法的能力,本文在 MotionDiffuse [1] 的基礎上提出了 ReMoDiffuse 算法(圖 1),通過利用檢索策略,找到高相關性的參考樣本,提供細粒度的參考特征,從而生成更高質量的動作序列。
- 論文鏈接:https://arxiv.org/pdf/2304.01116.pdf
- GitHub:https://github.com/mingyuan-zhang/ReMoDiffuse
- 項目主頁:https://mingyuan-zhang.github.io/projects/ReMoDiffuse.html
通過巧妙地將擴散模型和創新的檢索策略融合,ReMoDiffuse 為文本指導的人體動作生成注入了新的生命力。經過精心構思的模型結構,ReMoDiffuse 不僅能夠創造出豐富多樣、真實度高的動作序列,還能有效地滿足各種長度和多粒度的動作需求。實驗證明,ReMoDiffuse 在動作生成領域的多個關鍵指標上表現出色,顯著地超越了現有算法。
圖 1. ReMoDiffuse 概覽
方法介紹
ReMoDiffuse 主要由兩個階段組成:檢索和擴散。在檢索階段,ReMoDiffuse 使用混合檢索技術,基于用戶輸入文本以及預期動作序列長度,從外部的多模態數據庫中檢索出信息豐富的樣本,為動作生成提供強有力的指導。在擴散階段,ReMoDiffuse 利用檢索階段檢索到的信息,通過高效的模型結構,生成與用戶輸入語義一致的運動序列。
為了確保高效的檢索,ReMoDiffuse 為檢索階段精心設計了以下數據流(圖 2):
共有三種數據參與檢索過程,分別是用戶輸入文本、預期動作序列長度,以及一個外部的、包含多個 < 文本,動作 > 對的多模態數據庫。在檢索最相關的樣本時,ReMoDiffuse 利用公式計算出每個數據庫中的樣本與用戶輸入的相似度。這里的第一項是利用預訓練的 CLIP [2] 模型的文本編碼器對用戶輸入文本和數據庫實體的文本計算余弦相似度,第二項計算預期動作序列長度和數據庫實體的動作序列長度之間的相對差異作為運動學相似度。計算相似度分數后,ReMoDiffuse 選擇相似度排名前 k 的樣本作為檢索到的樣本,并提取出文本特征
,和動作特征
。這兩者和從用戶輸入的文本中提取的特征
一同作為輸入給擴散階段的信號,指導動作生成。
圖 2:ReMoDiffuse 的檢索階段
擴散過程(圖3.c)由正向過程和逆向過程兩個部分組成。在正向過程中,ReMoDiffuse 逐步將高斯噪聲添加到原始動作數據中,并最終將其轉化為隨機噪聲。逆向過程專注于除去噪聲并生成逼真的動作樣本。從一個隨機高斯噪聲開始,ReMoDiffuse 在逆向過程中的每一步都使用語義調制模塊(SMT)(圖3.a)來估測真實分布,并根據條件信號來逐步去除噪聲。這里 SMT 中的 SMA 模塊將會將所有的條件信息融入到生成的序列特征中,是本文提出的核心模塊。
圖 3:ReMoDiffuse 的擴散階段
對于 SMA 層(圖 3.b),我們使用了高效的注意力機制(Efficient Attention)[3] 來加速注意力模塊的計算,并創造了一個更強調全局信息的全局特征圖。該特征圖為動作序列提供了更綜合的語義線索,從而提升了模型的性能。SMA 層的核心目標是通過聚合條件信息來優化動作序列的生成。在這個框架下:
1.Q 向量具體地代表了我們期望基于條件信息生成的預期動作序列。
2.K 向量作為一種索引機制綜合考慮了多個要素,包括當前動作序列特征、用戶輸入的語義特征
,以及從檢索樣本中獲取的特征
和
。其中,
表示從檢索樣本中獲取的動作序列特征,
表示從檢索樣本中獲取的文本描述特征。這種綜合性的構建方式保證了 K 向量在索引過程中的有效性。
3.V 向量提供了動作生成所需的實際特征。類似 K 向量,這里 V 向量也綜合考慮了檢索樣本、用戶輸入以及當前動作序列。考慮到檢索樣本的文本描述特征與生成的動作之間沒有直接關聯,因此在計算 V 向量時我們選擇不使用這一特征,以避免不必要的信息干擾。
結合 Efficient Attention 的全局注意力模板機制,SMA 層利用來自檢索樣本的輔助信息、用戶文本的語義信息以及待去噪序列的特征信息,建立起一系列綜合性的全局模板,使得所有條件信息能夠被待生成序列充分吸收。
實驗及結果
我們在兩個數據集 HumanML3D [4] 和 KIT-ML [5] 上評估了 ReMoDiffuse。在與文本的一致性與動作質量兩個角度上,實驗結果(表 1、2)展示了我們提出的 ReMoDiffuse 框架的強大性能和優勢。
表 1. 不同方法在 HumanML3D 測試集上的表現
表 2. 不同方法在 KIT-ML 測試集上的表現
以下是一些能定性展示 ReMoDiffuse 的強大性能的示例(圖 4)。與之前的方法相比,例如,在給定文本 “一個人在圓圈里跳躍” 時,只有 ReMoDiffuse 能夠準確捕捉到 “跳躍” 動作和 “圓圈” 路徑。這表明 ReMoDiffuse 能夠有效地捕捉文本細節,并將內容與給定的運動持續時間對齊。
圖 4. ReMoDiffuse 生成的動作序列與其他方法生成的動作序列的比較
我們對 Guo 等人的方法 [4]、MotionDiffuse [1]、MDM [6] 以及 ReMoDiffuse 所生成的相應動作序列進行了可視化展示,并以問卷形式收集測試參與者的意見。結果的分布情況如圖 5 所示。從結果中可以清晰地看出,在大多數情況下,參與測試者認為我們的方法 —— 即 ReMoDiffuse 所生成的動作序列在四個算法中最貼合所給的文本描述,也最自然流暢。
圖 5:用戶調研的結果分布