SIGGRAPH`24 | 毫米級接近真實動作生成!LGTM:文本驅動!(深大&快手&字節(jié))
論文鏈接:https://arxiv.org/pdf/2405.03485
代碼&數(shù)據(jù)集鏈接:https://github.com/L-Sun/LGTM
今天和大家一起學習下文本生成動作方面最新的研究成果:LGTM,一種新穎的用于文本到動作生成的局部到全局pipeline。LGTM基于擴散的架構,旨在解決將文本描述準確轉換為計算機動畫中語義連貫的人體動作的挑戰(zhàn)。具體而言,傳統(tǒng)方法通常難以處理語義差異,特別是在將特定動作與正確的身體部位對齊方面存在困難。
為解決這個問題,本文提出了一個兩階段pipeline來克服這個挑戰(zhàn):首先利用大語言模型(LLMs)將全局動作描述分解為部分特定的描述,然后由獨立的身體部位動作編碼器處理,以確保精確的局部語義對齊。最后,基于注意力的全身優(yōu)化器對動作生成結果進行優(yōu)化,并確保整體一致性。本文的實驗表明,LGTM在生成局部準確、語義對齊的人體動作方面取得了顯著改進,標志著文本到動作應用的顯著進步。
介紹
在本文中解決了文本到動作的問題,即,給定一個角色動作的文本描述,本文旨在自動生成合理且逼真的3D人體動作。 成功自動化此過程對于各種下游應用具有重要潛力,包括為增強和虛擬現(xiàn)實環(huán)境創(chuàng)建內容,推動機器人技術的進步,以及改進人機交互。
作為自然語言處理、機器學習和計算機圖形學交匯處的長期挑戰(zhàn),文本到動作生成近年來受到了廣泛關注。擴散模型的出現(xiàn),正如各種研究所強調的,推動了這一領域的顯著進步。盡管取得了這些進展,從文本描述生成既在局部語義上準確又在全局上連貫的動作仍然是一個巨大的障礙。當前方法通常難以有效捕捉嵌入在動作描述中的微妙的局部語義,并且難以生成與這些語義線索準確對齊的動作。
特別是,在文本到動作合成中,現(xiàn)有方法經(jīng)常遇到諸如局部語義泄露和缺失元素等問題。例如,當輸入描述為“一個男人用他的左腿踢東西”時,這些方法可能錯誤地生成與“右踢”相對應的動作。類似地,涉及需要多個身體部位協(xié)調的復雜動作的prompt經(jīng)常會導致某些部分的動作被省略。本文的觀察揭示了這些方法中的兩個主要缺點。
首先,大多數(shù)現(xiàn)有技術都使用單個全局文本描述符來描述所有局部身體動作。這種方法要求網(wǎng)絡從統(tǒng)一的全局文本來源中學習局部動作語義與相應身體部位之間的關聯(lián)。這個過程在文本內容在不同身體部位之間相似的情況下尤為困難,導致難以區(qū)分每個部分的具體動作。其次,這些方法中使用的文本編碼器在編碼與動作相關的文本方面的效果有限。這一限制在最近的研究中詳細說明了不同動作文本之間的高特征相似性。編碼文本特征的同質性進一步加劇了網(wǎng)絡在區(qū)分和準確表示局部文本語義中微妙變化方面的困難。
為此,本文提出了一種新穎的基于擴散的文本到動作生成架構,稱為LGTM,它擅長生成既符合文本描述又在局部語義準確性方面精確的動作。LGTM通過一種從局部到全局的方法進行操作,結構上分為兩個主要階段。第一階段實施了一種有效的策略來解決局部語義準確性問題。在這里,本文引入了一個分區(qū)模塊,利用大語言模型(LLMs)將全局動作描述分解為針對每個身體部位具體的描述。隨后,專用的身體部分動作編碼器獨立處理這些特定于各部位的描述。這種專注的方法通過減少冗余信息和防止語義泄漏有效地避免了局部語義不準確性,從而保持對相關局部語義的清晰關注。
然而,由于每個身體部分動作編碼器都是獨立工作的,沒有意識到其他部分的運動,因此必須同步這些單獨的動作,以避免整體協(xié)調問題。為了解決這個問題,LGTM的第二階段引入了基于注意力的全身優(yōu)化器。該組件專門設計用于促進不同身體部位之間的信息整合,確保整體動作不僅在局部上精確,而且在全局上連貫流暢。
為評估LGTM的有效性,本文進一步進行了文本驅動的動作生成實驗,并提供了定量和定性結果。本文的實驗表明,本文提出的LGTM可以生成更符合輸入文本的忠實動作,無論在局部還是全局上,并且優(yōu)于現(xiàn)有技術方法。
總結一下,本文的貢獻如下:
- 本文提出了LGTM,一種新穎的基于擴散的架構,可以將文本描述轉化為準確和連貫的人體動作,相比之前的文本到動作方法有了顯著的改進。
- LGTM引入了一個獨特的分區(qū)模塊,利用LLMs將復雜的動作描述分解為特定于每個部位的描述。這顯著提高了動作生成中的局部語義準確性。
- 本文的實驗證明了獨立的身體部位運動編碼器與基于注意力的全身優(yōu)化器的有效集成,確保了生成動作的局部精度和全局一致性,為文本到動作生成提供了有希望的改進。
相關工作
運動序列的生成是計算機圖形領域長期以來的挑戰(zhàn),其目標是根據(jù)條件控制信號生成一系列運動幀。鑒于本文的方法是以基于身體分區(qū)的文本到動作合成為中心,本文探索了兩個主要方面的相關文獻:身體分區(qū)建模和文本到動作生成。
基于部分的運動建模。將人體分割為不同的部分有助于在更細粒度的水平上控制運動合成,從而實現(xiàn)局部調整。
一些研究探討了將各個身體部分的運動組合起來合成新的運動的概念。[Hecker等人,2008] 提出了一種重新定位算法,將運動組合到單個身體部位的水平上,以生成多樣化的角色動畫。[Jang等人,2008] 將運動分為上半身和下半身兩個部分,通過算法將它們合并,以擴充其運動數(shù)據(jù)庫。[Soga等人,2016] 通過關注身體分區(qū)來從現(xiàn)有數(shù)據(jù)集中合成舞蹈動作。[Jang等人,2022] 在部分水平進行風格轉移,利用圖卷積網(wǎng)絡將不同身體部位的運動組合成新的、連貫的序列,保持局部風格的同時將其轉移到特定的身體部位,而不影響其他部位或整個身體的完整性。然而,這些方法依賴于預先存在的運動數(shù)據(jù),因此更準確地描述為合成而不是生成。
為了實現(xiàn)更詳細的局部控制,[Starke等人,2020] 提出了一種基于身體分區(qū)的局部相位模型,用于生成籃球運動員的動作,相比于全局相位方法[Starke等人,2019;Zhang等人,2018],實現(xiàn)了更高的局部保真度。[Starke等人,2021] 引入了一種神經(jīng)動畫分層技術,將由控制模塊產(chǎn)生的不同身體部位的軌跡結合起來,為動畫師提供了更細粒度的控制,實現(xiàn)了高質量的運動生成。[Lee等人,2022] 開發(fā)了一種用于重新組裝基于物理的部分運動的算法,允許將具有不同骨骼結構的角色的部分運動組合在一起。通過在物理模擬的虛擬環(huán)境中操作,他們采用部分時間彎曲和基于優(yōu)化的組裝,以確保改善空間和時間上的對齊。[Bae等人,2023] 利用部分運動鑒別器增強運動的多樣性,并利用全局控制策略來保持運動的物理真實性。
文本提供了一個用戶友好的界面,用于指導動作生成,因為它易于使用并具有編輯能力。然而,通過文本精確控制生成動作的結果是一個重要挑戰(zhàn)。在這一小節(jié)中,本文將研究文本到動作生成技術,并確定它們的局限性。
某些文本到動作的方法基于編碼器-解碼器架構,重點是在統(tǒng)一的潛在空間內對齊模態(tài)。[Ahuja 和 Morency 2019]通過在編碼動作和文本之間交替訓練他們的網(wǎng)絡,然后將它們解碼回動作,從而隱式地對齊這兩種模態(tài)。[Ghosh 等 2021;Petrovich 等 2022]同時對文本和動作進行編碼,并將它們解碼為動作,利用額外的損失函數(shù)將模態(tài)在潛在空間內更加接近。這些方法在從長文本描述中生成動作時遇到困難。[Athanasiou 等 2022]通過自回歸方式生成短動作剪輯來解決長動作生成的問題,但這需要將長文本描述手動分割成較短的段落并指定動作的持續(xù)時間。
為了利用視覺先驗,[Tevet 等 2022a]使用了一個凍結的 CLIP [Radford 等 2021] 文本編碼器來編碼動作描述,并將動作的潛在空間與 CLIP 的潛在空間對齊。然而,用于對齊的圖像來自于隨機的動作幀,當幀不具代表性時,網(wǎng)絡可能會產(chǎn)生困惑。此外,[Petrovich 等 2023]觀察到,動作描述在 CLIP 的潛在空間中往往聚集得很密集,因為與用于訓練 CLIP 的更廣泛的文本數(shù)據(jù)集相比,動作相關文本的分布更窄。
最近發(fā)展的神經(jīng)擴散模型在圖像生成方面啟發(fā)了利用這些模型實現(xiàn)更高質量的文本到動作方法。[Tevet 等 2022b;Zhang 等 2022]利用Transformer對文本條件下的動作進行去噪處理。[Chen 等 2023b]引入了基于 U-Net 的 DDIM 生成模型來對潛在空間中的動作進行去噪處理,從而加速了生成過程。然而,這些方法缺乏通過masking來控制局部動作生成的能力。此外,它們在學習正確的局部語義映射方面存在困難,因為所有身體部位共享相同的文本信息,這可能導致語義不匹配的部分運動。
將動作處理為離散空間中的token預測是動作生成的另一種方法。但是,這些方法的局限性在于codebook的表達能力可能會限制生成動作的多樣性,從而可能導致文本輸入被映射到不符合預期的動作。
控制局部動作語義的挑戰(zhàn)源于:
- 在所有身體部位之間共享文本信息,
- 網(wǎng)絡難以區(qū)分由CLIP編碼的文本潛在代碼。
這些因素導致了在動作生成中實現(xiàn)精確的局部語義控制的困難,從而引發(fā)了語義泄漏等問題。
受先前研究中的技術進展和挑戰(zhàn)的啟發(fā),本文提出了一種新穎的框架,將身體部位分割與獨立的局部動作語義注入以及全局語義聯(lián)合優(yōu)化策略相結合。該框架旨在增強文本到動作合成的逼真度和可控性,滿足對更加細致和準確的動作生成的需求。
方法
在本節(jié)中,本文深入探討了 LGTM 的具體細節(jié),如下圖 2 所示。LGTM 結構化為一個從局部到全局的生成框架,首先創(chuàng)建局部的、部位級別的動作,然后通過全局融合和優(yōu)化過程生成最終的全身動作。在其核心,LGTM 通過將全身文本和動作空間細分為部位特定的子空間來操作。這種細分由一個專用的分區(qū)模塊巧妙處理。
對于每個子空間,本文開發(fā)了專門的部位動作編碼器。這些編碼器被訓練成獨立學習部位級別動作和部位級別文本之間的一系列映射關系。這種策略有效地緩解了以前方法中出現(xiàn)的局部語義映射不正確的問題。在進行局部編碼之后,LGTM 引入了一個全身動作優(yōu)化器,建立各個子空間之間的關聯(lián),確保最終全身動作的一致性和連貫性。下面,本文詳細解釋了 LGTM 中每個模塊的功能和細節(jié)。
初步:人體運動擴散模型
劃分模塊
劃分模塊旨在為每個身體部位的部分運動編碼器注入局部語義。在實踐中,輸入對 (M, T) 被劃分為六個部分,包括頭部、左臂、右臂、軀干、左腿和右腿。
運動 M 被分解如下:
對于動作描述 ??,本文利用LLM的知識推理能力將其分解為六個部分:,使用精心設計的prompt。 prompt包括三個部分:任務定義、輸出要求和一些輸出示例。任務定義指示LLM提取每個動作部分的主要描述。輸出要求告訴LLM本文需要結構化輸出,如JSON格式、身體部位命名等。然后,本文采用了少量樣本的方法來指導LLM生成所需的輸出。有關本文prompt的更多詳細信息,請參閱原文補充材料。 分解的描述示例如下表1所示。
部分動作編碼器
全身運動優(yōu)化
由于每個部分的動作和文本都是獨立編碼為,因此網(wǎng)絡將忽略不同身體部位之間的相關性。因此,本文提出全身動作優(yōu)化器??通過根據(jù)全身文本信息調整每個身體部位的運動來建立相關性。
最后,本文將潛在代碼投影到原始特征維度,并得到干凈的動作Mo 。全身動作優(yōu)化器可以表述為:
結果
在本節(jié)中,展示了由本文的方法生成的動作,并與其他文本驅動的動作生成方法進行了比較分析。此外,本文進行了幾項消融研究,以突顯本文框架中各個組件的貢獻。
實施細節(jié)
part-level的動作描述是由ChatGPT生成的(gpt3.5-turbo-1106)模型。本文的模型使用AdamW優(yōu)化器進行訓練,采用快速溫和余弦衰減的學習率衰減策略。初始學習率為,batch size為64。擴散步數(shù)為1K。本文的模型在HumanML3D數(shù)據(jù)集上的訓練時間約為在3個NVIDIA RTX 4090 GPU上進行8小時。
定性結果
下圖4顯示了本文方法生成的幾個示例結果。本文可以看到,本文的方法能夠生成具有精確局部語義的動作,例如身體部位語義對應和動作時間順序,因為本文的方法獨立地將局部語義信息注入到相應的部位中,而整體動作優(yōu)化器在空間和時間域中構建了正確的身體部位之間的關系。例如,“一個人向前傾身然后跳得很高”的結果顯示了角色確實按正確的順序傾身然后跳躍。而“一個人用手鎖住他的臉,然后做一些舞蹈動作,但沒有用腿” 的結果表明角色在跳舞時保持了正確的手和臉之間的空間關系。而“一個人用右腳做空中踢腿”的結果顯示角色確實用正確的身體部位進行踢腿。
本文還提供了與兩種基準方法(包括MDM和 MLD)的視覺比較。下圖5顯示了本文的方法能夠生成更具語義匹配的動作。在第一行中,角色在本文的結果中可以用兩只手拿東西,而在MDM中只能用左手。在第二行中,角色在本文的結果中只用左腳正確跳躍,而在MDM中雙腳跳躍,而在MLD中不跳躍。在第三行中,MDM的結果包含奇怪的姿勢,而MLD不包含“拍手”,但本文的結果更正確。最后一行顯示,對于更復雜的文本輸入,本文的方法能夠生成比這兩種基線方法更語義準確的結果。
定量評價
評估指標。 為了定量評估本文的方法,本文使用了[Guo等人,2022a]提出的指標,包括:
- (1)Fréchet Inception Distance(FID),評估生成的動作質量與真實動作分布之間的差異;
- (2)多樣性(DIV),計算生成動作的方差;
- (3)R Precision,計算生成動作與相應文本描述之間的前n匹配精度;
- (4)多模態(tài)距離(MM Dist),計算配對的動作和文本之間的距離;
- (5)部分級別多模態(tài)相似度(PMM Sim),計算部分級別配對的動作和文本之間的歸一化余弦相似度。
這些指標是在潛在空間中使用T2M的文本編碼器和動作編碼器計算的,就像之前的工作一樣。由于本文的方法提供了對生成動作的詳細控制,本文還使用部分級別多模態(tài)相似度(PMM Sim)將本文的方法與基線方法進行了比較,通過訓練部分級別文本編碼器和動作編碼器進行對比學習,這與TMR相似,本文認為這樣做可以使?jié)撛诳臻g中的動作樣本更加分散,使得不同的動作更容易被區(qū)分。具體來說,本文在TMR潛在空間中計算PMM Sim如下:
在這里, 和 分別通過TMR編碼器對部分級別的動作和文本進行編碼獲得。雖然本文主要關注語義可控生成,但本文也評估了文本到動作合成中的常見偽影。本文使用[Yuan等人,2022]介紹的三個具體指標對生成的動作進行評估:滑動、穿透和浮動。
比較結果。 全身動作的比較結果顯示在下表2中,部分級別動作的比較結果顯示在下表3中。下表2中的FID和DIV指標表明本文的方法生成了更加真實和多樣化的動作。R Precision 和 MM Dist 表明本文的方法能夠生成更好的全局語義匹配的動作。下表3還表明本文的方法實現(xiàn)了最佳的局部語義匹配,性能非常接近真實數(shù)據(jù)。本文的局部到全局設計獨立地將局部語義信息注入到身體部位,并與全局語義一起進行細化,這為網(wǎng)絡提供了更準確和結構化的語義信息,有助于生成,并因此實現(xiàn)更高的質量。對于偽影評估,如下表4所示,本文可以看到每種方法在毫米尺度上表現(xiàn)非常接近真實數(shù)據(jù)(Real行)。偽影可以歸因于數(shù)據(jù)集固有的質量差異。
消融實驗
本文設計了兩個主要實驗來評估本文方法的不同組成部分的影響。第一個實驗研究了不同文本編碼器對動作質量的影響。第二個實驗評估了全身動作優(yōu)化器對本文方法生成的動作質量的影響。
文本編碼器的重要性。 本文通過用CLIP替換本文預訓練的文本編碼器進行測試,展示了本文使用的TMR文本編碼器可以捕捉更詳細的語義。此外,本文還呈現(xiàn)了使用CLIP或TMR文本編碼器獲得的MDM的結果,以進行比較。
下表5和下表6分別評估了全身和部分級別的動作質量。總體而言,本文觀察到使用TMR文本編碼器通常會產(chǎn)生比使用CLIP更好的結果,無論是對于本文的方法還是MDM,以及無論是對于局部還是全局質量。當將本文的方法與使用相同文本編碼器的MDM進行比較時,本文的方法通常表現(xiàn)更好,進一步證明了本文局部到全局設計的優(yōu)越性。
Conformer的影響。 將Transformer替換為Conformer是為了提高部分動作編碼器的動作質量。為了驗證改進,本文比較了兩種配置的全局質量指標。從下表7和下表8中,本文觀察到使用Conformer的LGTM可以獲得比使用Transformer更好的質量和語義匹配性能。這種改進可以歸因于Conformer的卷積模塊,它比自注意力更好地捕捉了局部特征。
全身動作優(yōu)化器的重要性。 本文的全身動作優(yōu)化器的目標是建立不同身體部位運動之間的相關性,并改善全身運動的協(xié)調性。為了驗證其效果,本文將其與“w/o opt”設置進行比較,其中本文去除了本文全身優(yōu)化器的關鍵組件,即注意力編碼器。從下表9和下表10中可以看出,沒有優(yōu)化器,局部動作質量下降,全身動作質量也明顯較差;參見下圖6中的一個示例結果。沒有全身動作優(yōu)化器,角色的兩只腳在運動過程中無法很好地協(xié)調步伐交替,因為缺乏信息交換。
結論
本文提出了LGTM用于文本到動作的生成,這顯著提高了從文本描述中衍生的3D人體動作的準確性和連貫性。通過將大語言模型與局部到全局的生成框架結合起來,本文的方法有效地解決了語義映射和動作連貫性的關鍵挑戰(zhàn)。
限制和未來工作。 由于本文使用ChatGPT進行動作描述分解,因此局部語義映射取決于ChatGPT的推理能力。不正確的分解或映射可能導致不令人滿意的動作生成結果。例如,在生成“高爾夫揮桿”動作時,這需要高水平和全身協(xié)調,LGTM會遇到困難,因為ChatGPT識別到右手揮動高爾夫球桿,但未能將這種推理分解為每個身體部位的一系列低級動作。
結果是網(wǎng)絡生成了一個不可信的動作,如下圖7所示。此外,在數(shù)據(jù)集中的含糊不清的文本可能會在訓練過程中使網(wǎng)絡混淆。例如,短語“一個人執(zhí)行動作A和動作B”可能暗示這些動作同時發(fā)生或順序發(fā)生,導致輸出可能與用戶期望不一致。通過提供更詳細的時間描述,可以緩解這個問題。此外,由于數(shù)據(jù)集中樣本長度有限,本文當前的框架無法始終生成高質量的長期動作。對于未來的工作,一個有前途的方向是將本文的局部到全局的思想與那些基于VQ-VAE的方法(如TM2T和MotionGPT)結合起來,通過構建部分級別的動作片段作為動作token,進行更詳細的動作生成,以獲得不同部分級別的動作組合。
本文轉自 AI生成未來 ,作者:Haowen Sun等
