使用HSV 圖片做直方圖均衡問題
2019/11/29 11:38 上午
電腦視覺深度學習討論版
許景貿
觀看數:1
回答數:1
收藏數:0
老師您好,想請教一下
1.直方圖均衡case 1
# 每個 channel 個別做直方圖均衡
equalHist_by_channel = [img[..., 0], img[..., 1], img[..., 2]]
equalHist_by_channel = [cv2.equalizeHist(i) for i in equalHist_by_channel]
這個 [ cv2.equalizeHist(i) for i in equalHist_by_channel ]的意思是什麼呢?
2.直方圖均衡的case2
# case 2 - 轉換 color space 後只對其中一個 channel 做直方圖均衡
img_hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
img_hsv[..., -1] = cv2.equalizeHist(img_hsv[..., -1])
img_hsv_equal = cv2.cvtColor(img_hsv, cv2.COLOR_HSV2BGR)
這幾行程式碼中
這行代表什麼意思?
img_hsv[..., -1] = cv2.equalizeHist(img_hsv[..., -1])
因為下一行img_hsv_equal = cv2.cvtColor(img_hsv, cv2.COLOR_HSV2BGR) 使用的是 img_hsv 不是img_hsv[...,1]
我把這行"img_hsv[..., -1] = cv2.equalizeHist(img_hsv[..., -1])"註解掉後,運行結果沒有影響。