孫健哲, 鄭喜鳳, 徐子程, 程宏斌1,, 陳煜豐
(1. 中國科學(xué)院 長春光學(xué)精密機械與物理研究所,吉林 長春 130033;2. 中國科學(xué)院大學(xué),北京 100049;3. 長春希達電子技術(shù)有限公司,吉林 長春 130103;4. 季華實驗室,廣東 佛山 528200)
LED顯示屏作為視覺信息傳遞的重要媒介,是日常生活中重要的顯示設(shè)備,已經(jīng)在展會、商場、影院、演播室等場所得到廣泛應(yīng)用,低成本、高性能的LED顯示具有很高的產(chǎn)業(yè)價值和廣闊的應(yīng)用場景[1-3]。小間距COB(Chip on Board)LED顯示屏作為LED顯示屏發(fā)展過程中的一條重要的技術(shù)路線,近年來得到了快速的發(fā)展和應(yīng)用。該技術(shù)路線是將發(fā)光芯片直接焊接(Bonding)到PCB板的正面,通過回流焊將驅(qū)動器件焊接到PCB板的背面,再進行整體的灌封防護[4],由陣列模組、顯示單元組裝實現(xiàn)LED超大屏幕拼接顯示,具有低成本、高可靠性、高穩(wěn)定性的優(yōu)勢。在市場競爭激烈的今天,為保持產(chǎn)品的競爭力,必須不斷地提升LED顯示屏的顯示效果。在發(fā)展過程中,制約其進一步發(fā)展的重要瓶頸之一是低灰度級的顯示效果。低灰顯示效果是指小間距LED顯示屏在低灰階數(shù)、即低亮度條件下呈現(xiàn)圖案的能力[5]。
常見的低灰顯示問題較多,主要有低灰偏色、亮度不均和灰階跳變等[6],其中灰階跳變是一個突出的問題?;译A過渡不均勻的現(xiàn)象在絕大多數(shù)小間距COB LED顯示屏上都存在,嚴(yán)重影響LED顯示屏呈現(xiàn)精細畫質(zhì)時的效果,也是平板顯示技術(shù)發(fā)展過程中的一個共性問題。
本文靈活地運用傳統(tǒng)抖動算法[7]中的抖動矩陣,在驅(qū)動IC通道數(shù)等重要硬件資源不變的情況下,在LED顯示屏上實現(xiàn)了整數(shù)灰度級之間的“小數(shù)灰度級”,將圖像更多的細節(jié)在小間距COB LED顯示屏上復(fù)現(xiàn)出來,使LED顯示屏呈現(xiàn)高精細畫質(zhì)。同時該算法同人眼的視覺效應(yīng)相結(jié)合,對紅、綠、藍亞像素分別采用不同的周期性輪換抖動矩陣,在LED顯示屏上形成抖動的視覺效果,有效地改善了LED顯示屏低灰度級灰階過渡不均勻的現(xiàn)象,實現(xiàn)了LED顯示屏灰階精細調(diào)控。
圖1 抖動算法產(chǎn)生的相應(yīng)中間灰度級Fig.1 Corresponding intermediate gray level generated by dithering algorithm
抖動算法本質(zhì)上是一種圖像處理算法,是一種數(shù)字半色調(diào)技術(shù),通常會根據(jù)人眼的視覺感知特性和視覺的呈色特性,利用計算機等工具,在二值或多色二值呈色設(shè)備上實現(xiàn)對圖像效果的最優(yōu)呈現(xiàn)[8]。圖像處理領(lǐng)域中典型的抖動算法之一是Floyd-steinberg誤差傳遞算法[9],采用圖案化的技術(shù),犧牲一定的顯示分辨率,對圖像進行二值化處理,保留圖像的相關(guān)信息。例如可以將一個2×2的方陣看成一個大的像素點,以2階抖動矩陣為例,全黑為0灰度,全白為1灰度,用2×2的圖案可以表示5級灰度,其本質(zhì)就是通過人眼的視覺混色效應(yīng)[10]在灰度級0與灰度級1之間插入3個中間灰度值,這樣就增加了灰度的精細程度??梢詫⒁环叶葓D片進行類似的處理產(chǎn)生中間灰階(圖1),節(jié)約相應(yīng)的硬件資源,但同時也損失了圖像分辨率。這是一種較為傳統(tǒng)的經(jīng)典算法。
在液晶顯示中也運用這種思想對圖像進行抖動處理。液晶顯示是一種有源驅(qū)動[11]的顯示裝置,通過調(diào)控晶體管各極間的電壓來驅(qū)動液晶分子的翻轉(zhuǎn),從而表現(xiàn)出相應(yīng)的灰度級。通過抖動矩陣與相應(yīng)的像素點進行閾值比較來決定是否對相應(yīng)的像素點進行灰度補償。根據(jù)Limb矩陣[12]及其遞推關(guān)系可得:
(1)
(2)
其中Un為與Mn同階的全1矩陣。抖動矩陣中數(shù)字的相對大小代表著進行灰度補償時的灰度值優(yōu)先級次序。當(dāng)人眼距離顯示屏一段距離時,一定區(qū)域內(nèi)相鄰像素點對于人眼的可視夾角足夠小,會產(chǎn)生空間混色現(xiàn)象,形成相應(yīng)的中間灰度級,如圖2所示。
圖2 空間混色Fig.2 Mixed color space
LED顯示屏作為一種不同于液晶的重要顯示器件,有其特有的驅(qū)動方式與顯示控制系統(tǒng)。LED顯示采用與液晶顯示完全不同的無源驅(qū)動[13]方式,通過驅(qū)動IC來控制顯示屏的驅(qū)動掃描進程,采用灰度調(diào)制技術(shù)[14]對每一像素點進行灰度控制。目前LED顯示屏通常采用16 bit位深的驅(qū)動IC對顯示屏顯示數(shù)據(jù)進行處理,通常可以通過PWM調(diào)控技術(shù)控制驅(qū)動芯片輸出脈沖占空比的大小控制LED顯示屏的灰度值?;叶戎档拇笮∨c掃描周期內(nèi)的導(dǎo)通時間成正比,假設(shè)初始狀態(tài)為低電平,高電平為導(dǎo)通狀態(tài),脈沖寬度為導(dǎo)通時間,如圖3所示,因為τ1>τ0,所以τ1脈沖所產(chǎn)生的灰度值比τ0脈沖所產(chǎn)生的灰度值大。
圖3 脈沖寬度調(diào)制灰度級Fig.3 Pulse width modulation grayscale level
假設(shè)τ0為LED顯示屏響應(yīng)的最小脈沖寬度,設(shè)為灰度值1,為LED顯示屏最小顯示精度,比該灰度值更為精細的灰度無法通過控制驅(qū)動IC在顯示屏上直接響應(yīng)。如果最小灰階精度無法滿足低灰度時LED顯示屏的要求,就會產(chǎn)生灰階過渡不均勻、跳灰等情況,如圖4所示。
圖4 低灰顯示不良圖片F(xiàn)ig.4 Flawed picture with low gray level
為了解決低灰顯示不良的問題,行業(yè)內(nèi)通常有兩種解決問題的常用方法。第一種是使用具有更高位深的驅(qū)動IC,目前行業(yè)內(nèi)通常使用的是16 bit位深的驅(qū)動IC,如果采用16 bit或者更高位深的驅(qū)動IC,則可以在整體上提升LED顯示屏的灰度處理能力,實現(xiàn)更為精細的灰度控制。第二種是增加顯示終端的控制系統(tǒng)灰度處理能力。目前大多數(shù)的LED顯示屏具有8 bit的灰階顯示能力,也有少數(shù)具有10 bit灰階顯示能力的顯示屏,顯示屏的灰階顯示能力越強,畫質(zhì)的細膩程度越高,灰階過渡不均勻的現(xiàn)象也會得到相應(yīng)改善。
以上兩種解決問題的方式都需要更好的硬件資源,但這樣顯示屏的硬件成本會大幅提高,對于產(chǎn)業(yè)化的推廣是極為不利的。為了在不增加硬件資源的情況下使低灰度級灰階過渡更為均勻,本文運用抖動矩陣元素結(jié)合小間距COB LED顯示屏顯示特性,提出一種新的圖像增強處理算法,對LED顯示屏低灰度級的顯示效果有明顯提升。
通過對各種型號小間距COB LED顯示器低灰度級顯示效果的實際測試,發(fā)現(xiàn)灰階過渡不均勻、跳灰現(xiàn)象通常發(fā)生在1~10灰度級,超過10灰度級也有類似現(xiàn)象,但是隨著亮度的不斷增加,越來越不明顯?;叶燃壴降?,跳灰的現(xiàn)象就越明顯,給人視覺上的不適感就越強。因此本算法的適用范圍為灰度級0~10。具體的步驟如下:
步驟1:獲得使各像素點顯示效果提升的“小數(shù)灰度值”,根據(jù)所需要的小數(shù)精度選取相應(yīng)的抖動矩陣。
該算法可實現(xiàn)的小數(shù)精度與抖動矩陣的階數(shù)密切相關(guān)。如2階抖動矩陣可實現(xiàn)0.25,0.5,0.75三個小數(shù)灰度級。抖動矩陣選擇的重要依據(jù)與顯示控制系統(tǒng)中“小數(shù)灰度值”的實現(xiàn)原理與過程密切相關(guān)。
LED顯示屏輸入的圖像源通常為8 bit,而由于驅(qū)動IC中RAM等資源帶寬和時鐘頻率的限制,控制系統(tǒng)通常為16位顯示灰階,即控制系統(tǒng)將圖像源中28=256個灰度數(shù)據(jù)拓展成216=65 536個灰度數(shù)據(jù)進行處理,最后在65 536個灰度數(shù)據(jù)中選取256個灰度數(shù)據(jù)作為屏幕上顯示的灰度數(shù)據(jù)。8~16 bit數(shù)據(jù)之間通過Gamma轉(zhuǎn)換有明確的映射關(guān)系。通常Gamma值為2.8,則對應(yīng)關(guān)系曲線圖如圖5所示。
圖5 灰度轉(zhuǎn)換關(guān)系圖Fig.5 Grayscale conversion diagram
如果要使LED顯示屏具有更好的灰度表現(xiàn)力,展現(xiàn)出比16 bit灰度處理能力更為精細的“小數(shù)灰度級”,則要將8 bit數(shù)據(jù)映射成更高比特的灰階來進行處理。例如對于2階抖動矩陣,即相當(dāng)于在16 bit的兩個整數(shù)灰度級之間再插入3個灰度級,這樣就可以修改Gamma轉(zhuǎn)換數(shù)據(jù)選取中間的灰度級。
圖6 灰階拓展過程Fig.6 Process of gray-scale expansion
如圖6所示,18 bit灰度數(shù)據(jù)中的1,2,3是新產(chǎn)生的灰度級,經(jīng)過降階處理后即可實現(xiàn)0.25,0.5,0.75小數(shù)灰度級。
抖動矩陣可實現(xiàn)的最小灰度精度為矩陣階數(shù)平方的倒數(shù),即:
(3)
其中n為抖動矩陣的階數(shù),Gmin為最小灰度精度。
步驟2:根據(jù)抖動矩陣的階數(shù)來確定具體實施該算法的各個抖動矩陣并獲得使各像素點顯示效果提升的“小數(shù)灰度值”。
對于2階抖動矩陣,根據(jù)Limb矩陣及其遞推關(guān)系,對M1矩陣做初等變換,可以得到一組變換抖動矩陣:
同時對已獲得的帶有目標(biāo)小數(shù)灰度值的圖像灰度數(shù)據(jù)進行處理。如對一幅帶有目標(biāo)小數(shù)灰度值的大小為m×n圖像而言,將像素灰度矩陣拆分成兩個矩陣之和,分別是整數(shù)灰度矩陣與小數(shù)灰度矩陣,即:
(4)
(5)
步驟3:對小數(shù)矩陣D中的每一個元素D11~Dmn按照“最小誤差原則”用0.25,0.5,0.75三個“小數(shù)灰度值”和0與1兩個整數(shù)灰度值進行替換,形成與D矩陣同維的新的小數(shù)矩陣:
(6)
其中d矩陣中的每一個元素值均為3個可實現(xiàn)“小數(shù)灰度值”與兩個整數(shù)灰度值中一個。
上述4個步驟闡述了算法實施的具體過程,整個過程中灰度值的增減是基于R、G、B全像素點而實現(xiàn)的。但是在低亮度條件下,單一像素點灰度值的增加會在觀看LED顯示屏?xí)r給人眼帶來閃爍的感覺。為了降低LED顯示屏給人眼帶來的閃爍感,采用亞像素抖動技術(shù)對全像素中的紅、綠、藍亞像素點的灰度進行處理。
3.3.1 亞像素抖動技術(shù)
亞像素抖動技術(shù)是將同一像素點中的紅、綠、藍3個亞像素分別用不同的抖動矩陣進行處理。小間距COB LED顯示屏路線是將發(fā)光芯片直接焊接到PCB板上,紅、綠、藍3種顏色發(fā)光芯片縱向排列在一起,焊接到PCB板上,形成一個像素點,結(jié)構(gòu)如圖7所示。
圖7 像素結(jié)構(gòu)Fig.7 Structure of pixel
其中紅、綠、藍色的區(qū)域表示3種顏色的發(fā)光芯片,灰色部分表示驅(qū)動IC上除發(fā)光芯片外的其他部分。以實現(xiàn)一個0.25小數(shù)灰度級為例,對紅色像素灰度矩陣在相鄰4幀按照J(rèn)0、J1、J2、J3的順序進行處理,綠色像素灰度矩陣采用J1、J2、J3、J0順序,藍色像素灰度矩陣采用J2、J3、J0、J1順序,這樣對于單一像素點在相鄰4幀中的顯示效果如圖8所示。
圖8 采用亞像素抖動技術(shù)的單一像素點4幀顯示效果Fig.8 Display effect of a single pixel in four frames adopted sub-pixel jitter technology
其中黑色區(qū)域表示在該幀亞像素點狀態(tài)為不亮。對紅、綠、藍像素在相鄰的幾幀中采用不同的抖動矩陣順序進行處理,即可實現(xiàn)亞像素抖動的處理效果。如果對紅、綠、藍像素在相鄰的幾幀中采用相同的抖動矩陣順序進行處理,則對于單一像素點,在相鄰4幀中的顯示效果如圖9所示。
通過對比全像素抖動技術(shù)和亞像素抖動技術(shù)在單一像素點相鄰4幀的顯示效果可以看出,運用亞像素抖動技術(shù)處理的圖像幀可以將全像素抖動處理時在一幀中一個像素點同時點亮的3個紅、綠、藍亞像素分布在相鄰的不同幀中點亮。這樣降低了一幀中由于灰度值增加而帶來的亮度差異,減弱人眼的閃爍感,使人眼對灰度的變化感受更為均勻。同時在相鄰的4幀圖像中,相當(dāng)于只有一個RGB像素點亮,所以表示的依然是0.25灰度級。
圖9 采用全像素抖動技術(shù)單一像素點4幀顯示效果Fig.9 Display effect of a single pixel in four frames adopted full pixel jitter technology
3.3.2 技術(shù)相關(guān)應(yīng)用
亞像素抖動技術(shù)的運用可以對LED幀間灰度增強法進行進一步的改進,提升人眼的視覺感受。如運用抖動技術(shù)實現(xiàn)如下2×2的小數(shù)灰度級:
(7)
實現(xiàn)的顯示效果如圖10所示。
圖10 亞像素處理效果圖1Fig.10 Rendering 1 of subpixel treatment
圖10實現(xiàn)的是2×2矩陣中4個小數(shù)灰度級相同的情況,如果小數(shù)灰度級不同(式8),實現(xiàn)的效果如圖11所示。
(8)
圖11 亞像素處理效果圖2Fig.11 Rendering 2 of subpixel treatment
采用以上的算法方案將原來的像素級調(diào)控變?yōu)閬喯袼丶壵{(diào)控,進一步降低由于抖動給人眼帶來的亮度差異,提高了人眼對LED顯示屏的視覺舒適程度,提高LED顯示屏的對比度。
另外,如果圖像部分區(qū)域是單色像素或者只讓單色像素的灰度值發(fā)生變化時,令單一像素值按照一種固定的抖動模板順序進行處理即可。紅、綠、藍亞像素采用各自的抖動模板順序進行處理,形成各種情況下的算法圖形。
為了驗證算法的可行性與有效性,本文進行了一系列的實驗。首先模擬0.25小數(shù)灰度級實現(xiàn)在LED顯示屏上的情況。用畫圖軟件得到一幅每一個像素點灰度值都為1的灰度圖像,大小為640×480像素,LED顯示屏模塊顯示其中的部分圖像。用Matlab仿真軟件對像素點灰度值都為1的灰度圖像按照上述的算法進行處理,形成4幀圖像。仿真測試平臺如圖12所示。
圖12 仿真測試平臺Fig.12 Simulation test platform
用Matlab程序?qū)τ盟惴ㄉ傻?張圖片在LED顯示屏無限循環(huán)顯示,在小間距COB LED顯示屏上觀察其顯示效果。該程序可以模擬4幀圖像無限交替循環(huán)顯示的過程,在LED顯示屏上可以觀察到經(jīng)過算法處理后的算法圖像及其抖動效果。本文對使用2×2抖動矩陣處理像素級調(diào)控方案和亞像素級調(diào)控方案進行相關(guān)仿真,在觀察其算法圖形的同時,也用亮度計測量其亮度(圖13),對結(jié)論進行驗證。
圖13 亮度測量過程Fig.13 Process of luminance measurement
為保證亮度測量的準(zhǔn)確程度,令灰度級1的圖片在LED顯示屏上顯示為6級亮度。分別在灰度級為1級、灰度級1級開啟像素級抖動、灰度級1級開啟亞像素級抖動的3種情況下對LED顯示屏亮度進行測量(表1)。
表1 亮度測試數(shù)據(jù)Tab.1 Data of brightness test
通過亮度測試數(shù)據(jù)對比可以發(fā)現(xiàn),開啟全像素抖動時LED顯示屏的亮度約為不開啟抖動時亮度的25%,與預(yù)期結(jié)果基本相符,說明每一幀畫面為0.25灰度級。當(dāng)開啟亞像素抖動時,亮度約為不開啟抖動時的15%,比開啟全像素抖動時相比亮度下降了近10%,說明亞像素抖動算法產(chǎn)生的顯示畫面亮度更低,使人眼對LED顯示屏的閃爍感知不明顯,提高了人眼觀看顯示屏?xí)r的舒適程度。相應(yīng)地,如果將整數(shù)灰度級加到對應(yīng)像素點的整數(shù)部分,即可實現(xiàn)相應(yīng)的兩整數(shù)間的“小數(shù)灰度級”。
經(jīng)過灰度級相關(guān)亮度測試后運用該算法圖像中低灰度級過渡較差的彩色圖片進行了處理,處理前后的效果對比如圖14所示。
圖14 算法處理前(a)后(b)效果對比圖Fig.14 Comparison chart of the picture display effect of the screen before (a) and after (b) algorithm process
對比圖14(a)和圖14(b)可以看出,與算法處理前相比,圖片在LED顯示屏上的顯示效果有明顯提升。
本文針對小間距COB LED顯示屏低灰度級過渡不均勻的情況,運用傳統(tǒng)抖動算法中抖動矩陣概念,提出一種針對灰度級0~10的LED顯示屏圖像增強處理算法,并對像素級抖動和亞像素級抖動兩種情況進行了仿真對比驗證。實驗結(jié)果證明:該算法對LED顯示屏低灰度級過渡不均勻現(xiàn)象有明顯的提升效果,在灰度級0~10的任意兩個整數(shù)灰度級間插入3個可實現(xiàn)小數(shù)灰度級,將低灰階精細程度提升為原來的4倍,同時將顯示屏最小可控灰度級亮度變?yōu)樵瓉淼?5%~25%,提升顯示屏的對比度。采用亞像素抖動技術(shù),降低了由于畫面抖動給人眼帶來的閃爍感,從而驗證了算法的有效性。