高糊图片可以做什么?Goodfellow等人用它生成一组合理图像
本文转载自机器之心。
选自arXiv
作者:David Berthelot、Peyman Milanfar、Ian Goodfellow
机器之心编译
参与:魔王、小舟
给出一张低分辨率图像,你可以用它做什么,用机器学习方法将它尽量恢复原貌?除此之外呢?近日,谷歌 David Berthelot、Peyman Milanfar,以及 Goodfellow 提出了一种名为 LAG 的生成器,可以基于一张低分辨率图像生成一组合理的高分辨率图像。
生成逼真图像是一件困难的任务,近来研究人员提出了很多处理该任务的方式。如果我们把这项任务限制在生成特定类别的图像,任务就会简单许多。也就是说,不用基于自然图像流形生成任意图像作为样本,而是从自然图像的特定「子空间」内采样图像,而这一过程由来自相同子空间的低分辨率图像指引。
最近谷歌发表了一项研究,作者为谷歌研究院 David Berthelot、Peyman Milanfar,以及前谷歌大脑科学家、现苹果机器学习特殊项目组负责人 Ian Goodfellow。
该研究试图解决的问题与单张图像超分辨率问题接近,但又有区别。图像超分辨率问题是指从低分辨率(LR)图像中恢复高分辨率(HR)图像的过程,而该研究目的不在于此,它试图使用输入图像作为指引,生成一组合理的高分辨率图像。
具体而言,该生成采样框架仅使用输入(大概率是极低分辨率的图像)来指向网络应生成的样本类别。而且,该算法的输出不只是与输入相关的单张图像,而是基于自然图像流形采样得到的相关图像集合。
LAG 方法仅在对抗潜在空间中使用感知损失进行学习,无需像素损失。
那么 LAG 效果如何呢?下图展示了该方法在人脸、卧室和教堂这三个类别上的图像生成效果:
研究贡献
LAG 方法旨在解决现有方法的基本缺陷,并做出了以下贡献:
将输入图像建模为一组可能的图像,而不是单张图像,即建模了(低分辨率)输入图像的流形;
学习单个感知潜在空间,来描述预测和真值之间的距离;
分析条件 GAN(conditional GAN)和 LAG 之间的关系。
LAG 方法
给定一个低分辨率的输入图像 y,该研究希望预测出可能的高分辨率图像的感知中心 x。该研究提出将可能的高分辨率图像建模为随机向量 z(z ∈ R^n, z ∼ N (0, 1))。在该模型中,(y,z) 唯一地映射到一张高分辨率图像 x_z。该研究假设高分辨率图像 x 是在 z=0 的正态分布的中心点获得的。
训练所用的函数需要 (y,z) 来预测高分辨率图像 x_z。该研究采用 GAN 术语,将此函数 G 称为生成器:
该研究设计了 critic 函数,用于判断高分辨率图像 x 是否和低分辨率图像 y 相对应。该研究提出将 critic 函数 C 分解为两个函数:
从图像到潜在空间 p 的投影 P;
从该潜在空间到 R 的映射 F。
研究者将 p 称为「感知潜在空间」。将投影函数 P 定义为:
由 φ 和 ψ 参数化的 critic C: 是 F 和 P 的组成部分:
函数 G、P 和 F 都是用神经网络实现的。
LAG 实现细节:损失、条件和架构
该研究使用具有梯度惩罚(gradient penalty)的 Wasserstein GAN 损失。值得注意的是,使用 relativistic GAN 和谱归一化卷积也能得到不错的结果。不过,该研究没有穷尽所有可能的 GAN 损失选择(不在该论文研究范围内)。
研究者通过向 critic 提供低分辨率输入与真值的绝对差异来简化 critic 任务。即,计算
其中 x_z = G(y, z) 是生成的样本,H : R^x |→ R^y 是缩放算子,r 是颜色分辨率。缩放算子为高分辨率图像生成对应的低分辨率图像。研究者将缩放算子的输出四舍五入到最接近的颜色分辨率,在该案例中 r = 2/255。这种做法是为了避免网络不稳定。为了允许通过 rounding 操作进行梯度传播,该研究使用了 Hinton 的直通估计器(straight through estimator)[7]。
假设 stop gradient operation 为 sg,则直通估计器为:
这里,研究者并没有提倡某一个特定的神经网络架构,因为有很多潜在可用的实现。更新更好的架构层出不穷,LAG 应该与其他架构相适应。在实践中,研究者决定使用类似 EDSR 的残差网络。对于 critic,该研究使用了几乎一样的架构,但顺序是相反的。
该架构按照 [9, 19] 提出的方法训练得到。关于架构和训练细节,以及 TensorFlow 代码,参见 GitHub 项目。
LAG 的效果:生成逼真的图像合集
LAG 方法的主要优势在于不止生成一张图像,而是基于一张低分辨率输入图像生成一组合理的图像。也就是说,建模可能图像的集合,并预测位于其中心的图像,还能够基于 z ∼ N (0, 1) 的分布生成样本。
该研究用三个类别说明 LAG 方法的能力:人脸、教堂和卧室,还展示了该方法的跨类别生成图像能力。
图 1:对于不同的 z 值,基于 8x 下采样输入得到的生成图像示例。
图 2:对于不同的 z 值,基于 32x 下采样输入得到的生成图像示例。
镜像图像
在该实验中,研究者试图观察 LAG 网络跨类别生成图像的性能,即考虑给定图像及其镜像图像。
图 5:基于 16x 下采样输入得到的生成图像示例。
图 6:基于 16x 下采样输入得到的生成图像示例。
噪声和随机输入
出于完备性考虑,研究者在该实验中考虑了 LAG 网络对带噪声图像输入或仅包含噪声的输入图像的反应。
图 7:基于 32x 下采样输入得到的生成图像示例,输入图像具备噪声,且噪声逐渐增加。
论文链接:https://arxiv.org/pdf/2003.02365.pdf
代码地址:https://github.com/google-research/lag
END
备注:GAN
GAN
生成对抗网络、GAN等技术,
若已为CV君其他账号好友请直接私信。
我爱计算机视觉
微信号:aicvml
QQ群:805388940
微博知乎:@我爱计算机视觉
投稿:amos@52cv.net
网站:www.52cv.net
在看,让更多人看到
高糊图片可以做什么?Goodfellow等人用它生成一组合理图像相关推荐
- 对于一组给定的叶子结点_高糊图片可以做什么?Goodfellow等人用它生成一组合理图像...
选自arXiv 作者:David Berthelot.Peyman Milanfar.Ian Goodfellow 机器之心编译 参与:魔王.小舟 给出一张低分辨率图像,你可以用它做什么,用机器学习方 ...
- 高糊图片可以做什么?
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:David Berthelot.Peyman Milanfar ...
- 如何提升图片清晰度?有了这4个工具,高糊图片也能变清晰
网上的图片经过多次传播,有的就不是很清晰了,想要提高图片清晰度,可以试试这5个好用的图片修复工具,简单易操作,上传图片就能一键变清晰! 1.Bigjpg 一个AI智能图片无损放大工具,使用方便,上传图 ...
- AI技术 | PIFuHD-由高清图片生成3D人物模型对BIM的启示
AI技术 | PIFuHD-由高清图片生成3D人物模型对BIM的启示 AI技术 | PIFuHD-由高清图片生成3D人物模型对BIM的启示 AI技术 | PIFuHD-由高清图片生成3D人物模型对BI ...
- 做PPT怎么能少了素材!(收藏的高清图片素材网站一)
要想PPT做的好,素材自然少不了,最近在学习PPT的过程中也收集了一些高清图片的素材网站,在这里跟大家分享一下. Pixabay:https://pixabay.com Pixabay这个是我比较喜欢 ...
- 高糊马赛克秒变高清,表情帝:这还是我吗?
全世界有3.14 % 的人已经关注了 爆炸吧知识 来源:机器之心 参与:魔王.杜伟 有了这个工具,我们终于能够看到马赛克下的那张脸了. 给出一张高糊人脸照片,你能用它做什么? 杜克大学近期的一项研究可 ...
- ECCV 2020 Oral | 可逆图像缩放:完美恢复降采样后的高清图片
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文介绍的是ECCV 2020 Oral论文<Inverti ...
- ctf 改变图片高度_通过CRC32爆破修改图片的宽高 ctf-misc图片隐写
** 一.在处理图片隐写题的时候,可能会修改图片原有的宽高,导致图片里面的内容无法正常显示,那么怎么判断它的宽高是否被修改了呢? ** 1.把图片拖进010editor中会发现左下角提示CRC不匹配, ...
- 源代码src修改为本地图片_20 行 Python 代码批量抓取免费高清图片!
前言 相信在你的工作中可能会经常用到PPT吧,你在PPT制作过程中有没有这样的困惑,就是可以到哪里找到既高清又无版权争议的图片素材呢?这里强烈推荐ColorHub,这是一个允许个人和商业用途的免费图片 ...
最新文章
- 设计模式学习每天一个——Factory模式 和 Abstract Factory模式
- 一张图看懂阿里云网络产品【十五】IPv6 解决方案
- 八、深入Go 编程语言接口
- c语言求标准体重答案,C语言标准体重测试程序,请大家帮我看下,我的代码哪错了?...
- css textarea行数_限制textarea中的行数并使用jQuery显示行数
- webserver之使用数组实现阻塞队列
- linux下iptables的编译及简单使用
- 苹果电脑win10蓝牙音响卡顿_Macbook Pro 2017安装win10以后蓝牙鼠标卡顿
- DMA控制器原理详解
- Lena,Pepper等图像,图像处理必备资料。
- 最简单的三极管音频放大电路
- C语言编程练习:定义判断素数函数int isPrime(int n);若n是素数返回1,否则返回0。调用isPrime函数,输出2~1000之内所有素数,按一行10个素数形式输出。
- hub设备_小米生态链爆品开箱,50W闪充加持,HUB扩展解锁电源新技能
- excessive cpu 优化杀进程解决方案 android P
- 一文看懂推荐系统:概要01:推荐系统的基本概念
- 《利用python进行数据分析》第二版 第13章-Python建模库介 学习笔记
- java运算符与数字分解,看完对java更加有信心了(主除以和取余的理解)
- 全国高校2022年经费预算排名(前150名)
- idea ctrl+alt+向左箭头不能用
- Cocos Creater 敏捷开发之插件开发
热门文章
- 统计学习方法笔记(李航)———第五章(决策树)
- UML与需求分析进阶
- 将汇编语言翻译成C语言,如何把汇编语言转换成C语言
- java程序样例_一个完整的java程序示例
- linux timespec 链接库,Linux内核 timespec_sub()
- java将生成数据写入文件_JAVA-将内容写入文件并导出到压缩包
- 中职计算机高考总分是多少,高考理科总分是多少分
- html表格添加选项代码,使用实例演示 表单 中的选项卡功能 在里面添加table id=bootstrap-table/table后不显示表格...
- 德州python培训_人工智能在多人桌德州扑克比赛中战胜世界顶尖选手
- php 输出mysql查询结果_php如何输出mysql查询结果