opencv入门8:色彩空间-color spaces

我们只探索了RGB色彩空间;然而,还有很多其他的色彩空间可以利用

色调 - 饱和度值(HSV:Hue-Saturation-Value)色彩空间与人类如何思考和设想色彩更相似。

然后是 L a b * 色彩空间.

为了不陷入细节,我会告诉你如何转换色彩空间。如果您认为您的图像处理和计算机视觉应用可能需要与RGB不同的色彩空间,那么我将作为练习留给读者去探索每个色彩空间的特性。


cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
https://docs.opencv.org/3.0-beta/modules/imgproc/doc/miscellaneous_transformations.html?highlight=cvtcolor#cv2.cvtColor
色彩空间colorspaces.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import numpy as np 
import argparse
import cv2

ap = argparse.ArgumentParser()
ap.add_argument("-i","--image",required = True,help = "Path to the image")
args = vars(ap.parse_args())

image = cv2.imread(args["image"])
cv2.imshow("Original",image)

gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
cv2.imshow("Gray",gray)
# 我们通过指定cv2.COLOR_BGR2GRAY标志将我们的图像从RGB颜色空间转换为灰度

hsv = cv2.cvtColor(image,cv2.COLOR_BGR2HSV)
cv2.imshow("HSV",hsv)

lab = cv2.cvtColor(image,cv2.COLOR_BGR2LAB)
cv2.imshow("L*a*b*",lab)
cv2.waitKey(0)
简单是可靠的先决条件.
坚持原创技术分享,您的支持将鼓励我继续创作!