颜色空间转换

OpenCV C++教程目录
1.在Windows Visual Studio中安装OpenCV C++版本
2.图像的基本操作
3.颜色空间转换
4.阈值分割
5.图像变换(缩放、裁剪、仿射变换)
6.图像滤波
7.Canny边缘检测
8.轮廓检测
9.透视变换(perspective transform)
10.光流

今天我们来学习OpenCV中图像的颜色空间转换。内容如下:

  • 常用颜色空间 - RGB/YUV/HSV
  • 灰度图转换

1.常用颜色空间 - RGB/YUV/HSV

颜色通常用三个独立的属性来描述,用不同的变量来表示一个独立属性,就构成一个空间坐标,这就是颜色空间。

RGB

在RGB颜色空间中,任意色光F都可以用R、G、B三色不同分量的相加混合而成:F=r[R]+r[G]+r[B]。当三基色分量都为时混合为黑色光。当三基色都为最大(值由存储空间决定)时混合为白色光。RGB色彩空间根据每个分量在计算机中占用的存储字节数的不同,可以用不同的表示方法,常见的有:

  • RGB565
    16位的RGB格式R占用5位,G占用6位,B占用5位。
  • RGB888/RGB24
    24位的RGB格式, 各个分量分别占据8位。
  • RGB32/RGBA8888
    32位的RGB格式,各分量占用8位,剩下的8位用作Alpha通道。


    rgb.png

    RGB是非常经典的颜色空间表示方法,在电子计算机和显示器中广泛被使用。但是RGB并不适应人的视觉特点。因此产生了其它不同的色彩空间表示法。

YUV

YUV(又叫做YCrCb)中的“Y”表示明亮度(Luma), 也就是灰阶值;而“U”和“V” 表示的则是色度(Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。亮度是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起。“色度”则定义了颜色的两个方面─色调与饱和度,分别用Cr和Cb来表示。


yuv.png

人眼对色度的敏感程度低于对亮度的敏感程度。利用这个原理,可以把色度信息减少一点,人眼也无法查觉这一点。例如常用的YUV420,就是对UV分量进行了降采样,从而节省了存储空间。
YUV 4:2:0 并不意味着不采样 V 分量。它指的是对每条扫描线来说,只有一种色度分量以 2:1 的采样率存储,相邻的扫描行存储不同的色度分量。也就是说,如果第一行是 4:2:0,下一行就是 4:0:2,在下一行就是 4:2:0,以此类推。


yuv420.png
HSV

HSV模型用色调(hue),饱和度(saturation),亮度(value)表示颜色。它是一种六角锥模型。色调H用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红(洋红)为300°。

饱和度S表示颜色接近光谱色的程度。一种颜色,可以看成是某种光谱色与白色混合的结果。其中光谱色所占的比例愈大,颜色接近光谱色的程度就愈高,颜色的饱和度也就愈高。饱和度高,颜色则深而艳。光谱色的白光成分为0,饱和度达到最高。通常取值范围为0%~100%,值越大,颜色越饱和。

亮度V表示颜色明亮的程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,此值和物体的透射比或反射比有关。通常取值范围为0%(黑)到100%(白)。


HSV.png

OpenCV中使用cvtColor()来进行颜色空间转换。例如:

COLOR_BGR2YCrCb
COLOR_BGR2HSV
COLOR_BGR2GRAY

2.COLOR_BGR2GRAY是常用的转换格式,它将一张彩色图片转换为灰度图。

 cvtColor(Image, grayImage, cv::COLOR_BGR2GRAY);

以下为转换前和转换后的结果:


grayscale.PNG
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • BT601和BT709 由于在处理相机实时图像数据时,需要将相机采集的YUV数据转换为RGB,根据GPUImage...
    纵横而乐阅读 13,447评论 0 14
  • Opencv中有数百种关于在不同色彩空间之间转换的方法。当前,在计算机视觉中有三种常见的色彩空间:灰度,BGR以及...
    Zoe_C阅读 2,704评论 0 0
  • 1.基于颜色加法混色原理的RGB RGB颜色模型即红绿蓝颜色模型。由模仿生物视网膜三种视锥细胞产生,之后通过三原色...
    xiaose26阅读 23,960评论 0 4
  • 色域又称为色彩空间(Color Space),而域又是一个数学概念,可以更好地说明色彩是有一定范围,比色彩空间一词...
    Timothybu阅读 19,630评论 1 3
  • 我们生活中大多数看到的彩色图片都是RGB类型,但是在进行图像处理时,需要用到灰度图、二值图、HSV、HSI等颜色制...
    傻傻小萝卜阅读 2,595评论 1 5

友情链接更多精彩内容