注意這里有一點(diǎn)混亂。通常我們說(shuō)做一個(gè)gamma=c的校正,意思是指做output = input ^ (1/c)的變換。有一個(gè)倒數(shù)關(guān)系。
Gamma校正示意圖
對(duì)于PC,顯示器的Gamma是2.2左右(可能以前更多的是2.5,現(xiàn)在好像趨向2.2了),一般沒(méi)有內(nèi)置的校正,所以我們說(shuō)Adobe Gamma對(duì)Windows系統(tǒng)默認(rèn)的校正系數(shù)2.2。對(duì)于MAC,顯示器的Gamma是2.5,硬件內(nèi)置了1.4的校正,所以它還需要2.5/1.4~=1.8的校正才成為線性的。下文對(duì)各種系統(tǒng)下的gamma校正過(guò)程有更詳細(xì)的說(shuō)明。
四. Gamma校正可能發(fā)生在哪里
4.1. 系統(tǒng)級(jí)(硬件、操作系統(tǒng))
顯示器內(nèi)沒(méi)有聽(tīng)說(shuō)過(guò)有何補(bǔ)償,即使有,它們也對(duì)外呈現(xiàn)一定的gamma值。
主要的補(bǔ)償發(fā)生在顯卡及其驅(qū)動(dòng)程序類。如果顯卡硬件不支持,則由驅(qū)動(dòng)程序軟件完成。在Windows中,上層通過(guò)調(diào)用驅(qū)動(dòng)程序的一個(gè)接口函數(shù)(DrvIcmSetDeviceGammaRamp)向其傳遞Gamma校正表(LUT),這個(gè)表的大小是3*256項(xiàng)(每項(xiàng)16字節(jié)),對(duì)應(yīng)于RGB三個(gè)通道,每個(gè)通道256級(jí)。
描述這一細(xì)節(jié),可以對(duì)有些事情更有把握:
* 這種校正實(shí)際上可以是任意函數(shù),而不限于gamma為冪的指數(shù)函數(shù)。
* 也是因?yàn)榇耍荒芡ㄟ^(guò)驅(qū)動(dòng)程序得到系統(tǒng)的gamma值(因?yàn)樽疃嘀荒艿玫侥莻(gè)表)。
* 這一設(shè)置對(duì)整個(gè)系統(tǒng)有效(任何程序,任意顯示的圖片都受它影響)。
以前我一直不明白Adobe Gamma和驅(qū)動(dòng)程序的Gamma是什么關(guān)系,它們一起出現(xiàn)就不知所措。還有人說(shuō)它們是共同作用的,F(xiàn)在我完全明白了,沒(méi)有迭加關(guān)系,最后者的設(shè)置有效。而且,Adobe Gamma也不必是(實(shí)際上也不是)一個(gè)駐留程序,它僅在啟動(dòng)時(shí)將那個(gè)表傳給驅(qū)動(dòng)程序就完成了它的任務(wù)。
還可以用其它程序來(lái)校正/設(shè)置gamma,下面是一個(gè)方便的小工具:Gamma Panel。(查看本文中的圖片,需要經(jīng)常改變gamma,最好下一個(gè),F(xiàn)ree的。)

全部評(píng)論