賈 芃, 李 博, 趙曉龍
(中北大學(xué)儀器科學(xué)與動態(tài)測試教育部重點(diǎn)實(shí)驗(yàn)室,太原030051)
數(shù)字圖像作為記錄信息的重要途徑之一,在海上交通運(yùn)輸、水下探查以及海洋軍事等許多領(lǐng)域都有廣泛應(yīng)用[1]。然而,水下采集到的圖像通常由于水下環(huán)境對光產(chǎn)生散射的影響,會出現(xiàn)模糊化、顏色衰減等問題,嚴(yán)重影響水下彩色圖像的清晰度。因此,如何改善水下圖像從而獲取有效信息,已成為學(xué)者關(guān)注的熱點(diǎn)。如今,圖像增強(qiáng)方式大致分為對像素值處理的增強(qiáng)算法和基于色感一致性的增強(qiáng)算法[2]。其中,對像素值的直接處理,例如直方圖均衡化[3]只改善圖像的某一方面但易丟失細(xì)節(jié)信息和色彩失真;基于色感一致性的增強(qiáng)算法是通過減小低頻分量與增強(qiáng)高頻分量來改善圖像的質(zhì)量[4]。
近年來,Retinex 理論由于易于操作、實(shí)現(xiàn)效果良好,已逐漸成為國內(nèi)外學(xué)者的研究熱點(diǎn),該理論提出動物眼睛接收到的畫面是由入射光和反射光的共同影響[5]。由于該算法計(jì)算量較小且實(shí)現(xiàn)效果良好,學(xué)者們開始嘗試將Retinex算法應(yīng)用于增強(qiáng)水下圖像領(lǐng)域。聶瑛等[3,6]設(shè)計(jì)了一種新的光學(xué)方法來進(jìn)行圖像處理,結(jié)合紅光和藍(lán)綠光的光傳輸特性,通過紅光和綠光照明圖像的灰度線性差值去除噪聲,獲取圖像信息,Song等[6]提出基于遺傳算法和人類視覺系統(tǒng)的自適應(yīng)Retinex 算法[7]。Zhang 等[7]提出將圖像轉(zhuǎn)換在CIELAB色彩空間中,對圖像的3 個色彩通道分別采用雙邊濾波器和三邊濾波器相結(jié)合的方法達(dá)到增強(qiáng)圖像的目的。宋巍等[8]提出了基于背景光融合及水下暗通道先驗(yàn)和色彩平衡的水下圖像增強(qiáng)方法。然而,Retinex理論雖然加大了圖像的可見性,但是增強(qiáng)后圖像的噪聲也隨之增加,并且算法僅對圖像進(jìn)行全局增強(qiáng)處理,沒有考慮到圖像的局部特征,導(dǎo)致增強(qiáng)后的圖像對比度較低、圖像泛灰[9-10]。
針對以上不足,本文提出了一種基于HSI 色彩空間且結(jié)合多通道增強(qiáng)的水下圖像增強(qiáng)方法,可以有效避免“光暈”現(xiàn)象和細(xì)節(jié)模糊化問題,能有效增強(qiáng)水下圖像細(xì)節(jié)并且色彩特征保持良好,進(jìn)行后續(xù)分析處理。
Retinex是由視網(wǎng)膜Retina 和大腦皮層Cortex 兩個詞組合構(gòu)成的,該理論認(rèn)為人眼接收到的物體顏色是由物體表面對不同波長的反射性質(zhì),而不是由反射光強(qiáng)度的絕對值來決定的[11]。由于在日常生活中并沒有作為標(biāo)準(zhǔn)的參考物,人眼將會把所在場所中光照強(qiáng)度最大的物體定義為參考物,之后通過計(jì)算其他物體與該物體的相對色差,計(jì)算出其他物體的色彩數(shù)據(jù),而從計(jì)算過程可以看出,物體本身的顏色不因入射光頻率改變而改變。
在Retinex理論中,人眼中物體的成像S(x,y)是由入射光和反射光兩部分組成。物體的入射光對應(yīng)的是圖像的低頻部分,稱之為入射圖像L(x,y);而反射光對應(yīng)的是圖像的高頻部分,稱之為亮度圖像或反射圖像R(x,y)。其中入射分量L(x,y)對圖像產(chǎn)生干擾噪聲,應(yīng)該盡量去除;反射分量R(x,y)體現(xiàn)出圖像的本質(zhì)特征,應(yīng)盡可能保留。該模型可用下式表示:
通常將式(1)轉(zhuǎn)化為對數(shù)運(yùn)算,這樣不僅更符合人眼的色彩感知,同時可以簡單化計(jì)算過程,式(1)可轉(zhuǎn)化為:
式中,入射光部分L(x,y)可由一個環(huán)繞函數(shù)和圖像f(x,y)的卷積估計(jì)出來,最終可表示為
而環(huán)繞函數(shù)G(x,y)一般取高斯函數(shù),表示為
式中:σx和σy為高斯函數(shù)的方差,決定了濾波器的帶寬,一般取σx=σy。最終,Retinex模型為
Retinex增強(qiáng)算法雖然能夠有效去除薄霧成分,增強(qiáng)圖像的清晰程度。但是,由于傳統(tǒng)Retinex算法只有單尺度,很難同時兼顧細(xì)節(jié)強(qiáng)化和顏色還原能力,所以增強(qiáng)后的圖像對比度較低,色彩稍有失真[11]。并且由于光照不是均勻變化的,所以在實(shí)際生活環(huán)境中,在光照變化明顯的區(qū)域和圖像的邊緣,會產(chǎn)生“光暈”現(xiàn)象[12]。
實(shí)際水下采集到的畫面具有光照不均勻、對比度低、背景大多為藍(lán)綠色的特點(diǎn)。為了實(shí)現(xiàn)良好的增強(qiáng)效果,在處理時可以分離出圖像的噪聲,強(qiáng)化物體的輪廓和表面細(xì)節(jié),同時要盡可能還原原本色彩。因此,根據(jù)圖像的特點(diǎn)和對傳統(tǒng)Retinex理論,本文提出了一種基于HSI和多通道增強(qiáng)的Retinex水下圖像增強(qiáng)方法。
算法的整體流程為:將采集到的水下圖像轉(zhuǎn)換至HSI空間[13],提取出色調(diào)部分H、飽和度部分S 和亮度部分I;利用小波變換分離出I 的低頻和高頻成分,選用Retinex增強(qiáng)圖像低頻分量,高頻部分利用多尺度高斯差分進(jìn)行噪聲處理,之后將高頻與低頻部分進(jìn)行疊加;對S進(jìn)行拉伸。最后,利用小波逆變換得到增強(qiáng)后的水下圖像。算法流程如圖1 所示。
本文算法通過對圖像的不同頻帶進(jìn)行處理,從而達(dá)到減少噪聲以及增強(qiáng)圖像細(xì)節(jié)的目的。經(jīng)過小波分解后,水下圖像的特征信息和噪聲將分解在不同的子頻帶上。根據(jù)不同頻帶上圖像的特征,采取不同的濾波方法進(jìn)行處理,最后再使用小波逆變換便能得到增強(qiáng)后的圖像。通過本文算法可以使圖像從整體上增強(qiáng),既可以有效減少圖像的噪聲,還可以有效保持圖像細(xì)節(jié)信息。
圖1 算法流程
離散小波變換作為一種多分辨率圖像分割[14-15],可以視為圖像在一組小波基變換函數(shù)的擴(kuò)展。小波基函數(shù)可以突出空域和頻域的不同特性。在離散小波基函數(shù)上的擴(kuò)展一般是通過一對低通和高通濾波器(類似子帶編碼)組成的濾波器組來實(shí)現(xiàn)的。由于經(jīng)常采用分離濾波,因此二維小波變換運(yùn)算就降為一維變換運(yùn)算。在實(shí)際的圖像處理中,主要采用離散小波和離散小波變換:
一維信號可以被可分離濾波器分解到二維,即先按行分割圖像s(n1,n2),再按列分割。在每個方向進(jìn)行二元分解,得到4 個子帶,稱為低(L)yL(n1,n2)、水平(H)yH(n1,n2)、垂直(V)yV(n1,n2)、對角(D)yD(n1,n2),分別對應(yīng)于lower-lower,upper-lower,lower-upper,upper-upper子帶,選擇合適的方法處理各個子帶的分量,進(jìn)而優(yōu)化圖像包含的信息,達(dá)到增強(qiáng)圖像的目的。如圖2 所示,先通過一級小波分解將圖像分為LL1、HL1、LH1和HH1,對得到的低頻子圖LL1進(jìn)行二級分解,得到集中圖像主要信息的低頻分量LL2,對其進(jìn)行Retinex處理;對噪聲集中的高頻子圖進(jìn)行多通道增強(qiáng)。
圖2 通過兩級二叉樹分解將圖像分解到頻帶
圖像在采集和傳輸過程中不可避免地會對圖像造成一些損失,必須對圖像進(jìn)行銳化處理來減少圖像的噪聲,增強(qiáng)圖像邊緣細(xì)節(jié)部分,使其輪廓清晰,從而達(dá)到增強(qiáng)圖像的目的。
在高頻子帶中引入一種多尺度細(xì)節(jié)增強(qiáng)方法,利用多尺度高斯模糊差分增強(qiáng)細(xì)節(jié),去除暈輪、偽影等,在高頻子帶I*中使用高斯核可以獲得兩種不同的模糊圖像
式中:G1和G2分別表示標(biāo)準(zhǔn)差的高斯核,并且G1=1.0,G2=3.0。之后,可以得到具體細(xì)節(jié)D1和粗略細(xì)節(jié)D2,定義如下:
然后通過合并2 個圖層可以得到全局的細(xì)節(jié)圖像:
式中:k1和k2為可調(diào)參數(shù)。在高頻子圖像增加細(xì)節(jié)D1,可以增大圖像邊緣的灰度差,過度超調(diào)可能導(dǎo)致圖像的灰度飽和。為了解決這個問題,在方程(10)中通過還原D1的正分量和放大其負(fù)分量來保持正分量和負(fù)分量的平均差。最后,在低頻圖像中添加圖像D*,得到一個新的增強(qiáng)圖像
通過拉伸飽和度部分使圖像細(xì)節(jié)部分更加清晰,突出需要關(guān)注的部分??梢栽诓煌瑓^(qū)域采用分段指數(shù)增強(qiáng)法進(jìn)行飽和調(diào)整。根據(jù)圖像的飽和度分布將飽和度分為高(70% ~100%)、中(20% ~70%)和低飽和度區(qū)域(0% ~20%)進(jìn)行指數(shù)變換,放大飽和度。通過指數(shù)變換適當(dāng)調(diào)整中飽和度面積。飽和度分量S的增強(qiáng)算法公式如下:
式中:S和S′分別為增強(qiáng)前后的飽和度,通過調(diào)整α、β來改變轉(zhuǎn)換尺度。實(shí)驗(yàn)結(jié)果表明,α取值在1.2 ~1.5,β取值在0.6 ~0.9,增強(qiáng)效果最好。在本算法中,α、β分別取1.4 和0.7。最后,將圖像拉伸后的飽和分量S、處理后的亮度分量I 和色調(diào)分量H 還原為RGB圖像。
本文選取兩幅不同水下圖像進(jìn)行對比實(shí)驗(yàn)。實(shí)驗(yàn)硬件平臺為Intel i5-5600 CPU,主頻3.3 GHz,內(nèi)存8 GB,軟件仿真環(huán)境為Win7 操作系統(tǒng)、Matlab2017b。實(shí)驗(yàn)中選擇直方圖均衡法和MSR 算法在Matlab 上對實(shí)驗(yàn)圖像進(jìn)行處理,之后分別從主觀評價和圖像包含信息程度兩方面對圖像進(jìn)行分析,①通過對比原圖和結(jié)果圖,對畫面中的細(xì)節(jié)特征和畫面的色彩復(fù)原程度進(jìn)行評價;②通過比較圖像的均值、標(biāo)準(zhǔn)差和信息熵對圖像增強(qiáng)效果進(jìn)行評價。
由圖3 的Pic1 和Pic2 兩組圖像可以看出,直方圖均衡法、Retinex 算法和本文算法均有明顯的增強(qiáng)效果。由于水下圖像存在亮度差,物體邊界模糊的特點(diǎn),在直方圖均衡法,Retinex 算法兩種算法的圖像中,雖然都具有增強(qiáng)效果,但是在對比度劇烈變換的區(qū)域會模糊化,如圖Pic1 中魚的輪廓和圖Pic2 中建筑物的邊緣,并且增強(qiáng)后的圖像亮度低,色彩還原程度較低。比如圖Pic1 中色彩恢復(fù)效果差,圖Pic2 中魚的身體由于增強(qiáng)方法不恰當(dāng)造成顏色失真;在圖Pic1 中沉船以及周圍水體的對比度較低,圖像的細(xì)節(jié)信息丟失。而本文算法處理后的圖Pic1 中整體對比度明顯提高,魚的色彩還原性高且沒有丟失細(xì)節(jié);圖Pic2 整體提升效果良好,建筑物和近處的物體層次比較明顯,色彩恢復(fù)效果良好。
圖3 Pic1和Pic2實(shí)驗(yàn)結(jié)果圖
由表1 得到的數(shù)據(jù)可以說明,利用3 種方法增強(qiáng)后的圖像的信息熵均高于原圖像,增強(qiáng)算法豐富了圖像包含的特征信。本文提出的算法相比于直方圖均衡法和Retinex算法,在信息熵方面達(dá)到了相近水平,均值與標(biāo)準(zhǔn)差均高于原圖。上述結(jié)果表明,3 種方法均對水下圖像有一定的增強(qiáng)作用,而本文算法在色彩恢復(fù)和清晰畫面方面均優(yōu)于其他算法。
表1 算法增強(qiáng)圖像參數(shù)對比
針對水下圖像存在色彩失真、難以分辨、邊界模糊化和“光暈”現(xiàn)象的特點(diǎn),本文基于單尺度Retinex,提出了一種基于HSI和小波變換的改進(jìn)水下圖像增強(qiáng)算法。通過對轉(zhuǎn)換到HSI色彩空間的水下圖像進(jìn)行小波分解,對分離得到的亮度分量分別進(jìn)行去噪、增強(qiáng)處理。最后,利用逆變換還原為RGB 圖像,得到處理后的水下圖像。將本文算法與其他兩種算法進(jìn)行對照實(shí)驗(yàn)。結(jié)果表明,在不改變色彩飽和度的前提下,本文算法可以有效強(qiáng)化圖像中包含的信息,對一般的水下彩色圖像均具有較好的增強(qiáng)效果。下一步將試驗(yàn)在一些相對惡劣的環(huán)境如水底昏暗光照下或物體與水下色彩差距較小,利用本算法對目標(biāo)圖像進(jìn)行增強(qiáng)處理,同時對本文算法進(jìn)行優(yōu)化改進(jìn)。