Add model card, link to paper and code
#1
by nielsr HF Staff - opened
README.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
pipeline_tag: other
|
| 3 |
+
---
|
| 4 |
+
|
| 5 |
+
# PhysiFormer: Learning to Simulate Mechanics in World Space
|
| 6 |
+
|
| 7 |
+
PhysiFormer (pronounced *fizzy-former*) is a diffusion transformer for physically-plausible 3D object motion. Unlike video world models that operate in view-dependent pixel space, PhysiFormer represents objects as 3D meshes expressed in world coordinates. Given the initial vertex positions and velocities, as well as object material type (rigid or elastic), the model samples future vertex trajectories directly in world coordinates.
|
| 8 |
+
|
| 9 |
+
* **Paper:** [PhysiFormer: Learning to Simulate Mechanics in World Space](https://huggingface.co/papers/2606.27364)
|
| 10 |
+
* **Project Page:** [https://yimingc9.github.io/physiformer](https://yimingc9.github.io/physiformer)
|
| 11 |
+
* **GitHub Repository:** [https://github.com/yimingc9/PhysiFormer](https://github.com/yimingc9/PhysiFormer)
|
| 12 |
+
* **Demo:** [Hugging Face Space](https://huggingface.co/spaces/yslan/PhysiFormer)
|
| 13 |
+
|
| 14 |
+
## ⚙️ Setup
|
| 15 |
+
|
| 16 |
+
```bash
|
| 17 |
+
# Create conda environment
|
| 18 |
+
conda create -n physiformer python=3.10 -y
|
| 19 |
+
conda activate physiformer
|
| 20 |
+
|
| 21 |
+
# Install PyTorch (CUDA 12.4)
|
| 22 |
+
pip install torch==2.5.1 torchvision==0.20.1 --index-url https://download.pytorch.org/whl/cu124
|
| 23 |
+
|
| 24 |
+
# Install remaining requirements, including the prebuilt flash-attn wheel.
|
| 25 |
+
pip install -r requirements.txt
|
| 26 |
+
```
|
| 27 |
+
|
| 28 |
+
## 🤗 Model Access & Inference
|
| 29 |
+
|
| 30 |
+
Download the checkpoint from Hugging Face before running scripts:
|
| 31 |
+
|
| 32 |
+
```bash
|
| 33 |
+
huggingface-cli download yslan/physiformer checkpoint-best.pt --local-dir checkpoints
|
| 34 |
+
```
|
| 35 |
+
|
| 36 |
+
Run in-distribution test set inference:
|
| 37 |
+
|
| 38 |
+
```bash
|
| 39 |
+
bash scripts/run_indistri_example.sh
|
| 40 |
+
```
|
| 41 |
+
|
| 42 |
+
Run OOD inference for generalisation to complex geometries:
|
| 43 |
+
|
| 44 |
+
```bash
|
| 45 |
+
bash scripts/run_ood_example.sh
|
| 46 |
+
```
|
| 47 |
+
|
| 48 |
+
## Citation
|
| 49 |
+
|
| 50 |
+
```bibtex
|
| 51 |
+
@article{chen2026physiformer,
|
| 52 |
+
title={PhysiFormer: Learning to Simulate Mechanics in World Space},
|
| 53 |
+
author={Chen, Yiming and Lan, Yushi and Vedaldi, Andrea},
|
| 54 |
+
journal={arXiv preprint arXiv:2606.27364},
|
| 55 |
+
year={2026}
|
| 56 |
+
}
|
| 57 |
+
```
|