Python批量更改图片颜色,可做证件照底色的更换

红色部分图片更改为白色

在这里插入图片描述

  • originData:将需要转换的图片放置到这个文件夹中,可自定义文件夹名
  • resData:转换后结果保存的位置,可自定义文件夹名
def img_path(read_path,res_path):
    read_path_list = [read_path+'/'+i for i in os.listdir(read_path)]
    if not os.path.exists(res_path):
        os.mkdir(res_path)
    sava_path_list = [res_path+'/'+i for i in os.listdir(read_path)]
    return read_path_list,sava_path_list

def red_to_white(read_path,save_path):
    print(f"处理路径名称:{read_path}")
    img = Image.open(read_path)
    img_rgb_array = np.array(img.convert("RGB"))
    for x in range(0,img_rgb_array.shape[0]):
        for y in range(0,img_rgb_array.shape[1]):
        		 # 重点就是修改这儿,需要将RGB转为你需要的RGB,更改此处逻辑即可
            if img_rgb_array[x,y][0] == 128:
                img_rgb_array[x, y] = (255, 255, 255)
    print(f"保存路径名称:{save_path}")
    Image.fromarray(img_rgb_array).save(save_path)

def main(read_path_name,res_path_name):
    try:
        read_path_list,sava_path_list = img_path(read_path_name,res_path_name)
        for read_path,save_path in zip(read_path_list,sava_path_list):
            red_to_white(read_path,save_path)
    except Exception as e:
        print(e)

from PIL import Image
import numpy as np
import os
if __name__=='__main__':
    main("originData","resData")
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

而又何羡乎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值