haoyi-duan/WorldScore

Official implementation for WorldScore: A Unified Evaluation Benchmark for World Generation

📚 WorldScore とは何ですか?

WorldScore は、世界生成モデル(3Dシーン、4D時空間世界、または動画)を評価するためのオープンソースベンチマークです。テキストや画像から3Dシーン、4D時空間世界、または動画を生成するシステムを対象としています。以下を提供します:

  • 厳選されたデータセット(WorldScore‑Dataset):初期シーンとカメラ移動指示のセット。
  • 参照実装:データのダウンロード、任意のモデルによる動画生成、空間時間的メトリクスの実行。
  • 公開リーダーボード(HuggingFaceでホスト):研究者がスコアを提出できる場所。

このプロジェクトは ICCV‑2025 論文 「WorldScore: A Unified Evaluation Benchmark for World Generation」 と併せて提供され、モデルが世界を拡張し、カメラパスに従う能力を一つの数値で反映する目的を持っています。従来の動画品質ベンチマークでは見落とされがちな点です。


🚀 はじめ方(概要ステップ)

  1. クローン&設定.env ファイル内で WORLDSCORE_PATHMODEL_PATHDATA_PATH を設定。
  2. インストール – conda 環境(Python 3.10)を作成し、pip install -e . を実行。PyTorch 2.5、DROID‑SLAM、Grounding‑SAM、SAM‑2、VFIMamba など多数の依存関係をインストール。
  3. データセットのダウンロードpython download.py を実行して、HuggingFace から WorldScore‑Dataset を取得。
  4. モデルの追加
    • 解像度、生成タイプ(画像→動画 i2v またはテキスト→動画 t2v)、フレーム数、fps などを記述した小さな YAML 設定ファイル(model_name.yaml)を作成。
    • worldscore/benchmark/utils/modeltype.py に、適切なファミリー(threedgenfourdgenvideogen)下でモデル名を登録。
    • world_generators/ に、generate_video(prompt, image_path=None) メソッドを公開する Python クラスを実装。戻り値は PIL.Image オブジェクトのリストまたは [N,3,H,W] のテンソル。
  5. 動画の生成python world_generators/generate_videos.py --model-name <your_model> を実行(単一GPU)または Slurm ワラッパーでマルチGPUクラスタ用に使用。
  6. 評価の実行 – 動画生成後、python worldscore/run_evaluate.py --model_name <your_model>(または Slurm バージョン)を実行。DROID‑SLAM、Grounding‑DINO、SAM などの事前ダウンロード済みチェックポイントを使用して、深度一貫性、オブジェクト追跡、接地品質などのメトリクスを計算。
  7. 結果の提出worldscore_output/worldscore.json という JSON ファイルが生成されます。メールで haoyiduan@princeton.edu に送信するか、動画をアップロードしてチームが評価を実施。リーダーボードは自動的に更新されます。

📊 ベンチマークが測定する内容

WorldScore は空間的および時間的基準を統合しています:

  • 幾何学的一貫性 – DROID‑SLAM のポーズ推定により。
  • オブジェクトの接地 – Grounding‑DINO と Segment‑Anything(SAM / SAM‑2)を使用。
  • 時間的整合性 – 動作の滑らかさと連続性を評価。
  • プロンプト遵守度 – 生成された世界が提供されたカメラパスとシーン拡張指示に従っているかを確認。

正確なメトリクスリストは worldscore/benchmark/metrics/ にあり、拡張可能。新しいモデルは評価コードを再実装せずに同じパイプラインに統合できます。


🏅 リーダーボードとコミュニティ

結果は HuggingFace Space に表示されます。チームは以下のいずれかを選択できます:

  • 自己評価して JSON スコアを提出(推奨 – 即時更新)
  • 生動画を著者に送信して手動評価を依頼

リポジトリには、WonderJourneyWonderWorldCogVideoXDynamiCrafter など人気の世界生成モデル用の例示アダプタも含まれており、それらを統合する方法を示しています。


📦 クイックリファレンス(主要ファイル)

パス 目的
download.py HuggingFace から WorldScore データセットを取得。
world_generators/ モデルアダプタと動画生成スクリプト。
worldscore/run_evaluate.py メトリクス計算のメインエントリポイント。
worldscore/benchmark/metrics/ 個別評価メトリクスの実装。
config/model_configs/ 新規モデル用の YAML テンプレート。
worldscore/benchmark/utils/modeltype.py モデルファミリーと名前のマッピングレジストリ。

📖 引用

@article{duan2025worldscore,
  title={WorldScore: A Unified Evaluation Benchmark for World Generation},
  author={Duan, Haoyi and Yu, Hong-Xing and Chen, Sirui and Fei-Fei, Li and Wu, Jiajun},
  journal={arXiv preprint arXiv:2504.00983},
  year={2025}
}

要するに:WorldScore は、研究者が生成モデルが仮想世界を構築し、ナビゲートする能力を、即座に実行可能で再現可能な方法でテストできるよう支援します。従来の動画品質ベンチマークでは埋もれていたギャップを埋めています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • Dispatch