当前位置: 首页 > news >正文

昇思25天学习打卡营第15天|linchenfengxue

Pix2Pix实现图像转换

Pix2Pix概述

Pix2Pix是基于条件生成对抗网络(cGAN, Condition Generative Adversarial Networks )实现的一种深度学习图像转换模型,该模型是由Phillip Isola等作者在2017年CVPR上提出的,可以实现语义/标签到真实图片、灰度图到彩色图、航空图到地图、白天到黑夜、线稿图到实物图的转换。Pix2Pix是将cGAN应用于有监督的图像到图像翻译的经典之作,其包括两个模型:生成器判别器

传统上,尽管此类任务的目标都是相同的从像素预测像素,但每项都是用单独的专用机器来处理的。而Pix2Pix使用的网络作为一个通用框架,使用相同的架构和目标,只在不同的数据上进行训练,即可得到令人满意的结果,鉴于此许多人已经使用此网络发布了他们自己的艺术作品。

基础原理

cGAN的生成器与传统GAN的生成器在原理上有一些区别,cGAN的生成器是将输入图片作为指导信息,由输入图像不断尝试生成用于迷惑判别器的“假”图像,由输入图像转换输出为相应“假”图像的本质是从像素到另一个像素的映射,而传统GAN的生成器是基于一个给定的随机噪声生成图像,输出图像通过其他约束条件控制生成,这是cGAN和GAN的在图像翻译任务中的差异。Pix2Pix中判别器的任务是判断从生成器输出的图像是真实的训练图像还是生成的“假”图像。在生成器与判别器的不断博弈过程中,模型会达到一个平衡点,生成器输出的图像与真实训练数据使得判别器刚好具有50%的概率判断正确。

在教程开始前,首先定义一些在整个过程中需要用到的符号:

  • 𝑥𝑥:代表观测图像的数据。
  • 𝑧𝑧:代表随机噪声的数据。
  • 𝑦=𝐺(𝑥,𝑧)𝑦=𝐺(𝑥,𝑧):生成器网络,给出由观测图像𝑥𝑥与随机噪声𝑧𝑧生成的“假”图片,其中𝑥𝑥来自于训练数据而非生成器。
  • 𝐷(𝑥,𝐺(𝑥,𝑧))𝐷(𝑥,𝐺(𝑥,𝑧)):判别器网络,给出图像判定为真实图像的概率,其中𝑥𝑥来自于训练数据,𝐺(𝑥,𝑧)𝐺(𝑥,𝑧)来自于生成器。

cGAN的目标可以表示为:

该公式是cGAN的损失函数,D想要尽最大努力去正确分类真实图像与“假”图像,也就是使参数𝑙𝑜𝑔𝐷(𝑥,𝑦)𝑙𝑜𝑔𝐷(𝑥,𝑦)最大化;而G则尽最大努力用生成的“假”图像𝑦𝑦欺骗D,避免被识破,也就是使参数𝑙𝑜𝑔(1−𝐷(𝐺(𝑥,𝑧)))𝑙𝑜𝑔(1−𝐷(𝐺(𝑥,𝑧)))最小化。cGAN的目标可简化为:

为了对比cGAN和GAN的不同,我们将GAN的目标也进行了说明:

从公式可以看出,GAN直接由随机噪声𝑧𝑧生成“假”图像,不借助观测图像𝑥𝑥的任何信息。过去的经验告诉我们,GAN与传统损失混合使用是有好处的,判别器的任务不变,依旧是区分真实图像与“假”图像,但是生成器的任务不仅要欺骗判别器,还要在传统损失的基础上接近训练数据。假设cGAN与L1正则化混合使用,那么有:

进而得到最终目标:

图像转换问题本质上其实就是像素到像素的映射问题,Pix2Pix使用完全一样的网络结构和目标函数,仅更换不同的训练数据集就能分别实现以上的任务。本任务将借助MindSpore框架来实现Pix2Pix的应用。

http://www.lryc.cn/news/393512.html

相关文章:

  • 软考中级数据库系统工程师备考经验分享
  • Centos7删除MariaDB
  • 【Docker系列】Docker 镜像构建中的跨设备移动问题及解决方案
  • C++友元函数和友元类的使用
  • 黑马苍穹外卖技术亮点 详情
  • Python酷库之旅-第三方库Pandas(005)
  • javascripr如何设计弹出输入框并在网页内输出输入内容
  • gitee代码初次上传步骤
  • android调用openssl库
  • Hugging face Transformers(3)—— Tokenizer
  • kubernetes集群部署:环境准备及master节点部署(二)
  • 第8篇 智能合约的商业应用场景解析
  • Zabbix 配置grafana对接
  • 三相感应电机的建模仿真(2)基于ABC相坐标系S-Fun的仿真模型
  • 开源全新H5充值系统源码/自定义首页+充值页面/灵活对接上游渠道接口
  • Linux查看文件的行数,字数,字节数
  • 【IO】文件操作
  • 代码随想录算法训练营第74天:路径总结[1]
  • 用 Emacs 写代码有哪些值得推荐的插件
  • 自定义注解-手机号验证注解
  • 华为od-C卷200分题目5 -项目排期
  • 如何使用Pip从Git仓库安装Python包:深入探索远程依赖管理
  • 计算机专业怎么选择电脑
  • 当前国内可用的docker加速器搜集 —— 筑梦之路
  • 【腾讯内推】腾讯2025校招/青云计划/社招——长期有效
  • 集群限流sentinel实践
  • Flutter-实现双向PK进度条
  • unix高级编程系列之文件I/O
  • PySide(PyQt),记录最后一次访问文件的路径
  • wordpress企业网站模板免费下载