AIGC视频生成/编辑技术调研报告

人物AIGC:FaceChain人物写真生成工业级开源项目,欢迎上github体验。

简介: 随着图像生成领域的研究飞速发展,基于diffusion的生成式模型取得效果上的大突破。在图像生成/编辑产品大爆发的今天,视频生成/编辑技术也引起了学术界和产业界的高度关注。该分享主要介绍视频生成/编辑的研究现状,包括不同技术路线的优劣势,以及该领域当下面临的核心问题与挑战。

摘要

随着图像生成领域的研究飞速发展,基于diffusion的生成式模型取得效果上的大突破。在图像生成/编辑产品大爆发的今天,视频生成/编辑技术也引起了学术界和产业界的高度关注。该分享主要介绍视频生成/编辑的研究现状,包括不同技术路线的优劣势,以及该领域当下面临的核心问题与挑战。

1. 背景介绍

不少视频生成/编辑模型都是基于图像生成模型的预训练权重进行训练,结构也与图像生成模型一脉相承,因此在介绍视频生成/编辑模型之前有必要先介绍图像生成/编辑模型。我们根据不同的技术路线将图像生成/编辑模型分成四种类型,分别是使用编辑前后数据对进行训练的模型、zero-shot模型、one-shot/few-shot模型以及解耦合模型。我们将视频生成/编辑模型也分成四类,分别是large-data-driven模型、zero-shot模型、one-shot/few-shot模型和解耦合模型。接下来将分别介绍这几种类型。

2. 图像生成/编辑

2.1. 使用编辑前后数据对进行训练

比较典型的工作是 InstructPix2Pix [1]。该方法通过构造编辑前后的图像数据对来生成训练数据,使用这种数据进行训练得到的模型无需 finetune 即可进行图像编辑。具体的构造方式是利用 GPT3 生成编辑前后的 text prompt,再利用 stable diffusion + Prompt2Prompt 的方式进行编辑得到编辑前后图像对。

下图是 InstructPix2Pix 的示意图:

2.2. Zero-Shot 方法

比较具有代表性的工作是 Prompt-to-prompt [2] 和 MasaCtrl [3]。他们通过修改 cross attention 里的 attention maps 或 attention 机制的方式来实现无需 finetune 的图像编辑。Prompt-to-prompt 的具体做法是,对于由给定 prompt 通过模型生成的图像(若是真实场景图像,则需要做精确的 inversion),保留其 cross attention 步骤中的 attention map,对于新 text prompt,将新的词生成的 new attention 插入原 attention maps 中,并根据权重重新计算,生成编辑后的图像。

下图是 Prompt-to-prompt 的示意图:

2.3. One-Shot/Few-Shot方法

该类方法分为两类,一种是通过 finetune 来让网络学习到关于输入图像的 identifier,这样编辑过程中就能保留原图的内容和结构;第二种是通过设计保留原图内容和结构的 loss 来进行 finetune。第一种的代表性方法包括 Dreambooth [4] 和 DreamArtist [5]。其中 Dreambooth 便是通过对描述输入图像的 text prompt 插入特征 tokenizer,然后在同一物体的少量数据上训练,让网络记住该物体与该特定 identifier 之间的对应关系。接下来便能通过对 identifier 进行修饰从而达到对该物体的图像进行编辑的目的。

下图是 Dreambooth 的示意图:

第二种的代表性方法是 Text2live [6]。对于一张输入图像以及 target text prompt,该方法对图像和 text 分别做 augmentations 并生成数据集 internal dataset,然后在这个 internal dataset 上对模型进行finetune。模型的输出是带 alpha 通道的图层,该图层添加到原图上构成最终的输出图像。为了让生成的图像在保留原图内容和结构不变的基础上符合 target prompt 的描述,它使用了三种 loss:Composition Loss,Structure Loss 和 Screen Loss。Composition Loss 计算生成图像与 target prompt 在 clip 空间的距离;Structure Loss 计算生成图像与原图在结构和内容上的距离;Screen Loss 计算将带 alpha 通道的图层与绿幕组合后的图像与对该绿幕图像的 text 描述之间的 clip 距离。

