日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

gamma校正_什么是Gamma校正?

發布時間:2025/3/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 gamma校正_什么是Gamma校正? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

導讀:常常在視頻處理中聽到Gamma曲線這個詞,今天就隨著這篇短文了解一下Gamma曲線的來歷。

一、光電轉換與電光轉換

? ? 將自然界中真實場景轉換為屏幕上顯示出來的圖像,往往需要經過兩個主要步驟:第一個是通過攝影設備,將外界光信息轉換為圖像信息存儲起來,本質上是存儲為數字信號;第二個是通過顯示設備,將圖像信息轉換為屏幕輸出的光信息。圖1展示了從拍攝到顯示的信號鏈。在整個過程中,信息流要經過兩個重要的非線性映射,才能形成我們在顯示設備上看到的圖像。其中,攝像機的非線性映射通常稱為光電轉換函數(OETF),而顯示端的顯示器的非線性映射通常稱為電光轉換函數(EOTF)。通常,OETF和EOTF并不是互逆關系。顯示端的EOTF往往還包括代表創作者渲染意圖的光光轉換函數(OOTF),其對觀看者在預設環境下通過顯示器觀看帶來的心理視覺影響進行了修正。

圖1視頻制作與顯示流程

二、人類視覺與Gamma校正

必須要強調的是,視覺是人類的主觀感受,因此,人眼看到的、感受到的和自然界中的實際場景存在誤差。一個直觀的例子是人眼所感受到的均勻變化亮度,在實際自然界中卻非均勻變化。這種視覺特性,就是Gamma校正產生的原因,即通過人為的非線性映射,使人類感受到自然界的“真實”景象。

在詳細介紹Gamma校正之前,需要先簡單了解一個概念:韋伯定律。

韋伯定律是用來描述外界刺激變化與人類感知到變化之間的關系,公式如下:

其中?Φ表示此時的差別閾值,是指人類能夠感覺到外界刺激出現改變所需的最小改變量。Φ表示原刺激量,K為常數。簡而言之,韋伯定律告訴我們,差別閾值與原刺激量成正比關系。也就是說,外界刺激本身越大,差別閾值就越大。我們能夠從中發現,人類對于外界刺激的感知并非線性的,原刺激越大時,由于比例關系,差別閾值就越大。即當外界刺激強度越大時,想讓人類能夠感知到變化所需的變化增量就必須越大。

舉一個現實的例子:在黑暗的房間中,點燃一根蠟燭,將讓人感知到巨大的亮度改變。而如果房間中有99根蠟燭,再點燃一根蠟燭人類可能根本感覺不到差別。所以,如果想要讓人類感知到同樣程度的亮度改變,所需的蠟燭數量可能是成百上千根才行。

經過科學家一系列實驗的測定發現人類能夠感知到的連續亮度譜如圖2所示:

圖2 人眼感受到的亮度

將最左邊純黑編號為“0.0”,最右端純白編號為“1.0”,中間定義為中灰“0.5”。這就形成了人眼的亮度譜。但是,上圖中的亮度在自然界中并不是同樣成比例的,例如圖中的中灰,對應自然界中的亮度是純白的20%。

將人眼亮度譜與自然界中實際亮度進行建模,就可以得到下面的圖像:

圖3 自然界與人眼感知的亮度對應

圖3中縱軸是人眼感受的均勻灰階,橫軸是自然界中線性增長的亮度。根據韋伯定律,在低亮度區域,人眼的敏感性較高,因此自然界中很小的亮度范圍,都能夠被人眼察覺;在高亮度范圍,人眼的敏感度較低,因此自然界中大范圍的亮度變化,在人眼感知上卻并不大。可以使用冪函數來擬合這種非線性的映射,用公式表示如下:

其中X是使用0-1之間的實數表示的輸入亮度,Y是使用0-1之間實數表示的輸出亮度,γ為認為設定的參數,不同的γ選擇會產生不同的效果。這種通過調整γ的取值,來調整輸入輸出亮度之間映射關系的方式,我們稱之為gamma校正。

