Python实现老照片修复之上色小技巧


Posted in Python onOctober 16, 2021

导语

"黑白变彩色,就是这么简单"

老照片上色,是一门功夫,费时费力。

老照片上色,也是一门艺术,还原历史。

提起老照片上色,小编第一个想到了的就是一位名叫Marina Amaral的艺术家,她将历史上很多著名的老照片,都用后期处理的方式填补上了颜色。

Python实现老照片修复之上色小技巧

逼真、写实,看不出丝毫的漏洞,你对她的作品有多钦佩,也就意味着这项技艺有多复杂。

所以,你想学习老照片上色吗?也想把父母的照片,或者儿时的黑白照变成彩色的吗?

Python实现老照片修复之上色小技巧

那木木子给你的建议的是:别费劲了,因为,这项工作,以后交给AI去完成就可以了。

今天就教大家制作一款老照片修复教程——之黑白照片上色小技巧!

正文

百度AI开放平台「黑白图像上色」,这个强烈推荐,20行代码即能搞定黑白照片转彩色啦!

第一步:搜索百度AI进官网找到:开放能力——》图像技术。

Python实现老照片修复之上色小技巧

第二步:找到黑白图像上色。

Python实现老照片修复之上色小技巧

第三步:需要注册成为百度开发者,创建应用,获取API Key和Secret Key,进而得到access_token,输入黑白图像获取彩色图像的Base64编码。再将Base64编码字符串转为图片即可!

附代码:

import base64
import requests
 
# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=你的AK&client_secret=你的SK'
response = requests.get(host)
if response:
    print(response.json())
 
# 黑白图像上色
request_url = "https://aip.baidubce.com/rest/2.0/image-process/v1/colourize"
# 二进制方式打开图片文件
f = open('test.png', 'rb')
img = base64.b64encode(f.read())
 
params = {"image":img}
access_token = response.json()['access_token']
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=params, headers=headers)
if response:
    print(response.json())
 
# base64编码转图片
img = base64.b64decode(response.json()['image'])
file = open('result.jpg', 'wb')
file.write(img)
file.close()

效果如下

第一组黑白老照片:

Python实现老照片修复之上色小技巧

第二组黑白老照片——

Python实现老照片修复之上色小技巧

第三组黑白老照片——

Python实现老照片修复之上色小技巧

总结

最后一张简直太惊艳了~有美到你嘛?哇卡卡卡,拿代码自己去试试上色效果吧?

你们的支持是我最大的动力!!mua

Python实现老照片修复之上色小技巧

到此这篇关于Python实现老照片修复之上色小技巧的文章就介绍到这了,更多相关Python 照片修复内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中字符串的格式化方法小结
May 03 Python
利用Python中unittest实现简单的单元测试实例详解
Jan 09 Python
Python爬虫实例扒取2345天气预报
Mar 04 Python
win10子系统python开发环境准备及kenlm和nltk的使用教程
Oct 14 Python
基于spring boot 日志(logback)报错的解决方式
Feb 20 Python
彻底搞懂 python 中文乱码问题(深入分析)
Feb 28 Python
numpy库reshape用法详解
Apr 19 Python
python和php哪个容易学
Jun 19 Python
解决运行出现'dict' object has no attribute 'has_key'问题
Jul 15 Python
推荐值得学习的12款python-web开发框架
Aug 10 Python
Python‘==‘ 及 ‘is‘相关原理解析
Sep 05 Python
Python logging日志库空间不足问题解决
Sep 14 Python
Python anaconda安装库命令详解
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
Python爬虫入门案例之爬取二手房源数据
Python爬虫入门案例之回车桌面壁纸网美女图片采集
Python Django模型详解
Python 阶乘详解
Oct 05 #Python
Python 实现Mac 屏幕截图详解
You might like
文件系统基本操作类
2006/11/23 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
jQuery温习篇 强大的JQuery选择器
2010/04/24 Javascript
CodeMirror2 IE7/IE8 下面未知运行时错误的解决方法
2012/03/29 Javascript
Js日期选择器并自动加入到输入框中示例代码
2013/08/02 Javascript
原生JS操作网页给p元素添加onclick事件及表格隔行变色
2013/12/01 Javascript
js截取中英文字符串、标点符号无乱码示例解读
2014/04/17 Javascript
JS+CSS实现带关闭按钮DIV弹出窗口的方法
2015/02/27 Javascript
js简单实现Select互换数据的方法
2015/08/17 Javascript
极力推荐一款小巧玲珑的可视化编辑器bootstrap-wysiwyg
2016/05/27 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
在html中引入外部js文件,并调用带参函数的方法
2016/10/31 Javascript
jQuery:unbind方法的使用详解
2017/08/14 jQuery
浅谈FastClick 填坑及源码解析
2018/03/02 Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
2018/05/18 Javascript
vue实现简单的星级评分组件源码
2018/11/16 Javascript
微信小程序 SOTER 生物认证DEMO 指纹识别功能
2019/12/13 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
js制作提示框插件
2020/12/24 Javascript
Nodejs 微信小程序消息推送的实现
2021/01/20 NodeJs
python抓取网页图片示例(python爬虫)
2014/04/27 Python
深入浅析python定时杀进程
2016/06/06 Python
python自带的http模块详解
2016/11/06 Python
如何在django里上传csv文件并进行入库处理的方法
2019/01/02 Python
python3 selenium自动化测试 强大的CSS定位方法
2019/08/23 Python
Python的垃圾回收机制详解
2019/08/28 Python
python实现FTP循环上传文件
2020/03/20 Python
读取nii或nii.gz文件中的信息即输出图像操作
2020/07/01 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
2020/10/15 Python
Backcountry旗下的户外商品闪购网站:steep&cheap
2016/09/22 全球购物
性能测试工程师的面试题
2015/02/20 面试题
2014年五四青年节演讲比赛方案
2014/04/22 职场文书
2015暑期社会实践通讯稿
2015/07/18 职场文书
2019年入党思想汇报格式与要求
2019/06/25 职场文书
使用JS实现简易计算器
2021/06/14 Javascript
Go 语言中 20 个占位符的整理
2021/10/16 Golang