视频编程相关
图像数据格式:YUV(如yuv420sp/yuv420p/yv12/i420/nv12/nv21等)¶
文字图片部分来自wikipedia
YUV是什么¶
wikipedia:
YUV,是一种颜色编码方法。常使用在各个影像处理组件中。 YUV在对照片或视频编码时,考虑到人类的感知能力,允许降低色度的带宽。
“Y”表示明亮度(Luminance、Luma),“U”和“V”则是色度、浓度(Chrominance、Chroma)
一张图片的YUV分量单独表示出来:
YUV采样方式¶
wikipedia:
为节省带宽起见,大多数YUV格式平均使用的每像素位数都少于24位。主要的抽样(subsample)格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1和YCbCr 4:4:4。YUV的表示法称为A:B:C表示法:
- 4:4:4表示完全取样。
- 4:2:2表示2:1的水平取样,垂直完全采样。
- 4:2:0表示2:1的水平取样,垂直2:1采样。
- 4:1:1表示4:1的水平取样,垂直完全采样。
YUV储存格式¶
一般每个分量为8bit即1byte,这里以4:4:4采样,储存一张4x2图片为例。
- 打包(Packed)格式,Y/U/V分量是连续交替存储的,如yuv444:
Y U V Y U V Y U V Y U V Y U V Y U V Y U V Y U V
- 平面(Planar)格式,Y/U/V分别连续存储,如yuv444p:
Y Y Y Y Y Y Y
U U U U U U U
V V V V V V V
- 半平面(Semi-Planar)格式,Y和U/V分别存储,但U/V交替存储,如yuv444sp:
Y Y Y Y Y Y Y
U V U V U V U V U V U V U V
YUV储存格式