腾讯发表VideoDrafter,一次性生成多个场景的视频
摘要
简介
相关工作
视频生成技术的发展历程,包括在像素空间和潜在特征空间中训练视频扩散模型的方法。最近的研究致力于生成长视频和利用输入视频进行编辑。本文的重点是内容一致的多场景视频生成,与现有的方法不同之处在于我们通过生成参考图像来明确确定实体的外观,从而增强多场景视频的内容一致性。
VideoDrafter
框架包括三个主要阶段:多场景视频脚本生成、实体参考图像生成和视频场景生成。
多场景视频脚本生成
VideoDrafter使用LLM将输入提示转换为多场景脚本,每个场景包括事件描述、前景物体或人物、背景和相机移动。LLM使用ChatGLM3-6B模型,可以高效地推理和部署。每个场景的相机移动限制在静态、左、右、上、下、前、后等方向和速度上。
VideoDrafter是一个视频脚本生成工具,它通过对话生成语言模型(LLM)来识别视频中的常见实体,包括前景对象或人物和背景位置。为了实现这一目标,VideoDrafter在生成视频脚本时要求LLM为相同的实体(对象、人物或背景)分配相同的名称,从而严格匹配实体的名称并发现出现在多个场景中的实体。为了进一步提高视频脚本的质量,VideoDrafter利用LLM的多轮对话能力。具体而言,它通过询问LLM关于实体的关键方面来开始对话,例如“详细描述一张年轻男子的照片时应考虑哪些方面?”在对话的下一轮中,它要求LLM从给定方面的观点来描述实体。此外,原始提示也作为LLM的输入,以确保在实体描述生成中强调关键特征,例如年轻男子的“蓝色头发”。为了增强开源LLM的稳定性,VideoDrafter提出了一些原则,包括在对话开始之前向LLM提供全面的说明、为多轮对话手动选择五个上下文示例以强调所需的脚本格式,并在每一轮对话之后验证输出格式。
实体参考图像生成
VideoDrafter第二阶段通过生成每个实体的参考图像来统一视觉外观,以确保内容在场景之间的连贯性。该过程包括使用Stable Diffusion模型进行文本到图像生成,以及使用U2-Net模型进行显著对象检测和图像分割。参考图像的前景和背景可以通过分割掩模进行分离,以避免干扰。
视频场景生成
VideoDrafter是一个多场景视频生成器,它通过考虑参考图像、事件描述和相机运动来生成每个场景。它包括两个主要组件:VideoDrafter-Img和VideoDrafter-Vid。前者利用事件描述和每个场景实体的参考图像生成场景参考图像,后者利用场景参考图像、事件描述中的时间动态和脚本中的相机运动生成每个场景的视频剪辑。
VideoDrafter-Img
VideoDrafter-Img组件旨在根据事件提示和每个场景的实体参考图像生成场景参考图像。为了实现这一目标,我们通过将原始的注意力模块替换为一个能够处理三个上下文的新型注意力模块来重塑Stable Diffusion架构。如图3所示,我们利用预训练的CLIP模型的文本和视觉编码器提取出提示、前景参考图像和背景参考图像的顺序文本特征yt∈RLt×Ct和局部图像特征yf∈RLf×Cf以及yb∈RLb×Cb。这里,L和C分别表示特征序列的长度和通道数。对于一个场景中存在多个前景的情况,我们沿着长度维度将所有前景参考图像的特征进行拼接。给定输入特征x,注意力的输出z计算如下:
其中CA_1和SA分别是原始Stable Diffusion架构中的交叉注意力和自注意力模块。我们添加了两个额外的交叉注意力模块CA_2和CA_3,利用实体参考图像提供的指导信息。此外,我们提议在冻结网络的其他部分的同时优化CA_2和CA_3的参数。
VideoDrafter-Vid
VideoDrafter-Vid使用场景参考图像、事件提示中描述的动作和脚本中的摄像机移动作为输入。模型使用稳定扩散模型和新的条件化注意力模块,以及时空形式和空间自注意力和时间自注意力来减少计算量。此外,模型还注入了几个时间卷积来更好地捕捉时间依赖性。为了反映脚本中描述的摄像机移动,模型在采样过程的中间步骤中唯一修改帧,以根据摄像机移动方向和速度来扭曲相邻的帧。在实践中,Tm = 5提供了一个很好的折衷方案。
实验
数据集
VideoDrafter-Img的训练阶段是在Stable Diffusion v2.1模型的基础上加入了两个额外的交叉注意力模块。这些模块从头开始初始化,并使用LAION-2B数据集中的文本-图像对进行训练,而网络的其他部分则被冻结。对于每个图像,我们随机从原始图像中裁剪一个512×512的补丁,并利用U2-Net模型对每个补丁的前景区域进行分割。分离的前景和背景区域分别用作输入补丁的前景和背景参考图像。每个小批量包含512个补丁,由64个A100 GPU并行处理。模型的参数通过AdamW优化器进行优化,学习率固定为1×10-4,迭代20K次。
VideoDrafter-Vid的训练阶段是基于Stable Diffusion XL框架开发的,通过插入时间注意力和时间卷积来实现。训练是在WebVid10M和HD-VG-130M数据集上进行的。对于每个视频,我们随机采样一个分辨率为320×512、帧率为8的16帧剪辑。剪辑的中间帧被用作场景参考图像。每个小批量包含128个视频剪辑,由64个A100 GPU并行处理。我们使用AdamW优化器,学习率固定为3×10-6,迭代480K次。
实验分析
VideoDrafter-Img在与输入实体参考图像对齐方面的有效性验证。使用LLM和稳定扩散模型生成输入前景和背景参考图像,并在前景相似度(FG-SIM)和背景相似度(BG-SIM)上验证生成的图像。结果表明,使用前景/背景参考图像作为指导可以获得更高的FG-SIM/BG-SIM值,同时所有变体都获得了接近的CLIP相似度值。图5展示了使用不同参考图像生成的六个图像,证明了VideoDrafter-Img对齐实体参考图像的优势。
VideoDrafter-Vid是一个用于生成单场景视频的模型。该模型使用WebVid-10M验证集中的真实帧作为场景参考图像,并使用相应的文本提示生成视频。与基线模型RF+VideoComposer和RF+VideoDrafter-Vid相比,VideoDrafter-Vid在相同的场景参考图像下,相对于VideoComposer在FVD上提升了31.9%,在帧一致性上提升了2.7%。通过RF+VideoDrafter-Vid,性能进一步提升到116.5 FVD和98.8帧一致性,验证了引入动作类别指导以提高视觉质量和场景内一致性的优势。
本文研究了在MSR-VTT数据集上的视频生成模型,将方法分为有或无真实帧作为参考的两类。通过使用Stable Diffusion和VideoDrafter-Vid两个模型,可以生成高质量的视频。其中,VideoDrafter-Vid在两种设置下都取得了最佳的FVD。虽然SD+VideoDrafter-Vid在FID上略逊于ModelScopeT2V,但在FVD上明显优于它,验证了VideoDrafter-Vid在视频质量方面的优势。
多场景视频生成
在ActivityNet Captions和Coref-SV数据集上进行了验证。与其他三种方法相比,VideoDrafter表现出更好的视觉质量和跨场景一致性。通过引入实体参考图像,VideoDrafter在跨场景一致性方面比VideoDrafter w/o Ref.提高了24.3,比ModelScopeT2V和VideoDirectorGPT分别提高了29.1和10.3。在Coref-SV数据集上,VideoDrafter也取得了最高的跨场景一致性,为77.3。该模型还可以使用真实图像作为实体参考图像,具有定制生成对象或环境的潜力。
人类评估
通过人类研究比较了VideoDrafter和其他四种方法的效果,证明了使用LLM生成视频脚本和实体参考图像可以提高逻辑连贯性和内容一致性。作者还展示了VideoDrafter生成的多场景视频的示例。
总结