图像颜色映射的实质是色彩通道的变换计算,即通过对图像的颜色通道值进行修改实现图像的颜色映射,说白了就是用新的bgr值替换掉旧的bgr值。
import cv2
import numpy as np
image = cv2.imread("wuhuan.jpg",1)
cv2.imshow(‘image‘,image)
image_info =image.shape
height=image_info[0]
width=image_info[1]
dst=np.zeros((height,width,3),np.uint8)
for i in range(height):
for j in range(width):
(b,g,r)=image[i,j]
b=b*1.5
if b>255:
b=255
dst[i,j]=(b,g,r)
cv2.imshow(‘dst‘, dst)
#cv2.imshow("dst",dst)
cv2.waitKey()
上述代码中,我们遍历原图像的像素点,并将像素点的蓝色通道值进行增强,具体来说,就是将bgr中的b(蓝色通道)值在原基础上乘以1.5。当然,颜色通道值的范围为0~255,因此对于乘积结果我们需要做范围判断,对于超过255的结果需要置为255。
效果图: