facebook/actionbench
๐ฌ ActionBench: Paired Video-3D Synthetic Benchmark ๐ Overview ActionBench is a benchmark dataset of 128 paired video โ animated point-cloud samples for evaluating animated 3D mesh generation from video. The dataset consists of synthetic scenes of animated objects from ObjaverseXL, rendered using Blender 3.5.1. Each sample contains: Video: 16 RGBA frames with alpha mask Camera (camera.json): Camera parameters using Blender convention (X_cam = X @ R^T + T, camera looksโฆ See the full description on the dataset page: https://huggingface.co/datasets/facebook/actionbench.
91.2k
1---2license: other3task_categories:4 - image-to-3d5 - video-classification6tags:7 - 3d8 - video9 - point-cloud10 - animation11 - benchmark12 - synthetic13pretty_name: ActionBench14viewer: false15---16 17<div align="center">18 19<h1>๐ฌ ActionBench: Paired Video-3D Synthetic Benchmark</h1>20 21<img src="actionbench.gif" alt="ActionBench" width="100%">22 23 24</div>25 26## ๐ Overview27 28ActionBench is a benchmark dataset of **128 paired video โ animated point-cloud samples** for evaluating animated 3D mesh generation from video.29The dataset consists of synthetic scenes of animated objects from [ObjaverseXL](https://objaverse.allenai.org/), rendered using **Blender 3.5.1**.30 31Each sample contains:32- **Video**: 16 RGBA frames with alpha mask33- **Camera** (`camera.json`): Camera parameters using Blender convention (`X_cam = X @ R^T + T`, camera looks along -Z). See [`projection.py`](projection.py) for how to project the point cloud onto the image plane.34- **Animated Point Cloud**: Surface points sampled on the animated object with shape `(T, V, 6)` where:35 - `T=16`: number of keyframes36 - `V=100_000`: number of vertices (points randomly sampled on the mesh surface)37 - `6`: position `(x, y, z)` + normal `(nx, ny, nz)` for each point38 39 > **Note:** The point cloud is **tracked**: each point index corresponds to the same surface point deformed across timesteps, providing dense correspondences over time.40 41 The animation lie in normalized space `[-1., 1.]^3`.42 43 44 45## ๐ Evaluation46 47To evaluate on ActionBench, produce a list of animated meshes saved as `.glb` files.48 49Each subdirectory must be named with the corresponding `uid` from ActionBench:50 51```52predictions/53โโโ <uid_1>/54โ โโโ mesh_00.glb55โ โโโ mesh_01.glb56โ โโโ ...57โโโ <uid_2>/58โ โโโ mesh_00.glb59โ โโโ ...60โโโ ...61```62 63Download Actionbench dataset, then run the evaluation script in [ActionMesh](https://github.com/facebookresearch/actionmesh):64 65```bash66python actionbench/evaluate.py \67 --pred_root predictions/ \68 --gt_root data/actionbench/data/ \69 --output_csv results.csv \70 --device cuda71```72 73> **Note:** Evaluation requires the same dependencies as [ActionMesh](../README.md) plus [PyTorch3D](https://github.com/facebookresearch/pytorch3d/blob/main/INSTALL.md).74 75Metrics are described in the [ActionMesh paper](https://arxiv.org/abs/2601.16148):76- **CD-3D**: Chamfer Distance 3D โ measures geometric accuracy per frame77- **CD-4D**: Chamfer Distance 4D โ measures spatio-temporal consistency78- **CD-M**: Motion Chamfer Distance โ measures motion fidelity79 80## ๐๏ธ License81 82See the LICENSE file for details about the license under which this dataset is made available.83 84## ๐ Citation85 86If you use ActionBench, please cite the following paper:87 88```bibtex89@inproceedings{ActionMesh2026,90 author = {Remy Sabathier and David Novotny and Niloy Mitra and Tom Monnier},91 title = {ActionMesh: Animated 3D Mesh Generation with Temporal 3D Diffusion},92 year = {2026},93}94```95 