开发者社区> 视频基础123> 正文

什么是YUV、RGB?

简介: 介绍什么是YUV
+关注继续查看
  • 由来

    • 通常我们用RGB表示一种彩色。计算机系统里的LCD显示的数据就是RGB来表示每个像素的颜色。而在我们生活里,有黑白电视机与彩色电视机两种,拍摄节目源时不可以用两种不同的摄像机来存放两种图像数据。所以为了兼容两种电视机,专家就引入YUV格式代替RGB,其中Y表示亮度, U和V表示色差。 黑白电视机只用Y信号, 而彩色电视机可由YUV转换成RGB再显示颜色。通常我们所用的YUV格式是 ITU-R 的标准 , 也叫YCbCr.
  • YUV与RGB的换算规则

    Y     Y = 0.299 x R + 0.587 x G + 0.114 x B + 0 
    U    Cb = -0.169 x R - 0.331 x G + 0.499 x B + 128 
    V    Cr = 0.499 x R - 0.418 x G - 0.0813 x B + 128 
    
  • YUV4:4:4

    • 其实就是YUV的数据各占用8位, 每个像素都由YUV组成
    • 同一行的相邻4个像素数据:

               Y0U0V0    Y1U1V1   Y2U2V2  Y3U3V3

      存储时: Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3

即每个像素YUV的数据都会存放起来,为什么叫4:4:4? 意思就是4个像素里的数据有4个Y, 4个U, 4个V

  • YUV4:2:2

    • 其实绝大部分相邻的两个像素,数据差异应不大。所以为了节省空间便于存储,丢失每个像素的部分数据。专家研究表 明我们人对亮度比较敏感,而对色彩不怎么敏感。所以每个像素的亮度Y数据是绝对不动的,而色差数据可以进行丢弃。
      同一行的相邻4个像素数据: Y0U0V0 Y1U1V1 Y2U2V2 Y3U3V3

         存储时:    Y0 U0  Y1 V1 Y2 U2 Y3 V3,每两个相邻的像素, 一个丢弃V数据,一个丢弃U数据

      为什么叫4:2:2?意思就是相邻的4个像素里有4个Y, 2个U, 2个V。 按上面存储的顺序也叫YUYV。但还原成RGB数据必须需要YUV, 像第一个像素只有Y0U0是没法还原的,这时只能用下一像素的V1数据。还原时的YUV: [Y0U0V1] [Y1U0V1] [Y2U2V3] [Y3U2V3],这样还原理论上会对图像的质量有影响的,但我们看不出来的.

  • YUV4:2:0

    • 专家们进一步研究表示,每一行的相邻两个像素与下一行同位置的两个像素数据差异不大,可以进一步的丢数据。如两行的像素数据:

          Y00U00V00   Y01U01V01   Y02U02V02   Y03U03V03  ....  
          Y88U88V88   Y89U89V89   Y90U90V90   Y91U91V91  ....

      存储时:Y00U00 Y01 Y02U02 Y03 ,每个像素的Y数据保留, 两个像素数据只保留一个U数据。这一行不保留V数据(YUV: 420),Y88V88 Y89 Y90V90 Y91,两个像素数据只保留一个V数据, 这行不保留U数据(YUV: 402),还原时只能相同位置的上下两行4个像素结合还原:

        Y00U00V88  Y01U00V88  Y02U02V90  Y03U02V90
        Y88U00V88  Y89U00V88  Y90U02V90  Y91U02V90

下一节介绍YUV数据两种存储方式(平面、打包)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Fffmpeg:从AVFrame中由YUV获取RGB
Fffmpeg:从AVFrame中由YUV获取RGB
30 0
YUV色彩空间
本文介绍 YUV存储格式,什么是色调?什么是色饱和度?人类视觉系统是如何感知YUV的?YUV比RGB好在哪里
25 0
RGB与YUV相互转换
本文介绍YUV跟RGB互转的各种公式,以及推导原理
33 0
理解 RGB & YUV 颜色编码
理解 RGB & YUV 颜色编码
110 0
RGB和YUV之比较【转】
转自:http://blog.csdn.net/qfnu08zzr/article/details/6763159 版权声明:本文为博主原创文章,未经博主允许不得转载。 RGB 原理    RGB 是从颜色发光的原理来设计定的,通俗点说它的颜色混合方式就好像有红、绿、蓝三盏灯,当它们的光相互叠合的时候,色彩相混,而亮度却等于两者亮度之总和(两盏灯的亮度嘛!),越混合亮度越高,即加法混合。
1238 0
YUV 与 RGB的转换
RGB 转换成 YUV Y = (0.257 * R) + (0.504 * G) + (0.
1195 0
常用YUV转RGB代码
<p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">常用YUV转RGB </p> <div class="dp-highlighter bg_java" style="font-family: Consolas, 'Courier New', Courier, mo
5134 0
FFMPEG:H264解码-SDL显示(RGB32、RGB24、YUV420P、YUV422)
<p><img src="http://img.blog.csdn.net/20141125163123578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFvMDUxNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""><br>
4758 0
视频与图像RGB/YUV格式详解
计算机彩色显示器显示色彩的原理与彩色电视机一样,都是采用R(Red)、G(Green)、B(Blue)相加混色的原理:通过发射出三种不同强度的电子束,使屏幕内侧覆盖的红、绿、蓝磷光材料发光而产生色彩。
928 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载