在顯示行業(yè),會(huì)經(jīng)常聽(tīng)到Gamma這個(gè)術(shù)語(yǔ),但到底什么是Gamma,為什么要用到Gamma,Gamma為什么是2.2,可能很多業(yè)內(nèi)人士也并不完全清楚。本文針對(duì)Gamma做個(gè)簡(jiǎn)單的探討,希望對(duì)各位能有所幫助。
在將真實(shí)場(chǎng)景轉(zhuǎn)換為屏幕顯示的過(guò)程中,需要通過(guò)光電轉(zhuǎn)換形成圖像數(shù)據(jù),然后進(jìn)行電光轉(zhuǎn)換形成顯示圖像。在光電轉(zhuǎn)換編碼過(guò)程中,并非采用線性編碼而采用編碼Gamma,同樣的在電光轉(zhuǎn)換過(guò)程中需要用到顯示Gamma,即Gamma矯正。那么為什么不線性編碼再線性輸出呢?理論上完全可以,將亮度無(wú)限平均等分即灰階數(shù)無(wú)窮大,將真實(shí)場(chǎng)景的亮度利用線性編碼進(jìn)行完全精準(zhǔn)的記錄,然后再真實(shí)的輸出即可。該方式會(huì)造成數(shù)據(jù)量無(wú)窮大,那么降低灰階數(shù),假定共256灰階,仍然保持灰階與亮度的線性對(duì)應(yīng)關(guān)系,以該方式去記錄真實(shí)圖像的亮度,再電光轉(zhuǎn)換為屏幕顯示,會(huì)造成什么現(xiàn)象呢?回答這個(gè)問(wèn)題前,需要先說(shuō)明一下人眼的特點(diǎn):人眼對(duì)亮度變化的感知是非線性的,對(duì)暗部亮度變化的敏感度要強(qiáng)于對(duì)亮部亮度變化的敏感度。舉例說(shuō)明如下:在黑暗的房間里點(diǎn)燃1根蠟燭,人眼會(huì)明顯感覺(jué)到房間變亮了,然后點(diǎn)燃第2根,感覺(jué)到更亮了,不斷地依次點(diǎn)燃更多蠟燭,此時(shí)亮度是線性變化的但是人眼感受到的亮度變化卻不是線性的,當(dāng)很多蠟燭被點(diǎn)亮是,多點(diǎn)一根蠟燭,人眼已經(jīng)很難再感受到亮度的變化。假定共255根蠟燭,用灰階數(shù)(G)以線性一一對(duì)應(yīng)記錄他們的亮度(L),即G1代表點(diǎn)亮了1根蠟燭,G128代表點(diǎn)亮了128根蠟燭,此時(shí)人眼更容易分辨G1和G2,難以分辨G254和G255。那么G255和G256對(duì)應(yīng)的亮度就沒(méi)必要用兩個(gè)灰階即兩個(gè)數(shù)據(jù)進(jìn)行記錄,另一方面,真實(shí)場(chǎng)景的亮度可能介于G1和G2之間,其亮度變化人眼也可感知到,但是缺少灰階去表示。
此時(shí)就可以回答前面的問(wèn)題了:采用線性方式記錄的話,暗部在相鄰灰階數(shù)之間很多可感知到的亮度無(wú)法呈現(xiàn),即灰階數(shù)的缺失;亮部很多灰階對(duì)應(yīng)的亮度變化人眼無(wú)法感知,即灰階數(shù)的浪費(fèi)。因此,應(yīng)該用更多的灰階數(shù)去描述暗部,更少的灰階數(shù)去描述亮部,舉個(gè)例子說(shuō)明:G1代表1根蠟燭;G2不再代表2根蠟燭,代表1.02根蠟燭;G3代表1.1根......G128代表30根......G254代表240根,G255代表255根,可以看到,低亮度對(duì)應(yīng)的灰階數(shù)變多了,高亮度對(duì)應(yīng)的灰階數(shù)變少了,此時(shí)讓灰階從G1 G2依次變化時(shí),人眼會(huì)感受到亮度變化更趨于線性。L為亮度,Gray為灰階,C為系統(tǒng)常數(shù),γ為其指數(shù)根據(jù)Gamma曲線可以看出γ大于1時(shí),低亮度下會(huì)有更多的灰階數(shù),這樣更符合人眼對(duì)亮度變化呈現(xiàn)的需求。那么進(jìn)一步精確該數(shù)值,從大量的人眼視覺(jué)特性中總結(jié)出來(lái)一個(gè)經(jīng)驗(yàn)值為2.2。即當(dāng)γ=2.2時(shí),灰階線性變化剛好對(duì)應(yīng)人眼感受到的亮度線性變化。(γ即Gamma)

