---
title: PhyGround
description: "Criteria-grounded TI2V: 250 prompts over 13 laws, judged 1–5 by PhyJudge or humans. WorldFoundry imports scores.json; it does not run the judge."
---

PhyGround (Northeastern University) is **criteria grounding**, not filmed continuation and not PhyGenEval. Each of **250** text+image-to-video prompts names an expected physical outcome and **2–4** applicable laws from a **13-law** taxonomy (solid-body, fluids, optics). A judge (PhyJudge-9B or humans) rates the generated video **1–5** on semantic adherence, physical temporal validity, persistence, and each applicable law. That is closer to a rubric than to [Physics-IQ](/docs/evaluation/benchmark-hub/physics-iq) mask IoU.

[PhyGenBench](/docs/evaluation/benchmark-hub/phygenbench) is the T2V *generation* commonsense suite (160 prompts / 27 laws / PhyGenEval). PhyGround is TI2V *law-criteria* scoring on 250 prompts / 13 laws.

Paper: [PhyGround](https://arxiv.org/abs/2605.10806). Project: [phyground.github.io](https://phyground.github.io/). Code: [NU-World-Model-Embodied-AI/PhyGround](https://github.com/NU-World-Model-Embodied-AI/PhyGround). Data: [NU-World-Model-Embodied-AI/phyground](https://huggingface.co/datasets/NU-World-Model-Embodied-AI/phyground).

WorldFoundry **imports** `scores.json` from PhyJudge/vLLM or a cloud judge. It does **not** execute PhyJudge-9B over candidate videos.

<BenchmarkPageSections id="phyground" locale="en" />

## How to run

Stage the data root (`prompts/`, `first_images/`, `annotations/`, `videos/<model_id>/`) and import judge outputs:

```bash
hf download NU-World-Model-Embodied-AI/phyground --repo-type dataset --local-dir <phyground_data_root>

worldfoundry-eval zoo benchmark-run \
  --benchmark-id phyground \
  --mode official-validation \
  --benchmark-data-root <phyground_data_root> \
  --generated-artifact-dir <phyground_data_root>/videos/<model_id> \
  --result-model-id <model_id> \
  --output-dir tmp/phyground/official-validation \
  --json
```

Or pass `--official-results-path` at the `scores.json` / `annotations/` file. `--prompt-manifest` optionally checks prompt coverage. Outputs include `scorecard.json` (primary `phyground_overall`).

[← Benchmark Hub](/docs/evaluation/benchmark-hub)
