采样机制.pdf

上传人:赵** 文档编号:52473847 上传时间:2022-10-23 格式:PDF 页数:11 大小:673.05KB
返回 下载 相关 举报
采样机制.pdf_第1页
第1页 / 共11页
采样机制.pdf_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《采样机制.pdf》由会员分享,可在线阅读,更多相关《采样机制.pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、RGB百科名片百科名片RGB 色彩模式(也翻译为 红绿蓝,比较少用)是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB 即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。简介简介RGB 色彩模式使用 RGB 模型为图像中每一个 像素的 RGB 分量分配一个0255范围内的强度值。RGB 图像只使用三种颜色,就可以使它们按照不同的比例混合,在屏幕上重现16777216 种颜色。在 RGB 模式下,每种RGB 成分都可使用从0(黑色)到255(白色)的值。例如

2、,亮红色使用R 值 255、G 值 0 和 B 值 0。当所有三种成分值相等时,产生灰色阴影。当所有成分的值均为255 时,结果是纯白色;当该值为0 时,结果是纯黑色。应用应用目前的 显示器 大都是采用了 RGB 颜色标准,在显示器上,是通过 电子枪打在屏幕的红、绿、蓝三色发光极上来产生色彩的,目前的电脑一般都能显示32位颜色,约有一百万种以上的颜色。在 led 领域 利用三合一点阵全彩技术,即在一个发光单元里由RGB 三色晶片组成全彩像素。随着这一技术的不断成熟,led 显示技术会给人们带来更加丰富真实的色彩感受。原理原理RGB 是从颜色发光的原理来设计定的,通俗点说它的颜色混合方式就好像有

3、红、绿、蓝三盏灯,当它们的光相互叠合的时候,色彩相混,而亮度却等于两者亮度之总和,越混合亮度越高,即加法混合。有色光可被无色光冲淡并变亮。如蓝色光与白光相遇,结果是产生更加明亮的浅蓝色光。知道它的混合原理后,在软件中设定颜色就容易理解了。红、绿、蓝三盏灯的叠加情况,中心三色最亮的叠加区为白色,加法混合的特点:越叠加越明亮。红、绿、蓝三个颜色通道每种色各分为255阶亮度,在0时 灯 最弱是关掉的,而在 255时 灯 最亮。当三色数值相同时为无色彩的 灰度色,而三色都为 255时为最亮的白色,都为 0时为黑色。RGB 颜色称为加成色,因为您通过将R、G 和 B 添加在一起(即所有光线反射回眼睛)可

4、产生白色。加成色用于 照明光、电视和计算机 显示器。例如,显示器通过红色、绿色和蓝色荧光粉发射光线产生颜色。绝大多数可视光谱都可表示为红、绿、蓝(RGB)三色光在不同比例和强度上的混合。这些颜色若发生重叠,则产生青、洋红和黄。编辑本段 RGBRGB 语法语法(red,green,blue)参数 red:integer 类型,指定颜色中的红色分量强度,有效值在 0到255之间 green:integer 类型,指定颜色中的绿色分量强度,有效值在 0到255之间 blue:integer 类型,指定颜色中的蓝色分量强度,有效值在 0到255之间返回值 Long。函数执行成功时返回由指定分量确定的颜

5、色,用长整数表示。发生错误时返回-1。如果任何参数的值为NULL,RGB()函数返回 NULL。用法 RGB()函数使用下述公式计算表示颜色的长整数:65536*Blue+256*Green+Red其中,Blue 代表蓝色分量,Green 代表绿色分量,Red 代表红色分量。各分量中,数值越小,亮度越低,数值越大,亮度越高。编辑本段 RGBRGB 格式格式对一种颜色进行编码的方法统称为颜色空间 或 色域。用最简单的话说,世界上任何一种颜色的颜色空间 都可定义成一个固定的数字或变量。RGB(红、绿、蓝)只是众多颜色空间的一种。采用这种编码方法,每种颜色都可用三个变量来表示-红色绿色以及蓝色的强度

6、。记录及显示彩色图像时,R GB 是最常见的一种方案。但是,它缺乏与早期黑白显示系统的良好兼容性。因此,许多电子电器厂商普遍采用的做法是,将RGB 转换成YUV 颜色空同,以维持兼容,再根据需要换回RGB 格式,以便在电脑显示器上显示彩色图形。由于网页(WEB)是基于计算机浏览器开发的媒体,所以颜色以光学颜色RGB(红、绿、蓝)为主。网页颜色是以 16进制代码表示,一般格式为#DEFABC(字母范围从 A-F,数字从0-9);如黑色,在网页代码中便是:#000000(在 css 编写中可简写为#000)。当颜色代码为#AABB11时,可以简写为#AB1表示,如#135与#113355表示同样的

