文档章节

RGB、YUV和YCrCb之间的关系

 国仔饼
发布于 2015/06/13 13:10
字数 594
阅读 43
收藏 0

YUV和YCbCr之间的差

 

一、和rgb之间换算公式的差异

yuv<-->rgb

Y'= 0.299*R' + 0.587*G' + 0.114*B' [0~255]

U'= -0.147*R' - 0.289*G' + 0.436*B' = 0.492*(B'- Y') [-111.18~111.18]

V'= 0.615*R' - 0.515*G' - 0.100*B' = 0.877*(R'- Y') [-156.825~156.825]

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 [16~235.045]

Cb' = -0.148*R' - 0.291*G' + 0.439*B' + 128 [16.055~239.945]

Cr' = 0.439*R' - 0.368*G' - 0.071*B' + 128 [16.055~239.945]

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)

 

二、来源上的差异

yuv色彩模型来源于rgb模型,

该模型的特点是将亮度和色度分离开,从而适合于图像处理领域。

应用:basic color model used in analogue color TV broadcasting.

 

YCbCr模型来源于yuv模型。YCbCr is a scaled and offset version of the YUV color space.

应用:数字视频,ITU-R BT.601 recommendation

 

ps:

通过上面的比较可以确定,我们在h.264,mpeg等编码标准中用的yuv其实是YcbCr,大家不要被名称搞混淆了。

YUV的格式在存储上有两类布局: Packed和Plannar。Packed的方式就是把相邻几个象素打包起来。比如把水平方向2个象素打包到一个DWORD里。Planner方式则相反。Y分量和UV分量完全分开来保存。

YUY2 是packed方式的。水平方向两个像素打包到一个DWORD,并且UV采样率只有Y的一半,这符合人的视觉特征能有效的压缩数据,具体布局为[Y0, U0,Y1,V0]。 这种格式常见于MPEG1的解码“器”。

YV12 是plannar方式。对于一个MxN大小的视频来说,数据布局为[Y:M x N] [U:M/2 x N/2] [V:M/2 x N/2]. 也就是说UV的采样率在水平和垂直方向上都只有Y的一半。则常见于H.264的解码“器”。

NV12、NV21也都属于plannar方式,叫做YUV420SP、YVU420SP,而前面说的YV12是YUV420P,区别在于NV12、NV21的U、V是交叉放一起的。NV12、NV21这两种方式唯一的差别是U、V的顺序。

NV12  

[Y0, Y1]

[Y2, Y3]

[U0, V0]

 

NV21

[Y0, Y1]

[Y2, Y3]

[V0, U0]

 

本文转载自:http://blog.csdn.net/sunshine1314/article/details/612485

下一篇: Java 线程
粉丝 0
博文 32
码字总数 7466
作品 0
深圳
私信 提问
Android实现基于肤色的皮肤检测

在android上实现 基于肤色的皮肤检测的几个技术要点: (1)android上使用相机预览,包括相机api的使用和surfaceview的应用。 (2)android上相机使用的色彩空间NV12. (3)NV12是YCrCb的色彩空...

老崔No1
2013/04/22
0
7
YCrCb与YPrPb的含义与区别

对一种颜色进行编码的方法统称为"颜色空间"或"色域",RGB和YUV,都是颜色空间的种类, Y'UV, YUV, YCbCr,YPbPr等专有名词都可以称为YUV,彼此有重叠 分量视频信号(色差信号),通常采用YCbCr...

u010468553
2018/02/26
0
0
YUV / RGB 格式分析及快速查表算法设计

1 前言 自然界的颜色千变万化,为了给颜色一个量化的衡量标准,就需要建立色彩空间模型来描述各种各样的颜色,由于人对色彩的感知是一个复杂的生理和心理联合作用的过程,所以在不同的应用领...

鉴客
2011/10/01
404
0
色差信号转RGB信号,YCBCR 转 VGA

一个日本人做的,牛人: http://elm-chan.org/works/yuv2rgb/report.html YUV(YCbCr) to RGB converter May 6, 2002 Recently, most digital video equipments, such as video recorder, DVD......

长平狐
2012/06/12
740
0
opencv学习笔记--sobel算子

声明:虽然肯定没人看,但是我要说明,里面的内容都是我从官方文档上抄的,仅作为个人复习之用,并非原创。 边缘检测原理 你可以看到在 边缘 ,相素值显著的 改变 了。表示这一 改变 的一个方...

x670127565
2017/07/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Feign Retryer的默认重试策略测试

1、Feign配置 @Configurationpublic class FeignConfig { @Value("${coupon_service.url:http://localhost:8081}") private String couponServiceUrl; @Bean publ......

moon888
14分钟前
1
0
关于不同域名下的session共享问题

如果登录,首页,分类,列表,产品都在不同的二级域名下,主域名不变,一定要保证里面的版本问题,不能为了更新而更新,这样哪个下面的session都访问不了。

dragon_tech
16分钟前
1
0
iOS 中文拼音互转(好东西记录一下)

PinYin4Objc

_____1____
24分钟前
1
0
fabric private data实战

Hyperledger Fabric private data是1.2版本引入的新特性,fabric private data是利用旁支数据库(SideDB)来保存若干个通道成员之间的私有数据,从而在通道之上又提供了一层更灵活的数据保护...

汇智网教程
24分钟前
1
0
es之聚合查询汇总

记录一下最近用到的es聚合查询,感觉常见的应该多遇上了,下午抽空更新

我真是小菜鸡
24分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部