应用:图像到图像的翻译是GAN的一个重要方向,基于一个输入图像得到输出图像的过程,图像和图像的映射,如标签到图像的生成,图像边缘到图像的生成过程。

图像处理、图形和视觉中的许多问题涉及到将输入图像转换为相应的输出图像。这些问题通常使用算法来处理,尽管设置总是相同的:将像素映射到像素。条件对抗性网是一种通用的解决方案,它似乎能很好地解决各种各样的此类问题。这里我们展示了几种方法的结果。在每种情况下,我们使用相同的架构和目标,只是针对不同的数据进行训练。

  使用条件GAN(CGAN)作为一种图像到图像的解决方案,添加条件信息来指导图像的生成,因此输入条件就是输入图像,其他GAN的生成器基于随机噪声产生图像,CGAN不依赖损失函数实现,无需手动设计损失函数。

  图像领域的许多问题归结为图像翻译称为相应的输出,从像素预测像素,设计损失函数,生成模型最小化损失函数,

无条件GAN:生成器随机产生图像;有条件GAN:生成器和鉴别器都考虑了边缘映射,条件GNA损失是学习来的。总结:图像到图像到生成,用特定算法实现,像素到像素的映射,用loss function让算法优化。

            
输入图像为y,x是y的边缘,x经过生成器,得到G(x),x和G(x)作为输入经过判别器,该预测值表示输入是否是一对真实图像。概率越大比表示越接近,

y 和x也作为输入,

