关于YUV格式的一些总结

article/2025/9/23 3:58:20

关于YUV格式的一些总结

  • 一、YUV和YCbCr
    • 1、定义
    • 2、区别和联系
  • 二、不同的采样格式
    • 1、YUV444
    • 2、YUV440
    • 3、YUV422
    • 4、YUV420
    • 5、YUV411
    • 6、YUV410
  • 三、YUV数据排列格式
    • 1、四种数据排列方式
      • ①Planar Format
      • ②Semi-Planar Format
      • ③Tiled Semi-Planar Format
      • ④Interleaved Format
    • 2、常用YUV格式介绍
      • ①YV12、YU12格式(属于YUV420 Planar)
      • ②NV12、NV21格式(属于YUV420 Semi-Planar)
      • ③UYVY、VYUY、YUYV、YVYU(属于YUV422 Packed)
      • ④AYUV(属于YUV444 Packed)
      • ⑤P010、P016(属于YUV420 Semi-Planar)
      • ⑥P210、P216(属于YUV422 Semi-Planar)
      • ⑦Y210、Y216(属于YUV422 Packed)
      • ⑧Y410、Y416(属于YUV444 Packed)

一、YUV和YCbCr

1、定义

YUV,是一种颜色编码方法,常使用在各个视频处理组件中。Y表示明亮度(Luminance或Luma),也就是灰阶值,U和V表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。

YCbCr,这里的Y和YUV的Y相同,而Cb和Cr则为蓝色和红色的浓度偏移量成份,也是用来表示色彩的。

2、区别和联系

本质上来说两者没有什么区别,YCbCr 是在世界数字组织视频标准研制过程中作为ITU - R BT.601 建议的一部分,其实是YUV经过缩放和偏移的翻版。

YUV 主要是用在彩色电视中,用于模拟信号表示。YCbCr 是用在数字视频、图像的压缩和传输,例如H264、HEVC、JPEG、MPEG均采用此格式。一般人们所讲的YUV大多是指YCbCr。

二、不同的采样格式

写在前面:本部分参考如何理解 YUV ?、Chrominance Subsampling in Digital Images

一张图片是由一个个像素点组成,1920x1080即可理解为水平方向有1920个像素点,竖直方向有1080个像素点,每个像素都应当包含Y、U、V三个分量,但是在对色度二次采样的时候,会让Y分量共用UV分量,才出现了YUV422、YUV420等名称。

长图不好截图,裁成了很多段,下图说明了两种采样表示模式。
左边使用一个方框来表示一个像素点,每个小方块不管有没有涂黑都包含一个Y分量,被涂黑的方框内共用一组色度分量(即U+V分量),而那个小黑点就代表色度中心(没啥用,方便看而已)。

右边是二次采样模式标记法,即J:a:b表示法。图中的矩形框就是一个参考块,框里的圆点代表一个像素点,涂黑了就代表Y、U、V都有,没涂黑就只含有Y分量,至于左上角那个直角符号就是说明这个参考块取在最左上角。这个参考块的大小呢,一般取高度为2个像素点,宽度也就是J一般取4像素点,仔细看会发现参考块的左边有两个数字,这两个数字就代表每行黑点的个数。

其实,YUV420这些后面的数字就是通过4x2的参考块来确定的。可以观察一下下面参考块左边的小数字。
在这里插入图片描述

1、YUV444

在这里插入图片描述
上图是YUV444的采样模型,左图和右图都可以看出来每个像素点都有一对UV分量,这就相当于压根没有做色度二次采样。即每一个Y对应一组UV分量。

2、YUV440

在这里插入图片描述
上图是YUV440的采样模型,左图可以看出来在水平方向上每一个像素都有UV分量,而在竖直方向上每两个像素共用一对UV分量;在右图的表现就是第一行4个全黑,第二行四个全白。即每两个Y对应一组UV分量。

3、YUV422

在这里插入图片描述
上图是YUV422的采样模型,左图可以看出来在竖直方向上每一个像素都有UV分量,而在水平方向上每两个像素共用一对UV分量;在右图的表现就是每行两个黑两个白。即每两个Y对应一组UV分量。

4、YUV420

在这里插入图片描述
上图是YUV420的采样模型,左图可以看出来四个像素点共用一对UV分量,在水平方向上每两个像素共用一对UV分量,在竖直方向上也是每两个像素包含一对UV分量;在右图的表现就是第一行两个黑两个白,第二行全白。即每四个Y对应一组UV分量。

5、YUV411

在这里插入图片描述
上图是YUV411的采样模型,左图可以看出来在水平方向上每四个像素点共用一对UV分量,而在竖直方向上每个像素都包含一对UV分量;在右图的表现就是两行都是一个黑三个白。即每四个Y对应一组UV分量。

6、YUV410

在这里插入图片描述
上图是YUV410的采样模型,左图可以看出来8个像素点共用一对UV分量,在水平方向上每四个像素点共用一对UV分量,在竖直方向上每两个像素点共用一对UV分量;在右图的表现就是只有第一行有一个黑其他全白。即每八个Y对应一组UV分量。

