YUV 格式详解-史上最全

article/2025/9/23 4:21:21

YUV 格式详解

    • 介绍
    • 分类标准
    • 具体分类
      • I420(属于 YUV 420 Plannar)
      • YV12(属于 YUV 420 Plannar)
      • NV12(属于 YUV 420 Semi-Planar)
      • NV21(属于 YUV 420 Semi-Planar)
      • I422(属于 YUV 422 Plannar)
      • YV16(属于 YUV 422 Plannar)
      • NV16(属于 YUV 422 Semi-Planar)
      • NV61(属于 YUV 422 Semi-Planar)
      • YUVY(属于 YUV 422 Interleaved)
      • UYVY(属于 YUV 422 Interleaved)
      • I444(属于 YUV 444 Plannar)
      • YV24(属于 YUV 444 Plannar)
      • NV24(属于 YUV 444 Semi-Planar)
      • NV42(属于 YUV 444 Semi-Planar)

介绍

音视频领域的人恐怕没有人不知道 YUV,但是 YUV 本身有好多种变种,名称也各种各样,本文就位大家总结一下YUV 的各种格式。

在开始之前,先向大家介绍一款 YUV 图像的查看工具—YUV Eye,大家可以使用这个工具,查看 YUV 图像。有的时候在进行 Debug 的时候,有这样一个工具会方便很多。

https://www.zzsin.com/YUVEye.html
在这里插入图片描述

首先先介绍一下 YUV,我们都知道,YUV 是一种表示颜色的模型。但是我们常说的 YUV ,其实指的是 YCbCr,其中Y是指亮度分量,Cb指蓝色色度分量,而Cr指红色色度分量,是标准 YUV 的一个翻版,此文中,我们就用 YUV 指代 YCbCr 了。

我们再来看一下 YUV 的常见格式。你一定看过很多文章介绍 YUV 格式,但是对于 YUV 到底存在哪些格式,每种格式又有哪些变种,哪些别名,可能并没有一个系统的认识。没关系,我们用这篇文章帮你总结分析。

我们对 YUV 格式先进性一下分类,大家可以参考下图。

在这里插入图片描述

分类标准

首先,我们可以将 YUV 格式按照数据大小分为三个格式,YUV 420,YUV 422,YUV 444。由于人眼对 Y 的敏感度远超于对 U 和 V 的敏感,所以有时候可以多个 Y 分量共用一组 UV,这样既可以极大得节省空间,又可以不太损失质量。这三种格式就是按照人眼的特性制定的。

  • YUV 420,由 4 个 Y 分量共用一套 UV 分量,
  • YUV 422,由 2 个 Y 分量共用一套 UV 分量
  • YUV 444,不共用,一个 Y 分量使用一套 UV 分量

按照多个 Y 分量共用一个 UV 的方式,我们可以把 YUV 分为 420,422,444 三种类型,而在这三种类型之下,我们又可以按照 YUV 的排列储存顺序,将其细分为好多种格式,这些格式数量繁多,又不好记忆,这为我们学习过程中造成了不少困难。下面我就为大家一一介绍。

首先,我们将可以按照 YUV 的排列方式,再次将 YUV 分成三个大类,Planar,Semi-Planar 和 Packed。

  • Planar YUV 三个分量分开存放
  • Semi-Planar Y 分量单独存放,UV 分量交错存放
  • Packed YUV 三个分量全部交错存放

按照这三种方式,我们就可以将 YUV 格式进行比较细致的分类了。

具体分类

I420(属于 YUV 420 Plannar)

I420 是 YUV 420 Planar 的一种,YUV 分量分别存放,先是 w * h 长度的 Y,后面跟 w * h * 0.25 长度的 U, 最后是 w * h * 0.25 长度的 V,总长度为 w * h * 1.5。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U U U
U U U
U U U
V V V
V V V
V V V

YV12(属于 YUV 420 Plannar)