训练过程图片 x 作为此cGAN的条件,需要输入到G和D中。G的输入是{x,z}(其中,x 是需要转换的图片,z 是随机噪声),输出是生成的图片G(x,z)。D则需要分辨出{x,G(x,z)}和{x,y}
优化目标:z代表的噪音,判别器D的优化目标(1)越大越好,生成器G的目标使得log(1-D(x,G(x,z))越小越好,  
以前的经验告诉我们,将优化目标加上一些正则化,是对模型的性能提升有帮助的,l1和l2在图像生成问题上产生模糊结果,使用L1保证低频信号的正确性

随机噪音z作为输入的到生成器,作用???

网络结构:

生成器:U-Net结构

常见的先降采样到低维度,再升采样到原始分辨率的编解码(Encoder-Decoder)结构的网络相比,U-Net的区别是加入skip-connection,对应的feature maps和decode之后的同样大小的feature maps按通道拼(concatenate)一起,用来保留不同分辨率下像素级的细节信息。U-Net对提升细节的效果非常明显。

图像到图像的转换问题,高分辨率的输入到高分辨率的输出,但是,输出和输出外观又是不同的,但是都有相同的底层结构的渲染,输入中的结构和输出中的结构对齐,Encoder-Encoder结构的网络,输入经过一系列的网络,进行特征提取,所有的信息流流过所有的层。U-net跳过了某些层与层之间连接。

判别器:采用PathGAN

利用重建解决高频成分,一方面使用L1loss使得生成图片和训练图片相似,另一方面Gan只能用于构建高频信息,

那么就不需要将整张图片输入到判别器中,让判别器对图像的每个大小为N x N的patch做真假判别就可以了。
因为不同的patch之间可以认为是相互独立的。pix2pix对一张图片切割成不同的N x N大小的patch,判别器对每一个patch做真假判别,
将一张图片所有patch的结果取平均作为最终的判别器输

总结:pix2pix使用CGAN框架为图像到图像的翻译提供了一个通用的框架,使用U-Net网络作为生成器,提升细节,利用PatchGAS作为判别器,处理图像的高频部分

缺点:训练需要大量的成对照片,

参考:https://www.jianshu.com/p/8c7a7cb7198c

 

有监督的图像翻译——Pix2Pix的更多相关文章

  1. StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation - 1 - 多个域间的图像翻译论文学习

    Abstract 最近在两个领域上的图像翻译研究取得了显著的成果.但是在处理多于两个领域的问题上,现存的方法在尺度和鲁棒性上还是有所欠缺,因为需要为每个图像域对单独训练不同的模型.为了解决该问题,我们 ...

  2. 无监督域对抗算法:ICCV2019论文解析

    无监督域对抗算法:ICCV2019论文解析 Drop to Adapt: Learning Discriminative Features for Unsupervised Domain Adapta ...

  3. 笔记:基于DCNN的图像语义分割综述

    写在前面:一篇魏云超博士的综述论文,完整题目为<基于DCNN的图像语义分割综述>,在这里选择性摘抄和理解,以加深自己印象,同时达到对近年来图像语义分割历史学习和了解的目的,博古才能通今!感 ...

  4. DeepMind爆出无监督表示学习模型BigBiGAN,GAN之父点赞!

    [导读]今天,DeepMind爆出一篇重磅论文,引发学术圈热烈反响:基于最强图像生成器BigGAN,打造了BigBiGAN,在无监督表示学习和图像生成方面均实现了最先进的性能!Ian Goodfell ...

  5. 语音合成论文翻译:2019_MelGAN: Generative Adversarial Networks for Conditional Waveform Synthesis

    论文地址:MelGAN:条件波形合成的生成对抗网络 代码地址:https://github.com/descriptinc/melgan-neurips 音频实例:https://melgan-neu ...

  6. 提高驾驶技术:用GAN去除(爱情)动作片中的马赛克和衣服

    同步自我的知乎专栏:https://zhuanlan.zhihu.com/p/27199954 作为一名久经片场的老司机,早就想写一些探讨驾驶技术的文章.这篇就介绍利用生成式对抗网络(GAN)的两个基 ...

  7. (转)干货|这篇TensorFlow实例教程文章告诉你GANs为何引爆机器学习?(附源码)

    干货|这篇TensorFlow实例教程文章告诉你GANs为何引爆机器学习?(附源码) 该博客来源自:https://mp.weixin.qq.com/s?__biz=MzA4NzE1NzYyMw==& ...

  8. 生成对抗网络(Generative Adversarial Networks,GAN)初探

    1. 从纳什均衡(Nash equilibrium)说起 我们先来看看纳什均衡的经济学定义: 所谓纳什均衡,指的是参与人的这样一种策略组合,在该策略组合上,任何参与人单独改变策略都不会得到好处.换句话 ...

  9. StarGAN学习笔记

    11 December 2019 20:32 来自 <https://zhuanlan.zhihu.com/p/44563641>     StarGAN StarGAN是CVPR2018 ...

  10. AI佳作解读系列(六) - 生成对抗网络(GAN)综述精华

    注:本文来自机器之心的PaperWeekly系列:万字综述之生成对抗网络(GAN),如有侵权,请联系删除,谢谢! 前阵子学习 GAN 的过程发现现在的 GAN 综述文章大都是 2016 年 Ian G ...

随机推荐

  1. Git学习脑图

    背景: 最近在学习Git工作流,学习的是廖雪峰大神的教程,里面也很详尽了,于是自己就用脑图简单归纳自己选择学习的部分,方便日后查阅. 脑图:

  2. [whk] 解三元一次方程

    注:本篇运用大量 Katex ,如果炸了可能是运存不够也可能还要加载一会,重进几次即可.(都2202了,居然还存在我这种会炸公式的笔记本) 前言 写这篇随笔的由来是今天学习了: 不共线三点确定二次函数 ...

  3. Jasypt与Apollo一起使用造成Apollo热更新失效问题分析

    背景 近日业务同学反映在Apollo界面更改配置后, 服务中对应变量的值却没有改变 相关配置key定义如下: @ApolloJsonValue("${apollo.config.map:{} ...

  4. 8. 字符串转整数 (atoi)

    题目 代码 class Solution { public: int myAtoi(string str) { int res=0,sign=1; int i=str.find_first_not_o ...

  5. 洛谷P6599 「EZEC-2」异或【题解】

    题目大意 有\(T\)组数据,每组数据给定两个\(l,n\in\mathbb{N*}\),构造一个长为\(l\),每个元素不超过\(n\)的数组 令他为\(a\),要使 \[\sum_{i=1}^l\ ...

  6. (18)go-micro微服务ELK介绍

    目录 一 什么是ELK 二 Beats的六种工具 三 ELK系统的特点 四 ELK+beats系统架构 五 ELK优点 六 最后 一 什么是ELK ELK是三个[开源软件]的缩写,分别表示:Elast ...

  7. 【Redis技术专区】「优化案例」谈谈使用Redis慢查询日志以及Redis慢查询分析指南

    前提介绍 本篇文章主要介绍了Redis的执行的慢查询的功能的查询和配置功能,从而可以方便我们在实际工作中,进行分析Redis的性能运行状况以及对应的优化Redis性能的佐证和指标因素. 在我们5.0左 ...

  8. 送给vue初学者的 vue.js技巧

    1.setTimeout/ setInterval 场景一 :this指向改变无法用this访问vue实例 mounted(){ setTimeout( function () { //setInte ...

  9. 【开源】libinimini:适用于单片机的极简 ini 解析库

    介绍说明 最近自己基于 XR872 在做一个小作品练习练习,具备可以配置的功能,选择了使用 ini 作为配置文件.我调研了网上常见的 ini 解析库,几乎都涉及到了 fopen()/fgets().. ...

  10. Grafana 系列文章(九):开源云原生日志解决方案 Loki 简介

    简介 Grafana Labs 简介 Grafana 是用于时序数据的事实上的仪表盘解决方案.它支持近百个数据源. Grafana Labs 想从一个仪表盘解决方案转变成一个可观察性 (observa ...