平面,半平面和交错格式有什么区别。

时间:2014-03-06 05:06:55

标签: colors

颜色模型和颜色空间之间的区别

RGB565与RGB888的不同之处是任何建议的链接

YUV vs RGB vs YCbCr。?

2 个答案:

答案 0 :(得分:17)

RGB是一种加色模型,红色,绿色和蓝色强度以不同的组合加在一起,形成一组详尽的颜色。

RGB888 - > R是8位值,从0到255不等.G和B相同。 RGB565 - >这里R是来自RGB888的R(8位)的5个最高有效位。            这里G是来自RGB888的G(8位)的6个最高有效位。            这里B是来自RGB888的B(8位)的5个最高有效位。

如果您看到从RGB888转换为RGB565的数学计算,它看起来如下:

  

short int rgb565_pixel; rgb565_pixel =((R>> 3)<< 11)| ((G>> 2)<< 5)| (B>> 3);

每像素24位转换为每像素16位。

来到YUV:YUV是一种颜色格式,您可以将RGB格式的亮度和颜色分量完全分离。

Y表示亮度分量,其中Cb和Cr表示颜色分量。

平面:在记忆中,Y后跟Cb,然后是Cr

  

[Y1Y2 ......] [Cb1Cb2 ......] [Cr1Cr2 .......]

半平面:在内存中,Y后跟Cb和Cr的交错数据,如下所示:

  

[Y1Y2 ......] [Cb1Cr1Cb2Cr2 ......]

交错:在YUV422交错数据的情况下,它如下所示:

  

Y1U1Y2V1 Y3U2Y4V2 ......

答案 1 :(得分:0)

有各种色彩空间系统。

  • RGB(主要用于捕获或显示设备)

  • YUV(模拟系统中的 YPbPr)(数字系统中的 YCbCr)(大多数视频/图像处理/压缩都以这种格式进行。因为亮度和色度分量是分开的)

  • HSB 色调饱和度亮度。 (RGB 颜色的替代表示)

  • CMYK(印刷媒体使用此色彩空间)


各种 YUV 格式(仅 8 位)

1.规划师

  • 所有 Y 将在一个阵列/平面中,然后所有 U 将在另一个阵列/平面中,然后 V 将在另一个阵列/平面中

  • 这里所有 3 个数组也可以在单个缓冲区中处于不同的偏移量。

I420、I422

反向规划器或交错规划器:

YV12 与 I420 完全一样,只是 U 平面和 V 平面的顺序相反

2.半规划师

  • 半平面格式有两个平面而不是三个,一个平面用于亮度,一个平面用于两个色度分量。

  • 这里两个数组也可以在单个缓冲区中处于不同的偏移量。

NV12、NV16

reversed semi planners or interleaved planners :

此处 U 和 V 的顺序在第二个平面中互换。

NV21、NV61

3.打包格式

在打包格式中,您通常只有一个平面。 (这有点像RGB)

(数据包格式通常无法处理垂直子采样。)

UYVY 或 Y422

YUY2 或 V422(反转格式)


因为所有不同的子系统都有自己的格式/fourCC/macro 来识别任何格式,因此造成了很多混乱。

像 Gtreamer/ffmpeg/v4l2 等