AnimateDiff: Animate Your Personalized Text-to-Image Diffusion Models without Specific Tuning 详解
在提供的论文摘要中,作者没有与最相近的工作Align-Your-Latents [3]进行对比,可能是因为当前方法与Align-Your-Latents在某些方面有重叠,或者对比结果尚未明确。以下是可能的原因:
时间因素:Align-Your-Latents可能是在当前论文发表之前提出的,因此在摘要中没有提及。
方法差异:当前方法与Align-Your-Latents在某些关键点上有不同的设计,导致在比较时没有显示出优势。
实验结果:当前方法在实验中已经展示了其有效性,而与Align-Your-Latents的对比可能没有显示出显著的优势,或者结果尚未明确。
论文结构:当前摘要可能专注于介绍方法和部分实验结果,而未详细展开所有可能的对比。
资源限制:进行详细的对比可能需要更多的计算资源和时间,当前摘要可能没有详细展开。
方法局限性:当前方法可能在某些方面与Align-Your-Latents有重叠,因此在比较时可能没有显示出明显的差异。
为了验证这些假设,建议查阅Align-Your-Latents的相关文献,了解其方法和与当前方法的比较。如果确实没有进行对比,可能是因为当前方法在某些方面更优,或者对比结果尚未明确。
项目地址:AnimateDiff

