计算机视觉知识点-Color Space

你可能知道颜色通过RGB来表达,比如红色的值为(255,0,0), 黄色的值为(255,255,0). 为什么叫颜色空间这个名字呢?是由于颜色有很多种表达方法,例如RGB,HSV, 不同的颜色空间,都可以表达不同的颜色,在计算机视觉中,需要针对不同的问题选择不同的颜色空间.

 

例如我们想找到照片中红色的球,可以得到图像的HSV空间,通过分析H通道来判断是否是红色,我们想定位照片中购物小票,仅需要在灰度空间中找就可以.下面是一些颜色空间的小知识点.

 

RGB

red green blue三个通道

YUV

YUV色彩模型来源于RGB模型,该模型的特点是将亮度和色度分离开,从而适合于图像处理领域,一般应用在模拟领域.

Y'= 0.299*R' + 0.587*G' + 0.114*B'
U'= -0.147*R' - 0.289*G' + 0.436*B' = 0.492*(B'- Y')
V'= 0.615*R' - 0.515*G' - 0.100*B' = 0.877*(R'- Y')

R' = Y' + 1.140*V'
G' = Y' - 0.394*U' - 0.581*V'
B' = Y' + 2.032*U'

YCbCr空间

YCbCr模型来源于YUV模型,YCbCr是 YUV 颜色空间的偏移版本.应用在数字视频,ITU-R BT.601建议公式为:

Y’ = 0.257*R' + 0.504*G' + 0.098*B' + 16
Cb' = -0.148*R' - 0.291*G' + 0.439*B' + 128
Cr' = 0.439*R' - 0.368*G' - 0.071*B' + 128

R' = 1.164*(Y’-16) + 1.596*(Cr'-128)
G' = 1.164*(Y’-16) - 0.813*(Cr'-128) - 0.392*(Cb'-128)
B' = 1.164*(Y’-16) + 2.017*(Cb'-128)

上面各个符号都带了一撇,表示该符号在原值基础上进行了伽马校正,伽马校正有助于弥补在抗锯齿的过程中,线性分配伽马值所带来的细节损失,使图像细节更加丰富。在没有采用伽马校正的情况下,暗部细节不容易显现出来,而采用了这一图像增强技术以后,图像的层次更加明晰了。所以说H264里面的YUV应属于YCbCr, 也可以点这里获得其他一些信息.

YUV420

一个4*4大小的yuv420是这样存放的 yyyyyyyyyyyyyyyyuuuuvvvv

HSV

hue saturate value HSV 在数学上定义为在 RGB 空间中的颜色的 R, G 和 B 的坐标的变换。h ∈ [0, 360)是角度的色相角,而 s, v ∈ [0,1] 是饱和度和亮度

opencv颜色空间的转换

//这种写法把图像按照灰度图加载上来,不管图像是彩图还是灰度图
Mat img = imread(filename, cv::IMREAD_GRAYSCALE)

//这种写法把图像按照彩图(RGB)加载上来,不管图像是彩图还是灰度图
Mat img = imread(filename, cv::IMREAD_COLOR)

//这种写法不图像转换为[0 1]之间的浮点数
Mat img = imread(filename, cv::IMREAD_COLOR)
Mat dst;
img.convertTo(dst, CV_32F, 1.0 / 255);

//这种写法从RGB图中得到灰度图
cvtColor(src_rgb, dst_grey, CV_BGR2GRAY)

//这种写法从RGB途中得到HSV图
cvtColor(src_rgb, dst_hsv, CV_BGR2HSV)

 

其它转换已经转换公式可参考opencv官方文档,https://docs.opencv.org/2.4/modules/imgproc/doc/miscellaneous_transformations.html

 

感慨:

刚才看了下,我的上一篇博客还是在2015年,5年过去了,物是人非啊.2015年的时候我换了一个城市工作,压力很大,几年来,有顺心的事,也有烦心的事,不过总体还不错,祝福一下自己.

最后的话:

我是一个工作10年的程序员,工作中经常会遇到需要查一些关键技术,但是很多技术名词的介绍都写的很繁琐,为什么没有一个简单的/5分钟能说清楚的博客呢. 我打算有空就写写这种风格的指南文档.CSDN上搜蓝色的杯子, 没事多留言,指出我写的不对的地方,写的排版风格之类的问题,让我们一起爱智求真吧.wisdomfriend@126.com是我的邮箱,也可以给我邮箱留言.

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值