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

作者:野客 时间:2021-08-29 09:27:43 

无论是我们上学时还之后的工作中,基本都需要用到电子证件照片,这类照片基本都对照片尺寸、背景色有要求,本文我们来看一下如何只用不到 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代码即可制作精美证件照

来源:https://segmentfault.com/a/1190000022450666

标签:Python,证件照
0
投稿

猜你喜欢

  • Nodejs封装类似express框架的路由实例详解

    2024-05-11 10:17:43
  • 运用python去除图片水印

    2021-05-06 10:54:20
  • 一篇文章带你了解python标准库--random模块

    2023-09-18 10:45:34
  • 关于H1的用法探讨

    2008-03-18 12:55:00
  • python列表数据增加和删除的具体实例

    2021-08-05 15:11:09
  • Jar包一键重启的Shell脚本及新服务器部署的一些经验分享

    2023-06-24 19:01:08
  • 基于Python闭包及其作用域详解

    2023-11-07 07:22:02
  • Go语言读写锁RWMutex的源码分析

    2024-05-09 09:47:55
  • Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法

    2022-01-05 22:02:07
  • Python使用enumerate获取迭代元素下标

    2023-03-05 01:46:31
  • 细化解析:SQL Server数据库的集群设计

    2009-02-05 15:59:00
  • Window10上Tensorflow的安装(CPU和GPU版本)

    2021-05-13 19:18:37
  • 对python列表里的字典元素去重方法详解

    2023-09-20 13:45:47
  • python-pyinstaller、打包后获取路径的实例

    2023-10-27 05:02:09
  • 清除代码异味

    2011-05-21 08:34:00
  • python线程信号量semaphore使用解析

    2023-02-08 08:47:24
  • 一个NumericStepper组件

    2010-01-22 15:46:00
  • Pytorch之finetune使用详解

    2021-08-31 20:41:44
  • Python使用pickle模块报错EOFError Ran out of input的解决方法

    2021-06-03 02:56:57
  • 解决python3.6用cx_Oracle库连接Oracle的问题

    2023-06-12 02:38:46
  • asp之家 网络编程 m.aspxhome.com