使用Python制作证件照

     制作证件照我们主要有两个工作:

     1. 修改照片背景

     2. 修改照片尺寸

    修改背景我们需要用到第三方库 removebg,修改照片尺寸需要用到 PIL 库,这两个库的安装使用 pip install removebg 和 pip install Pillow 即可。

   removebg涉及到api_key,需要到其官网注册并申请:https://accounts.kaleido.ai/users/sign_up

接下来通过代码demo如何制作证件照

#encoding=utf-8
from PIL import Image
from removebg import RemoveBg

api_key='9Esz4y4H9UKzChH7hpxxxx' #你的api_key

def change_bgcolor(file_in, file_out, api_key, color):
    '''
        #必须为png格式
    '''
    p,s=file_in.split(".")
    rmbg = RemoveBg(api_key, 'error.log')
    rmbg.remove_background_from_img_file(file_in)
    file_no_bg = "{}.{}_no_bg.{}".format(p,s,s)
    no_bg_image = Image.open(file_no_bg)
    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)

if __name__ == "__main__":
    file_in = 'E:\\imgs\\in.png'
    file_out = 'E:\\imgs\\out.png'
    color=(0,125,255)
    change_bgcolor(file_in, file_out, api_key, color)

效果如下:

原始文件:E:\\imgs\\in.png

使用Python制作证件照_第1张图片

中间产物(透明背景图片):E:\\imgs\\in.png_no_bg.png

使用Python制作证件照_第2张图片

生成的证件照:E:\\imgs\\out.png

使用Python制作证件照_第3张图片

大功告成!

你可能感兴趣的:(python)