微软开源的 AI 工具,让旧照片焕发新生
原文地址:Bringing Old Photos Back to Life
原文作者:Ziyu Wan
译者 & 校正:HelloGitHub-小鱼干 & 鸭鸭
写在前面
在 GitHub 热点趋势 Vol.046 中,HG 介绍过一个微软开源的 AI 工具——Bringing-Old-Photos-Back-to-Life,它可以让破损、残旧的图片焕发新生,在本周更是获得近 3k star。而本文则是项目团队成员 Ziyu Wan 发布于 Hacker News 的项目介绍,Enjoy it~
概述
我们打算通过深度学习的方法来修复老化严重的旧照片。与传统的监督式学习 supervised learning 的修复任务不同,真实照片的老化更为复杂,合成图像和真实旧照片之间的领域差距 domain gap 使得网络无法泛化。因此,我们提出了一种利用真实照片和大量合成图像对的新型三重域翻译网络。具体来说,我们训练了两个变分自编码器 (VAE),分别将旧照片和干净照片转换为两个潜在空间。通过合成配对数据来学习两个潜在空间之间的转换。因为在紧凑的潜在空间中,domain gap 是封闭的,所以这种翻译网络可以很好地泛化为真实照片。
此外,为了解决混杂在旧照片中的多个退化问题,我们设计了一个带有 partial nonlocal block 的全局分支,用于处理结构性缺陷,如:划痕、尘点,和一个局部分支,用于处理非结构性缺陷,如:噪点、模糊。两个分支在潜在空间融合,提高从多个退化问题中恢复旧照片的能力。该方法在相片修复的视觉质量方面优于现有的方法。
架构全览
- 我们首先训练两个变分自编码器 VAE: VAE1 用于真实照片 r ∈ R 和合成图像 x ∈ X,通过联合训练一个对抗判别器缩小它们的 domain gap;对干净图像 y ∈ Y 进行 VAE2 训练。利用 VAE 将图像转换到紧凑的潜在空间。
- 我们了解了在紧凑潜在空间将损坏的图像恢复到带 partial non-local block 的干净照片的映射。
对比图
更多修复细节
近距离围观
团队成员 Ziyu Wan 对 Bringing-Old-Photos-Back-to-Life 的介绍已经翻译完毕,感兴趣的小伙伴可以去把玩下,项目地址:
https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life
最后,欢迎优秀的你加入 HelloGitHub 的「译文亦舞」系列,让你的才华舞动起来!把优秀的文章分享给更多的人。要求:
- 平时浏览 GitHub、开源、编程、程序员等英文资讯和文章
- 想把自己阅读到优秀的英文文章分享给更多的人
- 翻译准确但不是直翻或机翻
- 保证每月至少翻译或校正 1 篇高质量文章
- 了解 Markdown 和排版规则
- 联系微信:xueweihan (备注:翻译)
微软开源的 AI 工具,让旧照片焕发新生的更多相关文章
- zz【重磅】微软开源自动机器学习工具 - NNI
[重磅]微软开源自动机器学习工具 - NNI 在机器学习建模时,除了准备数据,最耗时耗力的就是尝试各种超参组合,找到模型最佳效果的过程了.即使是对于有经验的算法工程师和数据科学家,有时候也很难把握其中 ...
- 微软开源自动机器学习工具NNI安装与使用
微软开源自动机器学习工具 – NNI安装与使用 在机器学习建模时,除了准备数据,最耗时耗力的就是尝试各种超参组合,找到最佳模型的过程了.对于初学者来说,常常是无从下手.即使是对于有经验的算法工程师 ...
- 【重磅】微软开源自动机器学习工具 - NNI
[重磅]微软开源自动机器学习工具 - NNI 在机器学习建模时,除了准备数据,最耗时耗力的就是尝试各种超参组合,找到模型最佳效果的过程了.即使是对于有经验的算法工程师和数据科学家,有时候也很难把握其中 ...
- 秒杀Sublime Text的微软开源代码编辑工具Visual Studio Code
1. 下载链接: https://code.visualstudio.com/ 2. 秒开一个ASP.NET网站源码 3.编辑CSS颜色支持 4.Git支持 5.常用快捷键 Ctrl+Shift+P ...
- NNI (Neurol Network Intelligence) 是微软开源的自动机器学习工具
NNI (Neurol Network Intelligence) 是微软开源的自动机器学习工具 https://www.cnblogs.com/ms-uap/p/9719071.html [重磅]微 ...
- ethr 微软开源的tcp udp http 网络性能测试工具
ethr 是微软开源的tcp udp http 网络性能测试工具包包含的server 以及 client 我们可以远程测试 同时对于https icmp 的支持也在开发中,tcp 协议支持连接.带宽. ...
- 资深人士剖析微软开源.NET事件:战略重心已经从PC转移到云端
本文是雷锋网对我的访谈整理的文章,源地址是 http://www.leiphone.com/news/201411/6KaGhD7PDABnvrRf.html 2014年11月13日,微软表示开源.N ...
- Winjs – 微软开源技术发布的 JavaScript 组件集
Winjs 是由微软开源技术的开发者推出的一组 JavaScript 组件,包括 ListView.ListView.Tooltip.DatePicker.Ratings 等等,帮助 Web 开发人员 ...
- [转载] 一共81个,开源大数据处理工具汇总(下),包括日志收集系统/集群管理/RPC等
原文: http://www.36dsj.com/archives/25042 接上一部分:一共81个,开源大数据处理工具汇总(上),第二部分主要收集整理的内容主要有日志收集系统.消息系统.分布式服务 ...
随机推荐
- Cypress系列(69)- route() 命令详解
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 作用 管理控制整个网络请求 重要注意事项 ...
- docker在win7下的使用
1,安装 win7下需要安装docker-toolbox,然后通过Docker Quickstart Terminal运行 2,加速 直接pull的话是拉取的docker hub上的镜像,速度非常慢, ...
- Vue3实战系列:Vue3.0 + Vant3.0 搭建种子项目
最近在用 Vue3 写一个开源的商城项目,开源后让大家也可以用现成的 Vue3 大型商城项目源码来练练手,目前处于开发阶段,过程中用到了 Vant3.0,于是就整理了这篇文章来讲一下如何使用 Vue3 ...
- day04基本数据类型
内容补充 编译器和解释器:牵扯到编译型语言和解释型语言 编译型语言:JAVA C C# C++ 写好的代码交给编译器,编译器会编译成一个新的文件交给计算机执行 解释型语言:python PHP 写好的 ...
- oracle 日常删除多余数据
查询及删除重复记录的SQL语句 1.查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 where Id in (select Id from 表 g ...
- for循环中的let与var的说明
参考资料:<JavaScript高级程序设计> 在 let 出现之前,for 循环定义的迭代变量会渗透到循环体外部: for (var i = 0; i < 5; ++i) { ...
- Hive 如何快速拉取大批量数据
用hive来做数仓类操作,或者大数据的运算,是没有疑问的,至少在你没有更多选择之前. 当我们要hive来做类似于大批量数据的select时,也许问题就会发生了变化. 1. 通用解决方案之分页 首先,我 ...
- 02 . 02 . Go之Gin+Vue开发一个线上外卖应用(集成第三方发送短信和xorm生成存储数据库表)
集成第三方发送短信 介绍 用户登录 用户登录有两种方式: 短信登录,密码登录 短信登录是使用手机号和验证码进行登录 短信平台 很多云平台,比如阿里云,腾讯云,七牛云等云厂商,向程序开发者提供了短信验证 ...
- typeerror object of type ‘decimal‘ is not json serializable jsonify
当使用flask的jsonify返回json数据时,由于数据库有些字段类型使用decimal,而jsonify无法处理 解决方案 导入下面的包即可解决 pip install simplejson
- C# 泛型的协变
class Program { static void Main(string[] args) { Person person = new Person(); Person chinese2 = ne ...