YUV和RGB转换

转载 2013年12月02日 16:45:07
RGB和YUV都是色彩空间,用于表示颜色,两者可以相互转化。 YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法(属于PAL)。YUV主要用于优化彩色视频信号的传输,使其向后兼容老式黑白电视。与R GB视频信号传输相比,它最大的优点在于只需占用极少的带宽(RGB要求三个独立的视频信号同时传输)。
中"Y"表示明亮度(Lumina nce或Luma),也就是灰阶值;是个基带信号。而"U"和"V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。U和V不是基带信号,它俩是被正交调制了的。
"亮度"是通过RGB输入信号来创建的,方法是将RGB信号的特定部分叠加到一起。"色度"则定义了颜色的两个方面-色调与饱和度,分别用Cr和CB来表 示。其中,Cr反映了RGB输入信号红色部分与RGB信号亮度值之间的差异。而CB反映的是RGB输入信号蓝色部分与RGB信号亮度值之同的差异。。通过 运算,YUV三分量可以还原出R(红),G(绿),B(兰)。
一、和rgb之间换算公式的差异
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<-->rgb
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)
Note: 上面各个符号都带了一撇,表示该符号在原值基础上进行了gamma correction
二、来源上的差异
yuv色彩模型来源于rgb模型,
该模型的特点是将亮度和色度分离开,从而适合于图像处理领域。

第一个公式是YUV转换RGB(范围0-255)时用的,第二个公式是用在YUV(601)也成为YCbCr转换RGB(范围0-255)时用的。

1.Y =   0.299R + 0.587G + 0.114B
U = -0.147R - 0.289G + 0.436B
V = 0.615R - 0.515G - 0.100B

   R = Y             + 1.14V
G = Y - 0.39U - 0.58V
B = Y + 2.03U

2.B= 1.164 * (Y - 16) + 2.018 * (U - 128)
G= 1.164 * (Y - 16) -   0.38 * (U - 128) - 0.813 * (V - 128)
R= 1.164 * (Y - 16)                             + 1.159 * (V - 128)

YUV与RGB格式转换

原文:http://www.cnblogs.com/dwdxdy/p/3713990.html YUV格式具有亮度信息和色彩信息分离的特点,但大多数图像处理操作都是基于RGB格式。 因此当...
  • huang546213693
  • huang546213693
  • 2015年11月26日 12:24
  • 12905

YUV与RGB互转各种公式 (YUV与RGB的转换公式有很多种,请注意区别!!!)

公式:基于BT.601-6 1.小数形式,full range 2.整数形式(减少计算量)full range 3. 量化后的公式( Y~(16,235) U/V ~(0,240) ) tv ...
  • u011258240
  • u011258240
  • 2017年01月18日 17:12
  • 4487

h264 rgb yuv之间的关联

一  名词解释h264(一种视频压缩算法),rgb(红绿蓝三基色),yuv(亮度,U颜色分量,V颜色分量) 1 h264是动态压缩的,基于帧内和帧间参考的 2 rgb是最直观的静态画面(彩色的LED灯...
  • fantasy_ARM9
  • fantasy_ARM9
  • 2017年10月09日 17:15
  • 273

YUV格式与RGB格式的换算

以下是标准公式 RGB 转换成 YUV Y = (0.257 * R) + (0.504 * G) + (0.098 * B) + 16 Cr = V = (0.439 * ...
  • zwz1984
  • zwz1984
  • 2015年12月31日 14:48
  • 2486

RGB与YUV之间的转换

原文网址    http://blog.sina.com.cn/s/blog_5713096b0100059i.html 先区分一下YUV和YCbCr YUV色彩模型来源于RGB模型, 该模型的特点...
  • qiuchangyong
  • qiuchangyong
  • 2016年11月19日 01:03
  • 873

YUV视频格式到RGB32格式转换的速度优化 上篇

                YUV视频格式到RGB32格式转换的速度优化 上篇                    HouSisong@GMail.com   2007.10.30  tag: ...
  • housisong
  • housisong
  • 2007年10月31日 11:37
  • 12362

YUV与RGB之间的转换

通过本文您可以学习到如何把图像转换为电视视频格式,笔者以一张24位BMP图像为例实现RGB与YUV相互转换。如果您对图像转换成电视场制的视频格式有疑惑,相信本文能使您了解更多关于图像与视频格式转换的细...
  • nick_TS16949
  • nick_TS16949
  • 2009年05月15日 16:23
  • 6121

YUV和RGB的相互转换实验报告

1、彩色空间转换的公式及分析;2、实验流程分析;3、关键代码及分析;4、实验结果及分析;5、结论...
  • qq_37650889
  • qq_37650889
  • 2017年03月10日 14:20
  • 608

RGB TO YUV转换原理及代码示例

 RGB TO YUV转换原理及代码示例[转] RGB TO YUV转换原理及代码示例                                        RGB TO ...
  • tianshide851049708
  • tianshide851049708
  • 2014年08月11日 14:31
  • 929

RGB 2 YUV 亮度与对比度调节

从BMP图中读取RGB值并转化成YUVBYTE *** rgb2yuv(const char *filename) { BYTE ***image; FILE *file; int i, ...
  • u012963126
  • u012963126
  • 2015年10月19日 23:14
  • 952
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:YUV和RGB转换
举报原因:
原因补充:

(最多只允许输入30个字)