始终保持视频数据YUV联系,因为基于其产品的组织不同的公司格不同的类型定义,派生出多种不同YUV格公式。

大体,YUV从在点的形式的像素组织中,有两个:1.planer状态。2.packet状态。

planar模式示例: Y0Y1....Yn  U0U1...Um  V0V1..Vm,YUV三个通道分别连续存储;

packet模式举例: Y0U0V0 + Y1U1V1 + ... + YnUnVn,YUV三个通道混合存储。

planar模式有利于编解码的输入输出;packet模式有利于视频数据採集输入与显示输出。



因为人眼对于色度不敏感,因此能够减少色度採样。这样能够减少处理数据量。也减少存储空间。

依据UV採样的不同,YUV格式又能够分为400。420,422,444等格式。

400 灰度数据,没有色度数据;

420 色度在水平和垂直两个方向上,採样率都减半。这样每相邻的4个Y公用一个U,V数据。U,V的数据量都为Y的1/4. (420这个名字起的很不好,令人产生误解,可是约定俗成就这个延续下来了。



422 色度在水平方向上採样率减半。这样每行相邻的2个Y公用一个U,V数据,U,V的数据量都为Y的1/2.

444 色度採样率和亮度一样。每一个Y都有各自的U,V数据,U,V的数据量都和Y同样。

还有种411格式。不经常使用,就不关注了。

一般称400用8bit来表征一个像素点。420是12比特,422是16比特,444是24比特。

用总的数据量/像素个数 就是这个比特数。比如420格式 总数据量是(w*h + w*h/4 + w*h/4)*8比特 = 12*w*h比特。

YUV经常使用格式

  格式 Mode 通道 比特 演示样例
  GRAY Planar 1 8 400. Y0Y1...Y15
  I420 Planar 3 12 420. Y0Y1..Y15  U0U1U2U3 V0V1V2V3   * 经常使用 理解为YU12
  IYUV Planar 3 12 同I420
  YUV420P Planar 3 12 同I420
  YUVJ420P Planar 3 12 同I420,不同的是色彩转换公式,YUVJ使用  JPEG 公式, 输出数据范围[0..255], I420的范围是 [16-240]
  YV12 Planar 3 12 420. Y0Y1..Y15  V0V1V2V3 U0U1U2U3   * 经常使用 非常多编解码器都用这个格式输入输出
  YVU420P Planar 3 12 同YV12
  NV12 Planar 2 12 420. Y0Y1..Y15  U0V0U1V1.....U3V3 *经常使用
  NV21 Planar 2 12 420. Y0Y1..Y15  V0U0V1U1.....V3U3
  YV16 Planar 3 16 422. Y0Y1..Y15  V0V1..V7 U0U1..U7
  YUV422P Planar 3 16 同YV16
  I422 Planar 3 16 同YV16
  UYVY Packed 1 16 422. U0Y0V0Y1|U1Y2V1Y3|...
  Y422 Packed 1 16 同UYVY
  YUY2 Packed 1 16 422. Y0U0Y1V0|Y2U1Y3V1|...  *非常多摄像机的输出格式
  YUV422 Packed 1 16 同YUY2
  YUYV Packed 1 16 同YUY2
  YVYU Packed 1 16 422. Y0V0Y1U0|Y2V1Y3U1|...
  YU16 Planar 3 16 422. Y0Y1..Y15 U0U1..U7 V0V1..V7
  NV16 Planar 2 16 422. Y0Y1..Y15  U0V0U1V1..U7V7
  YV24 Planar 3 24 444. Y0Y1..Y15  V0V1..V15 U0U1..U15
  I444 Planar 3 24 同YV24
  IYU2 Packed 1 24 444. U0Y0V0|U1Y1V1|...

參考:

http://www.fourcc.org/yuv.php

http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html

版权声明:本文博主原创文章,博客,未经同意不得转载。

YUV摘要格式的更多相关文章

  1. YUV视频格式详解(翻译自微软文档)

    原文: https://docs.microsoft.com/en-us/previous-versions/aa904813(v=vs.80) YUV视频格式详解(翻译自微软文档)https://b ...

  2. YUV / RGB 格式及快速转换算法

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

  3. Android 音视频编解码——YUV视频格式详解

    一.YUV 介绍 YUV是一种颜色编码方方式,通常由彩色摄像机进行取像,然后把取得的彩色图像信号经过分色.分别放大校正后得到RGB,再经过矩阵变换得到亮度信号Y和两个色差信号B-Y(即U).R-Y(即 ...

  4. 音视频编解码——YUV视频格式详解

    一.YUV 介绍 YUV是一种颜色编码方方式,通常由彩色摄像机进行取像,然后把取得的彩色图像信号经过分色.分别放大校正后得到RGB,再经过矩阵变换得到亮度信号Y和两个色差信号B-Y(即U).R-Y(即 ...

  5. 音视频编解码: YUV采样格式中的YUV444,YUV422,YUV420理解

    YUV各种采样格式的说明 通常我们用RGB表示一种彩色.计算机系统里的LCD显示的数据就是RGB来表示每个像素的颜色.而在我们生活里,有黑白电视机与彩色电视机两种,拍摄节目源时不可以用两种不同的摄像机 ...

  6. YUV RGB 格式转换

    第一个公式是RGB转YUV(范围0-255)时用的,第二个公式是用在YUV转换RGB(范围0-255)时用的.1. Y = ; U = -; V = ; 黑色:Y=16 ,U= V =128 红色:Y ...

  7. YUV格式介绍

    原文链接:http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html YUV格式有两大类:planar和packed.对于plana ...

  8. 【Android】直播必备之YUV使用总结 —— Android常用的几种格式:NV21/NV12/YV12/YUV420P的区别

    说明 因工作方面接触到图像处理这一块,需要对手机摄像头采集的原始帧做Rotate或者Scale,但无奈对此的了解少之又少,于是网上搜了一顿,完事后将最近所学总结一下,以方便之后的人别踩太多坑. 首先想 ...

  9. 关于yuv格式

    首先,内存分布        1:YUV420          (1):I420:              YYYYYYYY UU VV    =>YUV420P          (2): ...

随机推荐

  1. GCC的使用(编译,链接,运行)

    以下这三篇日志非常的好,真的非常的好.介绍使用gcc编译,链接,运行c程序. 1.http://lveyo.iteye.com/blog/240578 2.http://lveyo.iteye.com ...

  2. linux查看某个进程CPU消耗较高的具体线程或程序的方法

      目前我们的监控,可以发现消耗较高CPU的进程(阀值为3个CPU),通过监控我们可以找到消耗较高CPU的进程号: 通过进程号pid,我们在linux上可以通过top –H –p <pid> ...

  3. (九)通过几段代码,理清angularJS中的$injector、$rootScope和$scope的概念和关联关系

    $injector.$rootScope和$scope是angularJS框架中比較重要的东西,理清它们之间的关系,对我们兴许学习和理解angularJS框架都很实用. 1.$injector事实上是 ...

  4. .NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper

    .NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper 參考演示样例代码,例如以下所看到的: /// <summary> /// MySql ...

  5. android一些面试题目

    1.ListView怎么提高滑动效率 2.说下你做过项目的包的构架,(联网,解析,activity,database) 重点 3.载入大量图片怎么做(包含小图和查看大图) 怎么降低一次跟server的 ...

  6. SQL Server :理解GAM和SGAM页

    原文:SQL Server :理解GAM和SGAM页 我们知道SQL Server在8K 的页里存储数据.分区就是物理上连续的8个页.当我们创建一个数据库,数据文件会被逻辑分为页和区,当用户对象创建时 ...

  7. 工作经常使用的SQL整理,实战篇(三)

    原文:工作经常使用的SQL整理,实战篇(三) 工作经常使用的SQL整理,实战篇,地址一览: 工作经常使用的SQL整理,实战篇(一) 工作经常使用的SQL整理,实战篇(二) 工作经常使用的SQL整理,实 ...

  8. Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils

    1.错误叙述性说明 2014-7-10 23:12:23 org.apache.catalina.core.StandardContext filterStart 严重: Exception star ...

  9. 谈论高并发(二十二)解决java.util.concurrent各种组件(四) 深入了解AQS(二)

    上一页介绍AQS其基本设计思路以及两个内部类Node和ConditionObject实现 聊聊高并发(二十一)解析java.util.concurrent各个组件(三) 深入理解AQS(一) 这篇说一 ...

  10. ASP.NET回车提交事务

    浅析ASP.NET回车提交事件[转] ASP.NET回车提交事件其实说到底并不是ASP.NET 的编程问题,却是关于html form 中的submit 按钮就是如何规划的具体讨论. 也可归于ASP. ...