背景:
在顯像設備中,顯像管中的電子束及圖像亮度(因變量)與輸入電壓(自變量)并不是呈線性關系,而是呈指數關系,且指數大于1。這就導致,亮區的信息比預想的更亮,暗區的信息比預想的更暗。因此,我們對輸入電壓進行伽馬矯正,經過一個新的指數函數,以設備伽馬系數的倒數為指數。這樣,最終呈現在圖像上的亮度就是我們預想的值了。
原理:
電視系統的gamma值為2.2,校正系數則未1/2.2≈0.45。
gamma矯正分為歸一化-矯正-反歸一化三步:
def gamma_Correction(x):
y = (x + 0.5) / 256
y = y**0.45
y = y * 256 + 0.5
優化:
既然每個輸入的像素值都在0~255區間內,那可以預先計算每個值gamma矯正的結果,建立一個dict。對圖像進行gamma矯正時,只需通過查表,得到輸出值,避免重復計算。