当前位置: 首页 > 科技观察

图像以各种方式变化,Nvidia使用GAN实现高精度细节P图

时间:2023-03-15 01:35:58 科技观察

在实现复杂、高精度的图像编辑效果的同时,EditGAN还能保持高图像质量和物体身份。英伟达真的是在图像处理领域。很棒的一张照片。”如今,基于人工智能的照片和图像编辑技术正在帮助简化摄影师和内容创作者的工作流程,并实现更高水平的创造力和数字艺术。基于人工智能的图像编辑工具也已经在消费者软件中可用神经照片编辑滤镜的形式,深度学习研究界正在积极开发新技术。其中,基于生成对抗网络(GAN)的各种模型和技术层出不穷。在实现原理方面,研究人员在该领域要么将图像嵌入到GAN的潜在空间中,要么直接使用GAN生成图像。大多数基于GAN的图像编辑方法分为以下几类。一些工作依赖于GANs在类标签或像素级语义分割注释上起作用,不同的条件会引起输出结果的变化;其他作品使用辅助属性分类器来指导图像合成和编辑。然而,训练此类条件GAN或外部分类器需要大规模标记数据集。因此,这些方法目前仅适用于具有大规模注释数据集的图像类型,例如肖像等。即使具有足够注释的数据集,大多数方法也仅提供有限的编辑控制,因为这些注释通常仅包含高级全局属性或粗像素级分割。其他方法侧重于混合和插值来自不同图像的特征,因此需要参考图像作为编辑目标,并且通常不能提供微调控制。还有一些方法可以仔细剖析GAN的潜在空间,以找到适合编辑或控制GAN网络参数的解耦潜在变量。不幸的是,这些方法不允许细粒度的编辑并且通常很慢。最近,英伟达、多伦多大学等机构在论文《EditGAN: High-Precision Semantic Image Editing》中克服了这些局限,提出了一种新的基于GAN的图像编辑框架EditGAN——通过允许用户修改对象部分(objectpart)的分割来实现高-精确语义图像编辑。相关研究已被NeurIPS2021会议接受,代码和交互式编辑工具将在后期开源。论文地址:https://arxiv.org/pdf/2111.03186.pdf项目主页:https://nv-tlabs.github.io/editGAN/具体来说,EditGAN是建立在最近提出的GAN模型的基础上,不是仅基于相同的latentlatentencoding对图像及其语义分割进行联合建模,只需要16个带标签的例子,可以扩展到很多对象类和部分标签。我们根据预期的编辑结果修改分割掩码并优化潜在代码以与新的分割一致,从而可以有效地改变RGB图像。此外,为了提高效率,他们通过在潜在空间中学习编辑向量并将其直接应用于其他图像来实现编辑,而无需或仅需几个额外的优化步骤。因此,研究人员预先训练了一个感兴趣的编辑库,以便用户可以直接在交互式工具中使用它们。据研究人员介绍,EditGAN是第一个同时实现以下目标的GAN驱动的图像编辑框架:提供非常高精度的编辑;只需要少量带标签的训练数据,不依赖额外的分类器;实时交互运行;多重编辑的直接语义合成;在真实的嵌入式、GAN生成甚至域外图像上运行。研究人员将EditGAN应用于范围广泛的图像,包括汽车、猫、鸟和人脸,都表现出前所未有的高精度编辑。他们还将EditGAN与几种基线方法进行定量比较,并在身份和质量保持、目标属性准确性等指标上优于它们,同时需要更少数量级的标记训练数据。在项目主页上,研究人员展示了多个EditGAN相关的Demo视频。下面动图(左)展示了编辑向量插值的效果,图片(右)展示了在域外图像上应用EditGAN编辑向量的效果。下图(左)为交互式演示工具中使用EditGAN的效果,下图(右)为使用EditGAN时可实现多次编辑和预定义编辑向量。如何使用EditGAN完成高精度语义图像编辑?下图2(1)是训练EditGAN的过程;图2(2&3)是编辑分割掩码和使用编辑向量进行实时编辑,其中用户可以修改分割掩码,在GAN的隐藏空间中进行优化,以实现编辑;图2(4)学习到潜在空间中的编辑向量,用户通过应用过去学习的编辑向量进行编辑,可以交互操作图像。通过分割编辑在潜在空间中寻找语义EditGAN的核心思想是利用图像的联合分布p(x,y)和语义分割来实现高精度图像编辑。给定一个要编辑的新图像x,我们可以将其嵌入到EditGAN的W^+潜在空间中。分割部分将生成相应的分割y,因为分割和RGB图像共享相同的潜在代码w^+。可以使用简单的交互式数字绘画或标记工具手动修改片段以进行所需的编辑。我们将编辑后的分割掩码表示为y_edited。例如,当修改右侧汽车照片中的车轮时,Q_edit将包括轮胎、辐条和轮辋等所有与车轮相关的部分的标签:推理过程中的不同编辑方法一般来说,我们可以使用以下三种不同的模式使用EditGAN进行图像编辑:使用编辑向量进行实时编辑。对于局部解耦良好的编辑,可以简单地通过应用先前学习的具有不同比例的编辑向量并以交互速率操纵图像来进行编辑;具有自我监督改进的矢量编辑。对于未与图像的其余部分完全分离的局部编辑,可以在测试期间通过额外的优化来移除编辑伪影,同时使用学习的向量初始化编辑;基于优化的编辑。无法通过编辑矢量将特定图像和大规模编辑转移到其他图像。对于此类操作,可以从头开始进行优化。实验结果在实验部分,研究人员在四种不同类别的图像上广泛评估了EditGAN:汽车(空间分辨率384×512)鸟类(512×512)猫(256×256)人脸(1024×1024),其中,人脸示例的标注细节如下图7所示:当仅基于优化或通过学习编辑向量进行编辑时,研究人员通常使用Adam进行100步的优化。对于汽车、猫和人脸,他们使用来自DatasetGAN测试集的真实图像,以及来自这些非GAN训练数据的图像来验证编辑功能;对于鸟类,他们演示了对GAN生成的图像的编辑功能。定性结果首先看域内结果。在下面的图4中,研究人员展示了EditGAN框架在将先前学习的编辑向量应用于新图像并执行30个优化细化步骤时的图像编辑效果。结果表明,使用EditGAN的编辑操作保持了较高的图像质量,并对所有类别的图像实现了良好的解耦。据研究人员称,以前没有任何一种方法能够像EditGAN那样进行复杂和高精度的编辑,同时保持高图像质量和对象身份。如下图8所示,使用EditGAN,研究人员甚至可以实现极高精度的编辑,例如旋转汽车的辐条(左)或扩大人的瞳孔(右)。EditGAN可以编辑那些小像素对象的语义部分,同时可以进行大规模修改。在下面的图9中,研究人员表明,只需修改分割掩码和优化,就可以移除汽车的车顶或将其改装成旅行车。值得注意的是,一些编辑操作生成的图像与GAN训练数据中出现的图像不同。接下来是域外结果。研究人员展示了EditGAN对MetFaces数据集上域外数据的泛化能力。他们使用在FFHQ上训练的EditGAN模型,并使用域内真实面部数据来创建编辑向量。然后嵌入域外的MetFaces肖像(优化100步),并应用编辑后的矢量,优化30步。结果显示在下面的图6中,其中研究的编辑操作无缝地转移到遥远的域外图像示例。定量结果为了展示EditGAN图像编辑能力的定量评估结果,研究人员使用了MaskGAN引入的微笑编辑基准。具有中性表情的面孔被转换为笑脸,并使用三个指标衡量性能:语义正确性分布级图像质量身份保持研究人员将EditGAN与三种强大的基准方法MaskGAN2、LocalEditing和InterFaceGAN进行了比较,最后与StyleGAN2蒸馏进行了比较。结果如下表2所示,EditGAN在所有三个指标上都优于其他方法。此外,EditGAN在身份保持和属性分类准确性方面优于InterFaceGAN。与StyleGAN2蒸馏相比,EditGAN也显示出强大的性能。在下面的图11中,我们展示了与InterFaceGAN比较的更多细节,其中应用了具有从0到2的不同比例系数的笑脸编辑向量。当编辑后的矢量尺度较小时,身份得分高但微笑属性得分低,这是由于对原始图像的修改最小化造成的。他们发现使用编辑向量的实时编辑与InterFaceGAN相当。最后,让我们谈谈运行时间。研究人员仔细记录了EditGAN在NVIDIATeslaV100GPU上的运行时间。给定一个编辑过的分割掩码,条件优化需要11.4(18.9)秒来完成30(60)个优化步骤。此操作为他们提供了编辑向量。此外,编辑矢量的应用几乎是瞬时的,仅需0.4秒,从而实现复杂的实时交互式编辑。通过10(30)个自监督改进步骤将额外花费4.2(9.5)秒。