Multimodel Image synthesis and editing:The generative AI Era

1.introduction

基于GAN和扩散模型,通过融入多模态引导来调节生成过程,从不同的多模态信号中合成图像;是为多模态图像合成和编辑使用预训练模型,通过在GAN潜在空间中进行反演,应用引导函数,或调整扩散模型的潜在空间和嵌入。

2.modality foundations

每一种信息源或形式都可以成为模态。

2.1 Visual guidance

视觉引导将特定图像属性编码在像素空间中,提供控制。视觉引导编码在2d像素空间中表示为特定类型的图像,因此可以通过多种图像编码策略直接进行编码,由于编码后的特征在空间上与图像特征对齐,可以使用拼接,spade,cross-attention等方式,webui中的图生图,通过autoencoderKL产生init_latent,文本通常会通过cross-attention融合模型,但输入的图像不会。

2.2 Text guidance

clip通过大量的图像-文本对训练产生了信息丰富的文本嵌入,广泛用于文本编码。

2.3 Audio guidance

与文本和视觉指导不同,音频指导提供了可以用于生成动态或连续视觉内容的时间信息。输入音频片段可以由一系列特征表示,这些特征可以是频谱图,fBanks,Mel频率倒谱系数(MFCC)以及预训练的SoundNet模型的隐藏层输出。

2.4 Others modality guidance

3.Methods

多模态图像合成和编辑大致分为5类,1.基于GAN的方法,2.自回归,3.扩散模型,4.Nerf,5.其他。

3.1 GAN-based Methods

3.1.1 Conditional GANs

CGAN通过额外信息来条件化生成过程。将额外信息输入生成器和判别器网络作为额外的指导来实现,生成器学习生成样本,既能欺骗判别器,又能与指定的条件信息匹配。

条件融合:对于目标图像在空间上对准的视觉指导,条件可以直接编码为提供生成或编辑的准确空间指导的2d特征,存在不同视角或严重变形时,编码的2d特征很难捕捉到指导和真实图像之间复杂的场景结构关系,可以使用注意力模块来将指导与目标图像对齐,简单使用深度网络对视觉指导进行编码是次优的,因为在归一化层中部分指导信息会丢失,可以使用SPADE,spatially-adaptive de-normalization来有效注入指导特征。复杂的条件也可以映射到中间表示,以更准确的生成图像,音频片段可以映射到面部特征点或3DMM参数以进行说话人脸生成。

模型结构:

损失函数:gan损失,感知损失,cycle loss,对比损失

3.1.2 Inversion of Unconditional GAN

通过预训练的GAN模型,将给定图像逆向映射到GAN的潜在空间中,称之为GAN逆向。具体而言,预训练的GAN学习从潜在code到真实图像的映射,而GAN逆向则将图像映射回潜在code,通过将潜在code输入预训练GAN并通过优化来重建图像实现,重建度量基于l1,l2,感知损失或lpips,在优化过程中,可以包含面部身份或潜在code的特定约束,通过获得潜在code,可以重建原始图像并在潜在空间中进行逼真的图像操作。

显式跨模态对齐:

隐式跨模态监督:除了将引导模态显式投射到潜在空间中,另一种是通过定义生成结果与引导模态之间的一致性损失来引导合成或编辑。styleclip使用clip表示之间的余弦相似度来监督文本引导的操作。

3.2 Diffusion-based methods

3.2.1 Conditional Diffusion models

可以直接将条件信息集成到去噪过程中来指定条件扩散模型。

条件融合:使用特定条件编码器将多模态条件投影到嵌入向量中,进一步纳入到模型中。特定条件编码器可以随模型一起学习,也可以直接从预训练模型中借用,比如clip,在ldm中,通过cross-attention将条件嵌入映射到扩散模型的中间层。

潜空间扩散:用自编码器学习与图像空间在感知上等价的潜空间,VQ-VAE,dalle2:clip潜空间。

3.2.2 Pre-trained diffusion models

与重新训练扩散模型相反,另一条路是通过适当的简单来引导去噪过程,或者微调。

引导函数方法:导向函数计算xt和y之间的一致性,可以通过某种相似度指标余弦相似度或者l2距离来度量,可以使用clip作为图像编码器和文本导向的条件编码器。

微调:可以通过修改潜在编码或调整预训练扩散模型来实现,为了适应文本引导,先通过正向扩散将输入图像转换为潜在空间,然后通过反向微调扩散模型以生成由目标文本和clip损失驱动的图像,对于预训练的条件模型(通常是文本),类似于GAN反演,可以微调文本潜在嵌入或扩散模型以重构图像。另一种方法是利用逐步扩散采样,在去噪过程的早期阶段提供内容和结构保留的分数引导。

3.3 Autoregressive methods

通过将扁平化的图像序列视为离散标记,可以使用自回归模型,包括第一:向量量化阶段用于产生统一的离散表示并实现数据压缩,第二:自回归建模阶段,该阶段以栅格扫描的顺序建立离散标记之间的依赖关系。

3.3.1 Vector quantization

将所有图像像素直接视为序列进行自回归,消耗太大,因此图像的压缩离散很重要,VQVAE由编码器,特征量化器和解码器组成,图像被输入编码器来学习连续表示,然后通过特征量化器将其量化为最接近码本条目的特征,解码器从量化特征中重建原始图像。

损失函数:gan损失,感知损失,

codebook:普通的VQVAE使用argmin(以获取最近的码本条目)会导致严重的码本坍塌问题,只有少数码本条目被有效利用来量化,引入Gumbel-softmax来替代argmin,Gumbel-softmax允许通过直通梯度估计器以可微的方式对离散表示进行采样,增加码本利用率。

3.3.2 Autoregressive modeling

自回归用于适应序列依赖性,符合概率的链式法则,序列中每个标记的概率都是在先前的所有预测的条件下进行的,得到的序列的联合分布是条件概率的乘积,在推理过程中,每个标记按照顺序进行自回归预测。可以使用滑动窗口策略在利用局部窗口中的预测结果。在多模态图像生成任务中,自回归模型基于一个条件概率分布逐像素生成图像,这个概率分布考虑了先前生成的像素和给定的条件信息,从而使模型能够捕捉到复杂的依赖关系,生成视觉上连贯的图像。

网络结构:PixelCNN、Parti

双向上下文:只关注先前生成结果,这种单向策略,会受到顺序偏差的影响,在自回归接近完成之前忽略了大量的上下文信息,并且忽视了不同尺度上的大量上下文信息,ImageBart。还有双向transformer,伴随着遮蔽视觉标记建模MVTM或遮蔽语言建模MLM机制。

自注意力机制:NUMA

3.4 NeRF-based methods

神经辐射场通过用神经场参数化三维场景的颜色和密度,NeRF中采用了全连接的神经网络,以空间位置(x,y,z)和相应的观察方向(θ,φ)作为输入,以及相应的体积密度和发射辐亮度作为输出。为了从隐式的三维表示中渲染出二维图像,通过数值积分器执行可微体积渲染以逼近难以计算的体积投影积分。

3.4.1 Per-scene NeRF

与原始的NeRF模型一致,每个场景的NeRF旨在通过图像或特定的预训练模型来优化和表示单个场景。

图像监督:通过配对的指导信息和相应的视图图像,可以使用NeRF有条件的训练。AD-NeRF.

预训练模型监督:AvatarCIP,DreamFusion,Magic3D,Ref-NeRF

3.4.2 Generative NeRF

与逐场景优化的NeRF不同,生成式NeRF通过将NeRF与生成模型集成,能够推广到不同场景。

3.5 Other methods

3.6 Comparsion and discussion

GAN在FID和Inception分数上实现高保真度的图像生成,推理速度快,但GAN训练不稳定,容易出现模式崩溃问题,与基于似然的扩散模型和自回归模型相比,GAN更关注保真度而不是捕捉训练数据分布的多样性。此外,GAN通常采用卷积网络,难以推广到多模态,transformer的使用,自回归模型可以以通义的方式处理不同的多模态合成任务,然而,由于自回归模型需要预测标记,因此推理速度较慢,扩散也是推理速度慢。自回归模型和扩散模型是基于似然的生成模型,具有稳定的训练目标和良好的训练稳定性,Dalle2中表示扩散要稍优于自回归模型。

与以上主要针对2D图像并对训练数据要求较少的生成方法不同,基于NeRF的方法处理3D场景,并且对训练数据有较高的要求,基于场景优化的NeRF需要有标准的多视图图像或视频序列。

4.Experimental evaluation

4.1 Datasets

4.2 Evaluation Metrics

Inception Score、FID评估图像质量,LPIPS评估图像多样性。

4.3 Experimental Results

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

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

