重磅开源,图转视频,6G显卡可用!

AI绘画圈的知名大神斯坦福大学的张吕敏提出了一项名为FramePack的高效视频生成技术。

和其他技术最大的区别是,只需要6G显卡!

笔记本电脑就可以跑起来。


详细介绍: lllyasviel.github.io/frame_pack_gitpage/

FramePack通过封装输入帧上下文,优化 GPU 资源分配,实现快速视频扩散,同时解决长视频生成中的漂移问题,适用于多种视频生成任务。只用普通显卡 6GB 显存就可以生成1分钟长度的视频。 

帧封装技术


  • 使用 6GB 笔记本 GPU 内存,以 13B 模型全帧率 30fps 扩散数千帧。
  • 在单台 8xA100/H100 节点上,以批量大小 64 微调 13B 视频模型,适用于个人/实验室实验。
  • 个人 RTX 4090 显卡生成速度为每帧 2.5 秒(未优化)或 1.5 秒(teacache 优化)。
  • 无时间步蒸馏。
  • 视频扩散,但效果类似图像扩散。


5秒了解帧封装技术

下一帧(或下一帧片段)预测模型结构如下:


因此我们有许多输入帧,并希望扩散一些新的帧。

我们的想法是将输入帧编码为类似这样的 GPU 布局:


此图表展示了逻辑上的GPU 内存布局——帧图像并未拼接。

或者说,每个输入帧的上下文长度。

每帧图像采用不同的分块核进行编码以实现这一目标。

例如在混元视频中,若使用(1,2,2)分块核,480p 帧约含 1536 个令牌。

若改用(2,4,4)分块核,则每帧仅含192个令牌。

通过这种方式,我们可以动态调整每帧的上下文长度。

“更重要的”帧会被分配更多 GPU 资源(上下文长度)——在此例中,F0 最为重要,因为它是离”下一帧预测”目标最近的帧。

这是流式处理的 O(1)计算复杂度——是的,是常数级,甚至不是 O(nlogn)或 O(n)。

但等等,如果…

上述构想只是一个非常简略的概念——可以提出许多问题,例如:

如果帧的重要性不遵循这种简单模式怎么办?

如果我想要不同的压缩率怎么办?

如果我想实现图像转视频,第一帧不是最重要的吗?

如果我有些用户指定的帧,想让这些帧更重要呢?

太好了——实际上这些就是帧打包调度,比如以下这些:


因此可以得到不同的压缩模式。

甚至可以让起始帧同等重要,这样图像转视频的效果会更理想。

所有这些调度算法的时间复杂度都是 O(1)。

我们在论文中对多种调度方案进行了详细评估!

抗漂移采样

漂移是任何下一代预测模型的常见问题。

漂移指的是随着视频变长,质量逐渐下降的现象。

有时这个问题也被称为误差累积或曝光偏差。

举个例子,你可以随便找一个图像转视频模型,尝试通过反复使用最后生成的帧作为输入来生成长视频。这样操作5到6次后,结果很快就会变得混乱,大约10次后,一切都会严重劣化。

另请参阅我们的论文,其中包含对现有方法(如历史噪声增强、特殊配置引导、滚动扩散时间步等)的一些实验。我们发现,要从根本上解决漂移问题,需要打破因果性,使采样变为双向。

考虑以下采样方法:

(阴影方块表示每次流式推理中生成的帧)

请注意,只有“原始采样”是因果性的。

“抗漂移采样”与“反向抗漂移采样”均为双向技术。

“反向抗漂移采样”方法至关重要。该方法是所有推理过程中始终将首帧作为近似目标的唯一方案,尤其适用于图像转视频场景。


(文:路过银河AI)

发表评论

×

下载每时AI手机APP

 

和大家一起交流AI最新资讯!

立即前往