趙征鵬 李俊鋼 普園媛,2
1(云南大學(xué)信息學(xué)院 云南 昆明 650504)2(云南省高校物聯(lián)網(wǎng)技術(shù)及應(yīng)用重點(diǎn)實(shí)驗(yàn)室 云南 昆明 650504)
在軍事和民用的各個(gè)領(lǐng)域,圖像處理技術(shù)隨處可見,尤其是在模式識別、目標(biāo)識別、故障診斷、遠(yuǎn)程探測、衛(wèi)星遙感等領(lǐng)域展示了較高的應(yīng)用性。圖像處理可以劃分為多種技術(shù):圖像增強(qiáng)、圖像降噪和圖像修復(fù)等。其中的圖像增強(qiáng)技術(shù),可以將原來模糊且辨識度低的圖像變得清晰,提升識別和判讀圖像的效果,滿足某些特定場合的需求[1-3]。
在實(shí)際生活中,有很多圖片的效果都不盡如人意,尤其是低照度圖片[4]。由于在拍攝時(shí),入射光線的不足,導(dǎo)致圖片整體較暗,看不清其中的細(xì)節(jié)。鑒于這種情況,本文可以借助相應(yīng)的圖像增強(qiáng)方法[5-7]來提取亮度圖像。Retinex算法就是常用的一種圖像增強(qiáng)處理算法。然而在傳統(tǒng)的Retinex算法中,處理過后的圖片容易產(chǎn)生圖像“光暈”、色彩流失等問題,這是因?yàn)橥豢臻g的濾波模塊應(yīng)用在了所有像素之上[8]。為了降低該現(xiàn)象對圖像質(zhì)量造成的影響,本文提出了改進(jìn)的單尺度Retinex算法。
1963年由Edwin.H.Land提出的Retinex理論,是一種建立在科學(xué)實(shí)驗(yàn)與分析基礎(chǔ)上的圖像增強(qiáng)方法[9]。Retinex理論也常被稱作是“視網(wǎng)膜皮層理論”,這是因?yàn)镽etinex是視網(wǎng)膜(retina)和皮層(cortex)的合成詞[10]。最初基于Retinex理論模型所提出的個(gè)人視覺系統(tǒng) (Human Visual System,HVS),解釋了人眼對于光線波長和亮度互不對應(yīng)的原因。在該理論中,兩個(gè)因素決定了物體被觀察到的顏色,即物體本身的反射性質(zhì)和物體周圍的光照強(qiáng)度,但根據(jù)顏色恒常性理論可知,物體自身的固有屬性并不會受到光照的影響,而物體對于不同光波的反射能力在很大程度上決定了物體的顏色[11]。Retinex理論中,原始圖像像素點(diǎn)的動態(tài)范圍大小和光照強(qiáng)度有關(guān),其本身的反射系數(shù)決定了原始固有屬性。所以Retinex的思路是假設(shè)原始圖像是由反射圖像和光照圖像相乘而得,為了保留住物體的固有屬性,需要去除光照的影響。
如圖1所示,假設(shè)人們所看到的圖像為P(x,y),則:
圖1 Retinex 理論模型圖
P(x,y)=Z(x,y)×F(x,y)
(1)
式中:Z(x,y)表示入射分量,即周圍光照的強(qiáng)度信息;F(x,y)表示反射分量,即物體自身的固有性質(zhì)。在基礎(chǔ)的Retinex理論中,通常對式(1)兩邊同時(shí)取對數(shù),這是因?yàn)? (1)人眼對亮度的感知能力不是線性的,它近似于對數(shù)曲線,如圖2所示。(2)實(shí)數(shù)域的乘除運(yùn)算通過取對數(shù)的操作將其轉(zhuǎn)換到對數(shù)域,可以把復(fù)雜的乘除運(yùn)算轉(zhuǎn)換成簡單的加減運(yùn)算,這樣可以簡化算法的復(fù)雜性。
圖2 人眼感知圖
Retinex理論提出后不久,Jobson等[12]在其基礎(chǔ)上提出了單尺度Retinex算法(Single-scale Retinex,SSR)。SSR算法的處理流程近似于人眼的視覺成像過程[13]。SSR算法的思想是:利用構(gòu)建的高斯環(huán)繞函數(shù)分別對圖像的R、G和B三通道進(jìn)行低通濾波。經(jīng)過低通濾波后所留下的就是光照分量,接著用對數(shù)域的原始圖像減去對數(shù)域的光照分量,所得結(jié)果就是反射分量,即輸出的結(jié)果圖像。單尺度Retinex算法能壓縮圖像動態(tài)范圍,可保持圖像色彩并增強(qiáng)圖像的細(xì)節(jié)[14]。單尺度Retinex算法的一般數(shù)學(xué)形式如下:
對式(1)兩邊同時(shí)取對數(shù)得:
log(P(x,y))=log(Z(x,y))+
log(F(x,y))
(2)
令:
(3)
則可得原圖像的對數(shù)域表達(dá)式:
p(x,y)=z(x,y)+f(x,y)
(4)
所以反射圖像對數(shù)域表達(dá)式為:
log(P(x,y))-log(P(x,y)*H(u,v))
(5)
式中:P(x,y)表示實(shí)數(shù)域原始圖像;F(x,y)表示實(shí)數(shù)域反射圖像(即待增強(qiáng)圖像);H(u,v)表示中心環(huán)繞函數(shù);*是卷積運(yùn)算符;log(P(x,y)*H(u,v))表示將原圖和濾波函數(shù)做卷積處理,進(jìn)行亮度圖像的估計(jì)。
在傳統(tǒng)SSR算法中,H(u,v)采用高斯環(huán)繞函數(shù)[15]G(x,y),用高斯環(huán)繞函數(shù)與原圖像進(jìn)行卷積處理來進(jìn)行亮度圖像的提取。G(x,y)的構(gòu)造如下:
(6)
式中:高斯環(huán)繞的尺度參數(shù)σ為算法中的唯一可調(diào)節(jié)參數(shù)。σ的取值容易影響增強(qiáng)效果:σ較小時(shí),圖像的細(xì)節(jié)信息能得到較好的保持,像素動態(tài)范圍變大,但顏色會有所失真;σ較大時(shí),會導(dǎo)致細(xì)節(jié)缺失,像素動態(tài)范圍變小,但色彩保真度高。SSR 算法的基本流程如下:
(1) 輸入原始圖像P(x,y),把圖像像素轉(zhuǎn)換為浮點(diǎn)型。
(2) 調(diào)試并選擇最佳的尺度參數(shù)σ,且其能滿足?G(x,y)dxdy=1。
(3) 式(1)兩邊取對數(shù),用對數(shù)域的原始圖像減去對數(shù)域的入射圖像求得對數(shù)域的反射圖像,記作f(x,y)。
(4) 求f(x,y)的實(shí)數(shù)域圖像F(x,y)。
(5) 將實(shí)數(shù)域的圖像F(x,y)進(jìn)行線性拉伸并輸出。
在圖像處理過程中,傳統(tǒng)的單尺度Retinex算法都要分別對彩色圖片RGB空間的三個(gè)通道進(jìn)行處理[16]。這樣一來,不僅耗時(shí),且RGB三個(gè)通道有著較高的關(guān)聯(lián)性,若處理不當(dāng),難免會產(chǎn)生三個(gè)通道增強(qiáng)處理程度不均衡的現(xiàn)象,而且還會伴隨著“光暈”現(xiàn)象、顏色失真、細(xì)節(jié)過增強(qiáng)等問題的出現(xiàn)。為了降低這些問題對圖片質(zhì)量的影響,本文的改進(jìn)算法將彩色圖片從RGB空間轉(zhuǎn)換到HSV空間,對飽和度分量S做自適應(yīng)線性拉伸,對亮度分量V做改進(jìn)的Retinex算法增強(qiáng),最后將圖片再轉(zhuǎn)換到RGB空間。
RGB顏色空間是最常用的顏色空間。在RGB空間中,每個(gè)分量所能表示的范圍為[0,255][17],R、G和B三個(gè)變量相結(jié)合可以表達(dá)較為完整的色彩信息。HSV顏色空間也是常用的顏色空間。在HSV各通道中,飽和度S指的是顏色的鮮艷程度,亮度V指的是顏色的明暗程度,色度H可以區(qū)分某一種顏色。在 HSV 空間模型[18]中,色度H與亮度V兩兩正交,將圖片從RGB各通道轉(zhuǎn)換到HSV各通道,再對亮度分量 V進(jìn)行處理可以保證圖片色彩信息不被改變。
然而,HSV 空間模型中,亮度V和飽和度S之間是相關(guān)聯(lián)的,飽和度S升高,亮度V就會有所降低。所以為了保證圖像的鮮艷程度,亮度V一旦改變,飽和度S也要做相應(yīng)的改變。與此同時(shí),圖像在采集過程中,每幅圖像的照度由于不同的外界環(huán)境而有所差異,這就需要對飽和度分量 S進(jìn)行不同程度的自適應(yīng)拉伸。因此,本文算法對飽和度分量S采用了一種自適應(yīng)的拉伸方法,其表達(dá)式如下:
(7)
式中:S表示原始圖像的飽和度分量;S′表示線性拉伸后圖像的飽和度;max(R,G,B)和min(R,G,B)表示的是整幅圖像灰度化的一個(gè)過程,分別表示彩色圖像中三分量亮度的最大值和最小值;由于圖像中有著不同顏色的物體,導(dǎo)致它們的灰度值也不同,Mv表示整幅原始圖像的平均灰度值。從式(7)可知,飽和度比較低時(shí),調(diào)整后并沒有產(chǎn)生很大的變化;原飽和度越高,亮度變化越快,調(diào)整后的飽和度就會被增強(qiáng),圖片整體效果就會得到增強(qiáng)。
在傳統(tǒng)的單尺度SSR算法中,利用高斯低通濾波器(Gaussian low-pass filter, GLPF)來進(jìn)行亮度圖像的提取。二維高斯低通濾波器的頻率響應(yīng)函數(shù)的表達(dá)式如下:
(8)
式中:D(u,v)是(u,v)點(diǎn)距頻率矩形原點(diǎn)的距離,D0表示截止頻率。
該方法雖可達(dá)到一定的圖像增強(qiáng)效果,但有時(shí)會有“光暈”以及過增強(qiáng)現(xiàn)象的產(chǎn)生,這是因?yàn)镚LPF“光滑陡直”的截止頻率曲線其幅度隨著截止頻率的減小衰減更快,如圖3所示。由于在某個(gè)區(qū)間上的頻率變化較快,將其作用在圖像的頻譜上后,圖像上的某些頻率會被截?cái)?,?dǎo)致圖像頻率變化不連續(xù),這會導(dǎo)致像素缺失、圖像細(xì)節(jié)丟失嚴(yán)重并伴有噪聲。
圖3 GLPF幅頻特性曲線圖
為了降低像素缺失以及細(xì)節(jié)丟失對圖片質(zhì)量的影響,本文根據(jù)巴特沃斯低通濾波器(Butterworth low-pass filter, BLPF)的特性[19],將GLPF替換為一階的BLPF。巴特沃斯低通濾波器的表達(dá)式如下:
(9)
BLPF的幅頻特性曲線如圖4所示,可以看出,當(dāng)BLPF的階數(shù)n=1時(shí),其幅頻特性曲線是“光滑平緩”的。將其作用于頻譜后,能較好地保護(hù)圖像頻譜不被截?cái)唷?/p>
圖4 BLPF幅頻特性曲線圖
為了進(jìn)一步說明n=1的BLPF是“光滑平緩”的,圖5是通過BLPF中心的4幅灰度級剖面圖。它們的階數(shù)分別為1、2、5、20,且截止頻率都為5。
圖5 通過BLPF中心的灰度級剖面圖
可以看出,除了n=1的BLPF之外,其余的BLPF都有振鈴現(xiàn)象的產(chǎn)生,尤其是n=20 時(shí),BLPF的振鈴現(xiàn)象很明顯,這是因?yàn)楫?dāng)n=20時(shí),其特性曲線幾乎與頻率軸垂直,此時(shí)可以將其視作一個(gè)理想低通濾波器,所以就產(chǎn)生了振鈴現(xiàn)象。
通過上面的分析與討論,用一階的BLPF來進(jìn)行亮度圖像的提取,可以保護(hù)圖像像素以及圖像細(xì)節(jié)。本文將其記作SSR_BF(基于巴特沃思低通濾波的改進(jìn)SSR算法)。改進(jìn)算法如下:
根據(jù)SSR算法的數(shù)學(xué)表達(dá)式,用一階的巴特沃斯低通濾波函數(shù)替換傳統(tǒng)算法中的高斯環(huán)繞函數(shù),此時(shí)的H(u,v)表示BLPF的濾波函數(shù),即將式(9)代入式(5),可得:
f(x,y)=logP(x,y)-
(10)
圖6 SSR_BF算法流程
在HSV空間中,H、S、V三個(gè)分量之間的關(guān)聯(lián)性不大。提取亮度分量V并做相應(yīng)的處理,不僅可以保持原始圖像的色調(diào)H 與飽和度S的關(guān)系,還可以提升圖像亮度,豐富圖像細(xì)節(jié)以及保持圖像的原始色彩信息。圖片經(jīng)過SSR_BF處理后,圖像的像素以及細(xì)節(jié)得到了保護(hù),但是因?yàn)槠湓赗GB空間進(jìn)行的處理,所以色彩會有所失真。為了解決顏色問題,本文將圖片轉(zhuǎn)到HSV空間各通道并對V分量進(jìn)行SSR_BF的增強(qiáng)。
因?yàn)橹耙呀?jīng)對S分量做了線性拉伸的操作,為了保證V分量與S分量之間的比例,對V分量進(jìn)行SSR_BF算法的增強(qiáng)來提取亮度分量。這樣一來,不僅可以壓縮圖像的動態(tài)范圍,還可以提升其亮度并抑制高亮區(qū)的“光暈”現(xiàn)象。本文最終改進(jìn)的清晰化算法流程如圖7所示。
圖7 清晰化算法流程
本文最終的改進(jìn)清晰化算法步驟如下:
(1) 將圖片從RGB各通道轉(zhuǎn)換到HSV各通道。
(2) 在HSV的通道中,對飽和度分量S做自適應(yīng)的線性拉伸,對亮度分量V做基于巴特沃斯低通濾波(BLPF)的改進(jìn)SSR算法增強(qiáng),H色度分量保持不變。
(3) 將處理好的圖片從HSV空間各通道轉(zhuǎn)換到RGB空間各通道。
(4) 輸出圖像。
為了進(jìn)行本文算法有效性的實(shí)驗(yàn),本實(shí)驗(yàn)環(huán)境為CPU 2.5 GHz,內(nèi)存4 GB,Windows 7系統(tǒng),利用MATLAB 2018a軟件進(jìn)行仿真實(shí)驗(yàn)。實(shí)驗(yàn)分兩部分:(1) 本文算法處理低照度圖像的可行性;(2) 本文算法與其他圖像增強(qiáng)算法對低照度圖像處理效果的對比。實(shí)驗(yàn)所使用的圖片挑選自ground truth database 庫里的圖像數(shù)據(jù)(arborgreens包以及barcelona包)。實(shí)驗(yàn)中用到的對比算法有SSR算法、MSR算法、文獻(xiàn)[20]的算法[20]、文獻(xiàn)[21]的算法[21],所使用的測試圖片來源于網(wǎng)絡(luò)。圖像質(zhì)量評價(jià)方法如圖8所示。主觀評價(jià)采用視覺觀察;客觀評價(jià)使用指標(biāo)均方差和信息熵進(jìn)行評價(jià)。亮度分布情況用均方差表示,均方差越小,亮度分布越均勻;圖像細(xì)節(jié)、圖像層次和圖像信息用信息熵表示,越大越好。
圖8 圖像質(zhì)量評價(jià)
1) 濾波函數(shù)的替換和線性拉伸。傳統(tǒng)的單尺度Retinex算法在處理過程中會有顏色失真等問題的出現(xiàn),本節(jié)先進(jìn)行SSR算法和SSR_BF算法的效果比較,結(jié)果如圖9所示,圖9(b)使用的是高斯低通濾波函數(shù),圖9(c)使用的是一階的巴特沃斯低通濾波函數(shù),然后在替換高斯低通濾波函數(shù)為巴特沃斯低通濾波函數(shù)的基礎(chǔ)上,對比無線性拉伸(圖9(c))和有線性拉伸(圖9(d))的效果。實(shí)驗(yàn)中高斯低通濾波函數(shù)的尺度參數(shù)σ=250,巴特沃斯低通濾波函數(shù)的截止頻率D0=5。
圖9 算法可行性效果圖
(1) 細(xì)節(jié)部分:從兩組圖中可以看出,用高斯低通濾波函數(shù)處理的圖9(b),兩組都出現(xiàn)了顏色失真的現(xiàn)象,第一組中主體植物的葉子出現(xiàn)了過增強(qiáng)現(xiàn)象,第二組中樹干產(chǎn)生了“光暈”,出現(xiàn)了偽彩色;但用巴特沃斯低通濾波函數(shù)處理的圖9(c)中,凸顯原圖像細(xì)節(jié)的同時(shí)(第一組左上方框中的樹干更清晰了),在一定程度上抑制了圖9(b)所產(chǎn)生的“光暈”以及過增強(qiáng)現(xiàn)象(抑制了第二組框中樹干的“光暈”現(xiàn)象)。
(2) 顏色部分:對飽和度分量S沒做線性拉伸的兩組圖9(c),增強(qiáng)過后的圖片色彩整體“泛白”,圖片中樹木花草等物體應(yīng)有的顏色沒有顯現(xiàn)出來;但對飽和度分量S經(jīng)過線性拉伸后,圖片整體顏色鮮艷。第一組圖9(d)中的主體植物的葉子更綠了(白框部分),地上紅色的落葉以及后方棕色的樹干都展現(xiàn)了出來。第二組圖9(d)中可以看到斑駁的金色陽光灑在綠色的樹葉上(白框部分)。
2) 截止頻率D0的確定。為了達(dá)到較好的增強(qiáng)效果,根據(jù)巴特沃斯低通濾波器的幅頻特性曲線特點(diǎn),本節(jié)對本文改進(jìn)算法進(jìn)行了不同截止頻率D0的增強(qiáng)效果對比,實(shí)驗(yàn)結(jié)果見圖10。
圖10 不同截止頻率效果圖
可以看出,圖片整體提亮,不同截止頻率的增強(qiáng)效果圖都凸顯了原圖所沒有展示出來的細(xì)節(jié):墻壁的紋路、亮著紅燈的音響以及綠色的盆栽植物等,而且在追光燈的作用下,整幅圖呈現(xiàn)出了淡紅色的背景狀態(tài)。在這其中,巴特沃斯低通濾波器中的截止頻率D0主要起著對圖像平滑的作用,圖像平滑是指用于突出圖像低頻成分,抑制圖像噪聲的一種方法。D0越大,平滑效果越顯著。通常來說,平滑會使圖像亮度平緩漸變,減小突變梯度,保留主體像素,但會使圖像變得模糊。不難看出,當(dāng)D0=5時(shí),平滑效果較好,隨著D0的增加,圖像逐漸模糊。為了保證改進(jìn)算法的有效性和可行性,D0=5為本文改進(jìn)算法的最佳截止頻率。
所以綜上所述,本文的改進(jìn)算法對低照度圖像具有一定的增強(qiáng)效果和可行性,主要表現(xiàn)在色彩保真和細(xì)節(jié)增強(qiáng)方面。
1) 主觀評價(jià)。為了進(jìn)一步說明本文算法的有效性,本節(jié)將用本文算法與SSR算法、MSR算法、文獻(xiàn)[20]算法、文獻(xiàn)[21]算法進(jìn)行對比。對比效果如圖11-圖12所示。
圖11 小男孩效果圖
圖12 教堂效果圖
通過各種算法的處理,圖片整體提亮,但SSR算法出現(xiàn)了過增強(qiáng)現(xiàn)象;MSR算法使得小男孩整體輪廓不夠清晰,整幅圖色彩不夠鮮艷;文獻(xiàn)[20]算法的色彩和細(xì)節(jié)表現(xiàn)得不夠;文獻(xiàn)[21]算法雖然呈現(xiàn)了圖像大部分細(xì)節(jié),但清晰度不夠。本文算法處理后,小男孩的整體輪廓清晰。本文算法在保持整幅圖片色彩鮮艷的同時(shí),也使小男孩鞋底的花紋以及圖片右邊墻壁的花紋清晰可見。
經(jīng)SSR算法處理過后,整體提亮,墻柱的紋路也有部分增強(qiáng),但圖片整體色彩不夠;MSR算法處理過后,基本細(xì)節(jié)都有所展現(xiàn),但產(chǎn)生了“過增強(qiáng)”現(xiàn)象;文獻(xiàn)[20]算法處理后整體有所提亮,也凸顯了墻壁的部分紋路,但圖片上方窗子的顏色沒有顯現(xiàn)出來;文獻(xiàn)[21]算法處理過后,柱子上面的紋路以及窗子上方的顏色都有所增強(qiáng),但圖片整體清晰度不夠。本文算法處理過后,柱子、墻壁上的紋路,圖片右下方穿著黃色衣服的人清晰可見,且圖片上方窗子的顏色更鮮艷了。
2) 客觀評價(jià)。表1-表2分別是圖11、圖12所對應(yīng)的圖像質(zhì)量評價(jià)指標(biāo)表。
表1 小男孩圖的評價(jià)指標(biāo)信息表
表2 教堂內(nèi)部圖的評價(jià)指標(biāo)信息表
分析兩個(gè)表中的數(shù)據(jù)可得出:本文算法的均方差數(shù)值處于中間,說明圖像亮度分布較均勻,色彩較飽滿鮮艷,圖像整體并不會太亮及太暗;信息熵最大,說明增強(qiáng)后的圖像包含的細(xì)節(jié)信息較多、層次較豐富、輪廓較清晰。
本文在傳統(tǒng)的單尺度Retinex算法基礎(chǔ)上,進(jìn)行顏色空間的轉(zhuǎn)換并對相應(yīng)的分量做處理以及濾波函數(shù)的替換。通過對低照度圖片進(jìn)行的實(shí)驗(yàn)表明,本文HSV空間的基于BLPF的改進(jìn)SSR算法在低照度圖像清晰化處理方面明顯優(yōu)于傳統(tǒng)的SSR算法、MSR算法。本文算法將圖片從RGB空間各通道轉(zhuǎn)換到HSV空間各通道,可以解決R、G、B三分量之間因有著較高關(guān)聯(lián)性所導(dǎo)致的顏色失真問題,更符合人類眼中所認(rèn)知的顏色空間;之后對S分量進(jìn)行線性拉伸,對V分量進(jìn)行改進(jìn)的Retinex增強(qiáng),可以使得圖像細(xì)節(jié)更為突出,提升圖像暗區(qū)亮度的同時(shí)抑制局部高亮區(qū)的“光暈”;最后將圖像轉(zhuǎn)回RGB空間各通道,可以使得圖像整體層次分明,色彩艷麗,從而達(dá)到較好的增強(qiáng)效果。