工作中常聽說RGB/YUV/YCbCr 這樣一些名詞,概念上似乎很混淆?這里是一個簡介,部分內容來自wiki,理解不對的地方歡迎指正。
A:首先兩個基本概念:
Color model和Color Space.
1. Color Model: 為了表達人眼觀察到的顏色,人們從數(shù)學模型上定義了一系列不同的color model,我們常見的有RGB,CMYK,YUV,YPbPr/YCbCr。
2. Color Space:為了把這樣的Color Model數(shù)學模型投射到相應的數(shù)學表達,根據對于顏色數(shù)據的不同處理方式,存儲格式等等,產生了不同的Color Space。
本文主要介紹Color Model。Color Space常常涉及到許多具體的數(shù)學操作。兩者在概念上有時候也會混淆一談,倒也無所謂,基本上只有行業(yè)內人士才需要嚴格區(qū)分概念。
B: 常用的Color Model簡介:
http://en.wikipedia.org/wiki/Color_models
注:Y’UV vs YUV
(1)Y表示輝度信息(luminance)—或者說是亮度的感知信息
(2)Y’ 表示亮度(Luma)信息—或者說是電子化的亮度信息(和顯示系統(tǒng)的硬件信號,比如電壓直接相關),
(3)因為人眼對于亮度的感知與實際的顯示亮度不是成正比關系的,并不是說亮度增加一倍,人眼感知的亮度就會增加一倍,二者之間有非線性的關系。這個裝換就是Gamma矯正。
C:各種顏色模式之間的恩恩怨怨:
D:實際應用舉例
現(xiàn)在移動終端中常用到的Camera Sensor,Spec.一般會指明支持哪些Color format.常常看到類似RGB,或者RGB888,YUV,或者YUV422,YUV420之類的輸出格式表示:
RGB888:指的是輸出信號用RGB格式,RGB的顏色深度均為8(即一個Pixel的顏色需要3X8=24bit來表示)。傳統(tǒng)上有人稱為RGB接口,并口,PPI口(輸出簡單,就是8或者16或者24根信號線)等等。不過MIPI口也是可以支持的。
RGB 格式的缺點是三種顏色的權重是類似的,因此信息很難壓縮也不適合在帶寬受限系統(tǒng)中傳輸—但是很適合pixel-by-pixel的畫圖板式操作,所以在顯示系統(tǒng)里面被大量使用—比如Mobile display。對于
YUV422: 比較傳統(tǒng)的YUV格式是YUV444,表示每個YUV分量均由4bit來表示。不過,猶豫人眼對于亮度信息(Y)的敏感度大于對于色度信息(UV)的敏感度,因此為了減少信息帶寬,在對于視覺要求不高的應用中,部分色度信息可以被減少—稱為色度抽樣(Chroma subsampling),這樣就有了YUV422,甚至是YUV420。
RAW data:
RAW data在影像學上只是一種概念,沒有統(tǒng)一的標準,其基本思想是把原始的圖像數(shù)據用盡可能靠近sensor感光輸出的信號儲存起來供后續(xù)處理。相對比較通用的RAW格式為DNG (Adobe). 對于移動設備中常用的CMOS sensor,多數(shù)不提供RAW data的輸出(這一般是單反的feature)。一般會用Bayer格式,這個名字來自Bayer 濾鏡,指的是一束光線投射到sensor上并產生相應的輸出信號的透鏡。輸出的格式通是RGBG,GRGB or RGGB.之所以有兩個G分量,一方面最小的感光面用矩形在幾何上比較好安排(因此有4個感光分量),另一方面人眼對于綠色的敏感度更高一些。
聯(lián)系客服