基于fpga的圖像色彩校正方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及圖像色空間轉(zhuǎn)換領(lǐng)域,具體涉及一種基于FPGA的圖像色彩校正方法及
目.ο
【背景技術(shù)】
[0002]各種顯示裝置具有獨(dú)特的色彩顯示特性,其顯示的紅、綠、藍(lán)三原色的色坐標(biāo)在色彩空間中構(gòu)建出特定的色域范圍。為了使不同的顯示裝置對輸入的圖像信號(hào)達(dá)到顯示效果的一致性與正確性,必須配合顯示裝置的色彩顯示特性,利用色域?qū)?yīng)的轉(zhuǎn)換方式,進(jìn)行色彩校正從而使顯示裝置顯示的圖像呈現(xiàn)一致性與正確性。
[0003]發(fā)光二極管(LightEmitting D1de,簡稱為LED)或液晶顯示器(Liquid CrystalDisplay,簡稱為IXD)顯示面板的灰階顯示與輸入信號(hào)強(qiáng)度呈現(xiàn)非線性關(guān)系,這種特性稱為GAMMA特性。一般的視頻源都會(huì)將信號(hào)處理為與面板相反的GAMMA曲線已適應(yīng)面板這種特性。而當(dāng)需要對視頻源的色空間進(jìn)行轉(zhuǎn)換時(shí),則需要將輸入信號(hào)進(jìn)行反GAMMA校正之后再進(jìn)行色空間轉(zhuǎn)換,然后將色空間轉(zhuǎn)換完成后的信號(hào)再進(jìn)行與面板對應(yīng)的GAMMA校正。
[0004]在相關(guān)技術(shù)中一種是基于數(shù)字信號(hào)處理(Digital Signal Processing,簡稱為DSP),通過灰階函數(shù)式計(jì)算出輸入值對應(yīng)的灰階值。再通過色彩校正運(yùn)算公式進(jìn)行色空間轉(zhuǎn)換,然后再通過灰階函數(shù)式計(jì)算出輸出對應(yīng)的灰階值。這種方法的問題在于:灰階函數(shù)式的運(yùn)算量很大,占用時(shí)間較長,如果在DSP中運(yùn)行多任務(wù)系統(tǒng)時(shí),其實(shí)時(shí)性欠佳。另一種是基于現(xiàn)場可編程門陣列(Field — Programmable Gate Array,簡稱為FPGA)架構(gòu),是采用查找表的方式實(shí)現(xiàn)GAMMA校正與反GAMMA校正,利用其內(nèi)部DSP模塊實(shí)現(xiàn)色空間轉(zhuǎn)換的功能。但受限于其內(nèi)部資源,通常查找表的輸出會(huì)舍棄較多低位數(shù)據(jù)以減少資源的利用。而這種做法會(huì)直接導(dǎo)致圖像暗部灰階細(xì)節(jié)的丟失。圖1是相關(guān)技術(shù)中圖像色空間轉(zhuǎn)換示意圖,如圖1所不,查找表的輸出舍棄了低6位。
[0005]針對相關(guān)技術(shù)中,在FPGA資源有限的情況下,GAMMA校正以及色空間轉(zhuǎn)換帶來的誤差較大、圖像細(xì)節(jié)丟失的問題,還未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0006]因此,本發(fā)明要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)中的在FPGA資源有限的情況下,GAMMA校正以及色空間轉(zhuǎn)換帶來的誤差較大、圖像細(xì)節(jié)丟失的問題,從而提供一種基于FPGA的圖像色彩校正方法及裝置。
[0007]根據(jù)本發(fā)明的一個(gè)方面,提供了一種基于可編程邏輯器件FPGA的圖像色彩校正方法,包括:將輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的多路A位數(shù)據(jù);取所述多路A位數(shù)據(jù)的每一路A位數(shù)據(jù)的高B位數(shù)據(jù)進(jìn)行查表,得到至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù);將每一路A位數(shù)據(jù)的低D位數(shù)據(jù)、與每一路A位數(shù)據(jù)的高B位數(shù)據(jù)對應(yīng)的至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)進(jìn)行插值運(yùn)算得到輸出圖像數(shù)據(jù);其中,A,B,C,D為自然數(shù),B+D = A,B>C。
[0008]可選地,所述插值運(yùn)算包括:計(jì)算與每一路A位數(shù)據(jù)的高B位數(shù)據(jù)對應(yīng)的至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)之間的差值,得到與每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果;將所述與每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果和低D位數(shù)據(jù)進(jìn)行內(nèi)插值運(yùn)算,得到與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果;將所述與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果與指定數(shù)據(jù)進(jìn)行求和運(yùn)算得到與每一路A位數(shù)據(jù)對應(yīng)的輸出圖像數(shù)據(jù),其中,所述指定數(shù)據(jù)為與每一路A位數(shù)據(jù)對應(yīng)的所述至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)中較低位的地址對應(yīng)的數(shù)據(jù)。
[0009]可選地,將所述與每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果和低D位數(shù)據(jù)進(jìn)行內(nèi)插值運(yùn)算,得到與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果包括:將每一路A位數(shù)據(jù)的低D位數(shù)據(jù)除以2d之后,將得到的結(jié)果與所述每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果進(jìn)行乘積運(yùn)算得到與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果。
[0010]可選地,將輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的多路A位數(shù)據(jù)的步驟被替代為:將輸入圖像數(shù)據(jù)進(jìn)行GAMMA校正,得到GAMMA校正后的輸入圖像數(shù)據(jù);將經(jīng)過GAMMA校正后的輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的所述多路A位數(shù)據(jù)。
[0011]可選地,所述GAMMA校正通過查表的方式進(jìn)行。
[0012]可選地,所述輸入圖像數(shù)據(jù)為RGB數(shù)據(jù)。
[0013]根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種基于可編程邏輯器件FPGA的圖像色彩校正裝置,包括:第一色空間轉(zhuǎn)換模塊,用于將輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的多路A位數(shù)據(jù);查表模塊,用于取所述多路A位數(shù)據(jù)的每一路A位數(shù)據(jù)的高B位數(shù)據(jù)進(jìn)行查表,得到至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù);插值運(yùn)算模塊,用于將每一路A位數(shù)據(jù)的低D位數(shù)據(jù)、與每一路A位數(shù)據(jù)的高B位數(shù)據(jù)對應(yīng)的至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)進(jìn)行插值運(yùn)算得到輸出圖像數(shù)據(jù);其中,A,B,C,D為自然數(shù),B+D=A,B>C。
[0014]可選地,所述插值運(yùn)算模塊包括:差值運(yùn)算單元,用于計(jì)算與每一路A位數(shù)據(jù)的高B位數(shù)據(jù)對應(yīng)的至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)之間的差值,得到與每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果;內(nèi)插值運(yùn)算單元,用于將所述與每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果和低D位數(shù)據(jù)進(jìn)行內(nèi)插值運(yùn)算,得到與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果;求和運(yùn)算單元,用于將所述與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果與指定數(shù)據(jù)進(jìn)行求和運(yùn)算得到與每一路A位數(shù)據(jù)對應(yīng)的輸出圖像數(shù)據(jù),其中,所述指定數(shù)據(jù)為與每一路A位數(shù)據(jù)對應(yīng)的所述至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)中較低位的地址對應(yīng)的數(shù)據(jù)。
[0015]可選地,所述內(nèi)插值運(yùn)算單元還用于將每一路A位數(shù)據(jù)的低D位數(shù)據(jù)除以2D之后,將得到的結(jié)果與所述每一路A位數(shù)據(jù)對應(yīng)的差值結(jié)果進(jìn)行乘積運(yùn)算得到與每一路A位數(shù)據(jù)對應(yīng)的內(nèi)插值運(yùn)算結(jié)果。
[0016]可選地,所述第一色空間轉(zhuǎn)換模塊被替換為:校正模塊,用于將輸入圖像數(shù)據(jù)進(jìn)行GAMMA校正,得到GAMMA校正后的輸入圖像數(shù)據(jù);第二色空間轉(zhuǎn)換模塊,用于將經(jīng)過GAMMA校正后的輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的所述多路A位數(shù)據(jù)。
[0017]可選地,所述GAMMA校正是通過查表的方式進(jìn)行的。
[0018]可選地,所述輸入圖像數(shù)據(jù)為RGB數(shù)據(jù)。
[0019]通過本發(fā)明,采用將輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的多路A位數(shù)據(jù);取該多路A位數(shù)據(jù)的每一路A位數(shù)據(jù)的高B位數(shù)據(jù)進(jìn)行查表,得到至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù);將每一路A位數(shù)據(jù)的低D位數(shù)據(jù)、與每一路A位數(shù)據(jù)的高B位數(shù)據(jù)對應(yīng)的至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)進(jìn)行插值運(yùn)算得到輸出圖像數(shù)據(jù),解決了相關(guān)技術(shù)中在FPGA資源有限的情況下,GAMMA校正以及色空間轉(zhuǎn)換帶來的誤差較大、圖像細(xì)節(jié)丟失的問題,從而減小了圖像色彩校正過程中的舍入誤差,改善了經(jīng)過色空間轉(zhuǎn)換后的圖像暗部細(xì)
-K-
T O
【附圖說明】
[0020]為了更清楚地說明本發(fā)明【具體實(shí)施方式】或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對【具體實(shí)施方式】或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施方式,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0021]圖1是相關(guān)技術(shù)中圖像色空間轉(zhuǎn)換示意圖;
[0022]圖2為本發(fā)明實(shí)施例的基于FPGA的圖像色彩校正方法的流程圖;
[0023]圖3為本發(fā)明實(shí)施例的基于FPGA的圖像色彩校正裝置的結(jié)構(gòu)框圖(一);
[0024]圖4為本發(fā)明實(shí)施例的基于FPGA的圖像色彩校正裝置的結(jié)構(gòu)框圖(二);
[0025]圖5為本發(fā)明實(shí)施例的基于FPGA的圖像色彩校正裝置的結(jié)構(gòu)框圖(三);
[0026]圖6是本發(fā)明實(shí)施例的輸入數(shù)據(jù)進(jìn)行查表示意圖;
[0027]圖7是本發(fā)明實(shí)施例的顏色空間轉(zhuǎn)換示意圖;
[0028]圖8是本發(fā)明實(shí)施例的輸出數(shù)據(jù)查表示意圖;
[0029]圖9是本發(fā)明實(shí)施例的內(nèi)插運(yùn)算示意圖。
【具體實(shí)施方式】
[0030]下面將結(jié)合附圖對本發(fā)明的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0031]此外,下面所描述的本發(fā)明不同實(shí)施方式中所涉及的技術(shù)特征只要彼此之間未構(gòu)成沖突就可以相互結(jié)合。
[0032]實(shí)施例1
[0033]本實(shí)施例提供了一種基于可編程邏輯器件FPGA的圖像色彩校正方法,圖2為本發(fā)明實(shí)施例的基于FPGA的圖像色彩校正方法的流程圖,如圖2所示,該流程包括如下步驟:
[0034]步驟S1:將輸入圖像數(shù)據(jù)進(jìn)行色空間轉(zhuǎn)換,得到轉(zhuǎn)換后的多路A位數(shù)據(jù);
[0035]步驟S2:取該多路A位數(shù)據(jù)的每一路A位數(shù)據(jù)的高B位數(shù)據(jù)進(jìn)行查表,得到至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù);
[0036]步驟S3:將每一路A位數(shù)據(jù)的低D位數(shù)據(jù)、與每一路A位數(shù)據(jù)的高B位數(shù)據(jù)對應(yīng)的至少兩個(gè)地址相鄰的位寬均為C位的數(shù)據(jù)進(jìn)行插值運(yùn)算得到輸出圖像數(shù)據(jù);其中,A,B,C,D為自然數(shù),B+D=A,B>C。
[0037]通過上述步驟,僅取多路A位數(shù)據(jù)