RAVE:利用扩散模型进行快速一致视频编辑的随机噪声混洗 - 官方仓库
CVPR 2024 (亮点论文)
Ozgur Kara、Bariscan Kurtkaya、Hidir Yesiltepe、James M. Rehg、Pinar Yanardag
(注意:GitHub上的视频经过了大幅压缩。完整视频可在项目网页上查看。)
摘要
简述:RAVE是一个零样本、轻量级、快速的文本引导视频编辑框架,支持使用预训练的文本到图像扩散模型编辑任意长度的视频。
点击查看完整摘要
近期基于扩散的模型在文本生成图像方面取得了显著成功。然而,视频编辑模型在视觉质量和用户控制方面尚未达到同样水平。为解决这个问题,我们提出了RAVE,一种零样本视频编辑方法,无需额外训练即可利用预训练的文本到图像扩散模型。RAVE接收输入视频和文本提示,生成高质量视频,同时保留原始运动和语义结构。它采用新颖的噪声混洗策略,利用帧间的时空交互,比现有方法更快地生成时间一致的视频。在内存需求方面也很高效,可以处理更长的视频。RAVE能够进行广泛的编辑,从局部属性修改到形状变换。为了展示RAVE的多功能性,我们创建了一个全面的视频评估数据集,涵盖从以物体为中心的场景到复杂的人类活动(如跳舞和打字),以及动态场景(如游泳的鱼和船只)。我们的定性和定量实验突显了RAVE在各种视频编辑场景中相比现有方法的有效性。
特点:
- 零样本框架
- 运行速度快
- 无视频长度限制
- 用于评估文本引导视频编辑方法的标准化数据集
- 兼容现成的预训练方法(如CivitAI)
更新
- [2023年12月] Gradio演示已发布,HuggingFace Space演示即将推出
- [2023年12月] 论文已在ArXiv上发布,项目网页已就绪,代码已发布
待办事项
- 分享数据集
- 添加更多示例
- 优化预处理
- 将CivitAI模型添加到Gradio
-
准备基于Gradio的图形界面 -
集成MultiControlNet -
适配CIVIT AI模型
安装和推理
设置环境
请使用"requirements.txt"文件安装我们的环境,如下所示:
conda create -n rave python=3.8
conda activate rave
conda install pip
pip cache purge
pip install -r requirements.txt
另外,请安装PyTorch和Xformers,如下所示:
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118
pip install xformers==0.0.20
以设置Conda环境。
我们的代码在Linux上使用以下版本进行了测试:
timm==0.6.7 torch==2.0.1+cu118 xformers==0.0.20 diffusers==0.18.2 torch.version.cuda==11.8 python==3.8.0
Web界面演示
要运行我们基于Gradio的网页演示,请执行以下命令:
python webui.py
然后,指定您的配置并执行编辑。
推理
要运行RAVE,请按以下步骤操作:
1- 将要编辑的视频以MP4格式放在data/mp4_videos
目录下。请注意,我们建议使用512x512或512x320大小的视频。
2- 在configs
目录下准备一个配置文件。将video_name
参数的值更改为MP4文件的名称。您可以在那里找到参数的详细说明和示例配置。
3- 运行以下命令:
python scripts/run_experiment.py [配置文件路径]
4- 结果将生成在 results
目录下。同时,潜在变量和控制信号会保存在 generated
目录下,以加快对同一视频使用不同提示词进行编辑的速度。
注意,可用的预处理器名称可在 utils/constants.py
中找到。
使用 CIVIT AI 的自定义模型
我们的代码允许运行来自 CIVIT AI 的任何自定义模型。要使用这些模型,请按以下步骤操作:
1- 确定您想要使用的 CIVIT AI 模型,并获取其索引。(例如,RealisticVision V5.1 的索引是 130072,您可以在网站链接中找到模型 ID,它作为参数分配给 'VersionId',如 https://civitai.com/models/4201?modelVersionId=130072)
2- 在当前目录下运行以下代码。它会下载 safetensors 格式的模型,并将其转换为与 diffusers 兼容的 '.bin' 格式。
bash CIVIT_AI/civit_ai.sh 130072
3- 复制转换后模型的路径,$CWD/CIVIT_AI/diffusers_models/[自定义模型]
(例如,130072 对应的路径是 CIVIT_AI/diffusers_models/realisticVisionV60B1_v51VAE
),并在配置文件中使用该路径。
数据集
数据集将很快发布。
示例
编辑类型
<表格内容略>
各种类型运动的编辑
<表格内容略>
引用
@inproceedings{kara2024rave,
title={RAVE: Randomized Noise Shuffling for Fast and Consistent Video Editing with Diffusion Models},
author={Ozgur Kara and Bariscan Kurtkaya and Hidir Yesiltepe and James M. Rehg and Pinar Yanardag},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
year={2024}
}
维护
这是 RAVE: Randomized Noise Shuffling for Fast and Consistent Video Editing with Diffusion Models 的官方代码库。如有任何问题或讨论,请随时联系 Ozgur Kara。