不到20行实现Python代码即可制作精美证件照


Posted in Python onApril 24, 2020

无论是我们上学时还之后的工作中,基本都需要用到电子证件照片,这类照片基本都对照片尺寸、背景色有要求,本文我们来看一下如何只用不到 20 行 Python 代码完成证件照片的制作。

简介

制作证件照我们主要有两个工作:修改照片背景和修改照片尺寸,修改背景我们需要用到第三方库 removebg,修改照片尺寸需要用到 PIL 库,这两个库的安装使用 pip install removebgpip install Pillow 即可。

使用 removebg 时,我们还需要一个 API 密钥,获取方式为:首先,我们打开链接地址 https://accounts.kaleido.ai/users/sign_up 注册一个账户,打开后如下图所示:

不到20行实现Python代码即可制作精美证件照

我们填写邮箱和密码再勾选同意协议后提交,之后该网站会给我们刚刚填写的邮箱发送一条验证信息,我们进到自己的邮箱点击验证链接完成验证之后即完成了账号的注册工作。

账号注册好之后,我们接着打开 https://www.remove.bg/zh/profile#api-key 地址登录自己的账号,即可进入到下图位置:

不到20行实现Python代码即可制作精美证件照

我们点击上图中的显示按钮,就可以拿到秘钥了。

代码实现

代码实现也比较简单,还是我们之前说的思路:使用 removebg 库修改照片背景色,使用 PIL 库修改照片尺寸,具体实现如下所示:

from PIL import Image
from removebg import RemoveBg

# 修改照片背景色
def change_bgcolor(file_in, file_out, api_key, color):
  rmbg = RemoveBg(api_key, 'error.log')
  rmbg.remove_background_from_img_file(file_in)
  no_bg_image = Image.open(file_in)
  x, y = no_bg_image.size
  new_image = Image.new('RGBA', no_bg_image.size, color=color)
  new_image.paste(no_bg_image, (0, 0, x, y), no_bg_image)
  new_image.save(file_out)

# 修改照片尺寸
def change_size(file_in, file_out, width, height):
  image = Image.open(file_in)
  resized_image = image.resize((width, height), Image.ANTIALIAS)
  resized_image.save(file_out)

我们可以看出整个实现过程只用了不到 20 行代码。

效果展示

最后我们来看一下实现效果:

不到20行实现Python代码即可制作精美证件照

不到20行实现Python代码即可制作精美证件照

到此这篇关于不到20行实现Python代码即可制作精美证件照的文章就介绍到这了,更多相关Python 证件照内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现同时兼容老版和新版Socket协议的一个简单WebSocket服务器
Jun 04 Python
Python基于twisted实现简单的web服务器
Sep 29 Python
python读取oracle函数返回值
Jul 18 Python
Numpy 将二维图像矩阵转换为一维向量的方法
Jun 05 Python
Python面向对象思想与应用入门教程【类与对象】
Apr 12 Python
Python 画出来六维图
Jul 26 Python
Python面向对象之Web静态服务器
Sep 03 Python
Python全局锁中如何合理运用多线程(多进程)
Nov 06 Python
如何给Python代码进行加密
Jan 10 Python
python 抓取知乎指定回答下视频的方法
Jul 09 Python
关于python3.7安装matplotlib始终无法成功的问题的解决
Jul 28 Python
详解python tkinter包获取本地绝对路径(以获取图片并展示)
Sep 04 Python
python 画条形图(柱状图)实例
Apr 24 #Python
python模拟哔哩哔哩滑块登入验证的实现
Apr 24 #Python
200行python代码实现贪吃蛇游戏
Apr 24 #Python
python Canny边缘检测算法的实现
Apr 24 #Python
python实现文字版扫雷
Apr 24 #Python
离线状态下在jupyter notebook中使用plotly实例
Apr 24 #Python
python3中sys.argv的实例用法
Apr 24 #Python
You might like
PHP 5.0对象模型深度探索之对象复制
2008/03/27 PHP
通过PHP实现获取访问用户IP
2020/05/09 PHP
jquery怎样实现ajax联动框(二)
2013/03/08 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
jQuery 顶部导航跟随滚动条滚动固定浮动在顶部
2014/06/06 Javascript
再次谈论Javascript中的this
2016/06/23 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
KnockoutJS 3.X API 第四章之表单value绑定
2016/10/10 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
vue脚手架及vue-router基本使用
2018/04/09 Javascript
element-ui循环显示radio控件信息的方法
2018/08/24 Javascript
vue 中滚动条始终定位在底部的方法
2018/09/03 Javascript
小程序开发中如何使用async-await并封装公共异步请求的方法
2019/01/20 Javascript
vue 遮罩层阻止默认滚动事件操作
2020/07/28 Javascript
Python表示矩阵的方法分析
2017/05/26 Python
Pycharm 操作Django Model的简单运用方法
2018/05/23 Python
Python闭包函数定义与用法分析
2018/07/20 Python
一文秒懂python读写csv xml json文件各种骚操作
2019/07/04 Python
python3获取url文件大小示例代码
2019/09/18 Python
Python内置类型性能分析过程实例
2020/01/29 Python
Python3 socket即时通讯脚本实现代码实例(threading多线程)
2020/06/01 Python
python的help函数如何使用
2020/06/11 Python
Numpy中的数组搜索中np.where方法详细介绍
2021/01/08 Python
matplotlib绘制多子图共享鼠标光标的方法示例
2021/01/08 Python
使用phonegap获取设备的一些信息方法
2017/03/31 HTML / CSS
英国最大的高品质珠宝和手表专家:Goldsmiths
2017/03/11 全球购物
波兰最大的度假胜地和城市公寓租赁运营商:Sun & Snow
2018/10/18 全球购物
Myprotein意大利官网:欧洲第一运动营养品牌
2018/11/22 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
军校本科大学生自我评价
2014/01/14 职场文书
会议活动邀请函
2014/01/27 职场文书
采购经理岗位职责
2014/02/16 职场文书
万里长城导游词
2015/01/30 职场文书
纯 CSS 自定义多行省略的问题(从原理到实现)
2021/11/11 HTML / CSS
win10如何开启ahci模式?win10开启ahci模式详细操作教程
2022/07/23 数码科技