视频生成更高质量,更连贯!关键帧插值创新技术——Generative Inbetweening开源

视频 运动 生成 反向运动 关键帧
发布于 2025-05-17
1223

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

扫码阅读
手机扫码阅读
点击下方卡片,关注“AI生成未来

作者:Xiaojuan Wang等

解读:AI生成未来          

文章链接:https://arxiv.org/pdf/2408.15239
git链接:https://svd-keyframe-interpolation.github.io/

亮点直击

  • 关键帧插值的创新方法:提出了一种基于现有预训练图像到视频模型的适应方案,以解决关键帧插值问题,即在两个输入关键帧之间生成连贯的视频序列。
  • 双向运动预测机制:开发了一种新的方法,通过将现有图像到视频模型微调为能够生成反向运动的视频,实现了从单一图像生成反向运动的视频。提出了一种轻量级的微调机制,通过旋转时间自注意力图来逆转时间流,从而在现有模型中引入反向运动的能力。
  • 双向采样融合:提出了一个双向采样机制,将前向和反向运动的预测结果融合,以生成一个一致的、连贯的插值视频。这个机制通过共享的旋转时间自注意力图实现前后运动的一致性(“前向-反向运动一致性”)。
  • 高质量视频生成:通过对比定性和定量的实验结果,证明了该方法在关键帧插值任务中比现有方法和传统技术生成的动态效果更高质量,更具连贯性。


总结速

解决的问题

在给定的两个关键帧之间生成具有连贯运动的视频序列。

提出的方案

通过对一个预训练的大规模图像到视频扩散模型进行轻量级微调,将其适应为关键帧插值模型。这种适应使得模型可以生成在两个输入帧之间的视频序列。具体而言,将模型调整为从单一输入图像预测反向运动的视频,并结合原始前向运动模型,使用双向扩散采样过程来融合从两个关键帧出发的模型估计结果。

应用的技术

  1. 预训练大规模图像到视频扩散模型:原本用于从单一输入图像生成前向运动的视频。
  2. 轻量级微调:将预训练模型调整为能够生成从单一输入图像反向运动的视频。
  3. 双向扩散采样过程:结合前向和反向运动模型的估计结果来生成最终的视频序列。

达到的效果

该方法在生成视频序列时,比现有的扩散方法和传统的帧插值技术表现更好,能够在两个关键帧之间生成更连贯的运动。

方法

给定一对关键帧 ,目标是生成一个视频序列 ,该视频从帧 开始,以帧 结束,并利用预训练的图像到视频稳定视频扩散(SVD)模型。生成的视频应该展示自然且一致的运动路径,例如一辆车行驶或一个人朝着稳定方向行走。

图像到视频模型通常生成的是前向时间的运动。主要是时间自注意力层学习这种运动时间关联。先讨论如何通过将时间自注意力图旋转180度来逆转这种前向运动。再介绍一种高效的轻量级微调技术,以逆转这种关联,使SVD能够从输入图像生成反向运动视频。最后,提出了双向采样方法,将从帧 开始的前向运动生成和从帧 开始的反向运动视频生成以一致的方式融合在一起。步骤概述如下图1所示。

通过自注意力图旋转逆转运动时间关联

网络 中的时间自注意力图 特征表示视频 的前向运动轨迹。通过将这些注意力图旋转180度,得到一组新的注意力图 ,它们描绘了与之相反的反向运动,对应于从最后一帧 开始的反向序列 。具体来说,将时间自注意力图旋转180度(即垂直和水平翻转),可以得到与原始前向运动相反的反向运动。例如,考虑注意力图 ,旋转后的图 ,其中 表示第 帧和第 帧()之间的注意力分数。在相应的反向视频中,反向帧索引 维持相同的相对响应。

轻量级反向运动微调

本节介绍了一种轻量级的微调框架,专门微调时间自注意力层中的值矩阵和输出投影矩阵 ,使用旋转180度的前向视频注意力图作为额外输入(见下图2)。用 表示反向运动生成网络。这种微调方法有两个关键优点。首先,通过利用预训练SVD模型中的现有前向运动统计,微调 将模型的任务简化为学习如何在反向操作时合成合理的内容。与完整模型微调相比,这种策略所需的数据量和参数量大大减少。其次,它使模型能够生成与注意力图描述的前向轨迹相反的反向运动轨迹。这一特性在计划将前向和反向运动合并到一起时特别有用,从而实现前向-反向一致性。

