Zhen Wang1, Youcan Xu2, Jun Xiao2, Long Chen1*
1The Hong Kong University of Science and Technology (HKUST)
2Zhejiang University
CVPR 2026
Create the environment and install the dependencies by running:
conda create -n flowmotion python=3.10
conda activate flowmotion
pip install -r requirements.txt
Put your videos in the data/ folder, we have already prepared several examples.
Run the following command for video motion transfer:
python run.py --video_path ./data/49f/bus.mp4 --target_prompt "A black shark is moving through crystal-clear ocean waters."
python run.py --video_path ./data/49f/car-turn.mp4 --target_prompt "A dog is running in a city garden."
python run.py --video_path ./data/49f/blackswan.mp4 --target_prompt "A spaceship glides silently through the universe."
python run.py --video_path ./data/49f/hike.mp4 --target_prompt "A penguin is walking along a frozen coastline."
python run.py --video_path ./data/81f/car-turn.mp4 --target_prompt "A tiger is running through a dense jungle."
python run.py --video_path ./data/81f/bus.mp4 --target_prompt "A eagle soaring over rugged mountain peaks."
For videos with more complex motions, try using the varient of source motion representation with clean latent, such as:
python run.py --video_path ./data/49f/motocross-jump.mp4 --target_prompt "A monkey on a motorcycle is mid-jumping on a dirt track in the forest." --guidance_type clean_latent
besides, larger learning rate and more detailed prompt all help to get better results, such as:
python run.py --video_path ./data/49f/snowboard.mp4 --target_prompt "A monkey is surfing down a towering, sun-bleached dune, a sleek figure of focused agility against the vast emptiness. A plume of golden sand arcs from the board, shimmering in the heat haze that dances above the sand. In the distance, a cluster of resilient cacti stands witness to this burst of dynamic life under the relentless sun." --guidance_type clean_latent --lr_base 0.01
Below is the VRAM usage on a single NVIDIA RTX 3090 (24GB VRAM), you can save more cost by using enable_model_cpu_offload().
| Video Length | VRAM Usage | Enable CPU Offload |
|---|---|---|
| 49 frames | 19 GB | 4.9 GB |
| 81 frames | 20 GB | 5.8 GB |
- Release demo
- Release benchmark
If you find this project useful in your research, please consider cite:
@article{wang2026flowmotion,
title={FlowMotion: Training-Free Flow Guidance for Video Motion Transfer},
author={Wang, Zhen and Xu, Youcan and Xiao, Jun and Chen, Long},
journal={arXiv preprint arXiv:2603.06289},
year={2026}
}