分类:
2008-12-01 14:21:32
YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法(属于PAL)。YUV主要用于优化彩色视频信号的传输,使其向后兼容老式黑白电视。与R GB视频信号传输相比,它最大的优点在于只需占用极少的带宽(RGB要求三个独立的视频信号同时传输)。
在DVD、摄像机、数字电视等消费类视频产品中,常用的色彩编码方案是YCbCr,其中Y是指亮度分量,Cb指蓝色色度分量,而Cr指红色色度分量。人的肉眼对视频的Y分量更敏感,因此在通过对色度分量进行子采样来减少色度分量后,肉眼将察觉不到的图像质量的变化。主要的子采样格式有YCbCr 4:2:0、YCbCr 4:2:2 和 YCbCr 4:4:4。
"Y"表示明亮度(Lumina nce或Luma),也就是灰阶值;是个基带信号。而"U"和"V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。U和V不是基带信号,它俩是被正交调制了的。
"亮度"是通过RGB输入信号来创建的,方法是将RGB信号的特定部分叠加到一起。"色度"则定义了颜色的两个方面-色调与饱和度,分别用Cr和CB来表示。其中,Cr反映了RGB输入信号红色部分与RGB信号亮度值之间的差异。而CB反映的是RGB输入信号蓝色部分与RGB信号亮度值之同的差异。。通过运算,YUV三分量可以还原出R(红),G(绿),B(兰)。
YCbCr色彩空间是最常用的有效的表示彩色图像的方法。Y是图像的亮度(luminance/luma)分量,使用以下公式计算,为R,G,B分量的加权平均值:
Y = kr R + kgG + kbB
其中k是权重因数。
上面的公式计算出了亮度信息,还有颜色信息,使用色差(color difference/chrominance或chroma)来表示,其中每个色差分量为R,G,B值和亮度Y的差值:
Cb = B -Y
Cr = R -Y
Cg = G- Y
在COLOUR SPACES .17 ITU-R recommendation BT.601 中,建议在计算Y时,权重选择为kr=0.299,kg=0.587,kb=0.114。于是常用的转换公式如下:
RGBàYUV:
Y = 0.299R +
U = Cb = 0.564(B - Y )
V = Cr = 0.713(R - Y )
YUVàRGB:
R = Y + 1.402Cr
G = Y - 0.344Cb - 0.714Cr
B = Y + 1.772Cb
YUV的保存格式有两种, Planar mode、Packed mode。
Planar mode: image的三个components分开保存, 比如Y,U,V分开保存在不同的数组,如此方便数据的访问及压缩.
Packed mode: image的三个components混合在一起,YUV三种数据在同一.
常见的Packed YUV Formats有:, , VYUY, YVYU,, IRAW等
常见的Planar YUV Formats有:, , , , 等
详细资讯可以到网站查看.
ISP(Image Signal Processing)模块的功能:
1. Color Interpolation
2. Color Correction
3. 4-by-4 taps Scaling
4. Image Effects 和 RGB、YUV之间的转换
ISP的Effect有:
ISP module结构图:
在DPF的应用中,一般是ISP读取memory中的data,然后进行ISP一些处理,比如Color Correction, RGB—YUV Transformation等,然后再输出到LCD Display Memory,最后显示出来。程序中的操作流程:
ISP数据处理流程: