不到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编程入门教程
Apr 23 Python
Python的Flask框架中配置多个子域名的方法讲解
Jun 07 Python
详解python3百度指数抓取实例
Dec 12 Python
python自动化脚本安装指定版本python环境详解
Sep 14 Python
python MysqlDb模块安装及其使用详解
Feb 23 Python
python实现反转部分单向链表
Sep 27 Python
解决Shell执行python文件,传参空格引起的问题
Oct 30 Python
Django之路由层的实现
Sep 09 Python
Pytorch修改ResNet模型全连接层进行直接训练实例
Sep 10 Python
Python高级特性——详解多维数组切片(Slice)
Nov 26 Python
python实现opencv+scoket网络实时图传
Mar 20 Python
基于python制作简易版学生信息管理系统
Apr 20 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
晶体管来复再生式二管收音机
2021/03/02 无线电
PHP压缩html网页代码(清除空格,换行符,制表符,注释标记)
2012/04/02 PHP
深入apache host的配置详解
2013/06/09 PHP
php下载excel无法打开的解决方法
2013/12/24 PHP
php版微信公众平台实现预约提交后发送email的方法
2016/09/26 PHP
SyntaxHighlighter语法高亮插件使用说明
2011/08/14 Javascript
javascript学习笔记(二十) 获得和设置元素的特性(属性)
2012/06/20 Javascript
extjs关于treePanel+chekBox全部选中以及清空选中问题探讨
2013/04/02 Javascript
js浮动图片的动态效果
2013/07/10 Javascript
jQuery实现下拉菜单的实例代码
2017/06/19 jQuery
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
react 兄弟组件如何调用对方的方法示例
2018/10/23 Javascript
通过Nodejs搭建网站简单实现注册登录流程
2019/06/14 NodeJs
vue组件传值的实现方式小结【三种方式】
2020/02/05 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
js通过canvas生成图片缩略图
2020/10/02 Javascript
[03:39]这就是刀塔,我们是冠军!燃情短片讲述我们的DOTA故事
2019/07/02 DOTA
Python读取ini文件、操作mysql、发送邮件实例
2015/01/01 Python
Python 数据结构之队列的实现
2017/01/22 Python
解决Python requests库编码 socks5代理的问题
2018/05/07 Python
tensorflow 输出权重到csv或txt的实例
2018/06/14 Python
python实现LRU热点缓存及原理
2019/10/29 Python
python中自带的三个装饰器的实现
2019/11/08 Python
Python搭建HTTP服务过程图解
2019/12/14 Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
2020/02/15 Python
使用Keras中的ImageDataGenerator进行批次读图方式
2020/06/17 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
2020/11/05 Python
HTML5的Geolocation地理位置定位API使用教程
2016/05/12 HTML / CSS
HTML5播放实现rtmp流直播
2020/06/16 HTML / CSS
大学生专科学习生活的自我评价
2013/12/07 职场文书
商务英语专业求职信范文
2014/01/28 职场文书
电气工程师岗位职责
2015/02/12 职场文书
卢旺达饭店观后感
2015/06/05 职场文书
新郎新娘致辞
2015/07/31 职场文书
2015年乡镇食品安全工作总结
2015/10/22 职场文书
2016教师暑期培训学习心得体会
2016/01/09 职场文书