不到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学习笔记(一)(基础入门之环境搭建)
Jun 05 Python
Python中字典的基础知识归纳小结
Aug 19 Python
使用Python生成XML的方法实例
Mar 21 Python
一个基于flask的web应用诞生 组织结构调整(7)
Apr 11 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
Jul 24 Python
利用Python如何批量更新服务器文件
Jul 29 Python
python 用下标截取字符串的实例
Dec 25 Python
python图的深度优先和广度优先算法实例分析
Oct 26 Python
Python字节单位转换实例
Dec 05 Python
Pytorch之卷积层的使用详解
Dec 31 Python
python 解决mysql where in 对列表(list,,array)问题
Jun 06 Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
Jul 14 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中使用反射技术的架构插件使用说明
2010/05/18 PHP
PHP写杨辉三角实例代码
2011/07/17 PHP
解析如何去掉CodeIgniter URL中的index.php
2013/06/25 PHP
php 实现一个字符串加密解密的函数实例代码
2016/11/01 PHP
php获取微信基础接口凭证Access_token
2018/08/23 PHP
Jquery练习之表单验证实现代码
2010/12/14 Javascript
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
2011/12/08 Javascript
JavaScript高级程序设计(第3版)学习笔记2 js基础语法
2012/10/11 Javascript
JQuery调webservice实现邮箱验证(检测是否可用)
2013/05/21 Javascript
深入解读JavaScript中的Iterator和for-of循环
2015/07/28 Javascript
jQuery获取剪贴板内容的方法
2016/06/16 Javascript
jQuery图片左右滚动代码 有左右按钮实例
2016/06/20 Javascript
使用Bootstrap Tabs选项卡Ajax加载数据实现
2016/12/23 Javascript
JS实现一个简单的日历
2017/02/22 Javascript
详解Node.js开发中的express-session
2017/05/19 Javascript
详解angular部署到iis出现404解决方案
2018/08/14 Javascript
微信小程序有旋转动画效果的音乐组件实例代码
2018/08/22 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
JS前端模块化原理与实现方法详解
2020/03/17 Javascript
微信小程序实现多图上传
2020/06/19 Javascript
通过angular CDK实现页面元素拖放的步骤详解
2020/07/01 Javascript
JavaScript中如何调用Java方法
2020/09/16 Javascript
[01:17]Ti4 循环赛第一日回顾
2014/07/11 DOTA
在Python中使用matplotlib模块绘制数据图的示例
2015/05/04 Python
python对象及面向对象技术详解
2016/07/19 Python
基于python神经卷积网络的人脸识别
2018/05/24 Python
python实现排序算法解析
2018/09/08 Python
python文件排序的方法总结
2020/09/13 Python
python如何提升爬虫效率
2020/09/27 Python
Get The Label中文官网:英国运动时尚购物平台
2017/04/19 全球购物
俄罗斯三星品牌商店:Samsungstore
2020/04/05 全球购物
母婴店促销方案
2014/03/05 职场文书
小学生一分钟演讲稿
2014/08/26 职场文书
团队执行力培训心得体会
2015/08/15 职场文书
Python使用Kubernetes API访问集群
2021/05/30 Python
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
2022/04/12 PostgreSQL