Jianghanxiao/PhysTwin

[ICCV 2025] PhysTwin: Physics-Informed Reconstruction and Simulation of Deformable Objects from Videos

PhysTwin – 從影片中進行物理資訊驅動的可變形物體重建與模擬

是什麼

  • 一個開源研究框架,可將軟體或可變形物體(布料、繩索、毛絨玩具等)的 RGB-D 影片轉換為數位孿生 (digital twin) —— 一個可以進行模擬與互動的物理模型。
  • 透過結合視覺線索與可微分彈簧-質量模擬器 (differentiable spring-mass simulator) 來學習該孿生體,因此重建的模型會遵循物理約束(力、材料剛性、碰撞)。
  • 一旦建立,該孿生體可以在互動式遊樂場 (interactive playground) 中進行探索、視覺化,或用於下游任務,例如機器人規劃、RL 或 XR/VR 模擬。

關鍵能力

能力 你將獲得
重建 (Reconstruction) 將原始 RGB-D 錄影轉換為物理資訊驅動的可變形物體模型(即「PhysTwin」)。
互動式模擬 透過 Gradio 為基礎的 Web UI 或本地視窗,即時 (real-time) 與該孿生體進行互動(透過鍵盤或遠端控制)。
分析工具 視覺化推斷出的力、材料參數與多物體碰撞。
優化管線 (Optimization pipelines) 兩階段訓練:先進行快速的零階 (CMA-ES) 階段,接著使用 Nvidia Warp 進行一階梯度下降階段以實現快速收斂(在 RTX 4090 上處理簡單案例約需 5 分鐘)。
擴展性 提供 Model-Predictive Path Integral (MPPI) 規劃、批次模擬 (Boba) 以及機器人-物理整合 (Real2Sim-Eval) 的範例程式碼。

安裝

  • 該儲存庫支援 Linux、Windows、Docker,以及專門針對 RTX 5090 的環境。典型的 Linux 流程如下:
    conda create -n phystwin python=3.10
    conda activate phystwin
    bash ./env_install/env_install.sh          # 安裝核心依賴項
    bash ./env_install/download_pretrained_models.sh
    
  • 若你只需要互動式遊樂場,可以跳過選用組件(Trellis、Grounding-SAM-2、RealSense、SDXL)。
  • Docker 使用者可以透過 ./docker_scripts/build.sh 進行構建,並在容器內執行遊樂場。

數據與預訓練資產

  • 預處理過的數據集與模型權重 (checkpoints) 託管於 Hugging Face。下載 zip 檔案(data.zipexperiments_optimization.zipexperiments.zipgaussian_output.zip,以及選用的 additional_data.zip)並將其解壓縮至儲存庫根目錄。
  • 數據包含多視角 RGB-D 錄影、校準檔案,以及針對數個示範物體(繩索、布料、「樹懶」毛絨玩具等)準備就緒的優化結果。

典型工作流程

  1. 處理原始影片(如果你有自己的錄影):
    python script_process_data.py
    python export_gaussian_data.py   # 準備第一幀外觀
    
  2. 優化 / 訓練孿生體
    # 零階 (快速、粗略)   
    python script_optimize.py
    # 一階 (精細化)        
    python script_train.py
    
  3. 執行推論 / 渲染
    python script_inference.py
    bash gs_run.sh                 # Gaussian-splatting 渲染
    
  4. 互動式探索
    python interactive_playground.py --case_name double_lift_cloth_3 --n_ctrl_parts 2
    
    • 加入 --inv_ctrl 以翻轉控制方向。
    • 使用 gradio_playground 分支來進行無頭伺服器 (headless-server) 的 Web 存取。
  5. 分析(力、材料、多物體碰撞)使用提供的視覺化腳本,例如:
    python visualize_force.py --case_name single_push_rope_1
    n
    python visualize_material.py --case_name double_lift_cloth_1
    

示範亮點

  • Boba (批次模擬器) 在 RTX 4090 上可運行 >3,300 FPS,能夠在幾分鐘內完成 RL 策略訓練。
  • Deform360 數據集提供了 198 種日常物體,包含從 41 個攝影機與觸覺夾具擷取的 1,980 個互動序列。
  • 即時互動式遊樂場在 RTX 4090 上處理「樹懶」案例時,運行速度約為 37 FPS。

誰可能會使用它

  • 正在為機器人技術或 VR/AR 建立軟體體世界模型 (soft-body world models) 的研究人員。
  • 需要將可變形物品的真實影片轉換為可模擬資產的開發者。
  • 對於物理感知影片理解、可微分模擬或數據驅動的軟體體控制感興趣的人士。

引用 若你在研究中使用 PhysTwin,請引用隨附的 ICCV 2025 論文 (arXiv 2503.17973)。README 也列出了基於 PhysTwin 開發的下游工作。


以上所有細節均直接取自儲存庫的 README;未添加任何外部假設。

相關

  • 專案
  • 專案
  • 專案
  • 專案