python中使用cv2遍历图片像素点以及改变像素点的像素值

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)

结果图:
python中使用cv2遍历图片像素点以及改变像素点的像素值_第1张图片
使用PIL库遍历图片以及改变颜色详见上篇博客:
PIL遍历像素以及改变像素值

你可能感兴趣的:(图像处理)