相关文章

VS2022+CMAKE+OPENCV+QT+PCL安装及环境搭建

VS2022安装: Visual Studio 2022安装教程(千字图文详解),手把手带你安装运行VS2022以及背景图设置_vs安装教程_我不是大叔丶的博客-CSDN博客 CMAKE配置: win11下配置vscodecmake_心儿痒痒的博客-CSDN博客 OPENCV配…

使用Apache Doris自动同步整个 MySQL/Oracle 数据库进行数据分析

Flink-Doris-Connector 1.4.0 允许用户一步将包含数千个表的整个数据库(MySQL或Oracle )摄取到Apache Doris(一种实时分析数据库)中。 通过内置的Flink CDC,连接器可以直接将上游源的表模式和数据同步到Apache Doris&…

如何用SSH克隆GitHub项目

诸神缄默不语-个人CSDN博文目录 使用场景:由于不可知的网络问题,无法用HTTPS克隆GitHub项目。 报错fatal: unable to access https://github.com/PolarisRisingWar/llm-throught-ages.git/: GnuTLS recv error (-110): The TLS connection was non-pro…

Scrum认证高级Scrum Master (A-CSM) 认证培训课程

课程简介 高级ScrumMaster (Advanced Certified ScrumMaster, A-CSM) 认证课程是国际Scrum联盟推出的进阶级Scrum认证课程,是Scrum Master通往专业级敏捷教练必经的学习路径。 在ScrumMaster(CSM)认证课程中,您学习到了Scrum的价…

Navicat 携手华为云 GaussDB,联合打造便捷高效的数据库开发和建模工具方案

近日, Navicat Premium 顺利完成与华为云 GaussDB的兼容性测试认证,并获得华为云授予的技术认证书。 ​ 合作 Navicat 作为华为云 GaussDB 生态工具合作伙伴以及 Gocloud 合作伙伴,此次合作旨在通过Navicat 多年来在数据库开发管理工具上的积…

C++(Liunx) 使用cut截 取出Ubuntu用户的家目录,要求:不能使用“:“作为分割.

使用cut截 取出Ubuntu用户的家目录,要求:不能使用":"作为分割

Apache Doris 2.0 如何实现导入性能提升 2-8 倍

数据导入吞吐是 OLAP 系统性能的重要衡量标准之一,高效的数据导入能力能够加速数据实时处理和分析的效率。随着 Apache Doris 用户规模的不断扩大, 越来越多用户对数据导入提出更高的要求,这也为 Apache Doris 的数据导入能力带来了更大的挑战…

关闭vscode检查更新

要关闭 Visual Studio Code 的自动检查更新功能,请按照以下步骤进行操作: 打开 Visual Studio Code。点击左侧的扩展图标(四个方块组成的图标)。在扩展面板中,点击右上角的齿轮图标,选择 “扩展设置”。在…

《C++设计模式》——创建型

前言 创建型为了创建东西才是有用的,创建型设计模式使用的场景: 1、创建一个东西; 2、可重复利用; 3、灵活性高,代码可因地制宜。 Factory Method(工厂模式) 简单工厂模式 主要用于创建对象。新添加类时&#xff0…

二叉树的递归遍历和非递归遍历

目录 一.二叉树的递归遍历 1.先序遍历二叉树 2.中序遍历二叉树 3.后序遍历二叉树 二.非递归遍历(栈) 1.先序遍历 2.中序遍历 3.后序遍历 一.二叉树的递归遍历 定义二叉树 #其中TElemType可以是int或者是char,根据要求自定 typedef struct BiNode{TElemType data;stru…

Linux系统之mkdir与rmdir命令的基本使用

Linux系统之mkdir与rmdir命令的基本使用 一、mkdir命令介绍1.1 mkdir命令简介1.2 mkdir命令的由来 二、mkdir命令的使用帮助2.1 mkdir命令的help帮助信息2.2 mkdir命令的选项解释 三、mkdir命令的基本使用3.1 查看mkdir的版本3.2 创建一个新目录3.3 创建目录时设置目录权限3.4 …

使用git把本地项目关联远程代码仓库,并推送到远程仓库

你在本地新建了一个项目,写好了代码,但是没有关联远程仓库,怎么关联并上传呢? 你要先去gitee创建一个代码仓库,然后复制http地址。 首次提交项目代码到一个新建的远程仓库: 方式一(推荐): 1…