Abstract
基于文本到图像模型(如 Stable Diffusion [22])及其个性化技术(如 DreamBooth [24] 和 LoRA [13])的进展,每个人都可以以较低的成本将想象力转化为高质量的图像作品。对图像动画技术的需求显著提升,以进一步实现静态图像与动态运动的结合。在本报告中,我们提出了一种通用框架,能够轻松地将现有个性化文本到图像模型升级为支持动画功能的版本,无需针对特定模型进行调整。该框架的核心在于将一个新初始化的运动建模模块整合到冻结的文本到图像模型中,并对收集的视频剪辑数据集进行训练,以提取合理的运动先验知识。训练完成后,只需将该运动建模模块注入到目标模型中,即可实现所有基于相同基础 T2I 的个性化版本自然具备动画功能。我们在动漫图片和现实照片等多领域代表性模型上进行了评估,结果表明,我们的框架帮助模型生成流畅且多样化的动画片段,同时保持了输出的领域特性和多样性。代码和预训练权重将在我们的项目页面上公开提供。
1. Introduction
近年来,文本到图像(T2I)生成模型 [17, 21, 22, 25] 吸引了前所未有的关注,不仅在研究领域内外引起了广泛关注,而且为用户提供了高视觉质量和文本驱动的可控性。这些优势尤其适合非研究人员用户,如艺术家和业余爱好者,他们可以通过这些模型进行人工智能辅助内容创作,无需具备专业技能。为了进一步激发现有T2I生成模型的创造力,我们提出了几种轻量级的个性化方法,例如 DreamBooth [24] 和 LoRA [13]。这些方法允许用户在小型数据集上对模型进行定制微调,仅需配备如RTX3080这样的消费级设备(如配备RTX3080的笔记本电脑),就能显著提升模型生成内容的质量。通过这种方式,用户可以以非常低的成本向预训练的T2I模型引入新的概念或风格,并在诸如CivitAI [4] 和 Huggingface [8] 等模型共享平台上贡献出许多由艺术家和业余爱好者创作的个性化模型。
尽管通过其卓越的视觉质量,使用 DreamBooth 或 LoRA 训练的个性化文本到图像模型已经引起了广泛关注,但它们的输出为静态图像,缺乏时间自由度。换句话说,缺乏时间自由度。鉴于动画在现代应用中的广泛存在,我们希望将大多数现有的个性化 T2I 模型转变为生成动画图像的模型,同时保持原始的视觉质量。最近的研究 [7, 12, 33] 提出了将时间建模融入原始 T2I 模型,并在视频数据集上进行优化,以生成动态图像。然而,针对个性化的 T2I 模型,这一过程面临挑战,因为用户需要承担敏感的超参数调整、个性化视频收集以及大量的计算资源。
在本研究中,我们提出了一种通用方法AnimateDiff,该方法可使任何个性化的T2I模型具备生成动画图像的能力,无需对模型进行专门调整,并能在时间上实现内容的一致性吸引力。鉴于大多数个性化的T2I模型均源自同一基础架构(如Stable Diffusion [22]),且为特定领域收集视频数据在实际应用中并不现实,因此我们设计了一个运动建模模块,可通过一次开发为所有个性化T2I模型提供动画功能。具体而言,我们将运动建模模块整合至基础T2I架构后,在大规模视频剪辑 [1] 数据集上进行微调,以学习合理的运动先验知识。值得注意的是,基础模型的参数保持不变。微调后,我们验证了个性化T2I模型也能受益于这一良好运动先验,生成平滑且吸引人的动画效果。换言之,该运动建模模块可为所有相关个性化T2I模型提供动画功能,无需额外数据收集或定制化训练。
我们对DreamBooth [24]和LoRA [13]等具有代表性的模型进行了评估工作,涵盖动漫图片和逼真照片两类。在无需额外调整的情况下,大多数T2I模型可通过集成预训练良好的运动建模模块实现动画化。在实践中,我们发现对于运动建模模块而言,基于时间维度的普通注意力机制足以掌握合适的运动先验知识。我们还验证了这些运动先验知识在3D卡通和2D动漫等其他领域的泛化能力。基于此,我们的AnimateDiff模型可作为实现个性化动画的简单有效基准,用户仅需承担个性化图像模型的成本,即可快速获得个性化动画效果。
2. Related Works
近年来,文本到图像(T2I)扩散模型受到了学术界和更广泛的领域的极大关注。得益于其强大的能力,这些模型基于大规模的文本-图像配对数据集[26]和扩散模型的强大能力[5, 11]进行了研究和应用。其中,GLIDE[17]在扩散模型中引入了文本条件,并通过引导生成更美观的图像展示了其优势。DALLE-2[21]通过结合CLIP[19]特征空间,提升了文本与图像的对齐效果。Imagen[25]结合了在文本语料库上预训练的大型语言模型[20]和扩散模型的级联结构,实现了高质量图像的生成。潜在扩散模型[22](即Stable Diffusion)则通过在自编码器潜在空间中执行去噪过程,显著降低了计算需求,同时保持了图像生成的质量和灵活性。与上述基于共享参数的工作不同,eDiff-I[2]采用了针对不同合成阶段的扩散模型集成的策略。我们的方法基于预训练的文本到图像模型构建,并支持任何基于调整的个性化版本。
由于这些资源只能被大型公司和研究机构获取,个人用户无法训练自己的模型。尽管已经有许多强大的文本到图像(T2I)生成算法生成算法生成算法,但由于对大规模数据和计算资源的需求,个人用户训练自己的模型仍然是不可接受的。一些方法已经被提出,以使用户能够将新领域(主要由用户收集的少量图像表示的新概念或风格)引入到预训练的T2I模型中 [6, 9, 10, 14, 16, 24, 27]。Textual Inversion [9] 提出了为每个概念优化一个词嵌入,并在训练过程中冻结原始网络。DreamBooth [24] 是另一种方法,它通过保存损失作为规范来对整个网络进行微调。Custom Diffusion [16] 通过仅更新一小部分参数并允许通过闭合形式优化进行概念合并来提高微调效率。与此同时,DreamArtist [6] 将输入减少到单个图像。最近,LoRA [13],一种用于语言模型适应的技术,已被用于文本到图像模型的微调,并取得了良好的视觉质量。虽然这些方法主要基于参数调整,但也有一些工作尝试学习一个更通用的编码器用于概念个性化 [10, 14, 27]。
在研究界中有很多不同的个性化方法,但我们的研究集中于基于调整的模型,如 DreamBooth [24] 和 LoRA [13],因为它们保留了基础模型的特征空间。
本研究针对的个性化T2I动画设置尚属首次提出,目前相关领域的研究工作尚处于起步阶段。尽管现有的T2I模型改进方案多采用时间结构的延展方式以扩展视频生成能力,但这些方法往往会对网络结构进行全局更新,从而牺牲了原始T2I模型在领域知识方面的优势。近期研究者们已开始关注个性化T2I模型向动画形式转化的相关探索。例如,Tune-a-Video通过轻量化的网络架构调整和子网络优化实现了单帧视频生成目标。Text2Video-Zero则通过无需训练的预设仿射矩阵推导方法,在预训练的T2I模型基础上实现了动画效果。在现有研究中,与我研究方向相契合的最新成果是Align-Your-Latents,该模型作为独立的T2V架构,专注于对T2I模型中单独时间层的训练。基于多组个性化模型的系统性评估,我提出的方法在保持有效性的同时实现了个性化T2I模型向动画形式的转化。
3. Method
在本节中,第3.1节首先介绍了文本到图像模型及其个性化变体的基础知识。随后,第3.2节阐述了个性化动画的公式化表示及其方法的动机。最后,第3.3节详细描述了AnimateDiff中运动建模模块的实际实现,该模块将各种个性化模型转化为具有吸引力的合成图像。