YV12 是 YUV 420 Planar 的一种,YUV 分量分别存放,先是 w * h 长度的 Y,后面跟 w * h * 0.25 长度的 V, 最后是 w * h * 0.25 长度的 U,总长度为 w * h * 1.5。与 I420 不同的是,YV12 是先 V 后 U

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V V V
V V V
V V V
U U U
U U U
U U U

NV12(属于 YUV 420 Semi-Planar)

NV12 是 YUV 420 Semi-Planar 的一种,Y 分量单独存放,UV 分量交错存放,UV 在排列的时候,从 U 开始。总长度为 w * h * 1.5。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U V U V U V
U V U V U V
U V U V U V

NV21(属于 YUV 420 Semi-Planar)

NV21 是 YUV 420 Semi-Planar 的一种,Y 分量单独存放,UV 分量交错存放,与 NV12 不同的是,UV 在排列的时候,从 V 开始。总长度为 w * h * 1.5。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V U V U V U
V U V U V U
V U V U V U

I422(属于 YUV 422 Plannar)

I422 是 YUV 422 Planar 的一种,YUV 分量分别存放,先是 w * h 长度的 Y,后面跟 w * h * 0.5 长度的 U, 最后是 w * h * 0.5 长度的 V,总长度为 w * h * 2。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U U U U U U
U U U U U U
U U U U U U
V V V V V V
V V V V V V
V V V V V V

YV16(属于 YUV 422 Plannar)

YV16 是 YUV 422 Planar 的一种,YUV 分量分别存放,先是 w * h 长度的 Y,后面跟 w * h * 0.5 长度的 V, 最后是 w * h * 0.5 长度的 U,总长度为 w * h * 2。与 I422 不同的是,YV16 是先 V 后 U

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V V V V V V
V V V V V V
V V V V V V
U U U U U U
U U U U U U
U U U U U U

NV16(属于 YUV 422 Semi-Planar)

NV16 是 YUV 422 Semi-Planar 的一种,Y 分量单独存放,UV 分量交错存放,UV 在排列的时候,从 U 开始。总长度为 w * h * 2。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U V U V U V
U V U V U V
U V U V U V
U V U V U V
U V U V U V
U V U V U V

NV61(属于 YUV 422 Semi-Planar)

NV61 是 YUV 422 Semi-Planar 的一种,Y 分量单独存放,UV 分量交错存放,UV 在排列的时候,从 V 开始。总长度为 w * h * 2。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V U V U V U
V U V U V U
V U V U V U
V U V U V U
V U V U V U
V U V U V U

YUVY(属于 YUV 422 Interleaved)

YUVY 属于 YUV 422 Interleaved 的一种。事实上,Interleaved 是属于 Packed 的,但是在 422 中,用 Interleaved 更加形象一些。在 Packed 内部,YUV 的排列顺序是 Y U V Y,两个 Y 共用一组 UV。

Y U V Y   Y U V Y   Y U V Y
Y U V Y   Y U V Y   Y U V Y
Y U V Y   Y U V Y   Y U V Y
Y U V Y   Y U V Y   Y U V Y
Y U V Y   Y U V Y   Y U V Y
Y U V Y   Y U V Y   Y U V Y
  • VYUY(属于 YUV 422 Interleaved)
    VYUY 属于 YUV 422 Interleaved 的一种。在 Packed 内部,YUV 的排列顺序是 VYUY,两个 Y 共用一组 UV。
V Y U Y   V Y U Y   V Y U Y
V Y U Y   V Y U Y   V Y U Y
V Y U Y   V Y U Y   V Y U Y
V Y U Y   V Y U Y   V Y U Y
V Y U Y   V Y U Y   V Y U Y
V Y U Y   V Y U Y   V Y U Y

UYVY(属于 YUV 422 Interleaved)

UYVY 属于 YUV 422 Interleaved 的一种。在 Packed 内部,YUV 的排列顺序是 UYVY,两个 Y 共用一组 UV。

U Y V Y   U Y V Y   U Y V Y
U Y V Y   U Y V Y   U Y V Y
U Y V Y   U Y V Y   U Y V Y
U Y V Y   U Y V Y   U Y V Y
U Y V Y   U Y V Y   U Y V Y
U Y V Y   U Y V Y   U Y V Y