下图是 Text2live 的示意图:

2.4. 解耦合方法

这类方法将图像要素解耦合成控制条件(如人体pose、edge map等)与图像内容/风格/语义,通过训练显式的编码器对控制条件或图像内容/风格/语义分别进行编码。推理阶段,修改图像内容/风格来生成符合控制条件的编辑后图像,或是通过修改控制条件来生成相同内容/风格/语义的图像。比较典型的方法如 DisCo [14] Prompt-Free Diffusion [15]。其中 DisCo 是针对人物姿态转换的模型,在第一阶段的训练中,它将人物图像进一步拆解成前景(人物)和背景对网络进行训练,第二阶段在第一阶段的基础上加上对控制条件(人物姿态) 的编码器进行进一步训练。DisCo 虽然在图像数据集上训练,但它可以被用来进行姿态引导的人物动态视频的生成,只要对单帧分别处理即可。

下图是 DisCo 的示意图:

3. 视频生成/编辑

3.1. Large-Data-Driven

这类方法在保持图像生成模型权重不变的基础之上,添加时序层,用大量的视频或者视频-文本数据对时序层进行训练,让模型学习到视频帧间连续性的同时尽可能保留原模型的图像生成能力。这类方法包括 Make-A-Video [7],Follow Your Pose [8],Control-A-Video [9],AnimateDiff [10],Align your Latents [11]。其中 Follow Your Pose 采取两阶段的训练方法,第一阶段使用带 pose 的 text-image 图像数据对进行训练,第二阶段使用不带 pose 的 text-video 数据对 temporal self-attention layer 和 cross-frame spatial attention layer 进行训练。最终 inference 阶段,使用 pose 和 text 共同控制视频的生成。

下图是 Follow Your Pose 的示意图:

3.2. One-Shot/Few-Shot 方法

与图像的方法类似,这类方法针对单个视频进行 finetune,使网络学习到属于该视频的时域特征,比较典型的是Tune-A-Video [12] 和 ControlVideo [13]。Tune-A-Video 将图像生成模型的权重固定不变,在单个视频上使用 source text prompt 和 image 对时序层进行 finetune。在 inference 阶段,先对输入视频进行 DDIM inversion,然后使用新的 prompt 生成编辑后的视频。ControlVideo 在 Tune-A-Video 的基础之上,加入了如 edge map 等其他控制手段引导视频的生成。

下图是 ControlVideo 的示意图:

3.3. Zero-Shot 方法

与图像的方法类似,这类方法通过对视频求精确的 inversion,然后修改 attention maps 或是 attention 机制来进行无需训练的视频编辑,典型的比如 Fatezero [16],Zero-shot video editing [17] 和 Video-p2p [18]。另一类方法根据视频时域连续性的先验知识,有针对性地设计新的 cross attention 机制或 adapter 来控制采样阶段生成的帧序列在结构、内容和色彩上的连续性。典型的方法比如 ControlVideo [19] 和 Rerender A Video [20]。其中 Rerender A Video 利用视频的光流信息,对采样阶段的隐空间特征进行变换和引导,同时辅以结构和色彩 adapter,实现了对输出视频的时域连续性控制。

下图为 Rerender A Video 的示意图:

3.4. 解耦合方法

图像编辑的解耦合方法也可以用来实现视频编辑,例如 DisCo [14],这里我们主要介绍针对视频的解耦合方法(考虑了时域特征)。与图像解耦合思路类似,视频也能被解耦合成控制条件帧序列(如人体pose、edge map等)与单帧图像内容/风格/语义,通过训练显式的编码器对控制条件序列或单帧图像内容/风格/语义进行编码,典型的方法如 DreamPose [21]。另一类解耦合方法,CoDeF [22],从视频本身的特性出发将视频拆解成 canonical content field 和 temporal deformation field 两个元素。只要通过图像编辑/生成模型对单帧图像进行编辑,生成新的 canonical content field, 再根据原视频的 temporal deformation field 就能生成被编辑后的视频。这一类方法的效果高度依赖解耦合思路的合理性以及模型的解耦合程度/能力。

