當初聽到伽瑪(Gamma),第一個念頭是gamma一定是高科技時代的技術(shù),沒想到看了前輩寫的文章后,才知道gamma是舊時代的產(chǎn)物。話說由于早期CRT螢?zāi)惠斎雴挝浑妷翰⒉粫a(chǎn)生等量的亮度(所以是非線性),為了正確地顯示畫面顏色亮度,刻意制定一個曲線關(guān)系(x軸為輸入與y軸為輸出),讓最終輸出的影像為線性顏色亮度的影像。即使現(xiàn)代能夠制造出線性反應(yīng)的液晶螢?zāi)唬@種現(xiàn)象仍然深深地影響影像處理,不管是后制、合成、調(diào)色或是3D算圖渲染都離不開gamma這個技術(shù)。
我們?nèi)私邮芡饨绲馁Y訊,視覺占了所有感官一半以上,Gamma這個概念(技術(shù))最好能夠了解!無論是輸入還是輸出或是介于其中,Gamma已經(jīng)深入在我們眼前,過去使用CRT螢?zāi)唬F(xiàn)在使用LCD螢?zāi)唬鼈兊牟町悶楹危繛槭裁碝ac要使用Gamma 1.8,而PC要使用Gamma 2.2呢?為什么做設(shè)計的人比較偏好蘋果系列電腦?
Gamma是一個描述階調(diào)(tone)特性的對數(shù)。字典里定義Gamma為一個數(shù),指示影像明暗的對比等級,它可以是一條直線。一個更好對Gamma的描述是非線性指數(shù)函式,這個函式是以兩個變數(shù)來定義:f(x) = x^γ。在以上兩者狀況,Gamma描述一條線性曲線或是在對數(shù)尺度的一條直線。
伽瑪校正(Gamma correction)是個常被誤解的觀念。簡單來說,伽瑪描述了相機或螢?zāi)坏姆蔷€性(nonlinear)反應(yīng)的現(xiàn)象。當一個相機接收到兩倍的光強時,相機并不會把這個資料存成兩倍的RGB值。有很多原因是為什么相機的記錄系統(tǒng)會有這種記錄方式,這種現(xiàn)象稱為伽瑪(Gamma)。其中一個原因是顯示器感光本身的問題,例如底片具有非線性的感光曲線,另外CRT螢?zāi)灰灿型瑯訂栴}:像素的光亮強度跟輸入的電壓強度并不是呈現(xiàn)線性關(guān)系。
現(xiàn)代液晶顯示器(Thin film transistor liquid crystal display (TFT-LCD))本身雖然沒有先天上的伽瑪問題,但是為了要迎合傳統(tǒng)的工作流程,TFT-LCD螢?zāi)粫桃饽M出伽瑪?shù)男Ч?br>
伽瑪?shù)幕居^念(GAMMA 101)
1、所有的螢?zāi)欢加蟹蔷€性的輸出和輸入反應(yīng),這是故意的。
2、大多數(shù)的2D軟件都會以線性的顏色模型來處理,所以它假定,255數(shù)值的亮度是128數(shù)值的兩倍。但由于顯示器對于訊號的輸出輸入是非線性的,所以產(chǎn)生的亮度會是不正確的。事實上,大多數(shù)螢?zāi)?gamma=2.2),如果你想要顯示出255數(shù)值亮度的50%亮度的話 那你就必須要輸入(0.5 ^(1/2.2))* 255 = 186的數(shù)值。如果你不考慮gamma的問題 輸入128數(shù)值 就只會產(chǎn)生大約(128/255)^ 2.2 = 22%的亮度。
3、數(shù)位相機基本上具有線性的輸出入效果,但因為通常我們會在電腦螢?zāi)簧厦婵磁某鰜淼恼掌詳?shù)位相機會故意在照片里面嵌入gamma。(所以。JPG格式是帶有g(shù)amma的,但是RAW的格式是線性資料,當你把RAW檔轉(zhuǎn)成JPG格式時就會產(chǎn)生非線性的照片了)。
4、因此,如果你用2D軟件去開你照片拍出的jpg圖檔時,您必須要把gamma補償回來(去gamma)。
5、如果你的圖片是在2D軟件產(chǎn)生的(基本上這張圖是線性的),當你把這張照片顯示在帶伽瑪?shù)奈災(zāi)?你也要做gamma補償。
更多
1、Gamma不是bug,它是一個功能,因為人的眼睛對光線的亮度具有非線性的感光反應(yīng)。如果你每個顏色只有8 bit來記錄顏色資料,很重要地利用這8 bit正確地重現(xiàn)人眼的感光效果很重要,它必須要是非線性的編碼方式。即使是新一點的螢?zāi)蝗匀挥匈が敚和ǔo@示卡會用8 bit來處理每種顏色避免色帶問題,這8 bit必須每個強度看起來間距是等距的。制造螢?zāi)坏膹S商有能力生產(chǎn)線性反應(yīng)曲線的螢?zāi)唬绻阌? bit來顯示圖片,效果會很糟糕。
2、現(xiàn)今大多數(shù)電腦螢?zāi)欢家詓RGB (standard RGB)的標準來顯示,也就是伽馬2.2。
3、大多數(shù)的數(shù)位相機也以sRGB紀錄相片。如果是掃描進來的圖或是合成圖像就不會帶有伽馬2.2。
4、幾乎所有的浮點紀錄HDR資料是線性的,即與伽瑪為1.0。
5、對于圖片而言,「伽馬」代表了強度是如何被記錄的。換句話說:圖檔的gamma是為了要讓圖片在螢?zāi)簧夏苷_地顯示出來。
6、有些圖片會帶有g(shù)amma的標簽,但這是不可靠的,因為很多繪圖軟件會忽略這個標簽。因此,要正確知道圖檔的gamma數(shù)值并不容易。
如果您的螢?zāi)挥?.2的伽瑪而顯示的圖片看起來有很正常,那該圖片可能本身就帶有伽瑪2.2。