先贴一个好贴:https://www.cnblogs.com/ALittleDust/p/5935983.html
YUV
YUV是一种颜色空间,基于YUV的颜色编码是流媒体的常用编码方式。Y表示流明,U、V表示色度、浓度,这种表达方式起初是为了彩色电视与黑白电视之间的信号兼容。 对于图像每一点,Y确定其亮度,UV确认其彩度。
Y’CbCr也称为YUV,是YUV的压缩版本,不同之处在于Y’CbCr用于数字图像领域,YUV用于模拟信号领域,MPEG、DVD、摄像机中常说的YUV其实是Y’CbCr,二者转换为RGBA的转换矩阵是不同的。Y’为亮度,Cb、Cr分量代表当前颜色对蓝色和红色的偏移程度。
Y’=0.5时,Cb、Cr构成的颜色平面
如果输出Y’CbCr三个分量的值,那么会是这样的。
由上到下依次为Y’、Cb、Cr
为了方便,以下文中YUV特指Y’CbCr。
YUV颜色编码的作用
YUV编码是image/video pipeline的重要组成。比如常用的I420相对于RGB24(RGB三个分量各8个字节)的编码格式,只需要一半的存储容量。在流数据传输时降低了带宽压力。
YUV颜色编码在video pipeline中的运用
YUV颜色编码格式
YUV色彩编码格式由其色度抽样方式和存储方式决定。
YUV 采样
对光信号采样是把光由模拟信号变为数字信号,这不是我们要做的事,我们要做的是把射线透照产生的模拟图像变为数字图像,两者不是一码事。所以不应该对光信号谈采样定理。
对图像的采样,是把模拟图像变成数字图像,描述模拟图像的是连续的信息,但要把它变成离散的信息,
YUV采样
YUV的一个优点是色度通道可以具有比Y通道更低的采样率而不会显着降低感知质量。 称为A:B:C表示法的符号用于描述U和V相对于Y的采样频率:
- 4:4:4表示没有色度通道的下采样。
- 4:2:2表示2:1水平下采样,没有垂直下采样。 对于每两个U或V样本,每条扫描线包含四个Y样本。
- 4:2:0表示2:1水平下采样,2:1垂直下采样。
- 4:1:1表示4:1水平下采样,没有垂直下采样。 每个扫描线包含每个U或V样本的四个Y样本。 4:1:1采样不如其他格式常见,本文不再详细讨论。
图1显示了4:4:4图片中使用的采样网格。 Luma样本由十字表示,色度样本由圆表示。
Figure 1 展示了 4:4:4 格式的图片所用的采样网格. Luma samples are represented by a cross, and chroma samples are represented by a circle.(亮度信息是X,色度信息是O)
Figure 1. YUV 4:4:4 sample positions
4:2:2采样的主要形式在ITU-R建议书BT.601中定义。 Figure 2 shows the sampling grid defined by this standard.
Figure 2. YUV 4:2:2 sample positions
有两种常见的4:2:0采样变体。 其中一个用于MPEG-2视频,另一个用于MPEG-1和ITU-T建议H.261和H.263。 图3显示了MPEG-1方案中使用的采样网格,图4显示了MPEG-2方案中使用的采样网格。(视频使用的采样网格,就是视频中每一帧(一张图片)的采样网格)