YUV作为一种颜色编码方法,其存储方式确实可以根据YUV分量的排列和存放方法的不同进行分类。“packeted formats”和“planar formats”正是YUV存储方式的两大主要分类,它们各自的特点和与RGB领域的对应关系如下:
1. Packeted Formats(打包格式)
特点:
- YUV分量交叉排列,即每个像素点的Y、U、V分量是交替存储的,类似于RGB领域的HWC(Height-Width-Channel)格式,但这里的“Channel”指的是Y、U、V三个分量。
- 打包格式中,YUV三个分量是顺序交错存储的,像素被组织成宏像素组,其布局取决于采样格式。
常见示例:
- YUV444打包格式:YUVYUVYUV排列,YUV三个分量交替存储。
- YUV422打包格式:如YUYV或UYVY,其中YUYV格式是第一个字节存储Y,第二个字节存储U,第三个字节存储Y(下一个像素点的),第四个字节存储V,以此类推;UYVY则是色度和亮度字节的顺序颠倒。
2. Planar Formats(平面格式)
特点:
- YUV分量分成三个独立的数组(或平面)存放,不掺和在一起,类似于RGB领域的CHW(Channel-Height-Width)格式,但在这里,Channel指的是Y、U、V三个独立的分量,且它们是分别存储的。
- 平面格式中,Y分量首先存储,紧接着是U分量,最后是V分量。这种存储方式有利于数据的处理,尤其是在进行图像压缩或处理时。
常见示例:
- I420(4:2:0)格式:先存储所有的Y分量,然后存储所有的U分量,最后存储所有的V分量。
- YV12格式:与I420类似,但U分量和V分量的存储顺序相反,即先存Y,再存V,最后存U。
- YUV422P也属于YUV422的一种平面模式,它不是将YUV数据交错存储,而是先存放所有的Y分量,然后存储所有的U(Cb)分量,最后存储所有的V(Cr)分量。
总结
- Packeted Formats通过将YUV分量交叉排列存储,实现了数据的紧密打包,类似于RGB的HWC格式,但在处理上可能不如平面格式灵活。
- Planar Formats通过将YUV分量分别存储在三个独立的数组中,提高了数据处理的灵活性,特别是在需要独立处理Y、U、V分量时。这种存储方式类似于RGB的CHW格式,但在这里Channel指的是独立的Y、U、V分量。