運動應用(生成&克隆&遷移&編輯)全搞定!阿里通義提出動畫框架Perception-as-Control 精華
文章鏈接:https://arxiv.org/pdf/2501.05020
項目鏈接:https://chen-yingjie.github.io/projects/Perception-as-Control
亮點直擊
- 引入了3D感知運動表示,以促進精細化的協同運動控制,該表示可以被修改和感知,從而將用戶意圖轉化為空間對齊的運動控制信號。
- 基于3D感知運動表示,提出了一種精細化運動可控的圖像動畫框架,即Perception-as-Control,利用擴散模型實現精確且靈活的協同運動控制。
- 該框架通過對用戶意圖的解析,可以支持多種與運動相關的應用,例如運動生成、運動克隆、運動遷移以及運動編輯。
總結速覽
解決的問題
在圖像動畫領域,現有方法在控制攝像機和物體運動時仍面臨以下挑戰:
- 協同控制難題:無法實現攝像機和物體運動的協同控制,容易產生沖突。
- 控制粒度不足:缺乏精細化的控制能力,難以滿足復雜的動畫需求。
- 三維感知不足:運動表示通常缺乏3D感知,導致局部區域在同時控制攝像機和物體運動時出現控制沖突。
提出的方案
提出了Perception-as-Control的圖像動畫框架,基于3D感知運動表示,實現精細化的協同運動控制。
應用的技術
- 3D感知運動表示:通過重構3D場景,使用單位球體簡化動態部分和靜態部分,生成反映運動和空間關系的感知結果。
- 輕量化雙編碼器:分別對攝像機和物體的控制信號進行編碼,確保控制信號與參考圖像對齊,提高運動控制的靈活性。
- 擴散模型:利用基于U-Net的架構,將外觀信息與運動信息結合,用于生成目標動畫。
- 數據管道與訓練策略:自動化處理真實視頻數據,采用分階段訓練平衡控制能力,支持多種運動相關任務。
達到的效果
- 精細化控制:能夠實現攝像機和物體的協同運動控制,避免控制沖突。
- 視覺一致性:通過3D感知運動表示,確保運動信號與生成的動畫幀空間對齊,提升動畫質量。
- 任務統一性:支持各種運動相關的視頻生成任務,具備高度的靈活性和適應性。
- 性能優越:實驗結果表明,該框架在多個任務中均優于現有方法,實現更精確的運動控制與更高質量的動畫效果。
Perception-as-Control
首先介紹一個用于從自然視頻中構建3D感知運動表示的數據整理流程。隨后,描述了精細化運動可控的圖像動畫框架——感知即控制(Perception-as-Control)。同時,提出了一種三階段訓練策略,用于平衡攝像機和物體的運動控制,并促進精細化的物體運動控制。
預備知識
基于3D的運動表示
為了進行訓練,需要視頻數據和相應的基于3D的運動表示。然而,常用的大規模視頻數據集主要由缺乏相機設置和場景信息的野外視頻組成?;謴痛祟愋畔⒌囊环N方法是通過單目3D重建算法(例如 SfM )估計相機參數并重建場景,然后簡化重建的3D場景。然而,這些算法計算成本高,并且由于尺度模糊問題,會導致不可忽略的重建誤差。另一種方法是通過適當的近似直接構建簡化的3D場景,從而繞過這些問題,即使是針對野外視頻也可以輕松實現。因此,我們引入了數據處理流水線,使用現成的算法為任何可收集的視頻構建基于3D的運動表示,如下圖3左上部分所示。
剪輯檢測與運動過濾
首先,應用常見的預處理步驟,從視頻中提取包含連續視覺內容的片段。通過剪輯檢測算法將原始視頻分割成多個視頻片段。隨后,使用 RAFT 估計視頻片段中每對相鄰幀之間的光流。然后,計算估計光流的 Frobenius 范數作為運動分數,并進一步過濾掉運動分數低于第30百分位的視頻片段(即運動不明顯的視頻片段),這一點與之前的方法[16]一致。接下來,為每個視頻片段構建基于3D的運動表示。該過程分為兩個步驟:用于捕捉局部對象運動的3D點跟蹤和用于捕捉全局相機運動的視覺里程計。
局部對象運動的3D點跟蹤
全球相機運動的視覺里程計
使用一個世界包絡體來標記剩余部分,該部分相對于世界坐標系是靜止的。為了將全球相機運動轉換為視覺變化,可以使用現成的算法從連續幀序列中恢復相機軌跡并渲染世界包絡體。盡管存在尺度模糊問題,我們的世界包絡體作為場景標記,只需要粗略的相機位姿,而不需要極其精確的位姿。因此,將相機內參設置為I = [W,0,W//2; 0,H,H//2; 0,0,1]。
為了避免 RGB 級別的干擾,將單位球體和世界包絡體分別渲染為兩個空間層,分別作為對象和相機控制信號。
網絡架構
本文提出了一種基于 3D感知運動表示 的運動可控圖像動畫框架,稱為 Perception-as-Control,該框架以參考圖像和一系列空間對齊的運動控制信號為輸入,生成視頻作為輸出。
如前面圖 3 右側所示,本文的框架基于 去噪 U-Net 架構,并加入了額外的運動模塊以建模時間信息。在圖像動畫的設置下,必須保留參考圖像(圖像控制信號)中包含的外觀信息,并遵循運動控制信號中包含的運動信息。
以往方法通過直接將空間對齊的控制信號添加到輸入噪聲中,或通過輔助架構將其集成到去噪 U-Net 中,并通過注意力機制注入高級控制信號。鑒于運動控制信號已經是空間對齊的,在本文的框架中,通過將運動控制信號添加到噪聲中進行注入,并通過 ReferenceNet 注入參考圖像。
本文使用兩個輕量級編碼器分別編碼相機控制信號和對象控制信號,以避免 RGB 級別的干擾。然后,通過一個融合模塊將編碼后的相機控制信號和對象控制信號合并。經驗性地將融合模塊實現為一個卷積塊。
在訓練過程中,訓練數據對通過本文的數據策劃管道準備,并采用三階段的訓練策略以平衡相機和對象控制信號。推理時,將用戶意圖以各種形式轉換為 3D感知運動表示,然后使用所提出的框架根據該表示生成視頻。
訓練策略
盡管 3D感知運動表示 將相機和對象運動轉化為統一的形式,但由于訓練數據中的運動通常是糾纏在一起的,訓練策略仍然非常重要。本文提出了三階段訓練策略,旨在平衡相機和對象控制信號,從而實現精細化的協作運動控制。
階段 1:相機運動控制訓練
在第一階段,使用僅包含相機運動的視頻片段(來自 RealEstate10K)訓練相機編碼器。此階段中暫時排除對象編碼器和融合模塊。
由于渲染的球體可能出現在像素平面的任意位置,去噪 U-Net 中的運動模塊會與其一起訓練。這使得模型能夠將每個渲染球體與其代表的對象部分對齊。因此,在這一階段,訓練 相機編碼器、去噪 U-Net 中的運動模塊以及 ReferenceNet。
階段 2:協作運動控制訓練
在第二階段,加入來自 WebVid10M 的視頻片段(包含相機和對象運動)進行訓練。此階段中添加對象編碼器和融合模塊,以實現協作運動控制。
為了加速球體與對象部分的對齊過程,此階段中使用密集的單位球作為對象控制信號。固定相機編碼器,訓練對象編碼器、融合模塊、運動模塊和 ReferenceNet。
此外,為了同時保持兩種控制信號的有效性,尤其是在沖突情況下,在訓練期間以固定的丟棄率隨機丟棄來自 RealEstate10K 視頻片段中的一種控制信號。
階段 3:從密集到稀疏的微調
第三階段的目標是通過稀疏的單位球實現精細化的對象運動控制,這需要模型自適應地確定每個渲染點的控制范圍。
在所有階段中,使用類似于 Eq. 2 的損失函數來優化框架:
實驗
實驗設置
數據集。使用視頻數據集RealEstate10K和WebVid10M進行訓練。RealEstate10K包含僅有相機運動的視頻,每個視頻都標注了真實的相機內外參。WebVid10M是一個大規模數據集,包含了同時具有相機和物體運動的野外視頻,但這些視頻的質量不夠高。通過本文的數據整理流程,最終的訓練數據包含約6K個來自RealEstate10K的視頻片段和35K個來自WebVid10M的視頻片段。
實現細節。采用Stable Diffusion 1.5(SD1.5)作為基礎模型,并使用SD1.5的預訓練權重初始化去噪U-Net和ReferenceNet的權重。按照之前的工作[8, 2]添加運動模塊,并進行隨機初始化。訓練過程中,VAE 編碼器和解碼器的權重,以及CLIP圖像編碼器的權重被凍結。訓練時,隨機為每個視頻片段采樣16幀,分辨率為768×512。使用AdamW作為優化器。訓練在8個NVIDIA A100 GPU上進行。第一階段訓練約20k次迭代,第二階段20k次迭代,第三階段50k次迭代,批次大小為1,以確保收斂。
可控圖像動畫
僅相機運動控制
為了展示Perception-as-Control在僅相機運動控制中的優越性,選擇了基本和任意相機運動,并將其可視化為3D。如下圖4所示,本文的框架可以生成符合預期相機運動的視頻。由于世界包絡顯示了相機運動的方向和幅度,并增強了整體感知,生成的視頻中的空間結構穩定且一致。此外,通過將多個單位球體添加到關鍵部位,生成的視頻能夠感知深度信息,并能夠準確地反映在不同焦距下的透視效果。
僅物體運動控制
對于僅物體運動控制,在下圖5中提供了案例,以展示本文的方法在實現靈活和精確的多實例及精細粒度運動控制方面的優越性。由于沒有相機運動,將單位球體的中心投影到像素平面上,并可視化它們隨時間的變化,使用顏色表示運動的方向。如圖5左側所示,控制參考圖像中越來越多的熱氣球,生成的視頻準確地反映了每個熱氣球的運動。在圖5右側,當對竹子施加額外的控制時,所提出的方法能夠自適應地確定每個單位球體的控制范圍。
協同運動控制
本文的框架還支持相機和物體運動的協同控制。如下圖6所示,控制相機和物體的運動,并可視化相應的3D感知運動表示。本文的方法能夠處理大幅度的物體運動和精細的物體運動。生成的視頻遵循指定的相機運動,并準確展示適應后的物體運動。
應用
所提出的圖像動畫框架可以通過仔細解釋用戶意圖,應用于各種與運動相關的應用,如下圖1所示。
運動生成是指基于參考圖像和用戶繪制的2D軌跡生成圖像動畫。
運動克隆是指模仿源視頻中的相機和物體運動。用戶提供源視頻以構建3D感知運動表示,并編輯第一幀作為參考圖像。
運動轉移是指通過根據語義對應自適應地重新定位和縮放源視頻中的局部運動,將其轉移到參考圖像上。
運動編輯比上述設置具有更大的控制自由度。用戶可以提供分割掩碼,并編輯掩碼內外的運動。
更多示例請參見下圖7。
對于運動生成,基于參考圖像通過單目深度估計構建3D感知運動表示,并根據2D軌跡進行操控。結果表明,本文的框架有效處理了各種運動,包括自然擺動、形狀變化、交叉和從像素平面延伸出的運動。
對于運動克隆,編輯每個源視頻的第一幀作為參考圖像,并從源視頻中構建3D感知運動表示作為控制信號。結果精確再現了源視頻中的相機和物體運動。
對于運動轉移,我們提取與語義點對應的單位球體的3D軌跡,并將其重新定位以匹配參考圖像。結果表明,源視頻中的局部運動成功地轉移到參考圖像中不同位置、不同尺度的物體上。
對于運動編輯,根據分割掩碼修改源視頻的3D感知運動表示,例如修改幾個單位球體的軌跡或視點。結果展示了我們框架的靈活性。
結論
與以往僅控制相機運動或物體運動的方法不同,本文提出了一種用于協同運動控制的精細控制可控圖像動畫框架。該框架將從3D感知運動表示中獲得的運動控制信號作為輸入,簡化原始的3D場景,將相機和物體的運動轉化為統一且一致的視覺變化。由于引入的3D感知運動表示的靈活性,本文的框架可以通過將用戶意圖轉化為表示中的變化,支持各種與運動相關的應用。
本文轉自AI生成未來 ,作者:AI生成未來
