利用条件GANs的pix2pix进化版:高分辨率图像合成和语义操作 | PaperDaily #23

简介:

本文从三个方面对 pix2pix 方法做了改进,还将他们的方法扩展到交互式语义操作,这对于传统的图像逼真渲染是一个颠覆性的工作。

如果你对本文工作感兴趣,点击底部的阅读原文即可查看原论文。

关于作者:郑琪,华中科技大学硕士生,研究方向为计算机视觉和自然语言处理。

■ 论文 | High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs

■ 链接 | https://www.paperweekly.site/papers/1278

■ 作者 | Aidon

论文导读

现有的用于图像逼真渲染的图形学技术,在构建和编辑虚拟环境时往往非常复杂并且耗时,因为刻画真实的世界要考虑的方面太多。

如果我们可以从数据中学习出一个模型,将图形渲染的问题变成模型学习和推理的问题,那么当我们需要创造新的虚拟环境时,只需要在新的数据上训练我们的模型即可。

之前的一些利用语义标签合成图像的工作存在两个主要问题:1. 难以用 GANs 生成高分辨率图像(比如 pix2pix 方法);2. 相比于真实图像,生成的图像往往缺少一些细节和逼真的纹理。

本文从三个方面对 pix2pix 方法做了改进:一个 coarse-to-fine 生成器,一个 multi-scale 判别器和一个鲁棒的 loss,从而成功合成出 2048 x 1024 的逼真图像。此外,本文还将他们的方法扩展到交互式语义操作,这对于传统的图像逼真渲染是一个颠覆性的工作。

模型介绍

1. The pix2pix Baseline

给定语义标签图和对应的真实照片集 (si,xi),该模型中的生成器用于从语义标签图生成出真实图像,而判别器用于区分真实图像和生成的图像,该条件GANs对应的优化问题如下:

b0d544d5924625cb7870f431bcc67372f6d7934e

其中:

8c9ccac7e24070a2559a4fc926191bbb682db59b

pix2pix 采用 U-Net 作为生成器,在 Cityscapes 数据集上生成的图像分辨率最高只有 256 x 256。

2. Coarse-to-fine 生成器

这里一个基本的想法是将生成器拆分成两个子网络 G={G1,G2}:全局生成器网络 G1 和局部增强网络 G2,前者输入和输出的分辨率保持一致(如 1024 x 512),后者输出尺寸(2048 x 1024)是输入尺寸(1024 x 512)的 4 倍(长宽各两倍)。

以此类推,如果想要得到更高分辨率的图像,只需要增加更多的局部增强网络即可(如 G={G1,G2,G3}),具体的网络结构如图所示:

6ad4229b9330b31e8c340f31bae7da50fd26cdf9

其中 G1 由卷积前端 ?tp=webp&wxfrom=5&wx_lazy=1 ,一系列残差块 ?tp=webp&wxfrom=5&wx_lazy=1 和一个转置卷积后端 ?tp=webp&wxfrom=5&wx_lazy=1 组成, G2  也由卷积前端 ?tp=webp&wxfrom=5&wx_lazy=1 ,一系列残差块 ?tp=webp&wxfrom=5&wx_lazy=1 和一个转置卷积(有时也叫反卷积)后端 ?tp=webp&wxfrom=5&wx_lazy=1 组成。从图中可以看到, ?tp=webp&wxfrom=5&wx_lazy=1 的输入是由 ?tp=webp&wxfrom=5&wx_lazy=1 的输出和 ?tp=webp&wxfrom=5&wx_lazy=1 最后一层的 feature map 相加得到,这样就使得全局信息可以传递到 G2

3. Multi-scale 判别器

要在高分辨率下区分真实的与合成的图像,就要求判别器有很大的感受野,这需要更深的网络或者更大的卷积核才能实现,而这两种选择都会增加网络容量从而使网络更容易产生过拟合问题,并且训练所需的存储空间也会增大。

这里用 3 个判别器 {D1,D2,D3} 来处理不同尺度的图像,它们具有相同的网络结构:

dd5aef6877d38dd70bd1db1e5ae99c815e387f9c

4. 改进的 adversarial loss

由于生成器要产生不同尺度的图像,为使训练更加稳定,这里引入特征匹配损失:

8e4257a50e542b558c6d60ffef286d6ca2a912c8

其中?tp=webp&wxfrom=5&wx_lazy=1表示判别器 Dk 提取的第 i 层特征,T 为总的层数,Ni 为该层总元素的个数。于是,总的目标函数如下:

496e0cb32fc509ba3bcb13d0dcf7f0205dcfef27

5. 学习 instance-level 的特征嵌入

当前的图像合成方法都只利用了 pixel-level 的语义标签图,这样无法区分同类物体,而 instance-level 的语义标签为每一个单独的物体提供了唯一的标签。

文章指出,示例图(instance map)所提供的最重要的信息其实是物体的边缘。所以本文首先计算出示例边缘图(instance boundary map),如图所示:

8eb758b225daad272f76916bdf7699e342ccbdca

然后将语义标签图和示例边缘图连接起来,输入到生成器网络中。

考虑到一个理想的图像合成算法应该能够从同一个语义标签图产生出多种逼真的图像,而现有的方法无法让用户直观地控制产生什么样的图像,并且不允许 object-level 的控制,于是本文提出将额外的低维特征也输入到生成器网络中。

为此,需要训练一个编码器网络 E,用于确定与真实图像中每个目标示例的低维特征向量,以G(s,E(x)) 代替之前的 G(s),如图所示:

644f944899b9d9d8a142132ab77454397378e0ce

在编码器训练好之后,输入训练图像,找出图像中的所有示例,并记录对应的特征。然后利用 KK-means 聚类得到每一个语义类别的特征编码。推断时,随机选取一个聚类中心作为编码特征,与之前的标签图连接输入到生成器网络中。

实验结果

实验中设置 λ=10,K=10,用 3 维向量对示例特征进行编码,采样 LSGANs 用于稳定训练。实验比较了不同的图像合成算法,包括 pix2pix 和 CRN,还比较了加入感知损失(w/o VGG)的结果,其中 F(i) 表示 VGG 网络的第 i 层。

cfe703be8d2ef8caf41c4ffcf4e9918e40fff077

在 Cityscapes 数据集上的实验结果如下:

6df8213e9f9cd3699ede450341fde265a88a7f11

33127a7cef5fcc5e17286f6f988946bdb39e457c

9798e405bfa0b414f7695ae992d9aebc2869a24c

59bdd4891af5496e7dfe16c74207af0b32f88b5c

在 NYU Indoor RGBD 数据集上的实验结果如下:

394e7c5cfb23a90d6a4d8bfb98c2aaee5076a039

6ab73a4326fb2583f93ecab70d8c7d28805d43f1

更多关于的实验结果可以阅读原文或者访问 project 网页:

https://tcwang0509.github.io/pix2pixHD/

总结

本文提出了一个有通用性的基于条件 GANs 的网络框架,用于高分辨率图像合成和语义操作。相比于 pix2pix,本文在语义分割结果和图像合成的清晰度以及细节上都有了很大的提升。


原文发布时间为:2017-12-7

本文作者:郑琪

本文来自云栖社区合作伙伴“PaperWeekly”,了解相关信息可以关注“PaperWeekly”微信公众号

相关文章
|
9月前
|
机器学习/深度学习 自然语言处理 文字识别
【计算机视觉】CLIP:连接文本和图像(关于CLIP的一些补充说明)
我们推出了一个名为CLIP的神经网络,它可以有效地从自然语言监督中学习视觉概念。CLIP可以应用于任何视觉分类基准,只需提供要识别的视觉类别名称,类似于GPT-2和GPT-3的“零样本”功能。
|
机器学习/深度学习 传感器 人工智能
首篇!最全的全景分割综述(RGB图像/医学图像/LiDAR)(下)
本文对现有的全景分割方法进行了第一次全面的综述。因此,基于所采用的算法、应用场景和主要目标的性质,对现有全景技术进行了定义良好的分类。此外,还讨论了全景分割在通过伪标记标注新数据集中的应用。接下来,进行消融研究,以从不同角度了解全景方法。此外,还讨论了适用于全景分割的评估指标,并对现有解决方案的性能进行了比较,以了解最新技术并确定其局限性和优势。最后,阐述了当前主题技术面临的挑战以及近期吸引大量关注的未来趋势,这可以作为未来研究的起点。
首篇!最全的全景分割综述(RGB图像/医学图像/LiDAR)(下)
|
算法 计算机视觉 异构计算
目标检测的Tricks | 【Trick7】数据增强——Mosaic(马赛克)
目标检测的Tricks | 【Trick7】数据增强——Mosaic(马赛克)
1287 0
目标检测的Tricks | 【Trick7】数据增强——Mosaic(马赛克)
|
算法 数据可视化
Halcon边缘检测和线条检测(3),文章含BLOB检测常用方法和shape_trans内接和外接算子的说明
Halcon边缘检测和线条检测(3),文章含BLOB检测常用方法和shape_trans内接和外接算子的说明
1523 0
Halcon边缘检测和线条检测(3),文章含BLOB检测常用方法和shape_trans内接和外接算子的说明
|
1月前
|
编解码 算法 知识图谱
ICCV 2023 | DAT:利用双重聚合的Transformer进行图像超分
ICCV 2023 | DAT:利用双重聚合的Transformer进行图像超分
27 0
|
5月前
|
传感器 机器学习/深度学习 Ubuntu
【论文解读】F-PointNet 使用RGB图像和Depth点云深度 数据的3D目标检测
​F-PointNet 提出了直接处理点云数据的方案,但这种方式面临着挑战,比如:如何有效地在三维空间中定位目标的可能位置,即如何产生 3D 候选框,假如全局搜索将会耗费大量算力与时间。 F-PointNet是在进行点云处理之前,先使用图像信息得到一些先验搜索范围,这样既能提高效率,又能增加准确率。 论文地址:Frustum PointNets for 3D Object Detection from RGB-D Data  开源代码:https://github.com/charlesq34/frustum-pointnets
138 0
|
8月前
|
人工智能 文字识别 PyTorch
数学公式识别(Mathpix + pix2tex)
数学公式识别(Mathpix + pix2tex)
328 0
|
8月前
|
机器学习/深度学习 编解码 人工智能
基于FNC(全卷积神经网络)及PASCAL-VOC数据集做图像语义分割(附代码)
基于FNC(全卷积神经网络)及PASCAL-VOC数据集做图像语义分割(附代码)
|
11月前
|
自然语言处理 算法 测试技术
参数减半、与CLIP一样好,视觉Transformer从像素入手实现图像文本统一
参数减半、与CLIP一样好,视觉Transformer从像素入手实现图像文本统一
|
机器学习/深度学习
简介网络:GAN、CGAN和PIX2PIX
简介网络:GAN、CGAN和PIX2PIX
688 0
简介网络:GAN、CGAN和PIX2PIX