3.1 Preliminaries
文本到图像生成器的一般介绍。在本文中,我们选择了 Stable Diffusion(SD)作为通用的T2I生成器。SD基于潜在扩散模型(LDM)[22],在自动编码器的潜在空间中执行去噪过程,即E(·)和D(·),实现于在大型图像数据集上经过预训练的VQ-GAN[14]或VQ-VAE[29]。在潜在扩散网络的训练过程中,输入图像x0首先通过冻结的编码器映射到潜在空间,得到z0=E(x0),然后通过预先设定的马尔可夫过程进行扰动。

其中 t ∈ {1, 2, ..., T},T 代表正向扩散过程的总步数。参数序列 βt 通过调整每个时间步的噪声水平,从而影响扩散过程的进展。我们可以通过闭式表达式重新表述该过程,具体如下。

其中,\bar{\alpha}_t = \prod_{i=1}^{t} \alpha_t;同时,\alpha_t = 1 - \beta_t。基于DDPM [5]所提出的训练目标,Stable Diffusion可以表达为:

其中,y是相应的文本描述,τθ(·)是将字符串映射到一系列向量的文本编码器。
在Stable Diffusion框架中,ϵθ(·)采用了经过改进的UNet结构[23],该结构由四个下采样-上采样模块和一个中间模块组成,这些模块均位于潜在空间中,并对应着四个不同的分辨率级别。每个分辨率级别均包含二维卷积层、自注意力机制以及交叉注意力机制。文本编码器则采用CLIP[19]中的ViT-L/14架构来实现。
个性化图像生成技术近年来取得了显著进展。在生成技术领域,个性化图像生成逐渐成为关注的焦点。其中,基于DreamBooth [24] 和LoRA [13] 的方法被认为是两种具有代表性和广泛应用性的个性化生成方法。为了将预训练的文本到图像(T2I)模型扩展到新的领域(新概念、新风格等),一种直接的方法是在该特定领域内对模型进行微调。然而,仅进行模型微调而未实施正则化措施,可能导致模型过拟合或遗忘训练数据中的特定模式,尤其是在数据集规模较小的情况下。为了解决这一问题,DreamBooth [24] 提出了通过使用罕见的字符串作为指示器来表示目标领域,并通过生成与目标领域相关的图像来扩充数据集的方法。这些正则化生成图像的生成过程是在不使用指示器的情况下完成的,因此在微调过程中,模型能够学习将罕见的字符串与预期的目标领域相关联。
LoRA [13] 采用了一种不同策略,通过微调模型权重的残差来实现目标,而非直接调整原始权重 W。微调后的权重更新公式为 W' = W + α∆W,其中 α 为超参数,调节微调过程的影响程度,从而为用户提供了更大的生成结果控制自由度。为了进一步优化模型性能并降低计算开销,∆W 被分解为两个低秩矩阵的乘积,即 ∆W = AB^T,其中 A 和 B 分别属于 Rm×r 和 Rn×r 空间,且 r 远小于 m 和 n。在实际应用中,我们仅对模型中的 Transformer 块投影矩阵进行微调,这不仅显著降低了 LoRA 模型的训练和存储成本,还显著提升了训练效率。与一次性训练并存储整个模型参数的 DreamBooth 方法相比,LoRA 模型在用户间的共享效率更高。
3.2 Personalized Animation
将个性化图像模型转换为动画通常需要进行额外的调整和相应的视频采集,这使得这一任务变得更加复杂。在本节中,我们的目标是实现个性化动画,其正式定义如下:给定一个用户自定义的T2I模型,例如通过DreamBooth [24]、LoRA [13]等方法训练的模型,或者从CivitAI [4]或Huggingface [8]开源项目中获取的模型,目标是将其转换为一个动画生成器,几乎无需额外的训练成本,同时保留其原始的专业知识和生成质量。例如,假设一个T2I模型被个性化为特定的2D动漫风格,那么相应的动画生成器应该能够生成符合该风格的带动作的动画片段,例如前景与背景的分割、角色身体的动作等。
为实现此目标,一个直观的方法是通过引入时间感知结构并从大规模视频数据集中学习合理的运动先验来扩展T2I模型[7, 12, 33]。然而,个性化领域中收集足够数量的个性化视频数据成本高昂。与此同时,有限的数据量会导致源领域知识的丢失。因此,我们选择单独训练一个通用运动建模模块,并将其在推断阶段整合到个性化的T2I模型中。通过这种方式,我们避免了为每个个性化模型进行专门调整的繁琐过程,并保留了预训练权重不变的特性。这种方法的另一个显著优势是,一旦模块训练完成,它就可以无缝整合到任何基于相同基础模型的个性化T2I模型中,无需额外调整,如下面的实验结果所示。这是因为个性化处理几乎不会修改基础T2I模型的特征空间,这一结论在ControlNet[32]中也得到了验证。
3.3 Motion Modeling Module
网络膨胀。受限于原始的SD模型仅能处理批处理的图像数据,网络规模的扩展成为必要,以便与我们的运动建模模块实现兼容。该模块以批次 × 通道 × 帧数 × 高度 × 宽度的形式接收5D视频张量作为输入。为了解决这一问题,我们参考了Video Diffusion Model [12]的架构设计。具体实施上,我们将原始图像模型中的每个2D卷积层和注意力机制转换为仅在空间维度上呈现伪三维结构。这一过程通过将帧维度重塑为批次维度,并确保网络能够独立处理每一帧来实现。与现有方法不同,我们在此基础上新增的运动模块采用跨帧操作策略,旨在提升动画片段中的运动平滑性和内容一致性。具体细节请参见图3。

