不到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的Flask框架应用程序实现使用QQ账号登录的方法
Jun 07 Python
django 2.0更新的10条注意事项总结
Jan 05 Python
Python实现的寻找前5个默尼森数算法示例
Mar 25 Python
Python实现对文件进行单词划分并去重排序操作示例
Jul 10 Python
Flask框架实现给视图函数增加装饰器操作示例
Jul 16 Python
使用 Python 实现文件递归遍历的三种方式
Jul 18 Python
Python全排列操作实例分析
Jul 24 Python
利用python计算时间差(返回天数)
Sep 07 Python
使用virtualenv创建Python环境及PyQT5环境配置的方法
Sep 10 Python
python动态视频下载器的实现方法
Sep 16 Python
python ETL工具 pyetl
Jun 07 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
Jul 28 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操作Memcache实例介绍
2013/06/14 PHP
escape、encodeURI 和 encodeURIComponent 的区别
2009/03/02 Javascript
js弹出层包含flash 不能关闭隐藏的2种处理方法
2013/06/17 Javascript
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
JavaScript+CSS控制打印格式示例介绍
2014/01/07 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
javascript实现拖动元素交换位置
2015/11/29 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
基于JavaScript实现弹出框效果
2016/02/19 Javascript
Ajax分页插件Pagination从前台jQuery到后端java总结
2016/07/22 Javascript
Angularjs 动态改变title标题(兼容ios)
2016/12/29 Javascript
JS实现的简单图片切换功能示例【测试可用】
2017/02/14 Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
2017/03/10 Javascript
一次记住JavaScript的6个正则表达式方法
2018/02/22 Javascript
vue.js template模板的使用(仿饿了么布局)
2018/08/13 Javascript
AngularJS实现与后台服务器进行交互的示例讲解
2018/08/13 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
React中this丢失的四种解决方法
2019/03/12 Javascript
关于vue-cli 3配置打包优化要点(推荐)
2019/04/22 Javascript
[04:28]DOTA2亚洲邀请赛小组赛第五日 TOP10精彩集锦
2015/02/03 DOTA
[40:06]DOTA2亚洲邀请赛 4.3 突围赛 Liquid vs VGJ.T 第一场
2018/04/04 DOTA
[56:12]LGD vs Optic Supermajor小组赛D组胜者组决赛 BO3 第一场 6.3
2018/06/04 DOTA
Python抽象类的新写法
2015/06/18 Python
对python中if语句的真假判断实例详解
2019/02/18 Python
Python检测端口IP字符串是否合法
2020/06/05 Python
CSS3绘制有活力的链接下划线
2016/07/14 HTML / CSS
德国体育用品网上商店:SC24.com
2016/08/01 全球购物
Pretty Green美国:英式摇滚服饰风格代表品牌之一
2019/01/23 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
美国围栏公司:Walpole Outdoors
2019/11/19 全球购物
2014升学宴答谢词
2014/01/26 职场文书
2015年文员个人工作总结
2015/04/09 职场文书
毕业典礼致辞
2015/07/29 职场文书
详解Redis基本命令与使用场景
2021/06/01 Redis
Python循环之while无限迭代
2022/04/30 Python
Django框架之路由用法
2022/06/10 Python