File size: 6,793 Bytes
26d3511 c276f3d 437cf3b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
---
license: apache-2.0
language:
- en
---
<p align="center">
<img src="./asset/logo.png" width="80%"/>
</p>
# 🔥 Updates
* \[3/2024\] **VMBench** evaluation code & prompt set released!
# 📣 Overview
<p align="center">
<img src="./asset/overview.png" width="100%"/>
</p>
Video generation has advanced rapidly, improving evaluation methods, yet assessing video's motion remains a major challenge. Specifically, there are two key issues: 1) current motion metrics do not fully align with human perceptions; 2) the existing motion prompts are limited. Based on these findings, we introduce **VMBench**---a comprehensive **V**ideo **M**otion **Bench**mark that has perception-aligned motion metrics and features the most diverse types of motion. VMBench has several appealing properties: (1) **Perception-Driven Motion Evaluation Metrics**, we identify five dimensions based on human perception in motion video assessment and develop fine-grained evaluation metrics, providing deeper insights into models' strengths and weaknesses in motion quality. (2) **Meta-Guided Motion Prompt Generation**, a structured method that extracts meta-information, generates diverse motion prompts with LLMs, and refines them through human-AI validation, resulting in a multi-level prompt library covering six key dynamic scene dimensions. (3) **Human-Aligned Validation Mechanism**, we provide human preference annotations to validate our benchmarks, with our metrics achieving an average 35.3% improvement in Spearman’s correlation over baseline methods. This is the first time that the quality of motion in videos has been evaluated from the perspective of human perception alignment.
# 📊Evaluation Results
## Quantitative Results
<p align="center">
<img src="./asset/eval_result.png" width="80%"/>
</p>
### VMBench Leaderboard
<div align="center">
| Models | Avg | CAS | MSS | OIS | PAS | TCS |
| -------------------- | -------- | -------- | -------- | -------- | -------- | -------- |
| OpenSora-v1.2 | 51.6 | 31.2 | 61.9 | 73.0 | 3.4 | 88.5 |
| Mochi 1 | 53.2 | 37.7 | 62.0 | 68.6 | 14.4 | 83.6 |
| OpenSora-Plan-v1.3.0 | 58.9 | 39.3 | 76.0 | **78.6** | 6.0 | 94.7 |
| CogVideoX-5B | 60.6 | 50.6 | 61.6 | 75.4 | 24.6 | 91.0 |
| HunyuanVideo | 63.4 | 51.9 | 81.6 | 65.8 | **26.1** | 96.3 |
| Wan2.1 | **78.4** | **62.8** | **84.2** | 66.0 | 17.9 | **97.8** |
</div>
# 🔨 Installation
## Create Environment
```shell
git clone https://github.com/Ran0618/VMBench.git
cd VMBench
# create conda environment
conda create -n VMBench python=3.10
pip install torch torchvision
# Install Grounded-Segment-Anything module
cd Grounded-Segment-Anything
python -m pip install -e segment_anything
pip install --no-build-isolation -e GroundingDINO
pip install -r requirements.txt
# Install Groudned-SAM-2 module
cd Grounded-SAM-2
pip install -e .
# Install MMPose toolkit
pip install -U openmim
mim install mmengine
mim install "mmcv==2.1.0"
# Install Q-Align module
cd Q-Align
pip install -e .
# Install VideoMAEv2 module
cd VideoMAEv2
pip install -r requirements.txt
```
## Download checkpoints
Place the pre-trained checkpoint files in the `.cache` directory.
You can download our model's checkpoints are from our [HuggingFace repository 🤗](https://huggingface.co/GD-ML/VMBench).
```shell
mkdir .cache
cd .cache
huggingface-cli download GD-ML/VMBench --local-dir .cache/
```
Please organize the pretrained models in this structure:
```shell
VMBench/.cache
├── groundingdino_swinb_cogcoor.pth
├── sam2.1_hiera_large.pt
├── sam_vit_h_4b8939.pth
├── scaled_offline.pth
└── vit_g_vmbench.pt
```
# 🔧Usage
## Videos Preparation
Generate videos of your model using the 1050 prompts provided in `prompts/prompts.txt` or `prompts/prompts.json` and organize them in the following structure:
```shell
VMBench/eval_results/videos
├── 0001.mp4
├── 0002.mp4
...
└── 1050.mp4
```
**Note:** Ensure that you maintain the correspondence between prompts and video sequence numbers. The index for each prompt can be found in the `prompts/prompts.json` file.
You can follow us `sample_video_demo.py` to generate videos. Or you can put the results video named index into your own folder.
## Evaluation on the VMBench
### Running the Evaluation Pipeline
To evaluate generated videos using the VMBench, run the following command:
```shell
bash evaluate.sh your_videos_folder
```
The evaluation results for each video will be saved in the `./eval_results/${current_time}/results.json`. Scores for each dimension will be saved as `./eval_results/${current_time}/scores.csv`.
### Evaluation Efficiency
We conducted a test using the following configuration:
- **Model**: CogVideoX-5B
- **Number of Videos**: 1,050
- **Frames per Video**: 49
- **Frame Rate**: 8 FPS
Here are the time measurements for each evaluation metric:
| Metric | Time Taken |
|--------|------------|
| PAS (Perceptible Amplitude Score) | 45 minutes |
| OIS (Object Integrity Score) | 30 minutes |
| TCS (Temporal Coherence Score) | 2 hours |
| MSS (Motion Smoothness Score) | 2.5 hours |
| CAS (Commonsense Adherence Score) | 1 hour |
**Total Evaluation Time**: 6 hours and 45 minutes
# ❤️Acknowledgement
We would like to express our gratitude to the following open-source repositories that our work is based on: [GroundedSAM](https://github.com/IDEA-Research/Grounded-Segment-Anything), [GroundedSAM2](https://github.com/IDEA-Research/Grounded-SAM-2), [Co-Tracker](https://github.com/facebookresearch/co-tracker), [MMPose](https://github.com/open-mmlab/mmpose), [Q-Align](https://github.com/Q-Future/Q-Align), [VideoMAEv2](https://github.com/OpenGVLab/VideoMAEv2), [VideoAlign](https://github.com/KwaiVGI/VideoAlign).
Their contributions have been invaluable to this project.
# 📜License
The VMBench is licensed under [Apache-2.0 license](http://www.apache.org/licenses/LICENSE-2.0). You are free to use our codes for research purpose.
# ✏️Citation
If you find our repo useful for your research, please consider citing our paper:
```bibtex
@misc{ling2025vmbenchbenchmarkperceptionalignedvideo,
title={VMBench: A Benchmark for Perception-Aligned Video Motion Generation},
author={Xinran Ling and Chen Zhu and Meiqi Wu and Hangyu Li and Xiaokun Feng and Cundian Yang and Aiming Hao and Jiashu Zhu and Jiahong Wu and Xiangxiang Chu},
year={2025},
eprint={2503.10076},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2503.10076},
}
``` |