#论文笔记# [pix2pixHD] High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs
摘要:
我们提出了一个新方法,使用CGANs从语义标签图生成高分辨率的逼真图像。CGANs已经被应用在多种场景,但是其结果总是局限在低分辨率,还不够真实。在这个工作中,我们通过一个新的对抗损失,新的多尺度生成器和判别器架构,来生成2048x1024的吸引人的结果。此外,我们还通过两个附加特性将框架扩展到交互式可视化操作。首先,我们合并了物体的实例分割信息,它支持对物体的操作,例如删除/添加对象和更改对象类别。此外,我们提出了一种方法,在相同的输入条件下生成不同的结果,支持用户交互式地更改物体外观。人类的意见研究表明,我们的方法明显优于现有的方法,提高了深度图像合成和编辑的质量和分辨率。
介绍
实现以下功能:
主功能:通过一个新的对抗损失和多尺度生成器、判别器来生成高清图像,同时perceptual loss可进一步略微提高合成效果。
交互式拓展1:使用实例级物体分割信息,可进一步提高图像质量,实现对物体的灵活修改(物体增删,换类别)。
交互式拓展2:提取实例级特征,实现一对多的图像生成,支持物体的特征编辑。
方法
1. 主功能
主功能是一个coarse to fine的过程。分为三个部分:coarse-to-fine generator, multi-scale discriminators, improved adversarial loss。
coarse-to-fine generator
生成器由两个子网络G1和G2组成,其中G1是全局生成器,G2是局部增强生成器。
G1的架构是基于[22]的,有三部分:a convolutional front-end G1(F) , a set of residual blocks G1(R) [18], and a transposed convolutional back-end G1(B)。输入输出的分辨率均为1024*512。
G2的结构与G1相同,三部分G2(F), G2(R), G2(B)。不同于G1的是,G2的输入标签图和输出图像分辨率为2048*1024。另一个不同点是,G2(R)的输入是G2(F)和G1(B)的输出(最后一层)的feature map的element-wise sum。
训练过程中,先训练G1,后训练G2,再一起fine-tune。
- multi-scale discriminators
使用多尺度判别器做高分辨率判别器,即3个相同网络架构但处理图像尺寸不同的判别器。处理图像的尺寸分别是2048*1024,1024*512,512*256。训练时分别用三种尺度的真假图像训练判别器。
其中,处理coarsest尺度的判别器有最大的感受野,更全局的视野,能使生成器生成全局一致(连续)的图像。处理finest尺度的判别器能使得生成器产生更精细的细节。 improved adversarial loss
添加一个基于判别器的feature matching loss,稳定训练。即从判别器的中间层提取特征,学习匹配真实图像和生成图像的这些中间表示。(具体含义还得看代码参透)
这个feature matching loss 和perceptual loss相关。实验中讨论了两个loss一起提高性能的效果。
加入了feature matching loss的目标函数如下:
2. 交互式扩展1
原理:提出实例图中最重要的信息是物体边界,因此计算实例边界图(instance boundary map)。
计算方法:一个像素点与周围四个像素标签全部相同则赋值0,否则赋值1。即边界处为1,物体内部为0。
具体实现:实例边界图和语义标签图(原输入)的one-hot vector表示串联,输入生成器。同样,判别器的输入是实例边界图、语义标签图和真假图像这三者的通道级串联。
效果:加入实例边界图的模型能生成更真实的物体边界。
3. 交互式扩展2
原理:提出添加低维特征通道作为生成器的输入,从而可以通过修改这些特征来对生成图像进行灵活控制。
计算方法:训练一个编码器网络E,来寻找对应于图像中每个实例的目标的低维特征向量。编码器架构是标准的encoder-decoder网络。在encoder的输出层加上实例级的平均池化层来计算实例的平均特征,然后平均特征传播给该实例的所有像素点。
具体实现:训练中,编码器和生成器判别器一起训练。一旦编码器训练好,就在训练集中所有实例上运行编码器来记录得到的特征。然后对每个语义类别的所有特征执行k-means聚类算法,从而每个聚类都编码了一个特定风格的特征。在推断阶段,随机选取一个聚类中心作为特征,这个特征将和标签图一起输入到生成器中。
实现
实现细节:lambda = 10,K = 10(k-means),
Baselines:pix2pix,CRN
评价准则:语义分割scores,MTurK
论文中方法较多,n个问题有待解答。看代码后再补充。
#论文笔记# [pix2pixHD] High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs的更多相关文章
- 论文笔记:Towards Diverse and Natural Image Descriptions via a Conditional GAN
论文笔记:Towards Diverse and Natural Image Descriptions via a Conditional GAN ICCV 2017 Paper: http://op ...
- [论文笔记][半监督语义分割]Universal Semi-Supervised Semantic Segmentation
论文原文原文地址 Motivations 传统的训练方式需要针对不同 domain 的数据分别设计模型,十分繁琐(deploy costs) 语义分割数据集标注十分昂贵,费时费力 Contributi ...
- 论文笔记:Concept Mask: Large-Scale Segmentation from Semantic Concepts
Concept Mask: Large-Scale Segmentation from Semantic Concepts 2018-08-21 11:16:07 Paper:https://arxi ...
- Video Frame Synthesis using Deep Voxel Flow 论文笔记
Video Frame Synthesis using Deep Voxel Flow 论文笔记 arXiv 摘要:本文解决了模拟新的视频帧的问题,要么是现有视频帧之间的插值,要么是紧跟着他们的探索. ...
- Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现(转)
Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文, ...
- 论文笔记之:Visual Tracking with Fully Convolutional Networks
论文笔记之:Visual Tracking with Fully Convolutional Networks ICCV 2015 CUHK 本文利用 FCN 来做跟踪问题,但开篇就提到并非将其看做 ...
- Deep Learning论文笔记之(八)Deep Learning最新综述
Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...
- Twitter 新一代流处理利器——Heron 论文笔记之Heron架构
Twitter 新一代流处理利器--Heron 论文笔记之Heron架构 标签(空格分隔): Streaming-process realtime-process Heron Architecture ...
- Deep Learning论文笔记之(六)Multi-Stage多级架构分析
Deep Learning论文笔记之(六)Multi-Stage多级架构分析 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些 ...
随机推荐
- 卷积神经网络之ResNet网络模型学习
Deep Residual Learning for Image Recognition 微软亚洲研究院的何凯明等人 论文地址 https://arxiv.org/pdf/1512.03385v1.p ...
- php文件上传总结
前言: 学习php中 1.表单代码: <html> <head> <title>文件上传</title> </head> <body ...
- pandas层级索引1
层级索引(hierarchical indexing) 下面创建一个Series, 在输入索引Index时,输入了由两个子list组成的list,第一个子list是外层索引,第二个list是内层索引. ...
- 第一次调用Web service响应速度慢的解决办法
Env: Client: WinForm(Net Framework 2.0) Server:Web Service(Net Framework 4.0) Problem: Client use pr ...
- Mongo实战之数据空洞的最佳实践
问题背景: 某天,开发部的同事跑过来反映: mongodb数据文件太大,快把磁盘撑爆了!其中某个db占用最大(运营环境这个db的数据量其实很小) 分析: 开发环境有大量测试的增/删/改操作,而由于Mo ...
- Usage of API documented as @since 1.8+”报错的解决办法
参考资料 1.https://blog.csdn.net/a499477783/article/details/78967586/
- Solr查询过程源码分析
原文出自:http://blog.csdn.net/flyingpig4/article/details/6305488 <pre name="code" class=&qu ...
- CentOS7 启动docker.service失败(code=exited, status=1/FAILURE)
启动报错 Job for docker.service failed because the control process exited with error code. See "sys ...
- WebFlux02 SpringBoot WebFlux项目骨架搭建
1 环境搭建 1.1 版本说明 jdk -> 1.8 maven -3.5 springboot -> 2.0.3 开发工具 -> IDEA 1.2 创建项目 利用 IDEA 或者 ...
- Win10 pip安装pycocotools报错解决方法(cl: 命令行 error D8021 :无效的数值参数“/Wno-cpp”)
参考: https://blog.csdn.net/chixia1785/article/details/80040172 https://blog.csdn.net/gxiaoyaya/articl ...