RGB色彩空间概念
RGB颜色空间以R(Red:红)、G(Green:绿)、B(Blue:蓝)三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,所以俗称三基色模式。通常的用(0,0,0)~(255,255,255)表示。
RGB空间是生活中最常用的一个模型,
电视机、电脑的显示器等大部分都是
采用这种模型。自然界中的任何一种
颜色都可以由红、绿、蓝三种色光混
合而成。
将图像在BGR和RGB模式之间转换
import cv2
import numpy as np
img1=cv2.imread("pig.jpg")
rgb = cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)#图像类型转换函数
cv2.imshow("BGR",img1)
cv2.imshow("RGB",rgb)
cv2.waitKey(0)
cv2.destroyAllWindows()
GRAY色彩空间
GRAY颜色空间(灰度图像)通常指8位灰度图,具有256个灰度级,像素值的范围为[0,255]。所谓灰度色,就是指纯白、纯黑以及两者中的一系列从黑到白的过渡色。
灰度化顾名思义就是将图片变为灰色,在OpenCV中可以用cvtColor函数将图像进行灰度化,但这里并不使用该函数,而是采用计算公式:Y = 0.2126R + 0.7152 G + 0.0722* B,RGB分别为彩色图像的三通道
将图像在BGR模式与GRAY模式之间转换
bgr = cv2.cvtColor(rgb, cv2.COLOR_RGB2BGR)
cv2.imshow("BGR2",bgr)
cv2.waitKey(0)
cv2.destroyAllWindows()
HSV色彩空间
HSV(Hue, Saturation, Value)是根据颜色的直观特性创建的一种颜色空间, 也称六角锥体模型。这个模型中颜色的参数分别是:色调(H),饱和度(S),明度(V)。
色调:不同波长的光表现为不同的颜色,
[0,360]。
饱和度:表示颜色接近光谱色的程度,[0,1]。
亮度:人眼感受到的光的明暗程度,[0,100]。
HSV颜色表
将图像在BGR模式与HSV模式之间转换
hsv=cv2.cvtColor(bgr,cv2.COLOR_BGR2HSV)#转换为HSV颜色空间
cv2.imshow("HSV",hsv)
cv2.waitKey(0)
cv2.destroyAllWindows()