不到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在windows命令行下输出彩色文字的方法
Mar 19 Python
详解Python中DOM方法的动态性
Apr 11 Python
Python的Flask框架中配置多个子域名的方法讲解
Jun 07 Python
详解使用python的logging模块在stdout输出的两种方法
May 17 Python
Python中的二维数组实例(list与numpy.array)
Apr 13 Python
对python .txt文件读取及数据处理方法总结
Apr 23 Python
分析python请求数据
Aug 19 Python
Face++ API实现手势识别系统设计
Nov 21 Python
python如何通过twisted搭建socket服务
Feb 03 Python
解决python执行较大excel文件openpyxl慢问题
May 15 Python
解决Python 函数声明先后顺序出现的问题
Sep 02 Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 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
Oracle Faq(Oracle的版本)
2006/10/09 PHP
PHP开发中常用的8个小技巧
2008/08/27 PHP
php学习笔记 面向对象的构造与析构方法
2011/06/13 PHP
YII2.0框架行为(Behavior)深入详解
2019/07/26 PHP
nginx 设置多个站跨域
2021/03/09 Servers
javascript动态加载实现方法一
2012/08/22 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
2014/01/31 Javascript
jquery+css3打造一款ajax分页插件(自写)
2014/06/18 Javascript
Jquery轮播效果实现过程解析
2016/03/30 Javascript
深入学习jQuery中的data()
2016/12/22 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
解析Vue2.0双向绑定实现原理
2017/02/23 Javascript
Vue.js仿Metronic高级表格(二)数据渲染
2017/04/19 Javascript
使用express搭建一个简单的查询服务器的方法
2018/02/09 Javascript
vue.js获得当前元素的文字信息方法
2018/03/09 Javascript
Vue中mintui的field实现blur和focus事件的方法
2018/08/25 Javascript
javascript数据类型中的一些小知识点(推荐)
2019/04/18 Javascript
微信小程序实现的canvas合成图片功能示例
2019/05/03 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
利用Python为iOS10生成图标和截屏
2016/09/24 Python
对Python实现简单的API接口实例讲解
2018/12/10 Python
pytorch 使用加载训练好的模型做inference
2020/02/20 Python
python调用API接口实现登陆短信验证
2020/05/10 Python
Python requests及aiohttp速度对比代码实例
2020/07/16 Python
Pytest测试框架基本使用方法详解
2020/11/25 Python
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
优秀团员个人的自我评价
2013/10/02 职场文书
我的中国梦演讲稿800字
2014/08/19 职场文书
综合测评自我评价
2015/03/06 职场文书
母亲节主题班会
2015/08/14 职场文书
《浅水洼里的小鱼》教学反思
2016/02/16 职场文书
2019年怎样写好导游词?
2019/07/02 职场文书
评测 | 大屏显示带收音机的高端音箱,JBL TUNE2便携式插卡音箱实测
2021/04/24 无线电