7、颜色。格式简介格式简介RGB1、RGB4、RGB8都是调色板类型的RGB 格式,在描述这些媒体类型的格式细节时,通常会在 BITMAPINFOHEADER数据结构后面跟着一个调色板(定义一系列颜色)。它们的图像数据并不是真正的颜色值,而是当前像素颜色值在调色板中的索引。以RGB1(2色位图)为例,比如它的调色板中定义的两种颜色值依次为0 x000000(黑色)和0 xFFFFFF(白色),那么图像数据 001101010111(每个像素用 1位表示)表示对应各像素的颜色为:黑黑白白黑白黑白黑白白白。RGB565RGB565 RGB565使用16位表示一个像素,这16位中的5位用于 R,6位用于

8、 G,5位用于 B。程序中通常使用一个字(WORD,一个字等于两个字节)来操作一个像素。当读出一个像素后,这个字的各个位意义如下:高字节低字节R R R R R G G G G G G B B B B B可以组合使用屏蔽字和移位操作来得到RGB 各分量的值:#define RGB565_MASK_RED0 xF800#define RGB565_MASK_GREEN0 x07E0#define RGB565_MASK_BLUE0 x001FR=(wPixel&RGB565_MASK_RED)11;/取值范围 0-31G=(wPixel&RGB565_MASK_GREEN)5;/取值范围0-63

9、B=wPixel&RGB565_MASK_BLUE;/取值范围 0-31#define RGB(r,g,b)(unsigned int)(r/0 x08 11)|(g/0 x08 6)|b/0 x08)#define RGB(r,g,b)(unsigned int)(r/0 x08 10)|(g/0 x08 10;/取值范围 0-31G=(wPixel&RGB555_MASK_GREEN)5;/取值范围 0-31B=wPixel&RGB555_MASK_BLUE;/取值范围 0-31RGB24RGB24 RGB24使用24位来表示一个像素,RGB 分量都用 8位表示,取值范围为0-255。注意

10、在内存中 RGB 各分量的排列顺序为:BGR BGR BGR。通常可以使用 RGBTRIPLE数据结构来操作一个像素,它的定义为:typedef struct tagRGBTRIPLEBYTE rgbtBlue;/蓝色分量BYTE rgbtGreen;/绿色分量BYTE rgbtRed;/红色分量 RGBTRIPLE;RGB32RGB32 RGB32使用32位来表示一个像素,RGB 分量各用去 8位,剩下的 8位用作 Alpha 通道或者不用。(ARGB32 就是带 Alpha 通道的 RGB32。)注意在内存中 RGB 各分量的排列顺序为:BGRA BGRA BGRA。通常可以使用 RGBQ

11、UAD 数据结构来操作一个像素,它的定义为:typedef struct tagRGBQUADBYTE rgbBlue;/蓝色分量BYTE rgbGreen;/绿色分量BYTE rgbRed;/红色分量BYTE rgbReserved;/保留字节(用作 Alpha 通道或忽略)RGBQUAD。YCbCr百科名片百科名片YCbCr 是 DVD、摄像机、数字电视等消费类视频产品中,常用的色彩编码方案。YCbCr 有时会称为 YCC.。YCbCr 在模拟分量视频(analog component video)中也常被称为 YPbPr。YCbCr 不是一种绝对色彩空间,是 YUV 压缩和偏移的版本。Y

12、CbCrYCbCr 与与 YUVYUV 的区别的区别正如几何上用坐标空间来描述坐标集合,色彩空间用数学方式来描述颜色集合。常见的3 个基本色彩模型是RGB,CMYK 和 YUV。YCbCr则是在世界数字组织视频标准研制过程中作为ITU-R BT1601 建议的一部分,其实是 YUV 经过缩放和偏移的翻版。其中Y 与 YUV 中的 Y 含义一致,Cb,Cr同样都指色彩,只是在表示方法上不同而已。在YUV 家族中,YCbCr 是在 计算 机系 统中应用最多的成员,其应用领域很广泛,JPEG、MPEG 均采用此格式。一般人们所讲的YUV 大多是指 YCbCr。YCbCr 有许多取样格式,如444,4

