1. 颜色空间
- RGB: 人眼的色彩空间
- OpenCV默认使用BGR
- HSV/HSB/HSL
- YUV(视频)
HSV:
- Hue: 色相, 即色彩, 如红色, 蓝色
- Saturation: 饱和度, 颜色的纯度
- Value: 明度
HSL:
- Hue: 色相, 即色彩, 如红色, 蓝色
- Saturation: 饱和度, 颜色的纯度
- Lighthness: 亮度
2. OpenCV实战: 色彩空间转换
# OpenCV实战: 色彩空间转换
# 2022年12月21日
import cv2
def callback():
pass
cv2.namedWindow('color', cv2.WINDOW_NORMAL)
img = cv2.imread('./data/lena.jpg')
colorspaces = [cv2.COLOR_BGR2RGBA, cv2.COLOR_BGR2BGRA, cv2.COLOR_BGR2GRAY, cv2.COLOR_BGR2HSV_FULL, cv2.COLOR_BGR2YUV]
cv2.createTrackbar('curcolor', 'color', 0, len(colorspaces), callback)
while True:
index = cv2.getTrackbarPos('curcolor', 'color')
print('index:', index)
# 颜色空间转换api
cvt_img = cv2.cvtColor(img, colorspaces[index])
cv2.imshow('color', cvt_img)
key = cv2.waitKey(10)
if key & 0xFF == ord('q'):
break
cv2.destroyAllWindows()
运行结果如下: