效果展示:由图一转换至图二。
图一
图二
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
'''
@文件 :20201022.py
@说明 :python技巧之图像处理
@时间 :2020/10/23 20:30:26
@作者 :侃侃
@版本 :3.8
'''
from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
filepath="E:\\MJC\\工具资料\\微信公众号\\20201022\\1.jpg"
pic = np.array(Image.open(filepath))
print(pic.shape) #((1030, 1853, 3))
N=90
for i in range(pic.shape[0]):
for j in range(pic.shape[1]):
if (pic[i][j][0] > N)&(pic[i][j][1] > N)&(pic[i][j][2] > N):
pic.itemset((i,j,0),255)
pic.itemset((i,j,1),255)
pic.itemset((i,j,2),255)
else:
pic.itemset((i,j,0),0)
pic.itemset((i,j,1),0)
pic.itemset((i,j,2),0)
plt.imshow(pic)
plt.axis('off')
plt.show()
plt.savefig("E:\\MJC\\工具资料\\微信公众号\\20201022\\0.jpg")