🛑 由于法律限制,请填写此表格以inquire关于出于研究目的复制原始论文的流程。
VideoSwap
[CVPR 2024] - VideoSwap: 通过交互式语义点对应实现自定义视频主体交换
顾宇超,
周一平,
吴碧辰,
于立诚,
刘嘉伟,
赵锐,
吴张杰,
张俊豪,
寿铮,
唐凯文
新加坡国立大学Showlab; Meta GenAI
https://github.com/showlab/VideoSwap/assets/31696690/7e9395cd-71bb-4d06-960f-5151a5dd06fb
VideoSwap是一个支持将用户_自定义概念交换到视频中同时保留背景_的框架。
当前基于扩散的视频编辑主要专注于利用各种密集对应关系来确保时间一致性和运动对齐的结构保留编辑。然而,当目标编辑涉及形状变化时,这些方法通常效果不佳。 为了开始涉及形状变化的视频编辑,我们在这项工作中探索了自定义视频主体交换,我们的目标是将源视频中的主要主体替换为具有不同身份且可能形状不同的目标主体。 与之前依赖密集对应关系的方法不同,我们引入了VideoSwap框架,该框架利用语义点对应关系,这源于我们的观察,即只需少量语义点就足以对齐主体的运动轨迹并修改其形状。我们还引入了各种用户点交互(例如,删除点和拖动点)来解决各种语义点对应关系问题。大量实验证明了在各种真实世界视频中实现了最先进的视频主体交换结果。
更多信息请参见项目网页。
🛑 免责声明
该存储库是第一作者在新加坡国立大学期间对VideoSwap进行的重新实现。由于法律限制,请填写此表格以inquire关于出于研究目的复制原始论文的流程。
🚩 更新
- 交互式gradio演示。
- 在用户自己的数据上训练的指南。
- [2024年3月28日] 发布训练代码(以复现论文中的所有结果)。
- [2024年3月28日] 发布推理代码(以复现论文中的所有结果)。
🔧 依赖和安装
代码在A100 GPU(训练和推理需要12 GB)上验证:
- Python == 3.10
- Pytorch == 2.2.1
- Diffusers == 0.19.3
请按照以下说明创建环境:
# 设置Conda环境
conda create -n videoswap python=3.10
conda activate videoswap
# 安装pytorch/xformer
conda install pytorch==2.2.1 torchvision==0.17.1 torchaudio==2.2.1 pytorch-cuda=12.1 -c pytorch -c nvidia
conda install xformers -c xformers/label/dev
# 安装其他依赖
pip install -r requirements.txt
快速开始
为了重现论文结果,我们提供了所有预处理的数据集和检查点:
# 安装gdown
pip install gdown
apt install git-lfs
# 自动下载数据集、预训练模型和我们的结果
bash scripts/prepare_dataset_model.sh
要推理我们的预训练模型:
# 在options/test_videoswap中选择一个配置,例如
python test.py -opt options/test_videoswap/animal/2001_catheadturn_T05_Iter100/2001_catheadturn_T05_Iter100.yml
要基于提供的数据自行训练模型:
# 在options/train_videoswap中选择一个配置,例如
python train.py -opt options/train_videoswap/animal/2001_catheadturn_T05_Iter100/2001_catheadturn_T05_Iter100.yml
📜 许可和致谢
此代码库基于diffusers构建。感谢开源!此外,我们感谢以下令人惊叹的开源项目:
-
AnimateDiff (https://github.com/guoyww/AnimateDiff)。
-
Mix-of-Show (https://github.com/TencentARC/Mix-of-Show)。
-
Co-tracker (https://github.com/facebookresearch/co-tracker)。
引用
如果您发现这个存储库对您的工作有用,请考虑引用以下论文,并给公共存储库(https://github.com/showlab/VideoSwap)一个⭐,以便更多人发现这个存储库:
@article{gu2023videoswap,
title={Videoswap: Customized video subject swapping with interactive semantic point correspondence},
author={Gu, Yuchao and Zhou, Yipin and Wu, Bichen and Yu, Licheng and Liu, Jia-Wei and Zhao, Rui and Wu, Jay Zhangjie and Zhang, David Junhao and Shou, Mike Zheng and Tang, Kevin},
journal={arXiv preprint arXiv:2312.02087},
year={2023}
}
@article{gu2024mix,
title={Mix-of-show: Decentralized low-rank adaptation for multi-concept customization of diffusion models},
author={Gu, Yuchao and Wang, Xintao and Wu, Jay Zhangjie and Shi, Yujun and Chen, Yunpeng and Fan, Zihan and Xiao, Wuyou and Zhao, Rui and Chang, Shuning and Wu, Weijia and others},
journal={Advances in Neural Information Processing Systems},
volume={36},
year={2024}
}
@inproceedings{wu2023tune,
title={Tune-a-video: One-shot tuning of image diffusion models for text-to-video generation},
author={Wu, Jay Zhangjie and Ge, Yixiao and Wang, Xintao and Lei, Stan Weixian and Gu, Yuchao and Shi, Yufei and Hsu, Wynne and Shan, Ying and Qie, Xiaohu and Shou, Mike Zheng},
booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision},
pages={7623--7633},
year={2023}
}