YUV介绍
2024-08-25 14:14:26
YUV444与YUV422下采样。
一、YUV介绍
YUV有三个分量:Y(Luminance/Luma:亮度)、U和V表示色差,体现的是图片的色彩信息。相对于RGB彩色空间,将亮度信息和色彩信息分离。这种编码模式也更加适应于人眼,据研究表明,人眼对亮度信息比色彩信息更加敏感。而YUV下采样就是根据人眼的特点,将人眼相对不敏感的色彩信息进行压缩采样,得到相对小的文件进行播放和传输。
与YUV相像YCbCr其实与其有少许不同,体现在参数的大小上,本质上都是将亮度信息与色彩信息相分开。
二、采集方式
YUV有三种采集方式,分别是4:4:4采样、4:2:2采样和4:2:0采样。
4:4:4采样:每一个Y对应一个U和一个V。大小为3*width*height(width和height是一帧的大小)。
4:2:2采样:每两个Y共用一对U和V。大小为2*width*height(其中U分量和V分量各占1/2个帧大小)。
4:2:0采样:每四个Y共用一对U和V。大小为3/2*width*height(其中U分量和V分量各站1/4个帧大小)。
三、存储格式
(一)平面格式与打包格式
YUV有打包格式(packed)和平面格式(planar)两种。
打包格式:将YUV三个分量放在同一个数组中,通常是几个相邻像素组成一个宏像素。例如YUV422中的YUVY(存储顺序为Y1->Cb->Y2->Cr)。
平面格式:使用三个数组分开存放YUV三个分量(每一帧)。其中YUV444p、YUV422p、YUV420p和YUV420sp使用的都是这种存储方式,格式末尾的p代表平面模式。下图是YUV422p。
(二)各种格式
1、YUV444
(1)YUV444p:YYYYYYYYY VVVVVVVVV UUUUUUUU
2、YUV422
(1)YUV422p:YYYYYYYY VVVV UUUU
(2)YUVY:YCbYCr YCbYCr YCbYCr
(3)UYVY:CbYCrYCbYCrYCbYCrY
3、YUV420
(1)YUV420p:
YV12:YYYYYYYY VV UU
I420:YYYYYYYY UU VV
(2)YUV420sp:
NV12:YYYYYYYY UVUV
NV21:YYYYYYYY VUVU
最新文章
- SpringBoot整合MyBatis
- java多线程之 Executors线程池管理
- Log4j XML配置
- java线程安全和线程同步
- C#数据类型转换的几种形式
- yii CGridView colum 链接
- net.sf.json.JSONException: There is a cycle in the hierarchy!
- perl 传递对象到模块
- C++中出现的计算机术语4
- 深入浅出Koa
- upload 简单的封装
- EMMC与nand flash的区别【转】
- Do-Now—团队 冲刺博客六
- 搞懂 JavaScript 继承原理
- SQL Server 2008初次启动
- c# 多线程的几种方式
- 40. 数据泵导入导出impdp、expdp
- 将公钥部署到远程Git仓库(coding.net)
- [转]Oracle中Hint深入理解
- 【驱动】——错误: 初始值设定项里有未知的字段‘ioctl’