? ? ? ? ?圖4:不同γ取值下,冪函數的圖像

根據γ取值的不同,通過上圖,我們能夠發現gamma校正的不同效果:

1.????當γ<1時,曲線上凸,輸出值大于輸入值。

2.????當γ=1時,曲線為一條直線,輸入與輸出相等,不進行校正

3.????當γ>1時,曲線下凸,輸出值小于輸入值

三、Gamma校正與圖像顯示

在圖像獲取,存儲與顯示發展過程中,前面提到的光電轉換函數與電光轉換函數也經歷了多次進化。在整個發展過程中,最具有指導意義的就是Gamma校正,這是一種在傳統的SDR顯示設備上被廣泛使用的轉換函數。

在傳統的圖像獲取與顯示過程中,將自然界中的真實場景轉換為屏幕上顯示出來的圖像,往往需要經過兩個主要的步驟:第一個是通過攝影設備,將外界的光信息轉換為三維數組存儲起來,也就是存儲為圖像信息,這一過程如前所述,需要通過光電轉換函數進行非線性映射;第二個是通過顯示設備,將圖像信息轉換為屏幕輸出的光信息,同樣,這一過程需要電光轉換函數的參與。在這兩個階段中,光電轉換函數與電光轉換函數實際上都是冪函數,也就是都進行Gamma校正。

首先,因為圖像每個像素的取值在0-255之間,因此先進行歸一化,將0-255這256個數線性映射到0-1之間。

接著,在圖像獲取階段,攝像機中會使用一種encodinggamma函數進行gamma校正,這里的gamma值小于1。自然界中的亮度,首先在攝像機中進行歸一化,映射到0-1之間,接著,將這個經過歸一化的值輸入encoding gamma函數中。最后將encoding gamma函數的輸出值與0-255的像素值歸一化結果進行比較,就能得到這個像素點的像素值。

顯示階段的gamma校正通常使用一種display gamma函數來完成,這里的gamma值大于1。顯示設備讀取像素值后,進行歸一化,然后將歸一化結果輸入display gamma函數中。將輸出的值對應的自然光線進行輸出,就是顯示階段做的工作。

理論上來說,上述兩個階段的gamma值乘積應該為1。因為兩個gamma校正實際上做的是恰好相反的操作,一個是將自然光線存儲為數字信息,另一個是將數字信息轉換為光線。而為了使自然中的光線與顯示設備產生的光線一致,顯然這里的gamma值的乘積需要為1。但是,在實際操作中,這兩個gamma值的乘積并不為1,原因有以下兩點:1)對于傳統顯示設備來說,屏幕能夠顯示的亮度范圍與顏色范圍與實際情況相差好幾個數量級;2)在真實的場景中,原始的場景填充了觀察者的所有視野,而顯示設備的亮度往往只局限在一個被周圍環境包圍的屏幕上。這兩個差別使得感知對比度相較于原始場景明顯下降了。因此,在電影院這種漆黑的環境中,這個乘積為1.5,在明亮的室內這個值為1.125。

由于人類感知的“中灰”,在實際的自然光線中對應于白光的20%的亮度。因此,如果完全按照自然光線的數值進行灰度處理,純黑到中灰這一段在人類感知中占到一半的灰度,將只能由20%的灰階進行表示,而剩下的一半會有80%的灰階進行表示,這顯然是不合理的。Gamma校正就可以解決這個問題。在實際操作中,中灰對應的自然光線,顯然會被映射為0.5的取值,也就對應128這一灰階。這樣的結果就是高亮度與低亮度部分分別占有一半的灰階,這就會使得顯示的圖像的直觀感受更接近于現實。

?因此,gamma校正實際上是用來解決顯示設備亮度灰階不足的問題的,在實際生活中起到了廣泛而巨大的作用。

總結

以上是生活随笔為你收集整理的gamma校正_什么是Gamma校正?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。