python中除了使用PIL库处理图像之外还可以使用CV2
import cv2
import numpy as np
fileName = '2.png'
print(fileName)
img = cv2.imread(fileName)
info = img.shape
height = info[0]
width = info[1]
dst = np.zeros((height, width, 3), np.uint8)
for h in range(0, height):
for j in range(0, width):
(b, g, r) = img[h, j]
if (b,g,r)==(255,255,255):#白色
img[h, j] = (0,255,255)#蓝色
if (b, g, r) == (85, 85, 85): # 深灰
img[h, j] =(0, 128, 0) # 绿色
if (b,g,r)==(170, 170, 170): # 灰色
img[h, j] = (255, 255, 0) # 黄色
if (b, g, r) == (0, 0, 0): # 黑色
img[h, j] =(255, 0, 0) # 红色
dst[h, j] = img[h, j]
cv2.imwrite(fileName, dst)
结果图:
使用PIL库遍历图片以及改变颜色详见上篇博客:
PIL遍历像素以及改变像素值