YUV你究竟了解多少

114 阅读4分钟

YUV 的前世今生

YUV是一种色彩编码模式,其中Y表示亮度(Luminance),也就是灰度值,UV分别表示色度(Chrominance)和浓度(Chroma),作用是描述图像色彩和饱和度,用于指定像素的颜色。

YUV设计初衷是为了解决彩色电视机与黑白电视的兼容性,从rgb的颜色空间,转换为yuv的颜色空间。其利用了人类眼睛的生理特性(人眼对亮度变化的敏感性高于对颜色变化的敏感性),允许降低色度的带宽,降低了传输带宽。

在音视频,图像等领域中利用 YUV 色彩编码模型可以降低图片数据的内存占用,提高数据处理效率。YUV 数据一般不能直接用于显示,还需要将其转换为 RGB(RGBA)数据,才能够正常显示图像。

YUV采样格式

扫描线(scan line)

什么是扫描线?这是关于电视显示的术语,用来描述电视是如何显示画面的。维基百科解释:

电视萤幕由电子枪射出的电子,经由磁场偏向后打在屏幕上而发光,因此每一个图框都由电子枪的扫描线画出来。

电视的画面清晰度是以水平清晰度作为单位。通俗地说,我们可以把电视上的画面以水平方向分割成很多很多扫描线,分得越细,这些画面就越清楚,而水平线数的扫描线数量也就越多。

采样方式

​像素是视频显示的基本单位,因为它代表了屏幕上一个"点"的色彩,通常也会被形象地称为"像素点"。RGB格式的像素点,由R、G、B三个基础分量组成,同理YUV也是由三个分量,即Y、U、V组成。

由于YUV降低了色度的带宽,所以一个视频中亮度分量Y的采样数不会被改变,但色度分量U和V会被降低采样数(downsampling)。根据Y和UV的占比,可分为:

  • YUV 4:4:4,每一个 Y 分量对于一对 UV 分量,每像素占用 (Y +     U +     V = 8 + 8 + 8 = 24bits)3 字节;各采样分量在扫面每个像素点时,都不会降低采样率
  • YUV 4:2:2,每两个 Y 分量共用一对 UV 分量,每像素占用 (Y +  0.5U +  0.5V = 8 + 4 + 4 = 16bits)2 字节;水平方向Y分量与UV分量2:1采样,垂直方向不降低采样率。
  • YUV 4:2:0,每四个 Y 分量共用一对 UV 分量,每像素占用 (Y + 0.25U + 0.25V = 8 + 2 + 2 = 12bits)1.5 字节。水平和垂直方向上Y分量和UV分量对的采样比都是2:1。

YUV 格式也可按照 YUV 三个分量的组织方式分为打包(Packed)格式和平面格式(Planar)。再按照 YUV 的排列方式,再次将 YUV 分成三个大类,Planar,Semi-Planar 和 Packed。

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

YUV数据格式

对 YUV 图像处理中,YUYV 、YU12(I420)、NV21 和 NV12 最为常用,下面我们先详细讲其中一种格式的存储方式。

NV21/NV12 (YUV420 采样方式)

NV21/NV12 属于 YUV420SP ,YUV420SP 格式有 2 个平面,Y 分量存储于一个平面,UV 分量交错存储于另一个平面。

NV21 格式的存储方式

Y00  Y01  Y02  Y03  
Y10  Y11  Y12  Y13  
Y20  Y21  Y22  Y23  
Y30  Y31  Y32  Y33  

V00  U00  V01  U01 
V10  U10  V11  U11

NV12 格式的存储方式

Y00  Y01  Y02  Y03
Y10  Y11  Y12  Y13
Y20  Y21  Y22  Y23
Y30  Y31  Y32  Y33

U00  V00  U01  V01 
U10  V10  U11  V11

NV21 与 NV12 格式的区别仅在于 UV 分量排列的先后顺序不同。

一幅 720P (1280x720分辨率) 的图片,使用 YUV420 采样时(格式 NV21/NV12 )占用存储大小为:

Y 分量:1280 * 720  = 921600 字节
UV 分量:1280 * 720 * (1/2) = 460800 字节
总大小:Y 分量 + UV 分量 = (1280 * 720 + 1280 * 720 * (1/2)) / 1024 / 1024 = 1.32 MB

由此可见YUV420 采样(格式 NV21/NV12 )的图像比 RGB 模型图像也节省了 1/2 的存储空间。

相信大家对YUV数据已经有一个初步的认识,后续我会为大家带来YUV图像处理和其他格式的介绍,敬请期待。。。微信公众号最新发表,欢迎关注,微信号:江湖修行。