Module Design模块设计。针对运动建模模块的网络设计,我们的目标是确保了帧间信息的有效交换。为此,我们采用了基础的时间变换器作为运动模块的设计方案。值得注意的是,我们曾尝试过其他类型的网络设计方案用于运动模块,但经测试发现,基于并发的时序变换器已经能够有效建模运动先验。未来,我们计划探索更优化的运动模块设计。
这个时间变换器由一系列沿着时间轴进行操作的自注意力模块构成(如图3所示)。当输入我们的运动模块时,特征图z的空间维度高度和宽度将首先被重塑为批次维度,从而形成一个批次×高度×宽度的序列,其长度为帧数。随后,重塑后的特征图将经过投影操作并依次经过多层自注意力模块。

其中,Q = W_Q z、K = W_K z、V = W_V z 是特征图经过重新重塑的三个投影矩阵。该操作使模块能够识别时间轴上同一位置特征间的动态关联。为了增强运动模块的感受野,我们将该模块整合到 U 型扩散网络的各个分辨率层级中。通过注入正弦位置编码,网络得以识别当前帧在时间轴上的具体位置。为了避免在训练过程中引入外部模块影响网络性能,我们对时间变换器的输出投影层进行了零初始化处理,这一方法已被 ControlNet [32] 所证实是有效的。
我们的运动建模模块采用了一种与潜变扩散模型相似的训练流程。首先,通过预训练的自编码器,视频数据 x_{1:N}^0 被逐帧编码为潜在编码 z_{1:N}^0 。接着,通过预定义的扩散计划对潜在编码施加噪声处理: z_{t}^{1:N} = \sqrt{\bar{\alpha}_t} z_{1:N}^0 + \sqrt{1 - \bar{\alpha}_t} \epsilon 。扩散网络接收经过噪声处理的潜在编码和相应的文本提示作为输入,并通过 L2 损失项鼓励其预测添加到潜在编码中的噪声强度。最终,我们的运动建模模块的训练目标是实现这一过程。