13、22,411 和420。YUVYUV视频编解码器 功能视频编码器要求YUV4:2:0 格式的视频输入,因此可能根据应用需要进行视频输入的预处理,即对 YUV4:2:2 隔行扫描(例如从摄像机)到 YUV 4:2:0非隔行扫描转换,仅抽取但不过滤UV 分。对视频解码器而言,还需要进行后处理,以将解码的 YUV 4:2:0 数据转换为 RGB进行显示,包括:YUV 4:2:0 到 RGB 转换;16位或12位 RGB 显示格式;0到90度旋转,实现横向或纵向显示。此外,视频编解码器通常还要求具有以下功能和特性:支持 MPEG-4简单类 0、1 与 2 级;兼容 H.263与 MPEG-4 编解码标

14、准;MPEG-4视频解码器支持的可选项有:AC/DC 预测、可逆可变长度编码(RVLC)、再同步标志(RM)、数据分割(DP)、错误隐藏专利技术、支持每个宏块4个运动矢量(4MV)、自由运动补偿、解码VOS 层;MPEG-4视频编码器选项有:RVLC、RM、DP、支持每个宏块 4个运动矢量(4MV)、报头扩展码、支持编码期间码率改变、支持编码期间编码帧率改变、插入或不插入可视对象序列起始码;支持编码期间序列中插入I 帧;支持编码器自适应帧内刷新(AIR);支持多编解码器,可用相同代码运行多个编解码器实例。YCbCrYCbCrYCbCr 其中 Y 是指亮度分量,Cb 指蓝色色度分量,而Cr 指红

15、色色度分量。人的肉眼对视频的Y 分量更敏感,因此在通过对色度分量进行子采样来减少色度分量后,肉眼将察觉不到的图像质量的变化。主要的子采样格式有 YCbCr 4:2:0、YCbCr 4:2:2和 YCbCr 4:4:4。4:2:0表示每4个像素有 4个亮度分量,2个色度分量(YYYYCbCr),仅采样奇数扫描线,是便携式视频设备(MPEG-4)以及电视会议(H.263)最常用格式;4:2:2表示每4个像素有 4个亮度分量,4个色度分量(YYYYCbCrCbCr),是 DVD、数字电视、HDTV 以及其它消费类视频设备的最常用格式;4:4:4表示全像素点阵(YYYYCbCrCbCrCbCrCbCr

16、),用于高质量视频应用、演播室以及专业视频产品。编辑本段 YUVYUV 主要的采样格式主要的采样格式主要的采样格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1 和 YCbCr4:4:4。其中 YCbCr 4:1:1 比较常用,其含义为:每个点保存一个8bit 的亮度值(也就是 Y 值),每 2x2 个点保存一个Cr 和 Cb 值,图像在肉眼中的感觉不会起太大的变化。所以,原来用 RGB(R,G,B 都是 8bit unsigned)模型,每个点需要8x3=24bits(如下图第一个图).而现在仅需要8+(8/4)+(8/4)=12bites,平均每个点占 12bit

17、es(如下图第二个图)。这样就把图像的数据压缩了一半。上边仅给出了理论上的示例,在实际数据存储中是有可能是不同的,下面给出几种具体的存储形式:(1 1)YUV 4:4:4YUV 4:4:4YUV 三个信道的抽样率相同,因此在生成的图像里,每个象素的三个分量信息完整(每个分量通常8比特),经过8比特量化之后,未经压缩的每个像素占用 3个字节。下面的四个像素为:Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3存放的码流为:Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3(2 2)YUV 4:2:2YUV 4:2:2每个色差信道的抽样率是亮度信道的一半,所

18、以水平方向的色度抽样率只是4:4:4的一半。对非压缩的 8比特量化的图像来说,每个由两个水平方向相邻的像素组成的宏像素需要占用4字节内存。下面的四个像素为:Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3存放的码流为:Y0 U0 Y1 V1 Y2 U2 Y3 V3映射出像素点为:Y0 U0 V1 Y1 U0 V1 Y2 U2 V3 Y3 U2 V3(3 3)YUV 4:1:1YUV 4:1:14:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由4个水平方向相邻的像素组成的宏像素需要占用

19、6字节内存下面的四个像素为:Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3存放的码流为:Y0 U0 Y1 Y2 V2 Y3映射出像素点为:Y0 U0 V2 Y1 U0 V2 Y2 U0 V2 Y3 U0 V2(4 4)YUV4:2:0YUV4:2:04:2:0并不意味着只有 Y,Cb 而没有 Cr 分量。它指得是对每行扫描线来说,只有一种色度分量以 2:1的抽样率存储。相邻的扫描行存储不同的色度分量,也就是说,如果一行是 4:2:0的话,下一行就是 4:0:2,再下一行是 4:2:0.以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽

20、样率是4:1。对非压缩的 8比特量化的视频来说,每个由2x2个2行2列相邻的像素组成的宏像素需要占用6字节内存。下面八个像素为:Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3Y5U5 V5 Y6 U6 V6 Y7U7 V7 Y8 U8 V8存放的码流为:Y0 U0 Y1 Y2 U2 Y3Y5 V5 Y6 Y7 V7 Y8映射出的像素点为:Y0 U0 V5 Y1 U0 V5 Y2 U2 V7 Y3 U2 V7Y5U0 V5 Y6 U0 V5 Y7U2 V7 Y8 U2 V7YCbCrYCbCr 与与 RGBRGB 的相互转换的相互转换Y=0.299R+0.587G+0.1

21、14BCb=0.564(B-Y)Cr=0.713(R-Y)R=Y+1.402CrG=Y-0.344Cb-0.714CrB=Y+1.772CbYCbCrYCbCr 的模拟分量部分的模拟分量部分 YPbPrYPbPrYCbCr有 时 会 称 为YCC.YCbCr在 模 拟 分 量 视 频(analogcomponent video)中也常被称为 YPbPr。YCbCr 讯号(prior to scalingand offsets to place the signals into digital form)被称为 YPbPr,而且产生时必须合乎 gamma-adjustedRGB source 有

22、二个不同的常数Kb 和 Kr如下:YPbPr(analogversionof YCbCr)fromRGBYPbPr(analogversionofYCbCr)fromRGB=Y=Kr*R+(1-Kr-Kb)*G+Kb*B YPb=0.5*(B-Y)/(1-Kb)Pb=0.5*(B-Y)/(1-Kb)Pr=0.5*(R-Y)/(1-Kr)Pr=0.5*(R-Y)/(1-Kr).R,G,B in 0;1 R,G,B in 0;1Y in 0;1 Y in 0;1Pb in-0.5;0.5 Pb in-0.5;0.5Pr in-0.5;0.5 Pr in-0.5;0.5*YUV百科名片百科名片YUV

23、YUV 是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),是 PAL 和SECAM 模拟彩色电视制式采用的颜色空间。在现代彩色电视系统中,通常采用三管彩色摄影机或彩色 CCD 摄影机进行取像,然后把取得的彩色图像信号经分色、分别放大校正后得到 RGB,再经过矩阵变换电路得到亮度信号 Y 和两个色差信号 RY(即 U)、BY(即 V),最后发送端将亮度和色差三个信号分别进行编码,用同一信道发送出去。这种色彩的表示方法就是所谓的 YUV 色彩空间表示。采用 YUV 色彩空间的重要性是它的亮度信号 Y 和色度信号 U、V 是分离的。目录目录优点作用优点作用YUV 主要用于优化彩色 视频信号的传

24、输,使其向后相容老式黑白电视。与 RGB 视频信号 传输相比,它最大的优点在于只需占用极少的频宽(RGB要求三个独立的视频信号同时传输)。其中 Y 表示明亮度(Luminance或Luma),也就是灰阶值;而U 和 V表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。亮度是透过 RGB 输入信号来建立的,方法是将RGB 信号的特定部分叠加到一起。色度 则定义了颜色的两个方面 色调与饱和度,分别用Cr 和 CB 来表示。其中,Cr 反映了 RGB 输入信号红色部分与RGB 信号亮度值之间的差异。而 Cb 反映的是 RGB 输入信号蓝色部分与R

25、GB 信号亮度值之同的差异。采用 YUV 色彩空间的重要性是它的亮度信号Y 和色度信号 U、V 是分离的。如果只有 Y 信号分量而没有 U、V 分量,那么这样表示的图像就是黑白灰度图像。彩色电视采用 YUV 空间正是为了用亮度信号Y 解决彩色电视机与黑白电视机的兼容问题,使黑白电视机也能接收彩色电视信号。对于数字视频,定义了从RGB 到两个主要YUV 的转换。这两个转换都基于称为ITU-R Recommendation BT.709的规范。第一个转换是BT.709中 定 义 用 于50-Hz的 较 早 的YUV格 式。它 与 在ITU-RRecommendationBT.601 中指定的关系相

