YUV格式
YUV格式通常有两大类:打包(Packed)格式和平面(Planar)格式。YUV分为三个分量,"Y"表示明亮度(Luminance或Luma),也就是灰度值;"U""V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。
打包(Packed)格式使用三个数组分开存放YUV三个分量;每个像素点的Y,U,V是连续交叉存储的。
平面(Planar)格式将YUV分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(Macro-Pixel);先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。
与我们熟悉的RGB类似,YUV也是一种颜色编码方法,主要用于电视系统以及模拟视频领域,它将亮度信息(Y)与色彩信息(UV)分离,没有UV信息一样可以显示完整的图像,只不过是黑白的,这样的设计很好地解决了彩色电视机与黑色电视的兼容性问题。并且,YUV不像RGB那样要求三个独立的视频信号同时传输,所以,用YUV方式传送占用极少的频宽。
YUV码流的存储格式其实与其采样的方式密切相关,主流的采样方式有三种,YUV4:4:4, YUV4:2:3,YUV4:2:0。
下面根据其采样格式来从码流中还原每个像素点的YUV值,因为只有正确地还原了每个像素点的YUV值,才能通过YUV与RGB的转换公式提取出每个像素点的RGB值,然后显示出来。
1. YUV 4:4:4采样,每个Y对应一组UV分量。
2. YUV 4:2:2采样,每两个Y共用

本文详细介绍了YUV格式的两类结构——打包格式和平面格式,以及常见的YUV采样方式如4:4:4、4:2:2、4:2:0。重点解析了YUYV、UYVY、YUV422P、YV12、YU12、NV12、NV21等存储格式,阐述了YUV与RGB之间的转换,并对比了YV12和I420的区别。
最低0.47元/天 解锁文章
8984

被折叠的 条评论
为什么被折叠?



