RGB颜色空间与YCbCr颜色空间的互转

在人脸检测中会用到YCbCr颜色空间,因此就要进行RGB与YCbCr颜色空间的转换。在下面的公式中RGB和YCbCr各分量的值的范围均为0-255。

RGB转到YCbCr:

float y= (color.r * 0.256789 + color.g * 0.504129 + color.b * 0.097906)+ 16.0;

float cb= (color.r *-0.148223 + color.g * -0.290992 + color.b * 0.439215)+ 128.0;

float cr= (color.r * 0.439215 + color.g * -0.367789 + color.b *-0.071426)+ 128.0;

YCbCr转到RGB:

  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)

时间: 2024-12-14 23:12:08

RGB颜色空间与YCbCr颜色空间的互转的相关文章

RGB与16进制色互转

点击进入新版 <前端在线工具站> CSS, JavaScript 压缩YUI compressor, JSPacker...HTML特殊符号对照表PNG,GIF,JPG... Base64HTML JS互转URL编码?解码JSON美化.格式化RGB与16进制互转在线编辑运行代码UTF-8  与中文互转 前端开发QQ群 1群:108827104(1000人群) 2群:165509577(1000人群) 3群:40961188(2000人群) 4群:159477439(1000人群) 5群:153

RGB与YCbCr颜色空间的互相转换公式

http://blog.csdn.net/a14730497/article/details/17886127 Y:明亮度(Luminance或Luma),也就是灰阶值.“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起. Cb:反映的是RGB输入信号蓝色部分与RGB信号亮度值之间的差异.Cr:反映了RGB输入信号红色部分与RGB信号亮度值之间的差异. 在以下两个公式中RGB和YCbCr各分量的值的范围均为0-255. RGB转换为YCbCr Y   = 0.257*R

RGB 颜色空间转 HSI 颜色空间的matlab程序实现

程序实现的时候注意把RGB像素值归一化就是了,然后千千万万要根据公式来,不能大意,我之前就有theta为复数的情况,是sqrt对负数进行运算进而得到了复数的结果(BUG) 程序是由matlab实现的,利用了矩阵运算的便捷性,这里如果直接操作单个元素的话...会很慢很慢,慢到能把我电脑卡死...如果改写成C可能程序的性能还是会有问题 好吧,介绍一下HSI和RGB的转化方法 %****************************************** % Code writer : EOF

学习笔记(2)---Matlab 图像处理相关函数命令大全

Matlab 图像处理相关函数命令大全 一.通用函数: colorbar  显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ colorbar(h) \ h=colorbar(...) \ colorbar(...,'peer',axes_handle) getimage 从坐标轴取得图像数据 语法:A=getimage(h) \ [x,y,A]=getimage(h) \ [...,A,flag]=getimage(h) \

图象处理通用函数

一.通用函数: colorbar 显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ colorbar(h) \ h=colorbar(...) \ colorbar(...,'peer',axes_handle) getimage 从坐标轴取得图像数据 语法:A=getimage(h) \ [x,y,A]=getimage(h) \ [...,A,flag]=getimage(h) \ [...]=getimage imshow

RGB和HSV颜色空间

转载:http://blog.csdn.net/carson2005/article/details/6243892 RGB颜色空间: RGB(red,green,blue)颜色空间最常用的用途就是显示器系统(计算机.电视机等都是采用RGB颜色空间来进行图像显示).一般来说,电脑,电视机等是利用三个电子枪分别发射R分量,G分量,B分量的电子束,以此来激发屏幕上的RGB三种颜色的荧光粉,从而发出不同颜色.不同亮度的像素.进而组成了一幅图像:很明显,RGB颜色空间利用了物理学中的三原色叠加从而组成产

RGB、HSV、HSI颜色空间

概述 这篇博客主要介绍RGB.HSV和HSI颜色空间以及转换公式. RGB颜色空间 定义 RGB颜色空间通常用于显示器系统,例如:电脑.电视机的显示器使用的都是RGB颜色空间.利用物理学中的三原色叠加原理,可以产生各种颜色.在RGB颜色空间中,R.G.B各颜色分量彼此独立. RGB颜色空间的缺点在于不符合人眼的视觉特性,直接处理多有不便,因此通常需要转换到其他颜色空间进行处理,最后再转换到RGB颜色空间,用于显示器显示. 数学模型 RGB颜色空间中,R.G.B三个分量彼此独立,所能表示的范围也相

颜色空间YUV简单介绍

YUV概念:YUV是被欧洲电视系统所採用的一种颜色编码方法(属于PAL,Phase Alternation Line),是PAL和SECAM模拟彩色电视制式採用的颜色空间. 当中的Y.U.V几个字母不是英文单词的组合词,Y代表亮度,事实上Y就是图像的灰度值:UV代表色差,U和V是构成彩色的两个分量.在现代彩色电视系统中.通常採用三管彩色摄影机或彩色CCD摄影机进行取像,然后把取得的彩色图像信号经分色.分别放大校正后得到RGB,再经过矩阵变换电路得到亮度信号Y和两个色差信号B--Y(即U).R--

图像处理之基础---肤色检测算法 - 基于不同颜色空间简单区域划分的皮肤检测算法

本文涉及的很多算法,在网络上也有不少同类型的文章,但是肯定的一点就是,很多都是不配代码的,或者所附带的代码都是象征性的,速度慢,不优雅,不具有实用价值,本文努力解决这些问题. 文中各算法出现的顺序并不代表算法的优越性,仅仅是作者随机排布的而已. 2.基于RGB颜色空间的简单阈值肤色识别 在human skin color clustering for face detection一文中提出如下简单的判别算式: R>95 And G>40 And B>20 And R>G And R