Google釋出的一款人工智慧,可以利用不同的音樂生成不同的3D舞蹈影片
舞蹈是幾乎在所有文化中都能找到的通用語言,也是當今許多人用來在當代媒體平臺上表達自己的一種方式。透過組合與音樂節拍一致的運動模式來提升跳舞的能力是人類行為的一個基本方面。然而,舞蹈是一種需要練習的藝術形式。事實上,通常需要專業的訓練來為舞者配備豐富的舞蹈動作,以創造富有表現力的編舞。雖然這個過程對人們來說很困難,但對於機器學習 (ML) 模型來說更具挑戰性,因為該任務需要能夠生成具有高運動學複雜性的連續運動,同時捕捉運動與運動之間的非線性關係
在ICCV 2021 上發表的“ AI Choreographer: Music-Conditioned 3D Dance Generation with AIST++ ”中,Google提出了一種 全注意力跨模態Transformer (FACT) 模型可以模仿和理解舞蹈動作,甚至可以增強一個人的編舞能力。與模型一起,Google釋出了一個大規模的多模態 3D 舞蹈動作資料集AIST++,其中包含 1408 個序列中 5.2 小時的 3D 舞蹈動作,涵蓋 10 種舞蹈型別,每種型別都包括具有已知相機姿勢的多檢視影片。透過對 AIST++ 的廣泛使用者研究,Google發現 FACT 模型在定性和定量上都優於最近的最先進方法。
Google提出了一種新穎的全注意力跨模態轉換器 (FACT) 網路,該網路可以生成以音樂為條件的逼真 3D 舞蹈動作(右)和新的 3D 舞蹈資料集AIST++(左)。
Google從現有的AIST 舞蹈影片資料庫生成建議的 3D 運動資料集——一組帶有音樂伴奏的舞蹈影片,但沒有任何 3D 資訊。AIST 包含 10 種舞蹈流派:Old School(Break、Pop、Lock和Waack)和New School(Middle Hip-Hop、LA-style Hip-Hop、House、Krump、Street Jazz和Ballet Jazz)。雖然它包含舞者的多檢視影片,但這些攝像機沒有經過校準。
Google根據廣泛使用的SMPL 3D 模型使用的引數恢復了相機校準引數和 3D 人體運動。生成的資料庫 AIST++ 這是一個大規模的 3D 人類舞蹈動作資料集,其中包含與音樂搭配的各種 3D 動作。每個框架都包含大量註釋:
9個相機內參和外參檢視;
17 個COCO 格式的2D 和 3D 人體關節位置;
24 個 SMPL 姿勢引數以及全域性縮放和平移。
動作均勻分佈在所有 10 種舞蹈型別中,涵蓋每分鐘節拍 ( BPM ) 的各種音樂節奏。每種舞蹈型別都包含 85% 的基本動作和 15% 的高階動作(更長的編舞由舞者自由設計)。
AIST++ 資料集還包含多檢視同步影象資料,使其可用於其他研究方向,例如 2D/3D 姿態估計。據Google所知,AIST++ 是最大的 3D 人類舞蹈資料集,包含 1408 個序列、30 個主題和 10 個舞蹈流派,並具有基本和高階編舞。
AIST++ 資料集中的 3D 舞蹈序列示例。 左:來自AIST 舞蹈影片資料庫的舞蹈影片的三個檢視。右:在 3D 網格(頂部)和骨架(底部)中視覺化的重建 3D 運動。
因為 AIST 是一個教學資料庫,所以它記錄了多個舞者按照相同的編舞為不同的音樂以不同的 BPM,這是舞蹈中的常見做法。由於模型需要學習音訊和運動之間的一對多對映,因此這在跨模態序列到序列生成中提出了獨特的挑戰。Google在 AIST++ 上仔細構建了不重疊的訓練和測試子集,以確保在子集之間既不共享編排也不共享音樂。
Full Attention Cross-Modal Transformer (FACT) 模型
使用此資料,Google訓練 FACT 模型以從音樂生成 3D 舞蹈。該模型首先使用單獨的運動和音訊轉換器對種子運動和音訊輸入進行編碼。然後將嵌入連線起來併發送到跨模態轉換器,該轉換器學習兩種模態之間的對應關係並生成N 個未來的運動序列。然後使用這些序列以自我監督的方式訓練模型。所有三個變壓器都是端到端共同學習的。在測試時,Google將此模型應用於自迴歸框架,其中預測的運動作為下一代步驟的輸入。因此,FACT 模型能夠逐幀生成長距離舞蹈動作。
FACT 網路接收音樂作品 (Y) 和 2 秒的種子運動序列 (X),然後生成與輸入音樂相關的長期未來運動。
FACT 涉及三個關鍵設計選擇,這些選擇對於從音樂中產生逼真的 3D 舞蹈動作至關重要。
所有轉換器都使用全注意掩碼,它比典型的因果模型更具表現力,因為內部令牌可以訪問所有輸入。
Google訓練模型來預測當前輸入之外的N 個未來,而不僅僅是下一個動作。這鼓勵網路更多地關注時間上下文,並有助於防止模型在幾個生成步驟後運動凍結或發散。
Google早期融合了兩個嵌入(運動和音訊),並採用了一個深的 12 層跨模態轉換器模組,這對於訓練一個真正關注輸入音樂的模型至關重要。
Google根據三個指標評估效能
運動質量:Google計算了AIST++ 測試集中的真實舞蹈運動序列與 40 個模型生成的運動序列之間的Frechet 起始距離(FID),每個序列具有 1200 幀(20 秒)。Google將基於幾何和動力學特徵的 FID 分別表示為 FID g和 FID k。
生成多樣性:與之前的工作類似,為了評估模型生成潛水員舞蹈動作的能力,Google計算了 AIST++ 測試集上 40 個生成動作的特徵空間中的平均歐幾里德距離,再次比較幾何特徵空間 (Dist g ) 和動力學特徵空間 (Dist k )。
四種不同的舞蹈編排(右)使用不同的音樂生成,但相同的兩秒種子動作(左)。調節音樂的流派是:Break、Ballet Jazz、Krump 和 Middle Hip-hop。種子運動來自嘻哈舞蹈。
Motion-Music Correlation:由於沒有精心設計的指標來衡量輸入音樂(音樂節拍)和生成的 3D 運動(運動節拍)之間的相關性,Google提出了一種新的指標,稱為節拍對齊分數 (BeatAlign)。
生成的舞蹈動作的運動速度(藍色曲線)和運動節拍(綠色虛線),以及音樂節拍(橙色虛線)。透過從運動速度曲線中找到區域性最小值來提取運動節拍。
定量評估
Google將 FACT 在每個指標上的效能與其他最先進方法的效能進行比較。
與最近的三種最先進的方法(Li等人、Dancenet和Dance Revolution)相比,FACT 模型生成的動作更逼真,與輸入音樂的相關性更好,並且在以不同的音樂為條件時更多樣化。*請注意,Li等人。生成的運動是不連續的,使得平均運動特徵距離異常高。
Google還透過使用者研究從感知上評估了運動與音樂的相關性,其中要求每個參與者觀看 10 個影片,顯示Google的一個結果和一個隨機對應的結果,然後選擇與音樂更同步的舞者。該研究由 30 名參與者組成,從專業舞者到很少跳舞的人。與每個基線相比,81% 的人更喜歡 FACT 模型輸出而不是 Li 等人的輸出,71% 的人更喜歡 FACT 而不是 Dancenet,77% 的人更喜歡 Dance Revolution。有趣的是,75% 的參與者更喜歡未配對的 AIST++ 舞蹈動作,而不是 FACT 生成的動作,這並不奇怪,因為原始舞蹈捕捉具有很強的表現力。
定性結果
與DanceNet(左)和Li等先前方法相比。艾爾。(中),使用 FACT 模型生成的 3D 舞蹈(右)更逼真,並且與輸入音樂的相關性更好。
使用 FACT 模型生成更多 3D 舞蹈。
Google提出了一個模型,它不僅可以學習音訊-運動對應關係,還可以生成以音樂為條件的高質量 3D 運動序列。由於從音樂生成 3D 運動是一個新興的研究領域,Google希望Google的工作將為未來跨模態音訊到 3D 運動生成鋪平道路。Google還發布了迄今為止最大的 3D 人類舞蹈資料集AIST++。這個提出的、多檢視、多流派、跨模態的3D運動資料集不僅可以幫助研究條件 3D 運動生成研究,還可以幫助人類理解研究。Google將在GitHub 儲存庫中釋出程式碼,並在此處釋出經過訓練的模型。
雖然Google的結果顯示了這個以音樂為條件的 3D 運動生成問題的有希望的方向,但還有更多的東西需要探索。首先,Google的方法是基於運動學的,Google不考慮舞者和地板之間的物理互動。因此全域性平移會導致偽像,例如腳滑動和浮動。其次,Google的模型目前是確定性的。探索如何為每首音樂生成多個逼真的舞蹈是一個令人興奮的方向。