三、YUV数据排列格式

1、四种数据排列方式

①Planar Format

Planar的YUV格式,即平面存储格式先连续存储所有像素点的Y,紧接着存储所有像素点的U或V,最后存储剩下的U或者V。例如YU12(也叫I420),属于YUV420p,四个像素共用一组UV分量;它的数据排列方式为:
Y1Y2Y3Y4Y5Y6Y7Y8 U1U2 V1V2(如下图)

②Semi-Planar Format

Semi-Planar的YUV格式,顾名思义,半平面存储格式,也就是先连续存储所有的Y分量,再交错存储U和V分量。例如NV12,属于YUV420sp,四个像素共用一组UV分量;它的数据排列方式为:
Y1Y2Y3Y4Y5Y6Y7Y8 U1V1 U2V2(如下图)
他还有个兄弟NV21,它的数据排列方式为:
Y1Y2Y3Y4Y5Y6Y7Y8 V1U1 V2U2

③Tiled Semi-Planar Format

Tiled Semi-Planar的YUV格式,Tiled SP格式不再以光栅扫描的顺序来排列数据,而是将图像以宏块划分(例如16x16像素为一个宏块),宏块划分是以从左到右、从上到下的顺序,如下图。宏块是一个正方形的像素区域,如果采样格式为YUV420sp,那么就会把这块像素区域以NV12/NV21的格式存储(这一点存疑,暂时没看到有文章具体说明),每一个宏块皆是如此,并且宏块之间的内存是连续的。

④Interleaved Format

Interleaved的YUV格式,又叫Packed Format,这种格式下YUV数据是交错存储的。举个栗子,UYVY,属于YUV422采样,水平方向每两个像素共用一组UV分量;它的数据排列方式为:
U1Y1V1Y2 U2Y3V2Y4

2、常用YUV格式介绍

本文都是小端模式下的,左端为低字节。

①YV12、YU12格式(属于YUV420 Planar)

YU12数据排列格式:Y1Y2Y3Y4Y5Y6Y7Y8 U1U2 V1V2
YV12数据排列格式:Y1Y2Y3Y4Y5Y6Y7Y8 V1V2 U1U2

②NV12、NV21格式(属于YUV420 Semi-Planar)

上面3.1.2讲过。

③UYVY、VYUY、YUYV、YVYU(属于YUV422 Packed)

UYVY数据排列格式:U1Y1V1Y2 U2Y3V2Y4
其他三种把顺序换换就行了。

④AYUV(属于YUV444 Packed)

A为透明度分量,数据排列格式为A、Y、U、V顺序存储,每个分量8bit。

⑤P010、P016(属于YUV420 Semi-Planar)

以上所介绍的四种YUV格式,均是每个分量占8bit,而P010格式每个分量占10bit,P016每个分量占16bit,仅此而已。它们的数据存储格式与NV12一致,只是Y、U、V所占bit数不同。

⑥P210、P216(属于YUV422 Semi-Planar)

同⑤,P210是10bit的,P216是16bit的,这两种也是Semi-Planar的,数据存储格式与NV12一致。

⑦Y210、Y216(属于YUV422 Packed)

Y210是10bit的,Y216是16bit的,这两种是Packed的。它们的数据存储格式为:
Y1U1Y2V1 Y3U2Y4V2

⑧Y410、Y416(属于YUV444 Packed)

同理,Y410是10bit的,Y416是16bit的。它们的数据排列如下图。上面的图为10bit的存储格式,下面的图为16bit的存储格式,A代表透明度(Alpha)。
在这里插入图片描述
在这里插入图片描述
最后,关于10bit YUV有一点需要注意一下,如下图,这其实是10bit数据存储时的真实面貌,用16bit来代替10bit,所以要把低六位bit全部置为0,高10bit为有效位。
在这里插入图片描述


http://chatgpt.dhexx.cn/article/MSS7aeYg.shtml

相关文章

音视频基础之YUV格式

1 YUV格式 1.1 YUV简介 YUV是一种颜色编码方式,类似于RGB颜色编码方式。YUV将亮度和色度分离,使用Y(明亮度)、U和V(色度、浓度)三个分量表示一个颜色。三个分量中UV分量只有颜色信息,如果图像只…

YUV格式与RGB格式

YUV与RGB格式介绍 一、RGB编码格式二、YUV编码格式YUV存储格式(分类):YUV采样方式:常见的YUV格式 三、RGB与YUV转换公式 一、RGB编码格式 RGB图像具有三个通道 R、G、B,分别对应红、绿、蓝三个分量,由三个…

YUV数据格式介绍

YUV图像数据格式介绍 1.yuv格式的分类和介绍 2.YUV三个分量的代表含义 Y分量:表示明亮度(Luma)即灰度值 UY分量:表示色彩和饱和度即图片的颜色 U颜色代表 blue Y 颜色代表red YUV从形式上也可以用YCbCr 表示 3.常见的YUV格式…

YUV 格式详解-史上最全