至此我們清楚了亮度和灰階的關(guān)系,同時(shí)可知,灰階數(shù)越多(即bit數(shù)越大),亮度過(guò)渡越細(xì)膩,但同時(shí)數(shù)據(jù)量就越大。當(dāng)灰階數(shù)足夠多時(shí)超過(guò)人眼分辨亮度變化的極限時(shí),即可以理解顯示圖像的亮度過(guò)渡同等于真實(shí)場(chǎng)景,如同分辨率超越人眼極限的概念。確定亮度和灰階的關(guān)系之后,只需要確定電壓與灰階的關(guān)系即可通過(guò)對(duì)應(yīng)電壓呈現(xiàn)所需亮度。灰階對(duì)應(yīng)的電壓數(shù)值即Gamma電壓。先假定所有iPhone14屏幕的光電特性無(wú)個(gè)體差異,那么只需要如下步驟即可實(shí)現(xiàn)準(zhǔn)確的電光轉(zhuǎn)換,即Gamma矯正:1,確定一個(gè)iPhone14屏幕的最大亮度,然后通過(guò)Gamma2.2曲線確定所有灰階的亮度2,測(cè)量所有灰階亮度對(duì)應(yīng)的電壓,即Gamma電壓,實(shí)際多為僅測(cè)量幾個(gè)綁點(diǎn)電壓,然后擬合出所有Gamma電壓而真實(shí)狀況是設(shè)備之間的個(gè)體差異無(wú)法忽略不計(jì),即每個(gè)屏幕電壓與亮度對(duì)應(yīng)關(guān)系不同,需要一一測(cè)量和寫入,此過(guò)程被稱為OTP(one time program,一次性燒錄)。OTP過(guò)程中RGB子像素要單獨(dú)確定各自電壓和灰階亮度的對(duì)應(yīng)關(guān)系,同時(shí)需兼顧色點(diǎn)的準(zhǔn)確,而手機(jī)屏幕亮度并非固定不變而是可調(diào)節(jié)的,每個(gè)亮度下又需要一套對(duì)應(yīng)關(guān)系,可以想象這是一個(gè)很復(fù)雜的過(guò)程。

Gamma設(shè)定完成之后,如果設(shè)定有偏差,根據(jù)Gamma曲線可知:當(dāng)Gamma過(guò)大時(shí),在亮部灰階數(shù)變少,畫面會(huì)變暗;當(dāng)Gamma過(guò)小時(shí)(如2.0),暗部灰階數(shù)變少,暗部的信息會(huì)缺失,過(guò)渡不自然。
以上介紹了Gamma的作用和Gamma矯正的方法,看起來(lái)似乎很理所應(yīng)當(dāng),但Gamma的由來(lái)又與CRT的顯示特性相關(guān),CRT的固有Gamma為2.5,使用~1/1.1的校正系數(shù),可以達(dá)到2.2的顯示伽馬基準(zhǔn)。 早期顯示標(biāo)準(zhǔn)sRGB,它使用的編碼Gamma大約是0.45(也就是1/2.2),就是為了配合顯示Gamma為2.5的設(shè)備工作。而眼睛的亮度感受曲線與CRT顯示器的物理響應(yīng)曲線能夠基本吻合,這就是Gamma傳說(shuō)中的那個(gè)“美妙的巧合”。
關(guān)于Gamma的文章千千萬(wàn),本人閱歷有限又才疏學(xué)淺,尚未看到一篇完美解釋Gamma的文章,也未能完全理解Gamma。因此本文也可能成為另一篇誤導(dǎo)你的“Gamma傳說(shuō)”,算是拋磚引玉,如有錯(cuò)誤,還望指出。
聲明:部分圖片系網(wǎng)絡(luò)編輯轉(zhuǎn)載,目的在于分享傳遞顯示行業(yè)技術(shù)和信息。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)與我們聯(lián)系,我們將在第一時(shí)間刪除相關(guān)內(nèi)容