本發(fā)明涉及圖像處理技術領域,尤其涉及一種圖像伽馬校正方法及裝置。
背景技術:
在顯示設備上顯示圖像之前,需要對圖像做一個gamma(伽馬)校正,以配合顯示器產生人眼看上去亮度正常的圖像,其中,每個顯示設備均有其對應的伽馬值。
crt顯示器成像,由于成像原理,圖像中每個像素點的輸出亮度值與輸入亮度值成指數(shù)關系,即y'=y(tǒng)gamma。gamma變換的現(xiàn)有實現(xiàn)方式中,最普遍的方式是通過實驗得到gamma對應表,并預先在顯示設備的rom存儲器中存儲該gamma對應表(完整的gamma對應表),在顯示設備上顯示圖像的時候,根據圖像的輸入亮度值,在該gamma對應表中查找該輸入亮度值對應的輸出亮度值,從而根據輸出亮度值在顯示設備上顯示圖像。但是,這種預先在顯示設備的rom存儲器中存儲該gamma對應表的方式占用rom(read-onlymemory,只讀存儲器)存儲器的大量存儲空間,從而造成rom存儲器存儲空間的浪費。
為了減少rom存儲空間的占用,目前采用對完整的gamma表間隔采樣,例如一個4096個亮度值的gamma表,只存儲512個亮度值。查表時,對于不在表內的亮度值,由鄰近該點兩邊的亮度值的數(shù)據插值產生。這種方式雖然減少了rom的存儲空間的占用量,但會在一定程度上造成根據抽樣后的gamma對應表進行gamma校正的結果不準確的問題。
技術實現(xiàn)要素:
本發(fā)明提供一種圖像伽馬校正方法及裝置,用以解決現(xiàn)有技術中存在的占用rom空間大,以及校正的結果不準確的問題。
一種圖像伽馬校正方法,包括:
獲取根據顯示設備的伽馬值以及位寬構建的所述顯示設備對應的伽馬特性函數(shù),其中,校正前亮度值作為所述伽馬特性函數(shù)的輸入值,校正后亮度值作為所述伽馬特性函數(shù)的輸出值;
獲取預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值以及所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù);
根據所述初始輸出值、導數(shù)以及預先存儲的遞推公式,遞推得到所述伽馬特性函數(shù)的輸入值為各個亮度值時的輸出值,其中,各個亮度值為初始亮度值之外的亮度值;
根據所述初始亮度值以及初始輸出值、各個亮度值以及所述伽馬特性函數(shù)的輸入值為對應亮度值時的輸出值,構建伽馬對應表;
根據構建的伽馬對應表,對輸入所述顯示設備的圖像進行伽馬校正。
所述方法中,根據所述顯示設備的伽馬值以及位寬,構建的所述顯示設備對應的伽馬特性函數(shù)為:
其中,γ表示顯示設備的伽馬值,n表示顯示設備的位寬,x表示顯示設備的校正前亮度值,并且,1≤x≤2n-1、x為整數(shù)。
所述方法中,所述顯示設備的伽馬值小于1時,所述初始亮度值為1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(1)。
所述方法中,所述遞推公式為:
其中,
所述方法中,所述顯示設備的伽馬值大于1時,所述初始亮度值為2n-1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(2n-1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(2n-1)。
所述方法中,所述遞推公式為:
其中,
本發(fā)明還提供一種圖像伽馬校正裝置,包括:
第一獲取模塊,用于獲取根據顯示設備的伽馬值以及位寬構建的所述顯示設備對應的伽馬特性函數(shù),其中,校正前亮度值作為所述伽馬特性函數(shù)的輸入值,校正后亮度值作為所述伽馬特性函數(shù)的輸出值;
第二獲取模塊,用于獲取預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值以及所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù);
遞推模塊,用于根據所述初始輸出值、導數(shù)以及預先存儲的遞推公式,遞推得到所述伽馬特性函數(shù)的輸入值為各個亮度值時的輸出值,其中,各個亮度值為初始亮度值之外的亮度值;
構建模塊,用于根據所述初始亮度值以及初始輸出值、各個亮度值以及所述伽馬特性函數(shù)的輸入值為對應亮度值時的輸出值,構建伽馬對應表;
校正模塊,用于根據構建的伽馬對應表,對輸入所述顯示設備的圖像進行伽馬校正。
所述裝置中,所述根據所述顯示設備的伽馬值以及位寬,構建的所述顯示設備對應的伽馬特性函數(shù)為:
其中,γ表示顯示設備的伽馬值,n表示顯示設備的位寬,x表示顯示設備的校正前亮度值,并且,1≤x≤2n-1、x為整數(shù)。
所述裝置中,所述顯示設備的伽馬值小于1時,所述初始亮度值為1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(1)。
所述裝置中,所述遞推公式為:
其中,
所述裝置中,所述顯示設備的伽馬值大于1時,所述初始亮度值為2n-1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(2n-1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(2n-1)。
所述裝置中,所述遞推公式為:
其中,
利用本發(fā)明實施例提供的圖像伽馬校正方法及裝置,具有以下有益效果:
僅在rom中預先存儲伽馬特性函數(shù)、伽馬特性函數(shù)的初始輸出值、伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)以及遞推公式,當顯示設備運行(啟動)時,根據rom中存儲的信息構建伽馬對應表,從而節(jié)省了rom存儲空間,并且,本發(fā)明實施例中的伽馬對應表中保存了所有校正前亮度值對應的校正后亮度值,不需要經過數(shù)據差值計算,從而在一定程度上提高了對圖像進行伽馬校正的準確性。
附圖說明
圖1為本發(fā)明實施例提供的圖像伽馬校正方法流程圖;
圖2為本發(fā)明實施例提供的實施例一的實施流程圖;
圖3為本發(fā)明實施例提供的實施例二的實施流程圖;
圖4為本發(fā)明實施例提供的圖像伽馬校正裝置示意圖。
具體實施方式
下面結合附圖和實施例對本發(fā)明提供的圖像伽馬校正方法及裝置進行更詳細地說明。
本發(fā)明實施例提供一種圖像伽馬校正方法,如圖1所示,包括:
步驟101,獲取根據顯示設備的伽馬值以及位寬構建的所述顯示設備對應的伽馬特性函數(shù),其中,校正前亮度值作為所述伽馬特性函數(shù)的輸入值,校正后亮度值作為所述伽馬特性函數(shù)的輸出值。
具體的,每個顯示設備具有其對應的伽馬值γ以及位寬n,根據位寬可計算得到輸入該顯示設備的圖像的校正前最大亮度值為2n-1,校正前最大亮度值確定后,可確定輸入該顯示設備的圖像的校正前亮度值的取值范圍為0~2n-1,校正前亮度值為整數(shù)。
將圖像的校正前亮度值作為該顯示設備對應的伽馬特性函數(shù)的輸入值,該伽馬特性函數(shù)的輸出值為該圖像的校正后亮度值。
步驟102,獲取預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值以及所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)。
具體的,預先從0~2n-1中確定一個亮度值作為初始亮度值,并預先根據伽馬特性函數(shù),計算出輸入值為初始亮度值時的伽馬特性函數(shù)的初始輸出值以及伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)。
步驟103,根據所述伽馬特性函數(shù)、所述初始輸出值、所述導數(shù)以及預先存儲的遞推公式,遞推得到所述伽馬特性函數(shù)的輸入值為各個亮度值時的輸出值,其中,各個亮度值為初始亮度值之外的亮度值。
具體的,根據所述伽馬特性函數(shù)、所述初始輸出值、所述導數(shù)以及預先存儲的遞推公式,以初始輸出值以及伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為起點,根據預先存儲的遞推公式依次遞推伽馬特性函數(shù)為各個亮度值時的輸出值,其中,各個亮度值為0~2n-1中初始亮度值之外的亮度值。
步驟104,根據所述初始亮度值以及初始輸出值、各個亮度值以及所述伽馬特性函數(shù)的輸入值為對應亮度值時的輸出值,構建伽馬對應表。
具體的,初始亮度值、初始輸出值以及各個亮度值和各個亮度值對應的輸出值確定后,將亮度值與對應輸出值對應存儲在伽馬對應表中,從而構建得到該顯示設備對應的伽馬對應表,即,構建得到校正前亮度值和校正后亮度值的對應關系表。優(yōu)選地,構建得到的伽馬對應表存儲在內存中,當顯示設備運行時構建該伽馬對應表并存儲在內存中,當顯示設備停止運行時,該伽馬對應表從內存中清除,從而節(jié)省了rom存儲空間。
步驟105,根據構建的伽馬對應表,對輸入所述顯示設備的圖像進行伽馬校正。
具體的,伽馬對應表構建完成后,當待校正圖像輸入顯示設備后,在伽馬對應表中查找待校正圖像中的每個像素的校正前亮度值對應的校正后亮度值,在顯示設備上顯示該待校正圖像時,根據校正后的亮度值顯示該圖像的每個像素。
本發(fā)明實施例,僅在rom中預先存儲伽馬特性函數(shù)、伽馬特性函數(shù)的初始輸出值、伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)以及遞推公式,當顯示設備運行(啟動)時,根據rom中存儲的信息構建伽馬對應表,從而節(jié)省了rom存儲空間,并且,本發(fā)明實施例中的伽馬對應表中保存了所有校正前亮度值對應的校正后亮度值,不需要經過數(shù)據差值計算,從而在一定程度上提高了對圖像進行伽馬校正的準確性。
優(yōu)選地,根據所述顯示設備的伽馬值以及位寬,構建的所述顯示設備對應的伽馬特性函數(shù)為:
其中,γ表示顯示設備的伽馬值,n表示顯示設備的位寬,x表示顯示設備的校正前亮度值,并且,1≤x≤2n-1、x為整數(shù)。
需要說明的是,
優(yōu)選地,當所述顯示設備的伽馬值小于1時,規(guī)定所述初始亮度值為1,則預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(1)。其中,
當顯示設備的伽馬值小于1時,遞推公式為:
其中,
需要說明的是,
具體實施時,伽馬特性函數(shù)的輸入值x依次取值為1~2n-1,根據前一輸入值的輸出值,以及伽馬特性函數(shù)在前一輸入值的導數(shù),確定當前輸入值的輸出值。舉例說明,根據遞推公式、初始輸出值、g(1)以及g'(1),遞推伽馬特性函數(shù)的輸入值為2時的輸出值g(2),則
上述遞推公式1和公式2僅為一種優(yōu)選地實施方式,遞推公式1還可以為g(x+1)=g(x)+g'(x),相應的公式2還可以為
優(yōu)選地,當所述顯示設備的伽馬值大于1時,規(guī)定所述初始亮度值為2n-1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(2n-1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(2n-1)。其中,g(2n-1)=(2n-1),g'(2n-1)=0
當顯示設備的伽馬值大于1時,遞推公式為:
其中,
具體實施時,伽馬特性函數(shù)的輸入值x依次取值為2n-1~1,根據前一輸入值的輸出值,以及伽馬特性函數(shù)在前一輸入值的導數(shù),確定當前輸入值的輸出值。舉例說明,根據遞推公式、初始輸出值、g(2n-1)以及g'(2n-1),遞推伽馬特性函數(shù)的輸入值為2n-2時的輸出值g(2n-2),則
上述遞推公式3和公式4僅為一種優(yōu)選地實施方式,遞推公式3還可以為g(x-1)=g(x)-g'(x-1),相應的公式4還可以為
優(yōu)選地,當顯示設備的伽馬值等于1時,伽馬特性函數(shù)為g(x)=x,此時,可直接根據該伽馬特性函數(shù)以及亮度值,遞推得到各個校正前亮度值對應的校正后亮度值,亮度值的取值范圍為:1~2n-1。
具體的,遞推公式1采用以下方式推導得出:
假設伽馬特性函數(shù)在點a處的泰勒級數(shù)展開公式為:
取該泰勒級數(shù)展開公式的前三項,即:
令x=x+1,a=x,代入公式
將
公式2按照以下方式推導得出:
1、整理伽馬特性函數(shù)后得到
2、求
3、由2中得到的公式整理后可得:
4、將3中的公式代入遞推公式1,可得:
5、令4中的函數(shù)f(x)=g(x),則可得公式2:
具體的,遞推公式3和公式4可根據遞推公式1和公式2推導得出,這里不做詳述。
下面集合具體實施例,詳細說明本發(fā)明實施例的構建伽馬對應表的實施過程,
實施例1
假設顯示設備的伽馬值小于1,位寬為12,則顯示設備對應的伽馬特性函數(shù)為:
步驟201,獲取顯示設備對應的伽馬特性函數(shù)、預先存儲的伽馬特性函數(shù)的輸入值為1時的初始輸出值以及伽馬特性函數(shù)在輸入值為1時的導數(shù)。
步驟202,根據遞推公式1、將伽馬特性函數(shù)的輸入值為1時的初始輸出值以及伽馬特性函數(shù)在輸入值為1時的導數(shù),分別令x的取值為1~4095,得到伽馬特性函數(shù)的輸入值為2~4095時的輸出值。
步驟203,將1~4095對應的伽馬函數(shù)的輸出值的對應關系保存至伽馬對應表。
實施例2
假設顯示設備的伽馬值大于1,位寬為12,則顯示設備對應的伽馬特性函數(shù)為:
步驟301,獲取顯示設備對應的伽馬特性函數(shù)、預先存儲的伽馬特性函數(shù)的輸入值為4095時的初始輸出值以及伽馬特性函數(shù)在輸入值為4095時的導數(shù)。
步驟302,根據遞推公式3、將伽馬特性函數(shù)的輸入值為4095時的初始輸出值以及伽馬特性函數(shù)在輸入值為4095時的導數(shù),分別令x的取值為4095~1,得到伽馬特性函數(shù)的輸入值為4095~2時的輸出值。
步驟303,將4095~1對應的伽馬函數(shù)的輸出值的對應關系保存至伽馬對應表。
實施例3
假設顯示設備的伽馬值等于1,位寬為12,則顯示設備對應的伽馬特性函數(shù)為:g(x)=x,則利用本發(fā)明實施例構建伽馬對應表的實施過程,包括:令x依次取值1~4095,計算得到g(1)~g(4095);將1~4095對應的g(1)~g(4095)對應保存至伽馬對應表。
基于與上述實施例提供的圖像伽馬校正方法同樣的發(fā)明構思,本發(fā)明實施例還提供一種圖像伽馬校正裝置,如圖4所示,包括:
第一獲取模塊401,用于獲取根據顯示設備的伽馬值以及位寬構建的所述顯示設備對應的伽馬特性函數(shù),其中,校正前亮度值作為所述伽馬特性函數(shù)的輸入值,校正后亮度值作為所述伽馬特性函數(shù)的輸出值;
第二獲取模塊402,用于獲取預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值以及所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù);
遞推模塊403,用于根據所述初始輸出值、導數(shù)以及預先存儲的遞推公式,遞推得到所述伽馬特性函數(shù)的輸入值為各個亮度值時的輸出值,其中,各個亮度值為初始亮度值之外的亮度值;
構建模塊404,用于根據所述初始亮度值以及初始輸出值、各個亮度值以及所述伽馬特性函數(shù)的輸入值為對應亮度值時的輸出值,構建伽馬對應表;
校正模塊405,用于根據構建的伽馬對應表,對輸入所述顯示設備的圖像進行伽馬校正。
優(yōu)選地,所述根據所述顯示設備的伽馬值以及位寬,構建的所述顯示設備對應的伽馬特性函數(shù)為:
其中,γ表示顯示設備的伽馬值,n表示顯示設備的位寬,x表示顯示設備的校正前亮度值,并且,1≤x≤2n-1、x為整數(shù)。
優(yōu)選地,所述顯示設備的伽馬值小于1時,所述初始亮度值為1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(1)。
優(yōu)選地,所述遞推公式為:
其中,
優(yōu)選地,所述顯示設備的伽馬值大于1時,所述初始亮度值為2n-1、預先存儲的所述伽馬特性函數(shù)的輸入值為初始亮度值時的初始輸出值為g(2n-1)、所述伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)為g'(2n-1)。
優(yōu)選地,所述遞推公式為:
其中,
利用本發(fā)明實施例提供的圖像伽馬校正方法及裝置,具有以下有益效果:
僅在rom中預先存儲伽馬特性函數(shù)、伽馬特性函數(shù)的初始輸出值、伽馬特性函數(shù)在輸入值為初始亮度值時的導數(shù)以及遞推公式,當顯示設備運行(啟動)時,根據rom中存儲的信息構建伽馬對應表,從而節(jié)省了rom存儲空間,并且,本發(fā)明實施例中的伽馬對應表中保存了所有校正前亮度值對應的校正后亮度值,不需要經過數(shù)據差值計算,從而在一定程度上提高了對圖像進行伽馬校正的準確性。
本發(fā)明是參照根據本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數(shù)據處理設備的處理器執(zhí)行的指令產生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實施例,但本領域內的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。