|
前言: 研究ISP算法是一件充滿樂(lè)趣的事情,原因在于ISP算法沒(méi)有標(biāo)準(zhǔn)答案,任何ISP算法都沒(méi)有一個(gè)標(biāo)準(zhǔn)協(xié)議,每個(gè)人都可以自由發(fā)揮自己的想象力,目的只有一個(gè),讓人眼看得舒服,大家看著好,才是真的好。每個(gè)人的想象力各不相同,算法復(fù)雜度也是無(wú)窮盡,評(píng)價(jià)ISP算法的優(yōu)劣,主要就是一個(gè)性價(jià)比:在一定復(fù)雜度要求的條件下,達(dá)到最好的圖像質(zhì)量。在學(xué)習(xí)ISP相關(guān)的paper的時(shí)候,要關(guān)注的重點(diǎn)是算法的原理,或者說(shuō)出發(fā)點(diǎn),而不是計(jì)算公式,因?yàn)楣街型ǔ6际菑?fù)雜運(yùn)算,難以實(shí)際用起來(lái),在理解了原理之后,可以找近似的替代算法來(lái)達(dá)到相近的效果。 從視覺(jué)感受來(lái)分,我把ISP大致分成亮度,色彩和細(xì)節(jié)三個(gè)部分。亮度是指對(duì)圖像整體的亮度調(diào)整,涉及到的算法有自動(dòng)曝光Auto Exposure,黑電平校正Black Level Correction,鏡頭陰影校正Lens Shading Correction,Gamma,High Dynamic Ranger等。涉及到色彩的有白平衡Auto White Balance,色彩校正Color Correction Matrix,飽和度Saturation,色相Hue等。細(xì)節(jié)的算法主要的去噪Denoise,插值interpolation,縮放zoom,邊緣增強(qiáng)edge enhance等。還有一些其他相對(duì)特殊的算法,例如自動(dòng)對(duì)焦Auto Focus,防閃爍anti-flick等。一個(gè)簡(jiǎn)化的ISP算法框架如下圖。
Figure 0.1 ISP簡(jiǎn)單框架
1.圖像數(shù)據(jù)格式 圖像format有:Bayer pattern, RGB, YUV, YCbCr, JPEG, HSI, HSV, Lab, CMY等。各種Format有其各自的特性,適用于不同的場(chǎng)合。有些format之間可以相互轉(zhuǎn)換,圖像質(zhì)量沒(méi)有任何變化,有一些轉(zhuǎn)換則會(huì)損失一些圖像質(zhì)量。ISP各種算法,在不同圖像format中處理的復(fù)雜度有較大的差別,效果也會(huì)有所不同,大部分ISP算法都有適合自己的format,所以各家的ISP 框架都類(lèi)似。 從CMOS image sensor輸出的圖像通常是bayer pattern,也常被稱為raw data。Bayer pattern每個(gè)pixel只有一個(gè)color分量,如figure 1.1。每個(gè)方格表示一個(gè)pixel,Green分量占了1/2的pixel,red和blue各占1/4的pixel。數(shù)據(jù)從圖像的左上角開(kāi)始,按照從左往右,從上往下的方向,逐個(gè)pixel傳輸。每個(gè)pixel通常是8-bit~12-bit的精度。
Figure1.1.1 bayer pattern
Figure 1.1.2 RGB色彩空間
YUV是一種常見(jiàn)的色彩空間,Y表示亮度,U表示藍(lán)色色調(diào),V表示紅色色調(diào)。它和RGB之間可以相互轉(zhuǎn)換,轉(zhuǎn)換的計(jì)算方法在不同的參考書(shū)籍中會(huì)有差異。我們參考微軟給出的一組計(jì)算公式,R/G/B/Y/U/V都用8 bits表示:
1.3 YCbCr YCbCr和YUV非常相似,兩個(gè)Y的意義相同,Cb和U的意義相同,Cr和V的意義相同,二者只是在轉(zhuǎn)換公式的系數(shù)略有差異,這很容易導(dǎo)致混淆。ITU-R BT.601給出計(jì)算公式如下: Y=0.299R +0.587G +0.114B 不論是YUV還是YCbCr(BT.601/BT.709),各個(gè)分量代表的實(shí)際物理意義是近似的,所以在下面的敘述中,除非特殊聲明,一般認(rèn)為二者是等價(jià)的,不再區(qū)分。
Figure1.3.1 YUV的三種format
1.4 JPEG JPEG是最常用的圖像壓縮標(biāo)準(zhǔn)。圖像首先需要轉(zhuǎn)換成YCbCr format。JPEG壓縮是對(duì)8x8方塊中的數(shù)據(jù)進(jìn)行。其過(guò)程包括DCT,Quantification和Huffman encode。 其中最核心的是量化表,量化系數(shù)Qp越小,圖像質(zhì)量越好,但是圖像size也越大,反之Qp越大,size越小,質(zhì)量越差,會(huì)出現(xiàn)馬賽克,重影等現(xiàn)象。 HSI是根據(jù)人眼視覺(jué)模型建立的一種色彩空間。H是hue,即色調(diào)(色相),是一個(gè)角度,取值在00~3600之間。S是saturation,即飽和度,取值在0~1之間。I是intensity,即亮度。HSI 和RGB的轉(zhuǎn)換公式如下:
Figure 1.5.1 (B)線條示意圖:圓錐上亮度、色度和飽和度的關(guān)系。 (C)縱軸表示亮度:亮度值是沿著圓錐的軸線度量的,沿著圓錐軸線上的點(diǎn)表示完全不飽和的顏色,按照不同的灰度等級(jí),最亮點(diǎn)為純白色、最暗點(diǎn)為純黑色。 (D)圓錐縱切面:描述了同一色調(diào)的不同亮度和飽和度關(guān)系。 (E)圓錐橫切面:色調(diào)H為繞著圓錐截面度量的色環(huán),圓周上的顏色為完全飽和的純色,色飽和度為穿過(guò)中心的半徑橫軸。
這里I也表示為亮度,和Y的概念相同,但是出發(fā)點(diǎn)是不一樣的。這里I僅僅是RGB三個(gè)分量的平均值,定義這個(gè)模型的美國(guó)色彩學(xué)家孟塞爾(H.A.Munseu)顯然在這里偷了個(gè)懶,YCbCR定義的Y是根據(jù)人眼對(duì)RGB三種顏色的敏感度差異,分別對(duì)RGB選取了不同的權(quán)重系數(shù): Y=0.299R +0.587G +0.114B 作為一個(gè)有經(jīng)驗(yàn)的ISP算法工程師,是不會(huì)用這個(gè)I來(lái)做任何運(yùn)算的。HSI模型的優(yōu)點(diǎn)在于定義了Hue和Saturation這兩個(gè)概念。在這個(gè)模型中,隨著Hue的角度變化,色彩呈現(xiàn)出超出人腦既有感受經(jīng)驗(yàn)的光怪陸離的變化,讓人耳目一新,類(lèi)似電影特效一般,在實(shí)際中一點(diǎn)用也沒(méi)有。Saturation表示圖像色彩的鮮艷程度,雖然計(jì)算公式有點(diǎn)粗糙,但概念比較清晰也比較實(shí)用。還記得我們之前說(shuō)過(guò)像素級(jí)的ISP算法不能有復(fù)雜的運(yùn)算,這里有除法,三角函數(shù),開(kāi)根號(hào)等,所以在ISP算法框架中是不會(huì)有HSI 模型的,不過(guò)其Hue和Saturation概念是很有意義的,我們可以在YUV空間來(lái)模擬這兩種效果。
1.6 CMY 彩色印刷或彩色打印的紙張是不能發(fā)射光線的,因而印刷機(jī)或彩色打印機(jī)就只能使用一些能夠吸收特定的光波而反射其它光波的油墨或顏料。油墨或顏料的三基色是青(Cyan)、品紅(Magenta)和黃(Yellow),簡(jiǎn)稱為CMY。
這里值得注意的是C/M/Y分別是R/G/B的補(bǔ)色。所謂補(bǔ)色就是下圖中任意一條直徑兩端的兩種顏色,互為補(bǔ)色。
Figure1.6.1 1.7 CIE色度模型 國(guó)際照明委員會(huì)(CIE,Commission Internationale de L'Eclairage / International Commission on Illumination)的色度模型是最早使用的模型之一。它是三維模型,其中,x和y兩維定義顏色,第3維定義亮度。CIE 在1976 年規(guī)定了兩種顏色空間。一種是用于自照明的顏色空間,叫做CIE LUV。
Figure 1.7.1 CIE 1976 Lu’v’色度圖 另一種用于非自照明的顏色空間,叫做CIE 1976 L*a*b*,或者叫CIE LAB。CIE LAB 系統(tǒng)使用的坐標(biāo)叫做對(duì)色坐標(biāo)(opponent color coordinate)。CIELAB 使用b*, a *和 L*坐標(biāo)軸定義CIE 顏色空間。其中,L*值代表光亮度,其值從0(黑色)~100(白色)。b*和a*代表色度坐標(biāo),其中a* 代表紅-綠軸,b* 代表黃-藍(lán)軸,它們的值從0到10。
a*= b* = 0表示無(wú)色,因此L* 就代表從黑到白的比例系數(shù)。使用對(duì)色坐標(biāo)(opponet color coordinate)的想法來(lái)自這樣的概念:顏色不能同時(shí)是紅和綠,或者同時(shí)是黃和藍(lán),但顏色可以被認(rèn)為是紅和黃、紅和藍(lán)、綠和黃以及綠和藍(lán)的組合。 CIE XYZ 是國(guó)際照明委員會(huì)在1931 年開(kāi)發(fā)并在1964年 修訂的CIE 顏色系統(tǒng)(CIE Color System),該系統(tǒng)是其他顏色系統(tǒng)的基礎(chǔ)。它使用相應(yīng)于紅、綠和藍(lán)三種顏色作為三種基色,而所有其他顏色都從這三種顏色中導(dǎo)出。通過(guò)相加混色或者相減混色,任何色調(diào)都可以使用不同量的基色產(chǎn)生。CIE 1931 色度圖(CIE 1931 Chromaticity Diagram),如Figure 1.1.8.3所示,圖(b)是它的輪廓圖。圖(a)中的A點(diǎn)在色度圖上的坐標(biāo)是x =0.4832,y =0.3045,它的顏色與紅蘋(píng)果的顏色相匹配。
Figure 1.7.3 這幾種模型在ISP計(jì)算中沒(méi)有用到,不過(guò)在測(cè)試或者調(diào)校圖像質(zhì)量的時(shí)候會(huì)用作參考。 1.8 小結(jié) 以上介紹了幾種色彩模型,在ISP中用到的只有Bayer pattern,RGB,和YUV/YCbCr。下一章將開(kāi)始介紹亮度相關(guān)的function。
|
|
|
來(lái)自: 海鯀 > 《相機(jī)攝影機(jī)》