[CVPR 2024] Video-P2P:基于交叉注意力控制的视频编辑
Video-P2P的官方实现。
更新日志
- 2023.03.20 发布演示。
- 2023.03.19 发布代码。
- 2023.03.09 论文预印本发布在arXiv上。
待办事项
- 发布包含6个示例的代码。
- 更新更快的版本。
- 发布数据。
- 发布Gradio演示。
- 添加本地Gradio演示。
- 发布更多配置和新应用。
环境配置
conda create --name vp2p python=3.9
conda activate vp2p
pip install -r requirements.txt
代码在Tesla V100 32GB和RTX3090 24GB上均经过测试。至少需要20GB显存。
环境类似于Tune-A-Video和prompt-to-prompt。
快速开始
请将pretrained_model_path替换为你的stable-diffusion路径。
要下载预训练模型,请参考diffusers。
# 第一阶段:调优以进行模型初始化。
# 你可以减少调优轮数来加快速度。
python run_tuning.py --config="configs/rabbit-jump-tune.yaml"
# 第二阶段:注意力控制
# 我们开发了一个更快的模式(在V100上需要1分钟):
python run_videop2p.py --config="configs/rabbit-jump-p2p.yaml" --fast
# 官方模式(在V100上需要10分钟,更稳定):
python run_videop2p.py --config="configs/rabbit-jump-p2p.yaml"
在Video-P2P/outputs/xxx/results中找到你的结果。
数据集
我们在这里发布了我们的数据集。
将它们下载到**./data**目录下,发挥你的创造力!
结果
configs/rabbit-jump-p2p.yaml | configs/penguin-run-p2p.yaml |
configs/man-motor-p2p.yaml | configs/car-drive-p2p.yaml |
configs/tiger-forest-p2p.yaml | configs/bird-forest-p2p.yaml |
Gradio演示
运行以下命令来启动使用gradio构建的本地演示:
python app_gradio.py
在HuggingFace上找到演示这里。演示代码大量借鉴了Tune-A-Video。
引用
@misc{liu2023videop2p,
author={Liu, Shaoteng and Zhang, Yuechen and Li, Wenbo and Lin, Zhe and Jia, Jiaya},
title={Video-P2P: Video Editing with Cross-attention Control},
journal={arXiv:2303.04761},
year={2023},
}
参考
- prompt-to-prompt: https://github.com/google/prompt-to-prompt
- Tune-A-Video: https://github.com/showlab/Tune-A-Video
- diffusers: https://github.com/huggingface/diffusers