Model reference · open weights
MotionPro is an open-weight video model from HiDream-ai. MotionPro (BF16) weighs 6.8 GB; the smallest configuration that runs it is RTX 3060 12 GB.
Summary of the HiDream-ai/MotionPro model card, 2026-10-01
What it is
| Released by | HiDream-ai |
|---|---|
| Released | 2025-03-25 |
| VRAM | 6.8 GB for the weights |
What it runs on
| Card | Weights | Memory |
|---|---|---|
| RTX 3060 12 GB | fits | 11.6 GB |
| RTX 4060 Ti 16 GB | fits | 15.4 GB |
| RTX 3090 24 GB | fits | 23.4 GB |
| RTX 4090 24 GB | fits | 23.4 GB |
| RTX 5090 32 GB | fits | 31.0 GB |
| L40S 48 GB | fits | 44.0 GB |
| A100 80 GB | fits | 78.2 GB |
| H100 80 GB | fits | 78.1 GB |
| RTX PRO 6000 Blackwell 96 GB | fits | 93.8 GB |
| DGX Spark (GB10) 128 GB unified | fits | 107 GB |
| H200 141 GB | fits | 138 GB |
| B200 180 GB | fits | 176 GB |
From the model card
🖥️ GitHub    |    🌐 Project Page    |   🤗 Hugging Face   |    📑 Paper    |    📖 PDF   
MotionPro: A Precise Motion Controller for Image-to-Video Generation
🔆 If you find MotionPro useful, please give a ⭐ for this repo, which is important to Open-Source projects. Thanks!
In this repository, we introduce MotionPro, an image-to-video generation model built on SVD. MotionPro learns object and camera motion control from in-the-wild video datasets (e.g., WebVid-10M) without applying special data filtering. The model offers the following key features:
Additionally, our repository provides more tools to benefit the research community's development.:
Clone the repo:
git clone https://github.com/HiDream-ai/MotionPro.git
Install dependencies:
conda create -n motionpro python=3.10.0
conda activate motionpro
pip install -r requirements.txt
| Models | Download Link | Notes |
|---|---|---|
| MotionPro | 🤗Huggingface | Supports both object and camera control. This is the default model mentioned in the paper. |
| MotionPro-Dense | 🤗Huggingface | Supports synchronized video generation when combined with MotionPro. MotionPro-Dense shares the same architecture as Motion, but the input conditions are modified to include: dense optical flow and per-frame visibility masks relative to the first frame. |
Download the model from HuggingFace at high speeds (30-75MB/s):
cd tools/huggingface_down
bash download_hfd.sh
This section of the code supports simultaneous object motion and camera motion control. We provide a user-friendly Gradio demo interface that allows users to control motion with simple brushing and dragging operations. The instructional video can be found in assets/demo.mp4 (please note the version of gradio).
python demo_sparse_flex_wh.py
When you expect all pixels to move (e.g., for camera control), you need to use the brush to fully cover the entire area. You can also test the demo using assets/logo.png.
Additionally, users can also generate controllable image-to-video results using pre-defined camera trajectories. Note that our model has not been trained on a specific camera control dataset. Test the demo using assets/sea.png.
python demo_sparse_flex_wh_pure_camera.py
By combining MotionPro and MotionPro-Dense, we can achieve the following functionalities:
pure_obj_motion.mp4 and pure_camera_motion.mp4, have been generated using the respective demos. By combining their motion flows and using the result as a condition for MotionPro-Dense, we obtain final_video. By pairing the same object motion with different camera motions, we can generate synchronized videos where the object motion remains consistent while the camera motion varies. More DetailsHere, you need to first download the model_weights of cotracker and place them in the tools/co-tracker/checkpoints directory.
python inference_dense.py --ori_video 'assets/cases/dog_pure_obj_motion.mp4' --camera_video 'assets/cases/dog_pure_camera_motion_1.mp4' --save_name 'syn_video.mp4' --ckpt_path 'MotionPro-Dense CKPT-PATH'
We have packaged several demo videos to help users debug the training code. Simply 🤗download, extract the files, and place them in the ./data directory.
Additionally, ./data/dot_single_video contains code for processing raw videos using DOT to generate the necessary conditions for training, making it easier for the community to create training datasets.
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.
How it works
Running it yourself
Rent a machine by the hour. How to run this model is on its model card.