26、同,ITU-R RecommendationBT.601 也被称为它的旧名称CCIR 601。这种格式应该被视为用于标准定义 TV 分辨率(720 x 576)和更低分辨率视频的首选YUV 格式。它的特征由下面两个常量Kr 和 Kb 的值来定义:Kr=0.299Kb=0.114 第二个转换为BT.709 中定义用于60-Hz 的较新 YUV 格式,应该被视为用于高于SDTV 的视频分辨率的首选格式。它的特征由下面两个不同的常量值来定义:Kr=0.2126Kb=0.0722 从 RGB 到 YUV 转换的定义以下列内容开始:L=Kr*R+Kb*B+(1 Kr Kb)*G 然后,按照下列方式获得Y

27、UV 值:Y=floor(2(M-8)*(219*(L Z)/S+16)+0.5)U=clip3(0,2M-1,floor(2(M-8)*(112*(B-L)/(1-Kb)*S)+128)+0.5)V=clip3(0,2M-1,floor(2(M-8)*(112*(R-L)/(1-Kr)*S)+128)+0.5)其中M 为每个 YUV 样例的位数(M=8)。Z 为黑电平变量。对于计算机 RGB,Z 等于 0。对于 studio 视频 RGB,Z 等于 16*2,其中 N 为每个 RGB 样例的位数(N=8)。S 为缩放变量。对于计算机RGB,S 等于 255。对于 studio 视频 RGB,

28、S 等于 219*2。函数 floor(x)返回大于或等于x 的最大整数。函数 clip3(x,y,z)的定义如下所示:clip3(x,y,z)=(z y)?y:z)Y样例表示亮度,U 和 V样例分别表示偏向蓝色和红色的颜色偏差。Y 的标称范围为 16*2 到235*2。黑色表示为16*2,白色表示为235*2。U 和 V 的标称范围为16*2 到 240*2,值 128*2 表示中性色度。但是,实际的值可能不在这些范围之内。对于 studio 视频 RGB 形式的输入数据,要使得 U 和 V值保持在0 到 2M-1 范围之内,必需进行剪辑操作。如果输入为计算机RGB,则不需要剪辑操作,这是因

29、为转换公式不会生成超出此范围的值。这些都是精确的公式,没有近似值。在 DirectShow 中,常见的 RGB格式有 RGB1、RGB4、RGB8、RGB565、RGB555、RGB24、RGB32、ARGB32等;常见的 YUV 格式有 YUY2、YUYV、YVYU、UYVY、AYUV、Y41P、Y411、Y211、IF09、IYUV、YV12、YVU9、YUV411、YUV420等。编辑本段 YUVYUV 采样格式采样格式主要的采样格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1 和 YCbCr4:4:4。其中 YCbCr 4:1:1 比较常用,其含义为:每个点

30、保存一个8bit 的亮度值(也就是 Y 值),每 2x2 个点保存一个Cr 和 Cb 值,图像在肉眼中的感觉不会起太大的变化。所以,原来用 RGB(R,G,B 都是 8bitunsigned)模型,1个点需要8x3=24 bits(如下图第一个图),(全采样后,YUV 仍各占8bit)。按4:1:1采样后,而现在平均仅需要8+(8/4)+(8/4)=12bits(4个点,8*4(Y)+8(U)+8(V)=48bits),平均每个点占 12bits(如下图第二个图)。这样就把图像的数据压缩了一半。上边仅给出了理论上的示例,在实际数据存储中是有可能是不同的,下面给出几种具体的存储形式:(1)YUV

31、 4:4:4YUV 三个信道的抽样率相同,因此在生成的图像里,每个象素的三个分量信息完整(每个分量通常 8比特),经过8比特量化之后,未经压缩的每个像素占用3个字节。下面的四个像素为:Y0 U0 V0Y1 U1 V1 Y2 U2 V2 Y3 U3 V3存放的码流为:Y0 U0 V0 Y1 U1V1 Y2 U2 V2 Y3 U3 V3(2)YUV 4:2:2每个色差信道的抽样率是亮度信道的一半,所以水平方向的色度抽样 率只是 4:4:4的一半。对非压缩的8比特量化的图像来说,每个由两个水平方向相邻的像素组成的宏像素需要占用 4字节内存。下面的四个像素为:Y0 U0 V0 Y1 U1 V1Y2 U

