早期的老照片都是黑白的,通过AI技术能自动给它们上色,先来看下原理。

原理

基本原理就是encoder-decoder架构,然后加上一些GAN training技巧,可以使得生成的图片更加真实。代码可见https://github.com/jantic/DeOldify​github.com

值得一提的是,这里用的不是传统的GAN,传统GAN会把Generator和Discriminator放到一起end2end train,这里用了一种称之为"NoGAN"的技巧,这种技巧能使得生成的图片更少的局部瑕疵。具体步骤如下

The steps are as follows: First train the generator in a conventional way by itself with just the feature loss. Next, generate images from that, and train the critic on distinguishing between those outputs and real images as a basic binary classifier. Finally, train the generator and critic together in a GAN setting (starting right at the target size of 192px in this case). Now for the weird part: All the useful GAN training here only takes place within a very small window of time. There’s an inflection point where it appears the critic has transferred everything it can that is useful to the generator. Past this point, image quality oscillates between the best that you can get at the inflection point, or bad in a predictable way (orangish skin, overly red lips, etc). There appears to be no productive training after the inflection point. And this point lies within training on just 1% to 3% of the Imagenet Data! That amounts to about 30-60 minutes of training at 192px.

1. 训练Generator 
2. 用Generator生成图片 
3. 训练Discriminator区分生成图片和实际图片 
4. Generator和Discriminator一起e2e finetune 
5. 当Discriminator已经把Generator所有的信息都迁移过来了(达到了所谓的inflection point,过了这个点效果反而下降),就停止,然后回到第一步重复迭代

具体为啥要分开训练Generator和Discriminator,目前尚不清楚,但是事实就是在上色这个任务上就是很work。

Keep in mind- I haven’t been entirely rigorous in figuring out what all is going on in NoGAN- I’ll save that for a paper. That means there’s a good chance I’m wrong about something. But I think it’s definitely worth putting out there now because I’m finding it very useful- it’s solving basically much of my remaining problems I had in DeOldify.

我这边做了一个微信公众号的API调用接口,方便大家来试用。关注公众号 LeetCode总结 ,二维码被吞的话可以直接在微信里面搜索公众号名称

后台直接发送你要转化的图片即可。比如

点进去就可以看到上色后的结果

欢迎大家试用,过年在家串不了门,不如把之前的老照片翻出来试一下上色吧!

PS:上色的程度设置的25,太大了的话机器容易响应不过来,大家见谅,后续需要的话我可以买一台强劲一点的阿里云服务器。

图片上色(有demo体验)相关推荐

  1. 3分钟融云Demo体验:IM即时通讯篇

    很多开发者朋友在使用融云IM SDK之前经常纠结一个问题,这个SDK集成到我的应用里究竟能不能变成我想要的样子?So,为了更好地理解IM的功能属性和使用场景,融云提供了一款Demo--SealTalk ...

  2. C#.NET通过Socket实现平行主机之间网络通讯(含图片传输的Demo演示)

    C#.NET通过Socket实现平行主机之间网络通讯(含图片传输的Demo演示) 作者:一点一滴的Beer http://beer.cnblogs.com/ 在程序设计中,涉及数据存储和数据交换的时候 ...

  3. 【项目实战课】基于Pytorch的Pix2Pix黑白图片上色实战

    欢迎大家来到我们的项目实战课,本期内容是<基于Pytorch的黑白图像上色实战>.所谓项目实战课,就是以简单的原理回顾+详细的项目实战的模式,针对具体的某一个主题,进行代码级的实战讲解. ...

  4. python黑白图片上色_百度AI攻略:黑白图像上色

    [使用攻略][评测报告][黑白图像上色] 1.功能描述: 百度智能识别黑白图像内容并填充色彩,使黑白图像变得鲜活,让老照片重新焕发活力.本文针对黑白图像上色功能开发了使用攻略,提供全套代码,并与其他厂 ...

  5. 黑白图片和黑白图片上色系统毕业设计,AI黑背图像上色系统设计与实现,AI黑白照片上色系统论文毕设作品参考

    功能清单 [后台管理员功能] 系统设置:设置网站简介.关于我们.联系我们.加入我们.法律声明 广告管理:设置小程序首页轮播图广告和链接 留言列表:所有用户留言信息列表,支持删除 会员列表:查看所有注册 ...

  6. 百度AI使用方案:黑白图片上色

    [使用攻略][评测报告][黑白图像上色] 1.功能描述: 百度智能识别黑白图像内容并填充色彩,使黑白图像变得鲜活,让老照片重新焕发活力.本文针对黑白图像上色功能开发了使用攻略,提供全套代码,并与其他厂 ...

  7. 基于深度学习的图片上色(Opencv,Pytorch,CNN)

    文章目录 1. 前言 2.图像格式(RGB,HSV,Lab) 2.1 RGB 2.2 hsv 2.3 Lab 3. 生成对抗网络(GAN) 3.1 生成网络(Unet) 3.2 判别网络(resnet ...

  8. (十)老照片修复、图像超分、图片提高分辨率、图片高清化、图片清晰化、黑白图片上色、人脸祛斑、美颜、人体瘦身、图像去噪、人像抠图、批量处理、视频提高分辨率、视频逐帧修复

    (十)老照片修复.图像超分.图片提高分辨率.图片高清化.图片清晰化.黑白图片上色.人脸祛斑.美颜.人体瘦身.图像去噪.人像抠图.批量处理.视频提高分辨率.视频逐帧修复 本文的代码的功能是:可以对图片文 ...

  9. DeOldify图片上色使用教程

    引言 本文主要是作为本周研究黑白照片上色测试的过程总结 项目GitHub源码 知乎参考资料 项目结构 至于模型在哪下载,反正我是在源项目里木有找到下载地址,不得不去下载我参考的知乎文章里作者保存到百度 ...

  10. [blender]UV网格颜色图片上色以及多材质上色

    UV网格颜色图片上色 相关资料1 进行多窗口的模式 三色图 背景为透明通道的JPG图片. 使图片与 UV 进行关联 在下面的窗口中 选择 SHADER EDITOR,拖入事先准备好的 3色图 图片到如 ...

最新文章

  1. Linux文本搜索工具grep
  2. Dottrace 10.0.2 使用心得
  3. linux下access函数的应用
  4. [LeetCode]Count of Range Sum
  5. 微信小程序开发03-这是一个组件
  6. target not created怎么解决_怎么才能最短时、高效、踏实地学习 Python(附链接)...
  7. idea将本地项目推送至远程仓库(图形化版本01)
  8. Redis的内部运作机制——Redis详解
  9. php左边按钮右边显示,右侧操作按钮
  10. 【Python】变量那些事
  11. Redis命令 - sortedSet
  12. 【干货篇】bilibili:基于 Flink 的机器学习工作流平台在 b 站的应用
  13. jmeter处理带表单的接口请求
  14. 【linux基础】linux更改python默认版本
  15. C# NFine开源框架 调用存储过程的实现代码
  16. 外部碎片和内部碎片的区别
  17. 【S-V信道】基于毫米波的5G通信S-V信道模型仿真
  18. 低代码平台上的出入库管理
  19. 怎样有效提高记忆力?
  20. CFSSL: 证书管理工具:2:创建CA私钥与CA证书

热门文章

  1. 在CMD窗口打开mysql
  2. Unity 项目加密插件Obfuscator
  3. Parse error: syntax error, unexpected T_STRING in /home/wwwroot/request_handler.php on line 60
  4. PDF无法复制或图片文字时,用java开发一个小程序来解决,下载jar包直接使用
  5. 青龙面板拉库命令大全最新【2022-10-13】
  6. Skylum Luminar快捷键命令
  7. 【matlab】【原创】firework小程序
  8. 【基础学习】GitHub 上100 的 Android 开源库分享
  9. 剑灵电五服务器位置,剑灵都有哪些区合区?
  10. 关于破解windows开机密码