在优化过程中需要注意的是,基础 T2I 模型的预训练权重经过固定处理,使其特征空间保持不变。
4. Experiments
4.1. Implementation Details
鉴于目前大多数公共个性化模型多采用 Stable Diffusion v1 作为基础,我们决定基于此模型进行运动建模模块的训练。为了提升训练效果,我们采用了 WebVid-10M 数据集 [1],该数据集包含文本与视频对,用于训练运动模块。视频片段首先按步长 4 进行采样,随后调整尺寸并进行中心裁剪,最终统一为 256×256 的分辨率。通过实验发现,256 的训练分辨率表现良好,适用于更高分辨率的应用。因此,我们采用了 256 分辨率的训练策略。此外,我们采用了线性 β 计划,其中 βstart 设为 0.00085,βend 设为 0.012,与训练初始的计划有所不同。
为了评估我们方法的有效性和通用性,我们从CivitAI[4]选取了多个具有代表性的个性化Stable Diffusion模型(见表1),该平台允许艺术家分享其特定的个性化模型。所选择的这些模型的领域涵盖了动漫、二维卡通图像以及逼真照片等多个领域,从而提供了一个全面的基准来评估我们方法的能力。当我们的模块完成训练后,我们将该模块整合到目标个性化模型中,并利用预先设计好的提示语句生成动画。为了避免使用通用提示语,我们发现个性化模型只能根据特定的文本分布生成预期内容,这意味着提示语句必须具有特定的格式或包含"触发词语"。因此,在接下来的部分中,我们将采用模型主页提供的示例提示来实现最佳性能。

4.2. Qualitative Results
在图4中,我们展示了不同模型的几个定性结果。由于篇幅限制,我们仅呈现了每个动画片段的前四帧。我们强烈推荐读者访问我们的主页以获取更丰富的视觉效果。图中显示,我们成功地将个性化的T2I模型应用于多个领域,包括高度风格化的动漫(图4顶部行)和逼真的照片(图4底部行),同时保持了它们的专业知识。基于视频数据集学习的运动先验,运动建模模块能够理解文本提示,并对每个像素赋予适当的运动,例如,图4中第三行展示的海浪运动和第七行展示的Pallas猫腿部运动。我们还发现,模型能够有效地区分画面中的主体与前景和背景,从而营造出生动且逼真的视觉效果。例如,在图4第一动画中,角色与背景中的花朵按不同速度分离并呈现出不同的模糊效果。
定性分析表明,我们的运动模块在不同领域内实现了个性化T2I模型的通用动画生成。将我们的运动模块整合到个性化模型中,AnimateDiff生成的动画在忠于个性化领域、保持高质量、展现多样性的同时,还具有视觉吸引力。

