MagicVideo-V2:多阶段高保真视频生成框架

2024-02-04 21:12

本文主要是介绍MagicVideo-V2:多阶段高保真视频生成框架,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本项工作介绍了MagicVideo-V2,将文本到图像模型、视频运动生成器、参考图像embedding模块和帧内插模块集成到端到端的视频生成流程中。由于这些架构设计的好处,MagicVideo-V2能够生成具有极高保真度和流畅度的美观高分辨率视频。通过大规模用户评估,它在性能上表现优越,超过了领先的文本到视频系统,如Runway、Pika-1.0、Morph、Moon Valley和Stable Video Diffusion模型。

github链接:https://magicvideov2.github.io/

1. 引言

文本到视频(T2V)模型的大量涌现标志着领域的重大进步,这得益于最近传播的基于扩散的模型。这项工作提出了MagicVideo-V2,这是一个新颖的多阶段T2V框架,将文本到图像(T2I)、图像到视频(I2V)、视频到视频(V2V)和视频帧插值(VFI)模块集成到端到端视频生成流程中。 T2I 模块通过从文本提示生成一个初始图像,捕捉输入的美学要素,为视频生成奠定基础。然后 I2V 模块以图像为输入,输出生成视频的低分辨率关键帧。随后的 V2V 模块增加了关键帧的分辨率并增强了其细节。最后,帧插值模块在视频中添加平滑的运动。

2. MagicVideo-V2

MagicVideo-V2 是一个多阶段端到端视频生成流程,能够从文本描述生成高美学水平的视频。它包括以下关键模块:

  • 「Text-to-Image 模型」,从给定的文本提示生成具有高保真度的美学图像。
  • 「Image-to-Video 模型」,使用文本提示和生成的图像作为条件生成关键帧。
  • 「Video to Video 模型」,对关键帧进行细化和超分辨率处理,生成高分辨率视频。
  • 「Video Frame Interpolation 模型」,在关键帧之间插入帧以平滑视频运动,最终生成高分辨率、流畅、高度美学的视频。

下面的小节将详细解释每个模块。

在这里插入图片描述
Text-to-Image 模块
T2I 模块以用户提供的文本提示为输入,并生成一张 1024 × 1024 的图像作为视频生成的参考图像。参考图像有助于描述视频内容和美学风格。MagicVideo-V2 兼容不同的 T2I 模型。具体而言,在 MagicVideo-V2 中使用了一个内部开发的基于扩散的 T2I 模型,该模型能够输出高美学的图像。

Image-to-Video 模块
I2V 模块基于高美学的 SD1.5模型,该模型利用人类反馈来提高在视觉质量和内容一致性方面的能力。I2V 模块通过受[10]启发的运动模块对高美学的 SD1.5 进行了扩展,两者都在内部数据集上进行了训练。 I2V 模块还增加了一个参考图像embedding模块,用于利用参考图像。具体而言,采用外观编码器来提取参考图像embedding ,并通过交叉注意力机制将其注入到 I2V 模块中。通过这种方式,图像提示可以有效地与文本提示解耦,并提供更强的图像调节。此外,采用了潜在噪声先验策略,以在起始噪声潜变量中提供布局条件。帧是从标准高斯噪声初始化的,其均值从零移向参考图像潜变量的值。通过适当的噪声先验技巧,可以部分保留图像布局,并改善帧之间的时间一致性。为了进一步增强布局和空间调节,部署了一个 ControlNet 模块,直接从参考图像中提取 RGB 信息,并将其应用于所有帧。这些技术使帧与参考图像很好地对齐,同时允许模型生成清晰的运动。

采用图像-视频联合训练策略来训练 I2V 模块,其中将图像视为单帧视频。联合训练的动机在于利用内部高质量和美学的图像数据集,以提高生成视频的帧质量。图像数据集部分还可以弥补视频数据集在多样性和数量上的不足。

Video to Video模块
V2V 模块的设计与 I2V 模块类似。它与 I2V 模块共享相同的主干和空间层。它的运动模块是使用高分辨率视频子集进行单独微调以进行视频超分辨率的。图像外观编码器和 ControlNet 模块也在这里使用。这是至关重要的,因为生成的视频帧具有更高的分辨率。利用参考图像的信息有助于通过减少结构错误和故障率来引导视频扩散步骤。此外,它还可以增强更高分辨率生成的细节。

视频帧插值(VFI)
VFI 模块使用一个内部训练的基于 GAN 的 VFI 模型。它采用了增强型可变分离卷积(EDSC)头 ,与基于 VQ-GAN 的架构配对,类似于 [8] 所进行的研究中使用的自动编码器模型。为了进一步提高其稳定性和流畅性,使用了[13]中提出的预训练轻量级插值模型。

3. 实验

人工评估
为了评估 MagicVideo-V2,邀请人工评估员进行与当代最先进的 T2V 系统的比较分析。61 名评估员小组对 MagicVideo-V2 和另一种 T2V 方法之间的 500 次并行比较进行了评分。每个选民在每一轮比较中基于相同的文本提示,被呈现一对随机视频,其中包括我们的一个与竞争对手的一个。他们被提供了三个评估选项 - 好、相同或差 - 分别表示对 MagicVideo-V2 的偏好、无偏好或对竞争 T2V 方法的偏好。评估员被要求根据他们在三个标准上的总体偏好投票:

  • 1)哪个视频具有更高的帧质量和整体视觉吸引力。
  • 2)哪个视频在时间上更一致,具有更好的运动范围和运动有效性。
  • 3)哪个视频具有更少的结构错误或不良情况。