下图为 DreamPose 的示意图:

4. 总结

视频编辑/生成的核心难点是如何保证帧间的连续性,在内容和结构上获得令人满意的视觉效果。这四种方法本质上均是试图解决帧间内容连续性的问题,只不过采用了四种不同的手段和技术路线。Large-Data-Driven 需要大量的优质视频数据进行训练,对存储空间和算力资源的需求很大。One-Shot/Few-Shot 方法对资源的消耗较小,但每次需对单个视频进行 finetune,较为耗时。Zero-Shot 方法对资源消耗小且速度快,但囿于技术手段本身的局限性,所能实现的效果存在着天然的瓶颈,且对精心设计的时域控制手段的要求也很高。解耦合方法从视频本身特性出发,将视频拆解成不同的要素,进行针对性的训练以及再组合,但效果的好坏取决于解耦合的设计与模型解耦合的能力。探索出保证视频帧间连续性的技术路线仍然是一个亟待解决的核心问题。

References

[1] InstructPix2Pix: Learning to Follow Image Editing Instructions.

[2] Prompt-to-prompt image editing with cross attention control.

[3] MasaCtrl: Tuning-Free Mutual Self-Attention Control for Consistent Image Synthesis and Editing.

[4] Dreambooth: Fine tuning text-to-image diffusion models for subject-driven generation.

[5] DreamArtist: Towards Controllable One-Shot Text-to-Image Generation via Contrastive Prompt-Tuning.

[6] Text2live: Text-driven layered image and video editing.

[7] Make-A-Video: Text-to-Video Generation without Text-Video Data.

[8] Follow Your Pose: Pose-Guided Text-to-Video Generation using Pose-Free Videos.

[9] Control-A-Video: Controllable Text-to-Video Generation with Diffusion Models.

[10] AnimateDiff: Animate Your Personalized Text-to-Image Diffusion Models without Specific Tuning.

[11] Align your Latents: High-Resolution Video Synthesis with Latent Diffusion Models.

[12] Tune-A-Video: One-Shot Tuning of Image Diffusion Models for Text-to-Video Generation.

[13] ControlVideo: Adding Conditional Control for One Shot Text-to-Video Editing.

[14] DisCo: Disentangled Control for Referring Human Dance Generation in Real World.

[15] Prompt-Free Diffusion: Taking "Text" out of Text-to-Image Diffusion Models.

[16] Fatezero: Fusing attentions for zero-shot text-based video editing.

[17] Zero-shot video editing using off-the-shelf image diffusion models.

[18] Video-p2p: Video editing with cross-attention control.

[19] ControlVideo: Training-free Controllable Text-to-Video Generation.

[20] Rerender A Video: Zero-Shot Text-Guided Video-to-Video Translation.

[21] DreamPose: Fashion Image-to-Video Synthesis via Stable Diffusion.

[22] CoDeF: Content Deformation Fields for Temporally Consistent Video Processing.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/170191.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vatee万腾科技决策力的未来展望:Vatee数字化创新新高度

在当今快速发展的科技时代,Vatee万腾以其卓越的科技决策力,不断开创数字化创新的新高度。 Vatee万腾一直被视为数字化创新的先锋。通过不断拓展科技边界,Vatee万腾致力于引领数字化创新的方向。其科技决策力在预测市场趋势、分析大数据、应用…

倾斜摄影三维模型的根节点合并的点云抽稀关键技术分析

倾斜摄影三维模型的根节点合并的点云抽稀关键技术分析 倾斜摄影三维模型的根节点合并是指将多个倾斜摄影拍摄得到的点云数据进行抽稀操作,以减少点云数据量和提高数据处理效率。在处理大规模的倾斜摄影点云数据时,点云抽稀是一个关键的技术,它…