详细的训练过程见下面算法1。对于潜在视频 ,通过第二维度反转,即沿时间轴反转潜在视频来表示 。在每次训练迭代中,采样一个包含 帧的输入视频,并随机选择时间步 ,然后在该时间步中添加噪声来创建有噪声的潜在视频 。将有噪声的视频潜在图像与从 计算得到的输入条件 一起输入到预训练的3D UNet 中,以提取时间注意力层中的自注意力图 。然后,将有噪声的视频潜在图像与最后一帧的条件 一起输入到反向运动3D-UNet 中。损失函数通过计算网络的预测与真实反向视频之间的差异来计算。

双向采样与前向-反向一致性

完整双向采样过程详见下面算法2。给定一对关键帧 ,它们对应的条件 已经预先计算好。然后每个采样步骤(如图1所示)按以下方式进行:

  1. 前向运动去噪(以 为输入)

  • 将有噪声的视频潜在图像 和条件 输入到预训练的3D UNet 中,以预测噪声体积 。此外,还提取3D UNet 中的时间自注意力图

反向运动去噪(以 为输入)

  • 沿时间维度翻转有噪声的视频 ,以创建与反向运动对应的反向视频潜在图像 。将该反向视频与条件 以及旋转180度的注意力图 一起输入到微调后的3D UNet 中。这一步预测噪声体积 ,表示从 开始的反向运动。

最终处理

  • 将来自前向和反向运动路径的预测噪声体积融合,然后使用 函数去噪以创建较少噪声的视频 。这样,确保了前向-反向一致性,从而在生成的视频中保持一致的运动方向。 函数执行简单的平均。在实践中,还采用每步递归的方法来增强融合,如 [1, 8] 所示,通过将高斯噪声重新注入 并在继续采样到下一步之前重复去噪 5 次。

实施细节

如前面所述,轻量级微调不依赖于大量的视频数据。因此,从社区网站收集了100个高质量的视频,这些视频最初是从SVD生成的,作为训练数据。实验结果表明,本文的方法对真实图像数据具有良好的泛化能力。选择了那些具有大物体运动的视频,例如动物奔跑、车辆移动、人物行走等。使用Adam优化器,学习率为 ,权重衰减为 。训练大约需要15K次迭代,批量大小为4。在4个A100 GPU上进行训练。采样时,应用50次采样步骤。对于SVD中的其他参数,使用默认值:运动桶ID = 127,噪声增强强度 = 0.02。

实验

在下面图3、图4、图5、图7中,展示了本文的方法成功生成了高质量的视频,并且在不同时间捕捉动态场景的关键帧之间运动一致。强烈建议在项目页面上查看视频结果,以更清晰地看到结果。本章节先描述了用来评估本文的方法和基线的数据。再展示了本文的方法如何优于传统的帧插值方法FILM,以及最近的工作TRF,该工作也利用SVD进行视频生成。通过消融研究证明了本文的设计决策。以及讨论了本文的方法在最佳场景下的表现以及在亚最佳场景下的表现,即虽然优于基线但仍受SVD本身的限制。展示了本文的方法的适应性,通过固定第一个关键帧并变化第二个关键帧。最后讨论了失败案例。

评估数据集

使用了两个高分辨率(1080p)数据集进行评估:

  1. Davis数据集,从所有视频中创建了总共117对输入。这些数据集主要特征是对象的关节运动,例如动物或人类动作。
  2. Pexels 数据集,从Pexels上的高分辨率视频中收集了总共45对输入关键帧对,特征包括方向性的动态场景运动,例如车辆移动、动物、人物奔跑、冲浪、波浪运动和延时视频。所有输入对之间至少相隔25帧,并具有相应的真实视频片段。

Baseline比较

将本文的方法与FILM进行比较,FILM 是当前大规模运动帧插值方法的最新进展,和TRF,TRF 也适配了SVD进行有限生成。在上面图3和图5中展示了代表性的定性结果。此外,还包括了近期工作DynamiCrafter 的关键帧插值特性结果——这是一个大规模的图像到视频模型。关键帧插值特性经过修改,并特别训练以接受两个结束帧作为条件,而研究者们则专注于如何以轻量级的方式适配预训练的图像到视频模型,使用较小的训练视频集合和更少的计算资源。该特性生成分辨率为 的16帧视频,而生成分辨率为

定量评估对于每个数据集,使用FID和 FVD来评估生成的视频。这两个指标用于衡量生成帧/视频与实际帧/视频之间的分布距离。结果如下表1所示,本文的方法在所有baseline方法中均显著优于其他方法。

