思考题
1.给出彩色图像Fig6,请在HSI空间对图像的亮度分量进行均衡化,观察彩色图像效果。
2.对同一幅图像Fig6在B、G、R空间逐一做均衡化处理,观察最终的图像与思考题1中的结果异同。
import numpy as np
import cv2
import math
from matplotlib import pyplot as plt
def hisEqulColor(img):
hls = cv2.cvtColor(img, cv2.COLOR_BGR2HLS)
channels = cv2.split(hls)
cv2.equalizeHist(channels[1])
cv2.merge(channels, hls)
cv2.cvtColor(hls, cv2.COLOR_HLS2BGR, img)
return img
img = cv2.imread('Fig6.png')
eq = hisEqulColor(img)
cv2.imshow('image1', img)
cv2.imshow('image2', eq)
cv2.waitKey(0)
结果如下
2.对同一幅图像Fig6在B、G、R空间逐一做均衡化处理,观察最终的图像与思考题1中的结果异同。
#B、G、R空间逐一做均衡化处理
import cv2
import numpy as np
img = cv2.imread('Fig6.png')
#分离
(b, g, r) = cv2.split(img)
beq = cv2.equalizeHist(b)
geq = cv2.equalizeHist(g)
req = cv2.equalizeHist(r)
# 合并每一个通道
result1 = cv2.merge((beq, g, r))
result2 = cv2.merge((b, geq, r))
result3 = cv2.merge((b, g, req))
cv2.imshow('image', img)
cv2.imshow('image1', result1)
cv2.imshow('image2', result2)
cv2.imshow('image3', result3)
cv2.waitKey(0)
结果如下