YUV 格式详解 介绍分类标准具体分类I420(属于 YUV 420 Plannar)YV12(属于 YUV 420 Plannar)NV12(属于 YUV 420 Semi-Planar)NV21(属于 YUV 420 Semi-Planar)I422(属于 YU…

YUV格式说明 YUYV JPEG

YUV420P,Y,U,V三个分量都是平面格式,分为 I420 和 YV12 。 I420 格式和 YV12 格式的不同处在U平面和V平面的位置不同。在I420格式中,U平面紧跟在Y平面之后,然后才是V平面(即&#xff1a…

视频YUV格式详解

YUV三种存储格式 yuv按照存储格式的不同分为三类,平面,半平面和打包格式三种格式。其中I420就是一种平面格式。 平面的YUV格式,就是YUV三种分量分别单独的连续存储,不交叉。先连续存储所有像素点的Y,紧接着存储所有像…

YUV图像的常见格式(图示)

摘要 在研究android Camera2 API的时候,涉及到采集视频信息。其中,在采集视频的时候,可以设置多种类型格式的图像数据,其中一个就是yuv_420_888,如果需要进行编码压缩,我们还需要将该格式的数据转转想要的…

YUV图像格式详解

一、YUV格式 YUV格式有两大类:packed(打包)格式和planar(平面)格式。 packed:通常是几个相邻的像素组成一个宏像素(macro-pixel),每个像素点的Y、U、V是连续交*存储的。 planar:使用三个数组分开存放Y、…

【图像格式】关于YUV格式的一些总结

关于YUV格式的一些总结 一、YUV和YCbCr 1、定义2、区别和联系 二、不同的采样格式 1、YUV4442、YUV4403、YUV4224、YUV4205、YUV4116、YUV410 三、YUV数据排列格式 1、四种数据排列方式 ①Planar Format②Semi-Planar Format③Tiled Semi-Planar Format④Interleaved Format 2…

YUV数据格式

与 RGB 编码方法类似,YUV 也是一种颜色编码方法。其中“Y”表示明亮度(Luminance 或 Luma),也就是灰阶值,U 和 V 表示的则是色度(Chrominance 或 Chroma),分别用 CrCb来表示,作用是描述影像色彩及饱和度,用…

YUV存储格式

YUV存储格式 YUV的存储格式planar(中文翻译:平面的;二维的;平坦的)packed (中文翻译:挤满塞满) YUV的采样方式存储方式YV12在内存中存储NV12在内存中存储YUYVUYVYYU422PYUV420P YUV420SPYUV420SPYUV420PYU1…

YUV格式到底是什么?

简介 YUV是视频、图片、相机等应用中使用的一类图像格式,实际上是所有“YUV”像素格式共有的颜色空间的名称。 与RGB格式(红 - 绿 - 蓝)不同,YUV是用一个称为Y(相当于灰度)的“亮度”分量和两个“色度”分…

YUV格式详解

介绍 我们都知道,YUV是一种表示颜色的模型,另外在大多数情况下,我们所说的YUV与YCbCr是一样的,其中Y指亮度分量,UV和CbCr都是色彩分量。 有一款YUV图像查看工具 YUV Eye ,可以使用这个工具查看YUV图像&am…

图像和流媒体 -- 详解YUV数据格式

如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78283369 我们在讲 FFmpeg 系列的时候,有提到 YUV 的。其中包括YUV播放器、简单的YUV格式介绍。 参看:FFmpeg再学习 -- 视音频基础知识 接下来详细研究一下&#x…

YUV格式详解【全】

YUV格式详解 YUVYUV 采样YUV 4:4:4YUV 4:2:2YUV 4:2:0YUV 4:1:1 planar formatPacked (or Interleaved)PlanarSemi-Planar 关系图 YUV 与 RGB 相互转换计算公式推导1. 模拟 RGB转YUV的推导公式2. 数字 RGB to YUV 1. 模拟YUV→模拟RGB2. 数字YUV→数字RGBYUV与RGB的相互转换会损…

LaTeX Error: Unknown option quiet for package fontspec

编译方式错误,fontspec是基于Xe和Le开发的,所以不能使用pdf**进行编译

Latex Error:Two \documentclass or \documentstyle commands. \documentclass{

今天尝试在latex中使用markdown语法时出现了如下错误: Two \documentclass or \documentstyle commands. \documentclass{ 在网上查找了好多地方,都说是因为用了两次\documentclass命令导致的,可是我能确定我只用了一次\documentclass命令,最后我终于找到了问题所在。因为我的…

介绍Latex神器——Overleaf的方法

向大家介绍2个神网站,一个是腾讯在线文档,一个是overleaf 腾讯在线文档就不多介绍了,可以直接百度网址并使用,它有2个亮点,1.特别简洁,高效。2.可以多人在线,共同编辑同一个文档。(在…

LaTeX:斜线表头的表格制作

参考 LaTeX:斜线表头的表格制作 - 云社区 - 腾讯云 需求:正规表格的左上角"第一个单元是表头",一般都是用"斜线分区"的!本文介绍其实现方法:不仅适用在表头,表中任何一个单元位置都适…

latex报错 Misplaced \noalign.

表格最后一行少了双斜杠\\