与FILM的比较基于流的帧插值方法FILM面临两个主要问题。首先,它在处理大运动场景时很难找到对应关系。例如,在上面图3的第二行中,FILM在高速公路场景中无法找到移动汽车在输入关键帧之间的对应关系,导致中间帧的运动不自然。例如,一些汽车在第一帧中消失,在中间帧中消失,最后在结束时重新出现。其次,FILM生成的运动不明确,会沿最短路径在结束帧之间移动。在上图5中的示例中,给定两个看起来相似的帧,捕捉到的是一个人跑步的不同状态,FILM生成的运动仅仅是将人平移到帧之间,丧失了自然的腿部运动。

与TRF的比较 TRF结合了从第一帧开始的前向视频生成和从第二帧开始的反向视频生成,这两者都使用原始的SVD。第二帧的反向前向视频生成了一个反向运动视频,结束于第二帧。将这些生成路径融合在一起会导致生成的视频中出现往返运动。观察到TRF生成的视频有一个显著的效果,就是视频先向前推进,然后反向到结束帧。例如,在前面图3的第三行中,可以看到红色卡车随着时间的推移向后移动;在第七行中,狗的腿向后移动,导致不自然的运动。相比之下,本文的方法通过对SVD进行微调,从第二帧生成反向视频,与从第一帧生成的前向视频方向相反。这种前向-反向运动一致性导致生成的视频中运动保持一致。

消融实验

在前面图4和表1中,展示了本文方法的简化版本的视觉和定量比较,以评估本文方法关键组件的效果。

不使用旋转注意力图的微调(Ours w/o RA) 比较了一个变体,该变体微调了所有参数的时间自注意力层,即 ,但没有使用从前向视频得到的180度旋转时间自注意力图作为额外输入。虽然微调所有参数可以从第二个输入图像生成反向运动,但不能保证反向运动会与第一个输入图像的前向运动镜像一致。这种差异使得模型很难调和两个运动路径,通常会导致混合伪影,如前面图4的第一行所示。相比之下,使用旋转注意力图微调 可以生成一致且高保真的插值视频,确保前向-反向一致性。

微调 与不微调(Ours w/o FT)前面展示了将时间注意力图旋转180度可以反转运动时间关联,创建反向运动轨迹。这里展示了微调值和输出投影矩阵 对于模型生成高保真内容的必要性。运行了没有任何微调的完整流程,并且在这个变体中,仅对“上”块应用了注意力图旋转操作。如图4的第二行和表1所示,没有微调这些参数,模型可以创建一致的运动,但由于反向视频生成的帧质量低,导致帧质量差。例如,生成的视频中人物的形象被破坏。此外,在这个变体中,对“下”和“中”块应用注意力图旋转操作会进一步恶化视觉质量。

最佳和次佳场景

本文的方法受限于SVD所学习的运动质量和先验知识。首先,实验证明,SVD在生成刚性运动方面表现良好,但在处理非刚性、关节运动时表现不佳。它在准确渲染动物或人的肢体运动方面存在困难。在前面图5中,尽管本文的方法相比FILM和TRF有了显著改进,但与真实运动相比仍显得不自然。底部行展示了仅使用第一个输入帧生成的序列,确认了SVD本身在生成自然的跑步运动方面存在困难。

自适应中间帧生成

给定相同的第一个关键帧,并变化第二个关键帧,本文的方法仍能生成合理的视频,这得益于大规模图像到视频模型的丰富运动空间(见前面图7)。

失败情况

当输入对的拍摄间隔过大,导致它们之间的对应关系稀疏时,如下图6所示,仅有一小部分汽车出现在两个输入帧中,本文的方法很难融合前向和反向运动。在重叠区域最小的情况下,会导致中间帧出现伪影。

讨论与局限性

本文的方法受限于SVD中的运动质量。另一个局限性是,SVD具有从输入图像中得出的强运动先验,往往只生成特定的运动。因此,连接输入关键帧所需的实际运动可能不会在SVD的运动空间中体现,从而使得合成合理的中间视频变得具有挑战性。然而,随着大型图像到视频模型如SoRA3的进展,对未来能够解决这些局限性持乐观态度。另一种潜在的改进是使用输入关键帧之间的运动启发式,以引导图像到视频模型生成更准确的中间运动。

参考文献

[1] Generative Inbetweening: Adapting Image-to-Video Models for Keyframe Interpolation

致谢

如果您觉得这篇文章对你有帮助或启发,请不吝点赞、在看、转发,让更多人受益。同时,欢迎给个星标⭐,以便第一时间收到我的最新推送。每一个互动都是对我最大的鼓励。让我们携手并进,共同探索未知,见证一个充满希望和伟大的未来!


加入「AI生成未来社区」群聊,一起交流讨论,涉及 图像生成、视频生成、3D生成、具身智能等多个不同方向,备注不同方向邀请入群!可添加小助手备注方向加群!

AI生成未来