I444(属于 YUV 444 Plannar)

I444 属于 YUV 444 Plannar 的一种。YUV 分量分别存放,先是 w * h 长度的 Y,后面跟 w * h 长度的 U, 最后是 w * h 长度的 V,总长度为 w * h * 3。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U U U U U U
U U U U U U
U U U U U U
U U U U U U
U U U U U U
U U U U U U
V V V V V V
V V V V V V
V V V V V V
V V V V V V
V V V V V V
V V V V V V

YV24(属于 YUV 444 Plannar)

YV24 属于 YUV 444 Plannar 的一种。YUV 分量分别存放,先是 w * h 长度的 Y,后面跟 w * h 长度的 V, 最后是 w * h 长度的 U,总长度为 w * h * 3。与 I444 不同的是,YV24 是先排列 V。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V V V V V V
V V V V V V
V V V V V V
V V V V V V
V V V V V V
V V V V V V
U U U U U U
U U U U U U
U U U U U U
U U U U U U
U U U U U U
U U U U U U

NV24(属于 YUV 444 Semi-Planar)

NV24 是 YUV 444 Semi-Planar 的一种,Y 分量单独存放,UV 分量交错存放,UV 在排列的时候,从 U 开始。总长度为 w * h * 3。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U V U V U V U V U V U V 
U V U V U V U V U V U V 
U V U V U V U V U V U V 
U V U V U V U V U V U V 
U V U V U V U V U V U V 
U V U V U V U V U V U V 

NV42(属于 YUV 444 Semi-Planar)

NV42 是 YUV 444 Semi-Planar 的一种,Y 分量单独存放,UV 分量交错存放,UV 在排列的时候,从 V 开始。总长度为 w * h * 3。

Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V U V U V U V U V U V U
V U V U V U V U V U V U
V U V U V U V U V U V U
V U V U V U V U V U V U
V U V U V U V U V U V U
V U V U V U V U V U V U
  • YUV 444 Packed
    这个就不解释了。。。
Y U V   Y U V   Y U V   Y U V   Y U V   Y U V
Y U V   Y U V   Y U V   Y U V   Y U V   Y U V
Y U V   Y U V   Y U V   Y U V   Y U V   Y U V
Y U V   Y U V   Y U V   Y U V   Y U V   Y U V
Y U V   Y U V   Y U V   Y U V   Y U V   Y U V
Y U V   Y U V   Y U V   Y U V   Y U V   Y U V

最后,加上一个音视频的QQ交流群~~~

814462428


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

相关文章

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.

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

3、显示锁和AQS

3、显示锁和AQS 原子操作CAS atom(不可分割) 什么是原子操作?如何实现原子操作? synchronized 基于阻塞的锁机制 可以实现,但会引发以下问题 1、被阻塞的线程优先级很高 2、拿到锁的线程一直不释放锁怎么办&#x…

LaTex绘制跨行跨列的三线表

有时表格某单元格需要横跨几列,我们可以使用 \multicolumn 命令, 同时使用 booktabs 宏包的 \cmidrule 命令来画横跨几列的横线。它们的语 法如下: \begin{table }[ htbp]\centering \begin{tabular }{ lll}\toprule & \multicolumn{2}{…

Springer latex期刊模板使用的坑

1.之前都是用这个编译,Springer 期刊不是这个,是pdflatex 解决方案:可以上面选项换成pdflatex也可以加这命令\documentclass[pdflatex,sn-basic]{sn-jnl}(注意documentclass只能出现一次,所以pdflatex可以加在原有的d…

LaTeX--5--一个文档的基本结构/导言区/标题_作者_日期

本期的主要内容有: 一个 LaTeX 文档的基本结构导言区常用排版命令标题、作者与日期字体与字号特殊字符的输入一些常用排版效果 另外我们还会穿插介绍一些 LaTeX 的基本概念,在文中加粗表示并附上英文。 1. 一个 LaTeX 文档的基本结构 承接上一期&…