牵着老婆满街逛

严以律己,宽以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

YUV420及YUV422格式的采集存储方式

转载自:http://blog.csdn.net/jerrytong/article/details/5658818

4:4:4 格式,每像素 32 位  (单位像素占的字节数: (4+4+4)/4 = 3)

色度信号的分辨率和亮度信号的分辨率是相同的

FOURCC 码(Directshow:FOURCC 码是一个 32 位、不带正负号的整数,它是通过串联四个 ASCII 字符创建而成的,MAKEFOURCC('Y','U','Y','2');)为 AYUV。4:4:4 格式是一个打包格式,其中每个像素都被编码为四个连续字节,AYUV 内存布局组织顺序如下所示。(标记了 A 的字节包含 alpha 的值)。

 

Increasing Memory Addresses

------------------------------------------------------------------------------------->

| U0 | V0 | Y0 | A0 |    | U1 | V1 | Y1 | A1 |   | U2 | V2 | Y2 | A2 |  ......

4:2:2 格式,每像素 16 位(单位像素占的字节数: (4+2+2)/4 = 2)

色度信号的扫描线数量和亮度信号一样多,但是每条扫描线上的色度采样点数却只有亮度信号的一半。

(1):YUY2

在 YUY2 格式中,数据可被视为一个不带正负号的 char 值组成的数组,其中第一个字节包含第一个 Y 样例,第二个字节包含第一个 U (Cb) 样例,第三个字节包含第二个 Y 样例,第四个字节包含第一个 V (Cr) 样例,YUY2 内存布局如下图 所示。如果该图像被看作由两个 little-endian WORD 值组成的数组,则第一个 WORD 在最低有效位 (LSB) 中包含 Y0,在最高有效位 (MSB) 中包含 U。第二个 WORD 在 LSB 中包含 Y1,在 MSB 中包含 V。

Increasing Memory Addresses

------------------------------------------------------------------------------------->

| Y0 | V0 | Y1 | V0 |    | Y2 | U1 | Y3 | V1 |   | Y4 | U2 | Y5 | V2 |  ......

 

(2):UYVY

此格式与 YUY2 相同,只是字节顺序是与之相反的 — 就是说,色度字节和灯光字节是翻转的。如果该图像被看作由两个 little-endian WORD 值组成的数组,则第一个 WORD 在 LSB 中包含 U,在 MSB 中包含 Y0,第二个 WORD 在 LSB 中包含 V,在 MSB 中包含 Y1。UYVY 内存布局如下图 所示。

 

 

Increasing Memory Addresses

------------------------------------------------------------------------------------->

| U0 | Y0 | V0 | Y1 |    | U1 | Y2 | V1 | Y3 |   | U2 | Y4 | V2 | Y5 |  ......

 

4:2:0 格式,每像素 16 位(单位像素占的字节数: (4+1+1)/4 = 1.5)

无论是横向还是纵向,色度信号的分辨率都只有亮度信号的一半

所有 Y 样例都会作为不带正负号的 char 值组成的数组首先显示在内存中。后面跟着所有 V (Cr) 样例,然后是所有 U (Cb) 样例。它也有两种存储格式。

(1)

Increasing Memory Addresses

------------------------------------------------------------------------------------->

 

| Y0 | Y1 | Y2 | Y3| ...... 

| U0 | U1 | ...... 

| V0 | V1 | ......

(2)

Increasing Memory Addresses

------------------------------------------------------------------------------------->

| Y0 | Y1 | Y2 | Y3| ...... 

| V0 | V1 | ...... 

| U0 | U1 | ......

 


posted on 2013-01-25 12:05 杨粼波 阅读(1453) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理