这些试验的统计数据可以在下表 1 中找到,其偏好比例显示在下图 2 中。结果清楚地表明 MagicVideo-V2 更受青睐,从人类视觉感知的角度证明了其卓越的性能。
在这里插入图片描述
在这里插入图片描述

4. 定性示例

在下图3中呈现了 MagicVideo-V2 的精选定性示例。为了更好的观看体验,邀请读者在我们的项目网站上观看附带的视频。如前所述,MagicVideo-V2 的 I2V 和 V2V 模块擅长矫正和改进 T2I 模块的缺陷,生成流畅而富有审美的视频。
在这里插入图片描述
下图4中展示了一些例子。
在这里插入图片描述
在这里插入图片描述

5. 结论

MagicVideo-V2 提出了一种新的文本到视频生成流程。综合评估得到了人类裁判的支持,证实了 MagicVideo-V2 超越了现有技术方法。MagicVideo-V2 的模块化设计,整合了文本到图像、图像到视频、视频到视频和视频帧插值,为生成流畅且高审美的视频提供了一种新的策略。

这篇关于MagicVideo-V2:多阶段高保真视频生成框架的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/678810

相关文章

android 带与不带logo的二维码生成

该代码基于ZXing项目,这个网上能下载得到。 定义的控件以及属性: public static final int SCAN_CODE = 1;private ImageView iv;private EditText et;private Button qr_btn,add_logo;private Bitmap logo,bitmap,bmp; //logo图标private st

百度OCR识别结构结构化处理视频

https://edu.csdn.net/course/detail/10506

FastAdmin/bootstrapTable 表格中生成的按钮设置成文字

公司有个系统后台框架用的是FastAdmin,后台表格的操作栏按钮只有图标,想要设置成文字。 查资料后发现其实很简单,主需要新增“text”属性即可,如下 buttons: [{name: 'acceptcompany',title: '复核企业',text:'复核企业',classname: 'btn btn-xs btn-primary btn-dialog',icon: 'fa fa-pe

BD错误集锦7——在集成Spring MVC + MyBtis时使用c3p0作为数据库时报错Method com/mchange/v2/c3p0/impl/NewProxyPreparedStatem

异常信息如下: Type Exception ReportMessage Handler dispatch failed; nested exception is java.lang.AbstractMethodError: Method com/mchange/v2/c3p0/impl/NewProxyPreparedStatement.isClosed()Z is abstractDescr

[分布式网络通讯框架]----Zookeeper客户端基本操作----ls、get、create、set、delete

Zookeeper数据结构 zk客户端常用命令 进入客户端 在bin目录下输入./zkCli.sh 查看根目录下数据ls / 注意:要查看哪一个节点,必须把路径写全 查看节点数据信息 get /第一行代码数据,没有的话表示没有数据 创建节点create /sl 20 /sl为节点的路径,20为节点的数据 注意,不能跨越创建,也就是说,创建sl2的时候,必须确保sl

【服务器08】之【游戏框架】之【加载主角】

首先简单了解一下帧率 FixedUpdate( )   >   Update( )   >   LateUpdate( ) 首先FixedUpdate的设置值 默认一秒运行50次 虽然默认是0.02秒,但FiexedUpdate并不是真的0.02秒调用一次,因为在脚本的生命周期内,FixedUpdate有一个小循环,这个循环也是通过物理时间累计看是不是大于0.02了,然后调用一次。有

Java中的集合框架使用技巧

Java中的集合框架使用技巧 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨Java中集合框架的使用技巧,这些技巧能够帮助我们更高效地处理数据和优化程序性能。 Java集合框架概述 Java集合框架提供了一组实现了各种集合接口的类和接口,用于存储和操作数据。它包括列表、集合、队列和映射等数据结构,能够满足不

大型网站架构演化(一)——初始阶段的网站架构

大型网站的技术挑战主要来自于庞大的用户,高并发的访问和海量的数据,任何简单的业务一旦需要处理数以P计的数据和面对数以亿计的用户,问题就会变得很棘手。大型网站架构主要是解决这类问题。         大型网站都是从小型网站发展而来,网站架构也是一样,是从小型网站架构逐步演化而来。小型网站最开始时没有太多人访问,只需要一台服务器就绰绰有余,这时的网站架构如图所示。

[分布式网络通讯框架]----ZooKeeper下载以及Linux环境下安装与单机模式部署(附带每一步截图)

首先进入apache官网 点击中间的see all Projects->Project List菜单项进入页面 找到zookeeper,进入 在Zookeeper主页的顶部点击菜单Project->Releases,进入Zookeeper发布版本信息页面,如下图: 找到需要下载的版本 进行下载既可,这里我已经下载过3.4.10,所以以下使用3.4.10进行演示其他的步骤。

PHP生成csv格式Excel,秒级别实现excel导出功能

防止报超内存,兼容中文,兼容科学技术法。 爽。。。。很爽。。。。 /*** 告诉浏览器下载csv文件* @param string $filename*/public static function downloadCsv($data, $filename, $encoding = 'utf-8'){header("Content-type: text/csv");header("Conten