4.3. Comparison with Baselines
与 Text2Video-Zero [15] 进行对比分析,Text2Video-Zero 是一种基于无需训练的网络架构设计,通过网络膨胀和潜在扭曲机制实现了 T2I 模型的扩展。值得注意的是,Tune-a-Video 虽然同样适用于 T2I 动画生成,但由于需要额外的输入视频信息,因此在本次对比分析中未被包含在内。值得注意的是,Text2Video-Zero 采用了固定超参数配置,无需进行任何参数微调,因此能够直接应用于个性化 T2I 模型的动画处理。在保持 512×512 分辨率的基础上,Text2Video-Zero 通过采用预设的超参数配置,成功生成了一组 16 帧的动画片段。
在相同的个性化模型和提示设置下,我们从跨帧细节一致性角度对基线方法与我们的方法进行了对比分析。通过裁剪并放大显示相同区域,我们展示了各帧细节对比结果,如图5所示。
如图所示,两种方法均保留了个性化模型的领域知识,它们在帧级别上的质量具有可比性。然而,T2V-Zero的结果在视觉上虽与其它方法相似,但在细致比较时未能达到跨帧一致性的细粒度要求。例如,在第一行中,前景岩石的形状与第三行中的桌子上的杯子随时间发生变化。当以视频剪辑形式播放时,这种不一致性更加明显。相比之下,我们的方法生成了时间上一致的内容,并保持了更出色的平滑性(第二、四行)。此外,我们的方法展示了更加合适的内容变化,并与底层摄像机运动保持一致,进一步突显了我们方法的有效性。这个结果是合理的,因为基线方法未学习运动先验知识,而是通过基于规则的潜在扭曲实现视觉一致性;而我们的方法则继承了来自大规模视频数据集的知识,并通过高效的时间注意力保持了时间上的平滑性。

4.4. Ablative Study
为了验证我们在训练过程中所选择的扩散过程中的噪声计划,我们进行了消融研究。在前面部分,我们讨论了采用略有调整的扩散计划以改善视觉质量。在此,我们尝试了三种先前研究中采用的具有代表性的扩散计划(见表2),并在图6中展示了相应结果的视觉比较。在我们的实验中,采用了三种扩散计划:计划A基于预训练Stable Diffusion;计划B是我们采用的方案,与SD的计划在beta序列计算方式上存在差异;计划C则用于DDPM [5] 和 DiT [18],与SD的预训练计划差异较大。

正如图6所示,当采用与预训练计划一致的Stable Diffusion计划(计划B)来训练运动建模模块时,动画结果会出现浅色伪影这一现象令人值得注意。这与直觉相悖,因为使用预训练计划应有助于模型保持其已学习的特征空间。随着计划偏离预训练程度的增加(从计划A到计划C),生成动画的颜色饱和度显著提升,而运动范围则相应减小。在三种配置方案中,我们成功在视觉质量与动作平滑度之间找到了最佳平衡点。
基于这些观察结果,我们假设微调扩散计划有助于预训练模型在新任务和领域中更好地适应。我们的框架通过从扩散视频序列重建噪声序列来定义新的训练目标。这一目标可以逐帧实现,而不考虑视频序列的时间结构。T2I模型在预训练阶段专注于图像重建任务,因此如果采用相同的扩散计划,可能会误导模型,使其仍然优化为图像重建目标。这将降低我们为跨帧运动建模设计的运动建模模块的训练效率,导致动画出现更多的闪烁和颜色混叠现象。

5. Limitations and Future Works
在我们的实验研究中,我们发现大多数失败案例集中在个性化 T2I 模型与现实脱节的领域。例如,如图7所示,2D Disney 卡通。在这些情况下,动画结果出现了明显的伪影,并且无法生成合适的动画。我们推测,这种现象是由于训练视频(现实)与个性化模型之间存在较大的分布差距所导致的。解决这一问题的一个可能方法是,手动收集目标领域的几个视频,并略微调整动画建模模块,作为未来研究的方向。

Conclusion
在本报告中,我们提出了AnimateDiff,这是一个实用的框架,旨在实现个性化文本到图像模型的动画化。我们的目标是将大多数现有的个性化T2I模型转化为动画生成器,从而实现一劳永逸的解决方案。我们展示了该框架,其中包括一个简单设计的动画建模模块,该模块基于基础T2I模型进行训练,能够从大规模视频数据中提取通用的运动先验知识。一旦完成训练,该运动模块即可被整合到其他个性化模型中,生成具有自然运动和适当动态效果的动画图像,同时保持与特定领域的一致性。通过针对各种个性化T2I模型的广泛评估,我们验证了该方法的有效性和普适性。因此,AnimateDiff为个性化动画提供了一个简单而有效的基准,具有广泛的应用前景。
Question
为什么没有与最相近的工作Align-Your-Latents [3]进行对比?