32、2 V2 Y3 U3 V3存放的码流为:Y0 U0 Y1 V1 Y2 U2 Y3 V3映射出像素点为:Y0 U0 V1 Y1 U0 V1 Y2 U2 V3 Y3 U2 V3(3)YUV 4:1:14:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由 4个水平方向相邻的像素组成的宏像素需要占用6字节内存。下面的四个像素为:Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3存放的码流为:Y0 U0 Y1 Y2 V2 Y3映射出像素点为:Y0 U0 V2 Y1 U0V2 Y2 U0 V2 Y3

33、 U0 V2(4)YUV4:2:04:2:0并不意味着只有Y,Cb 而没有 Cr 分量。它指得是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储。相邻的扫描行存储不同的色度分量,也就是说,如果一行是4:2:0的话,下一行就是 4:0:2,再下一行是 4:2:0.以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽样率是4:1。对非压缩的 8比特量化的视频来说,每个由 2x2个2行2列相邻的像素组成的宏像素需要占用 6字节内存。下面八个像素为:Y0 U0 V0Y1 U1 V1 Y2 U2 V2 Y3 U3 V3Y5 U5 V5 Y6 U6 V6 Y7U7

34、V7Y8 U8 V8存放的码流为:Y0 U0 Y1 Y2 U2 Y3Y5 V5 Y6 Y7 V7Y8映射出的像素点为:Y0 U0 V5 Y1 U0 V5 Y2 U2 V7 Y3 U2 V7Y5 U0 V5 Y6 U0 V5 Y7U2 V7 Y8 U2 V7编辑本段 YUVYUV 格式(图)格式(图)YUV 格式通常有两大类:打包(packed)格式和平面(planar)格式。前者将 YUV 分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(macro-pixel);而后者使用三个数组分开存放YUV 三个分量,就像是一个三维平面一样。表 2.3中的 YUY2到 Y211都是打包格式,而

35、IF09到YVU9都是平面格式。(注意:在介绍各种具体格式时,YUV 各分量都会带有下标,如 Y0、U0、V0表示第一个像素的YUV 分量,Y1、U1、V1表示第二个像素的 YUV 分量,以此类推。)YUY2(和 YUYV)格式为每个像素保留 Y 分量,而 UV 分量在水平方向上每两个像素采样一次。一个宏像素为 4个字节,实际表示 2个像素。(4:2:2的意思为一个宏像素中有 4个Y 分量、2个 U 分量和 2个 V 分量。)图像数据中 YUV 分量排列顺序如下:Y0 U0 Y1 V0 Y2 U2 Y3 V2 YVYU 格式跟 YUY2类似,只是图像数据中 YUV 分量的 排列顺序 有所不同:

36、Y0 V0 Y1 U0 Y2 V2 Y3U2 UYVY 格式跟 YUY2类似,只是图像数据中YUV 分量的排列顺序有所不同:U0 Y0 V0 Y1 U2 Y2 V2 Y3 AYUV 格式带有一个 Alpha 通道,并且为每个像素都提取YUV 分量,图像数据格式如下:A0 Y0 U0 V0 A1 Y1 U1 V1 Y41P(和 Y411)格式为每个像素保留 Y 分量,而 UV 分量在水平方向上每 4个像素采样一次。一个宏像素为12个字节,实际表示 8个像素。图像数据中 YUV 分量排列顺序如下:U0Y0 V0 Y1 U4 Y2 V4 Y3 Y4 Y5 Y6 Y8 Y211格式在水平方向上Y分量每

37、2个像素采样一次,而UV 分量每4个像素采样一次。一个宏像素为4个字节,实际表示 4个像素。图像数据中 YUV 分量排列顺序如下:Y0U0 Y2 V0 Y4 U4 Y6 V4 YVU9格式为每个像素都提取Y 分量,而在 UV 分量的提取时,首先将图像分成若干个4 x 4的宏块,然后每个宏块提取一个 U 分量和一个 V 分量。图像数据存储时,首先是整幅图像的Y 分量数组,然后就跟着U 分量数组,以及 V 分量数组。IF09格式与 YVU9类似。IYUV 格式为每个像素都提取Y 分量,而在 UV 分量的提取时,首先将图像分成若干个 2 x 2 的宏块,然后每个宏块提取一个U 分量和一个V 分量。YV12格式与 IYUV 类似。YUV411、YUV420 格式多见于DV 数据中,前者用于 NTSC 制,后者用于 PAL 制。YUV411为每个像素都提取 Y 分量,而 UV 分量在水平方向上每 4个像素采样一次。YUV420 并非V 分量采样为 0,而是跟 YUV411相比,在水平方向上提高一倍色差采样频率,在垂直方向上以U/V 间隔的方式减小一半色差采样,如上图所示。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