使用EditGAN进行高精度语义图像编辑
使用EditGAN进行图像编辑
生成对抗网络(GAN)在图像编辑行业中得到了新的应用。在过去的几个月里,EditGAN在人工智能/机器学习行业中越来越受欢迎,因为它是一种用于高精度和高质量语义图像编辑的新方法。
我们将详细介绍EditGAN模型,并让您了解为什么它可能成为语义图像编辑行业的里程碑。
那么让我们开始吧。但在了解EditGAN是什么之前,我们需要了解EditGAN的重要性,以及它为什么是一大步。
为什么选择EditGAN?
尽管传统的GAN架构在推动基于AI的图像编辑行业方面取得了显著进展,但是从头构建一个GAN架构存在一些主要挑战。
- 这篇人工智能论文介绍了使用深度学习模型进行雄激素不敏感综合征(AIS)测试的研究
- 按照您的方式配置Nemo-Guardrails:大型语言模型的替代方法
- 语言模型与伙伴们:大猩猩、拥抱GPT、任务矩阵等等
- 在训练阶段,GAN架构需要大量带有语义分割注释的标记数据。
- 它们只能提供高级别的控制。
- 而且通常只是在图像之间进行插值。
可以观察到,尽管传统的GAN架构可以完成工作,但对于大规模部署来说并不有效。传统GAN架构的效率低下是EditGAN在2022年由NVIDIA引入的原因。
EditGAN被提出作为一种高精度和高质量的语义图像编辑的有效方法,它允许用户通过修改图像的高度详细的分割掩模来编辑图像。 EditGAN成为图像编辑任务的可扩展方法之一的原因之一是它的架构。
EditGAN模型是建立在GAN框架上的,它共同建模图像和它们的语义分割,并且只需要少量带标签或注释的训练数据。 EditGAN的开发人员尝试将图像嵌入到GAN的潜在空间中,通过根据分割编辑执行条件潜在代码优化来有效修改图像。此外,为了分摊优化,该模型试图在潜在空间中找到实现编辑的“编辑向量”。
EditGAN框架的架构允许模型学习任意数量的编辑向量,然后可以在其他图像上以高速和高效地实施或应用它们。此外,实验结果表明,EditGAN可以以前所未见的细节级别编辑图像,同时最大限度地保持图像质量。
总结为什么我们需要EditGAN,它是第一个基于GAN的图像编辑框架,它提供:
- 非常高精度的编辑。
- 可以使用少量带标签的数据进行工作。
- 可以在实时场景中有效部署。
- 允许同时进行多个编辑的组合性。
- 适用于GAN生成的图像、真实嵌入的图像,甚至是域外图像。
使用EditGAN进行高精度语义图像编辑
StyleGAN2是用于图像合成的最先进的GAN框架,是EditGAN的主要图像生成组件。 StyleGAN2框架将从多元正态分布池中绘制的潜在代码映射为逼真的图像。
StyleGAN2是一个深度生成模型,经过训练,能够合成最高质量的图像,并获得图像的语义理解。
分割训练和推理
EditGAN模型使用优化和编码器将图像嵌入到GAN的潜在空间中,并对新图像进行分割和训练分割分支。 EditGAN框架继续建立在先前的工作基础上,并训练编码器将图像嵌入到潜在空间中。这里的主要目标是使用GAN样本和真实训练数据对编码器进行训练,其中包括标准的像素级L2和LPIPS构造损失。此外,该模型在处理GAN样本时还明确地使用潜在代码对编码器进行规范化。
结果是,模型将带有语义分割注释的数据集中的标记图像嵌入到潜在空间中,并使用交叉熵损失来训练生成器的分割分支。
使用分割编辑在潜在空间中找到语义
EditGAN的主要目的是利用语义分割和图像的联合分布,实现高精度图像编辑。假设我们有一张需要编辑的图像x,模型将图像嵌入到EditGAN的潜在空间中,或使用模型本身的样本图像。分割分支然后生成y,即相应的分割,主要是因为RGB图像和分割共享相同的潜在编码w。开发人员可以使用任何标注或数字绘画工具手动修改分割并根据需求进行编辑。
推理期间的不同编辑方式
使用优化获得的潜在空间编辑向量可以被描述为语义上有意义的,并且通常与不同的属性分离。因此,要编辑新图像,模型可以直接将图像嵌入到潜在空间中,并直接执行模型先前学习到的相同编辑操作,而无需从头开始进行优化。可以说,模型学习到的编辑向量摊销了最初编辑图像所必需的优化。
<p 值得注意的是,开发人员仍然没有完善分离,当用于其他图像时,编辑向量通常无法返回最佳结果。然而,通过在测试时间执行一些额外的优化步骤,可以克服这个问题。
根据我们目前的学习,EditGAN框架可以用于三种不同的图像编辑模式。
- 使用编辑向量进行实时编辑
对于定位和分离的图像,模型通过应用先前学习到的不同尺度的编辑向量对图像进行编辑,并以交互速率操纵图像。
- 使用自监督细化进行基于向量的编辑
对于定位的图像进行编辑,这些图像与图像的其他部分并不完全分离,模型使用先前学习到的编辑向量初始化图像的编辑,并通过在测试时间执行一些额外的优化步骤来去除编辑伪影。
- 基于优化的编辑
为了进行大规模和图像特定的编辑,模型从头开始进行优化,因为编辑向量无法用于将这些类型的转换应用于其他图像。
实施
对EditGAN框架进行了评估的图像分布在四个不同的类别上:汽车、鸟类、猫和人脸。模型的分割分支通过使用16、30、30、16作为标记的训练数据的图像-掩码对进行训练,分别对应汽车、鸟类、猫和人脸。当纯粹使用优化进行图像编辑,或者模型尝试学习编辑向量时,模型使用Adam优化器执行100次优化步骤。
对于猫、汽车和人脸数据集,模型使用DatasetGAN的测试集中未用于训练GAN框架的真实图像来执行编辑功能。这些图像通过优化和编码直接嵌入到EditGAN的潜在空间中。对于鸟类类别,编辑显示在GAN生成的图像上。
结果
定性结果
领域内结果
上面的图像演示了EditGAN框架在将先前学习到的编辑向量应用于新图像并通过30次优化步骤对图像进行细化时的性能。EditGAN框架执行的这些编辑操作对所有类别都进行了分离,并且保留了图像的整体质量。将EditGAN框架的结果与其他框架进行比较,可以观察到EditGAN框架在执行高精度和复杂编辑的同时保留主题身份和图像质量方面优于其他方法。
令人惊讶的是,EditGAN框架可以执行极高精度的编辑,如扩大瞳孔或编辑车轮轮毂。此外,EditGAN还可以用于编辑仅有少数像素的对象的语义部分,或者也可以用于对图像进行大规模修改。值得注意的是,EditGAN框架的几个编辑操作能够生成与GAN训练数据中的图像不同的操纵图像。
域外结果
为了评估EditGAN在域外的性能,该框架在MetFaces数据集上进行了测试。EditGAN模型使用域内真实人脸来创建编辑向量。然后,模型通过100步的优化过程嵌入域外的MetFaces肖像,并通过30步的自监督细化过程应用编辑向量。结果可以在下面的图像中看到。
定量结果
为了定量衡量EditGAN的图像编辑能力,该模型使用了由MaskGAN首次引入的微笑编辑基准。其中,将含有中性表情的脸替换为微笑脸,并通过三个参数来衡量性能。
- 语义正确性
模型使用预训练的微笑属性分类器来衡量编辑后图像中的脸是否展示微笑表情。
- 分布级图像质量
计算CelebA测试数据集与400个编辑后测试图像之间的核入侵距离(KID)和Frechet入侵距离(FID)。
- 身份保留
使用预训练的ArcFace特征提取网络来衡量模型在编辑图像时保留主体身份的能力。
上表比较了EditGAN框架与其他基准模型在微笑编辑基准上的性能。EditGAN框架提供如此高的结果的方法与三个不同的基准进行了比较:
- MaskGAN
MaskGAN使用非微笑图像及其分割掩码以及目标微笑分割掩码作为输入。值得注意的是,与EditGAN相比,MaskGAN框架需要大量的注释数据。
- 局部编辑
EditGAN还将自己的性能与局部编辑进行比较,局部编辑是一种使用GAN特征进行聚类实现局部编辑的方法,它依赖于参考图像。
- InterFaceGAN
与EditGAN类似,InterFaceGAN也尝试在模型的潜在空间中找到编辑向量。然而,与EditGAN不同,InterFaceGAN模型使用大量的注释数据和辅助属性分类器,并且没有精细的编辑精度。
- StyleGAN2Distillation
该方法创建了一种不一定需要真实图像嵌入的替代方法,而是使用编辑向量模型来创建训练数据集。
限制
因为EditGAN基于GAN框架,所以它具有与其他GAN模型相同的限制:它只能处理可以由GAN建模的图像。EditGAN只能处理GAN建模图像的限制是它在不同场景中难以实施的主要原因。然而,值得注意的是,EditGAN的高精度编辑可以通过利用编辑向量轻松地转移到其他不同的图像中。
结论
GAN在图像编辑领域不成为行业标准的主要原因之一是其有限的实用性。GAN框架通常需要大量的注释训练数据,并且通常不能返回高效和准确的结果。
EditGAN旨在解决传统GAN框架存在的问题,并试图成为高质量、高精度语义图像编辑的有效方法。到目前为止的结果表明,EditGAN确实提供了它所声称的功能,并且已经比一些当前行业标准的实践和模型表现更好。