OpenCV学习笔记 - task03

内容导航:

  • 1. 颜色空间
  • 2. OpenCV实战: 色彩空间转换


1. 颜色空间

  • RGB: 人眼的色彩空间
  • OpenCV默认使用BGR
  • HSV/HSB/HSL
  • YUV(视频)

HSV:

  • Hue: 色相, 即色彩, 如红色, 蓝色
  • Saturation: 饱和度, 颜色的纯度
  • Value: 明度

OpenCV学习笔记 - task03_第1张图片

HSL:

  • Hue: 色相, 即色彩, 如红色, 蓝色
  • Saturation: 饱和度, 颜色的纯度
  • Lighthness: 亮度

OpenCV学习笔记 - task03_第2张图片

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() 

运行结果如下:

OpenCV学习笔记 - task03_第3张图片
OpenCV学习笔记 - task03_第4张图片
OpenCV学习笔记 - task03_第5张图片

你可能感兴趣的:(#,Python学习系列,opencv,学习,python)