🌐 社群导航
🔗 点击加入➡️【AIGC/LLM/MLLM/3D/自动驾驶】 技术交流群
数源AI 最新论文解读系列
论文名:VACE: All-in-One Video Creation and Editing
论文链接:https://arxiv.org/pdf/2503.07598
开源代码:https://ali-vilab.github.io/VACE-Page/
导读
近年来,视觉生成任务领域取得了显著进展,这尤其得益于扩散模型的快速发展。除了该领域早期用于文本到图像或文本到视频生成的基础预训练模型之外,下游任务和应用不断涌现,例如重绘、编辑 、可控生成、帧参考生成以及基于身份参考的视频合成。这一系列的发展凸显了视觉生成领域的动态性和复杂性。
简介
扩散变换器(Diffusion Transformer)在生成高质量图像和视频方面展现出了强大的能力和可扩展性。进一步追求生成和编辑任务的统一,在图像内容创作领域取得了显著进展。然而,由于对时间和空间动态一致性的内在要求,实现视频合成的统一方法仍然具有挑战性。我们推出了VACE,它使用户能够在一个集创作与编辑功能于一体的框架内执行视频任务。这些任务包括参考到视频生成、视频到视频编辑以及掩码视频到视频编辑。具体而言,我们通过将视频任务输入(如编辑、参考和掩码)组织成一个统一的接口,即视频条件单元(Video Condition Unit,VCU),有效地整合了各种任务的需求。此外,通过使用上下文适配器(Context Adapter)结构,我们利用时间和空间维度的形式化表示将不同的任务概念注入到模型中,使其能够灵活处理任意视频合成任务。大量实验表明,VACE的统一模型在各种子任务上的表现与特定任务模型相当。同时,它通过多功能的任务组合实现了多样化的应用。
方法与模型
VACE被设计为一个多模态到视频的生成模型,其中文本、图像、视频和掩码被整合为统一的条件输入。为了涵盖尽可能多的视频生成和编辑任务,我们对现有任务进行了深入研究,然后根据它们对多模态输入的各自要求将其分为4类。在不失一般性的前提下,我们特别为视频条件单元(Video Condition Unit,VCU)范式下的每个类别设计了一种新颖的多模态输入格式。最后,我们为VCU输入重构了DiT模型,使其成为适用于广泛视频任务的通用模型。
图2. VACE(视频生成与编辑框架)涵盖的任务类别。四个基本任务可以组合出大量的可能性。
1. 多模态输入与视频任务
尽管现有的视频任务在复杂的用户输入和宏大的创意目标方面各不相同,但我们发现它们的大多数输入可以用4种模态完全表示:文本、图像、视频和掩码。总体而言,如图2所示,我们根据这些视频任务对这四种多模态输入的要求将其分为5类。
-
文本到视频生成(Text-to-Video Generation,T2V)是一项基础的视频创作任务,且文本是唯一的输入。
-
参考到视频生成(Reference-to-Video Generation,R2V)需要额外的图像作为参考输入,以确保指定内容,如人脸、动物和其他物体的主体,或视频帧,出现在生成的视频中。
-
视频到视频编辑(Video-to-Video Editing,V2V)会对给定视频进行全面修改,如上色、风格化、可控生成等。我们使用视频控制类型,其控制信号可以表示并存储为RGB视频,包括深度、灰度、姿态、涂鸦、光流和布局;然而,该方法本身并不局限于此。
-
掩码视频到视频编辑(Masked Video-to-Video Editing,MV2V)仅在提供的感兴趣区域(3D ROI)内对输入视频进行修改,并与其他未修改区域无缝融合,如内补、外补、视频扩展等。我们使用额外的时空掩码来表示3D ROI。
-
任务组合包括上述4种视频任务的所有组合可能性。
2. 视频条件单元
我们提出了一种输入范式,即视频条件单元(Video Condition Unit,VCU),用于将各种不同的输入条件统一为文本输入、帧序列和掩码序列。一个VCU可以表示为
其中 是一个文本提示,而 和 分别是上下文视频帧序列 和掩码序列 。这里, 处于 RGB 空间,归一化到 ,并且 是二进制的,其中“1”和“0”分别表示要编辑和不编辑的位置。 和 在空间尺寸 和时间尺寸 上均对齐。在文本到视频(T2V)任务中,不需要上下文帧或掩码。为保持通用性,我们为每个 分配默认值 表示空输入,并将每个 设置为 ,这意味着所有这些值为 0 的像素都将被重新生成。对于 ,在默认帧序列前面插入额外的参考帧 ,同时在掩码序列前面插入全零掩码 。这些全零掩码表示相应的帧应保持不变。在视频到视频(V2V)任务中,上下文帧序列是输入视频帧,上下文掩码是 的序列。在多视频到视频(MV2V)任务中,上下文视频和掩码都是必需的。正式的数学表示如表 1 所示。
弗吉尼亚联邦大学(VCU)还支持任务组合。例如,参考图像修复任务的上下文帧为,上下文掩码为。在这种情况下,用户可以修改视频中的对象,并根据提供的参考图像进行重新生成。再例如,用户只有一幅草图图像,并希望生成一个以该草图图像所描述内容开头的视频,这是一个基于草图的视频扩展任务。上下文帧为,上下文掩码为。通过这种方式,我们可以实现长视频的多条件和参考控制生成。
3. 架构(Arichitecture)
我们为视频自适应上下文编码(VACE)重新构建了扩散变压器(DiT)模型,如图3所示,旨在支持多模态视频上下文单元(VCU)输入。由于已有文本分词的流程,我们仅考虑上下文帧和掩码的分词。分词后,将上下文标记与含噪视频标记相结合,并对DiT模型进行微调。与此不同的是,我们还提出了一种上下文适配器调优策略,该策略允许上下文标记通过上下文块,并重新添加到原始的DiT块中。
图3. VACE框架概述。通过概念解耦、上下文潜在编码和上下文嵌入器对帧和掩码进行分词处理。为了实现以VCU为输入的训练,我们采用了两种策略,(a) 全量微调,(b) 上下文适配器微调。后者收敛速度更快,并且支持可插拔特性。
3.1. 上下文分词
概念解耦。自然视频和深度、姿态等控制信号这两种不同的视觉概念同时被编码在中。我们认为,明确分离这些不同模态和分布的数据对于模型收敛至关重要。概念解耦基于掩码,并生成两个形状相同的帧序列:和,其中被称为反应帧(reactive frames),包含所有待更改的像素,而所有待保留的像素则存储在中,称为非活动帧(inactive frames)。具体而言,参考图像以及和的未更改部分进入,而控制信号和那些即将更改的像素(如灰色像素)则被收集到中。
上下文潜在编码。一个典型的扩散变压器(DiT)处理含噪视频潜在特征 ,其中 和 分别是潜在空间的时间和空间形状。与 类似, 需要被编码到一个高维特征空间中,以确保显著的时空相关性。因此,我们将它们与 一起重新组织成层次化且时空对齐的视觉特征。 经过视频变分自编码器(VAE)处理,并映射到与 相同的潜在空间中,以保持它们的时空一致性。为避免图像和视频出现意外的混杂,参考图像由变分自编码器(VAE)编码器单独编码,并沿时间维度重新拼接回去,而在解码过程中需要移除相应部分。 直接进行重塑和插值处理。之后, 和 都被映射到潜在空间中,并以 的形状与 实现时空对齐。
上下文嵌入器。我们通过在通道维度上连接和并将它们标记化为上下文标记来扩展嵌入器层,我们将其称为上下文嵌入器。对和进行标记化的相应权重直接从原始视频嵌入器复制而来,而对进行标记化的权重初始化为零。
3.2. 全量微调与上下文适配器微调
为了实现以VCU(视频上下文单元,Video Context Unit)作为输入进行训练,一种简单的方法是对整个DiT(扩散变压器,Diffusion Transformer)模型进行全量微调,如图3a所示。上下文标记(Context tokens)会与噪声标记 一起添加,并且在训练期间,DiT中的所有参数以及新引入的上下文嵌入器(Context Embedder)的参数都将被更新。为了避免全量微调、实现更快的收敛,以及为基础模型建立可插拔的特性,我们还提出了另一种以残差微调(Res - Tuning)[29] 方式处理上下文标记的方法,如图3b所示。具体而言,我们从原始的DiT中选择并复制几个Transformer块,形成分布式级联类型的上下文块(Context Blocks)。原始的DiT处理视频标记和文本标记,而新添加的Transformer块处理上下文标记和文本标记。每个上下文块的输出作为附加信号插回到DiT块中,以协助主分支执行生成和编辑任务。通过这种方式,DiT的参数被冻结,只有上下文嵌入器和上下文块是可训练的。
实验与结果
1. 实验设置
实现细节。VACE(视频自适应条件引擎)基于扩散变压器(Diffusion Transformers)在不同规模下进行文本到视频生成的训练。它利用LTX - 视频 - 2B模型 [22] 实现更快的生成速度,而Wan - T2V - 14B模型 [64] 则专门用于生成更高质量的输出,支持最高720p的分辨率。训练采用分阶段的方法。最初,我们专注于诸如图像修复和扩展等基础任务,这些任务被认为与预训练的文本到视频模型具有模态互补性。这包括引入掩码以及学习在空间和时间维度上的上下文生成。接下来,从任务扩展的角度来看,我们逐步从单输入参考帧过渡到多输入参考帧,从单一任务过渡到复合任务。最后,我们使用更高质量的数据和更长的序列对模型质量进行微调。模型训练的输入支持任意分辨率、动态时长和可变帧率,以满足用户多样化的输入需求。
基线。我们的目标是实现视频创作和编辑任务的统一,目前,尚无类似的一体化视频生成模型,因此我们将评估重点放在将我们的通用模型与专有特定任务模型进行比较上。此外,由于涉及众多任务,且其中许多任务缺乏开源方法,我们对离线或在线可用的模型进行比较。具体针对这些任务,我们进行以下比较:1) 对于图像转视频(I2V)任务,我们考察了I2VGenXL [77]、CogVideoX - I2V [73]和LTX - Video - I2V [22];2) 在重绘任务中,对于去除式内绘,我们比较了ProPainter [82],对于外绘,我们比较了Follow - Your - Canvas [8]和M3DDM [17];3) 对于可控任务,在深度条件下,我们使用Control - A - Video [10]、VideoComposer [68]和ControlVideo [79],在姿态条件下,我们比较Text2Video - Zero [31]、ControlVideo [79]和Follow - Your - Pose [40],以及FLAT -
TEN [14]在光流条件下;4) 在参考生成方面,由于缺乏开源模型,我们比较了商业产品科灵1.6(Keling1.6) [1]、皮卡2.2(Pika2.2) [49]和维杜2.0(Vidu2.0) [66]。
评估。为了全面评估各种任务的性能,我们采用VACE基准进行评估。具体而言,我们将评估分为自动评分和用户研究手动评估。对于自动评分,我们使用VBench [27]中的部分指标来评估视频质量和视频一致性,包括八个指标:美学质量、背景一致性、动态程度、成像质量、运动平滑度、整体一致性、主体一致性和时间闪烁。对于手动评估,我们使用平均意见得分(MOS)作为评估指标,重点关注三个方面:遵循提示程度、时间一致性和视频质量。在实践中,我们对生成的数据进行匿名处理,并随机分发给不同的参与者,让他们在1到5的范围内进行评分。
2. 主要结果
定量评估。我们在VACE基准测试(VACE-Benchmark)上将基于LTX视频(LTX-Video)的VACE综合模型与特定任务的专有方法进行了比较。对于某些任务,我们遵循现有方法;例如,尽管我们支持基于任意帧进行生成,但为确保公平性,我们采用当前开源方法中的第一帧参考方法进行比较。从表2中可以看出,对于图像转视频(I2V)、图像修复、图像扩展、深度估计、姿态估计和光流估计等任务,我们的方法在视频质量和视频一致性的八项指标上均优于其他开源方法,归一化平均指标显示出更优的结果。一些竞争方法只能以256的分辨率进行生成,生成时长非常短,并且在时间连贯性上表现不稳定,导致在自动指标计算中的性能较差。对于参考图像转视频(R2V)任务,对于一个旨在快速生成的小规模模型而言,其指标与商业模型仍存在一定差距,但与Vidu 2.0的指标相当。根据用户研究结果,我们的方法在多个任务的评估指标中始终表现更好,与用户偏好高度一致。
定性结果。在图1中,我们展示了VACE单一模型在各种任务中的结果。显然,该模型在视频质量和时间一致性方面达到了较高的性能水平。此外,在图4所示的合成任务中,我们的模型展现出了令人印象深刻的能力,能够有效地整合不同的模态和任务,生成现有单一或多个模型无法生成的结果,从而证明了其在视频生成和编辑领域的强大潜力。例如,在“移动任意物体”的案例中,通过提供单张输入图像和移动轨迹,我们能够在保持连贯性和叙事一致性的同时,精确地按照指定方向移动场景中的人物。
图4. 组合任务的可视化结果。VACE创造性地支持参考任意内容、移动任意内容、使任意内容动起来、交换任意内容和扩展任意内容。
3. 消融研究
为了更好地理解不同独立模块对统一视频生成框架的影响,我们基于LTX - 视频模型进行了一系列系统的对比实验,以获得更好的模型结构和配置。为了准确评估不同的实验设置,我们为每个任务采样250个数据点作为验证集,并计算训练损失,通过不同任务的平均曲线变化来反映模型的训练进度。
基础结构。文本引导的图像或视频生成模型仅将噪声作为推理输入。当扩展到我们的统一输入范式VCU(统一输入范式)时,我们可以使用全量微调或结合额外参数微调的方式进行训练。具体而言,如图5a所示,我们比较了沿通道维度拼接不同输入的情况,并修改了块化投影层的输入维度,以实现预训练模型的加载和全量微调。此外,我们以残差调优(Res-Tuning)[29]的形式引入了一些额外的训练参数,该方法在旁路分支中对VCU进行序列化处理,并将信息注入到主分支中。结果表明,这两种方法产生的效果相似;然而,由于额外参数微调的收敛速度更快,我们后续的实验将基于此方法进行。如图5b所示,我们进一步基于此结构进行了超参数实验,重点关注加权方案、时间戳偏移和p零等方面。
图5. VACE在结构、超参数和模块配置方面的消融研究。
上下文适配器。由于上下文块的数量会显著影响模型大小和推理时间消耗,我们试图找到上下文块的最佳数量和分布。我们从在输入侧选择连续的块开始,并对前个块、个块和所有块进行比较。受残差调优(Res-Tuning)[29]方法的启发,我们还尝试均匀分布注入块,而不是选择连续的块序列。如图5c所示,我们可以看到,当使用相同数量的块时,在浅层块中,块的分布式排列优于连续排列。此外,更多数量的块通常会产生更好的结果,但由于效果提升有限以及训练资源的限制,我们采用块的部分分布式排列。
概念解耦。在训练过程中,我们引入了一个概念解耦处理模块,以进一步拆解视觉单元,明确模型需要学习修改或保留哪些内容。如图5d所示,使用该模块可使损失有更显著的降低。
结论
本文介绍了VACE(一体化视频生成与编辑框架),这是一个集视频生成与编辑功能于一体的框架。它整合了各类视频任务所需的多样且复杂的多模态输入,弥合了针对各个单独任务的专用模型之间的差距。这使得大多数视频人工智能创作任务能够通过单个模型的单次推理完成。在广泛涵盖各种视频任务的同时,VACE还支持这些任务的灵活自由组合,极大地拓展了视频生成模型的应用场景,满足了用户广泛的创意需求。VACE框架为具有多模态输入的统一视觉生成模型的发展铺平了道路,是视觉生成领域的一个重要里程碑。