11. EPIC定时器

11. EPIC定时器 EPIT定时器简介EPIT定时器结构分析EPIT 定时器相关寄存器EPITx_CREPITx_SREPITx_LR 加载寄存器EPITx_CMPR 比较寄存器EPITx_CNR 计数寄存器 EPIT 配置步骤 例程代码编写bsp_epittimer.hbsp_epittimer.cmain.c EPIT定时器简介 EPIT定时器是增强的周期中断定时器…

AIGC实战——自编码器(Autoencoder)

AIGC实战——自编码器 0. 前言1. 自编码器原理2. 数据集与模型分析2.1 Fashion-MNIST 数据集2.2 自编码器架构 3. 去噪自编码器3.1 编码器3.2 解码器3.3 连接编码器和解码器3.4 训练自编码器3.5 重建图像 4. 可视化潜空间5. 生成新图像小结系列链接 0. 前言 自编码器 (Autoenc…

使用 Redis 实现生成分布式全局唯一ID(使用SpringBoot环境实现)

目录 一、前言二、如何通过Redis设计一个分布式全局唯一ID生成工具2.1、使用 Redis 计数器实现2.2、使用 Redis Hash结构实现 三、通过代码实现分布式全局唯一ID工具3.1、编写获取工具3.2、测试获取工具 四、总结 一、前言 在很多项目中生成类似订单编号、用户编号等有唯一性数…

说说对Fiber架构的理解?解决了什么问题?

一、问题 JavaScript引擎和页面渲染引擎两个线程是互斥的,当其中一个线程执行时,另一个线程只能挂起等待 如果 JavaScript 线程长时间地占用了主线程,那么渲染层面的更新就不得不长时间地等待,界面长时间不更新,会导…

【linux进程控制(三)】进程程序替换--如何自己实现一个bash解释器?

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:Linux从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学更多操作系统知识   🔝🔝 进程程序替换 1. 前言2. exec…

maven 下载和安装

点击进入Maven下载网址 Maven – Download Apache Maven Maven详细下载列表 Index of /dist/maven/maven-3 本地仓库配置文件 配置环境变量 idea编辑器配置 maven Javajdk配置 字节码版本是否11

Hive3 on Spark3配置

1、软件环境 1.1 大数据组件环境 大数据组件版本Hive3.1.2Sparkspark-3.0.0-bin-hadoop3.2 1.2 操作系统环境 OS版本MacOSMonterey 12.1Linux - CentOS7.6 2、大数据组件搭建 2.1 Hive环境搭建 1)Hive on Spark说明 Hive引擎包括:默认 mr、spark、…

利用uni-app 开发的iOS app 发布到App Store全流程

1.0.3 20200927 更新官方对应用审核流程的状态。 注:最新审核后续将同步社区另一篇记录 AppStore 审核被拒原因记录及解决措施 :苹果开发上架常见问题 | appuploader使用教程 1.0.2 20200925 新增首次驳回拒绝邮件解决措施。 1.0.1 20200922 首次…

前端实现界面切换主题

✨ 目录 ▷ 样式切换主题▷ 变量设置主题 ▷ 样式切换主题 常用的主题切换实现方式之一,就是通过 link 标签的 rel 属性来实现的当 rel 标签的值是 alternate,就代表该样式是可以替换的title 属性要加就全加上或者全不加,因为 title 会导致系…

SM8081是一个高效率的1.5MHz同步步进降压DC/DC调节器,可提供高达1A的电压输出电流。

SM8081 高效率,1.5MHZ,1A 同步降压调节器 概述: SM8081是一个高效率的1.5MHz同步步进降压DC/DC调节器,可提供高达1A的电压输出电流。它可以在宽输入电压下工作范围从2.5V到5.5V,集成主开关以及具有非常低Rps&#x…