劉衛(wèi)東, 李吉玉, 張文博, 李樂
(西北工業(yè)大學(xué) 航海學(xué)院, 陜西 西安 710072)
水下環(huán)境的未知性和復(fù)雜性是人類開發(fā)海洋資源的一大挑戰(zhàn)。相比于聲學(xué)探測設(shè)備,水下視覺傳感器能夠直觀地獲取豐富多彩、高分辨率的水下環(huán)境和目標(biāo)特征信息,正被廣泛應(yīng)用于海洋技術(shù)開發(fā)和科學(xué)研究。然而,由于水對光的散射和吸收,水下圖像常呈現(xiàn)可見度低、邊緣模糊、顏色失真等現(xiàn)象[1]。此外,深海點光源的聚射效應(yīng)、水面波紋對自然光的折射效應(yīng),都會導(dǎo)致水下圖像呈現(xiàn)嚴重的光照不均勻現(xiàn)象。因此,如何解決光照不均勻引起的水下圖像模糊和失真問題對實現(xiàn)高效的水下探測、識別和作業(yè)等至關(guān)重要。
目前對于光照不均勻及弱光照問題的研究多在大氣環(huán)境中[2-6], Wang等[7]提出一種“亮度順序誤差”的方法來保持圖像的自然與細節(jié)并采用雙對數(shù)變換的方法求取光照圖。Lee等[8]提出了一種基于空間可變光照圖(SVLM)的彩色圖像增強方法,將二維伽馬校正與SVLM相結(jié)合,在亮度域中提高暗區(qū)強度,降低亮區(qū)強度。Gao等[9]提出一種基于聯(lián)合保邊濾波器的自然保持光照估計算法并基于盒式濾波實現(xiàn)了對光照圖的快速估計。這些方法對于空氣中的光照不均勻或弱光照圖像具有很好的增強效果,但受限于水下環(huán)境復(fù)雜及水對光的散射和吸收效應(yīng),上述算法無法處理水下圖像的光照不均勻現(xiàn)象。針對水下圖像的特性,國內(nèi)外學(xué)者們提出了幾種不同的水下圖像增強方法。Fu等[10]根據(jù)Retinex理論提出了一種用于分解單幅水下圖像的反射分量和光照分量的變分框架來增強水下圖像,該算法增強效果較好,但較為復(fù)雜。Zhang等[11]針對水下圖像色彩失真和光照不均勻的問題,提出一種通過計算R、G、B3個通道的特征值均值和方差對水下圖像進行顏色校正并調(diào)整光照圖的方法(VCIP)來進行水下圖像增強。由于光在水下的吸收和散射效應(yīng),水下圖像的清晰度相對較差,針對該問題,Drews等[12]提出了一種基于暗信道先驗的水下傳輸估計方法(UDCP)對水下圖像進行復(fù)原。但上述這幾種算法對于水下圖像中光照較弱部分的增強效果并不明顯,常常會丟失圖像暗區(qū)的細節(jié)。針對水下光照不均勻及弱光照引起的成像模糊及失真問題,本文提出了一種基于Retinex和ADMM(alternating direction method of multipliers)優(yōu)化的水下圖像增強方法。實驗結(jié)果表明,相比于當(dāng)前方法,本文所提的方法具有更好的定性和定量效果,在去除光照對水下圖像的影響以及保留圖像細節(jié)方面有更好的性能。
本文基于Retinex理論,提出一種在交替方向乘子法基礎(chǔ)上構(gòu)造增廣拉格朗日框架(ADMM-ALM)來求取光照圖的算法。首先,估計初始光照圖時,將圖像從RGB顏色空間轉(zhuǎn)換到Lab顏色空間,提取亮度分量L作為初始光照圖 ;然后基于交替方向乘子法原理,構(gòu)造一個增廣拉格朗日框架的約束優(yōu)化方程,通過迭代求解優(yōu)化方程,得到精準(zhǔn)光照圖T;根據(jù)Retinex理論,將待處理圖像與光照圖轉(zhuǎn)換到對數(shù)域求取對數(shù)域中的反射圖像,再進行指數(shù)運算即可得到增強圖像。最后,利用雙邊濾波器抑制水下噪聲,獲得更細致的增強圖像。本文算法流程如圖1所示。
圖1 算法流程圖
根據(jù)Retinex理論[13],一幅圖像可以分解為2幅不同的圖像,即反射圖像R(x,y) 和亮度圖像L(x,y)
S(x,y)=R(x,y)·L(x,y)
(1)
式中:S(x,y)為人眼所接收到的反射光圖像,即原始圖像;R(x,y)為反射圖像,是圖像的內(nèi)在屬性;L(x,y)為亮度圖像,它決定了圖像像素能到達的動態(tài)范圍;“·”表示圖像像素點乘。將亮度圖像分離,求出反射圖像,即為增強后的圖像。為了進一步簡化計算,將(1)式轉(zhuǎn)換到對數(shù)域進行計算
log(S(x,y))=log(R(x,y))+log(L(x,y))
(2)
(3)
式中:‖·‖F(xiàn)表示Frobenious范數(shù);‖·‖1表示L1范數(shù);α是系數(shù);W是權(quán)重矩陣;T是T的一階微分。本文利用交替方向乘子法(ADMM)來求解上述問題,優(yōu)化方程如下
(4)
(5)
式中:λ為增廣拉格朗日乘子;ρ為增廣拉格朗日參數(shù)(ρ>0),則它的迭代方式如(6)~(8)式所示
(6)
(7)
λk+1=λk+ρ(Tk+1-Zk+1)
(8)
(9)
迭代過程在滿足(9)式時停止。
通過上述步驟即可得到優(yōu)化過后的光照圖。此外,采用Gamma校正[14]的方法對光照圖在亮度域進行進一步校正,降低亮區(qū)像素點的亮度值,提高暗區(qū)像素點的亮度值
(10)
R(x,y)=exp(logS(x,y)-logTγ(x,y))
(11)
獲得優(yōu)化校正后光照圖后,根據(jù)(2)式得到增強后的水下圖像,如(11)式所示。然而,這時的增強圖像往往存在著邊緣模糊、噪聲明顯的問題。針對該問題,本文采用雙邊濾波[15]方法保邊去噪
(12)
式中:R(m,n)是待處理圖像的像素點;q是權(quán)重系數(shù),取決于定義域核與值域核,如(13)式所示,式中,σd和σr分別為定義域方差和值域方差。
(13)
為了驗證本文算法的有效性,針對人工點光源不均勻(見圖2a))、弱光照(見圖2b))、自然光照不均勻(見圖2c))和自然弱光照且光照不均勻(見圖2d))4種不同情況的水下圖像,在MATLAB R2018b軟件平臺上進行實驗驗證,并與VCIP、UDCP、伽馬校正(GC)[16]、SSR[17]及文獻[10]算法進行對比。
圖2 原始水下圖像
圖2a)~2d)的處理結(jié)果如圖3~6所示,圖中3a)~3f)分別是VCIP、UDCP、GC、SSR、文獻[10]中的算法及本文算法的圖像處理結(jié)果。
針對人工光源較強的水下圖像,5種算法的處理結(jié)果如圖3所示。由圖3的處理結(jié)果可看出:VCIP算法雖然減弱了光源的亮度,但在圖像邊緣暗區(qū)的亮度并未得到很好的增強;UDCP算法將水下圖像的整體亮度降低,使邊緣暗區(qū)更暗,丟失了該部分的信息;GC算法相較于原始水下圖像并無大改善,增強效果并不明顯;SSR算法在光源較強的情況下出現(xiàn)了曝光現(xiàn)象;文獻[10]中的算法降低了強光照區(qū)域的亮度,但圖像邊緣弱光照區(qū)域并未得到改善;本文算法則較好地克服了人工光源的影響,降低了光照強度高的部分的亮度,提高了光照強度低的部分的亮度,有效解決了光照不均勻的問題并且水下圖像各部分的細節(jié)也都得到了保留。
圖3 圖像1的增強結(jié)果
針對水下弱光照的情況,5種算法的處理結(jié)果如圖4所示。由圖4的處理結(jié)果可看出:VCIP算法提高了水下圖像的亮度,但是圖像的整體色調(diào)與原圖差距較大,且圖像的清晰度并不理想;UDCP算法和GC算法在弱光照情況下的增強效果較差,水下圖像可見度較低;SSR算法雖然提高了水下圖像的亮度,然而處理后的圖像出現(xiàn)了“霧化”現(xiàn)象,圖像的清晰度及對比度大大降低;文獻[10]中的算法有效提高了水下圖像的整體亮度,但弱光照區(qū)域的一些細節(jié)未得到較好保留,出現(xiàn)了部分噪聲;相較于前5種算法,本文算法提高了弱光照水下圖像的亮度,增強了弱光照水下圖像的清晰度和對比度,更好地提高了弱光照水下圖像質(zhì)量。
圖4 圖像2的增強結(jié)果
針對水下自然光照不均勻的情況,5種算法的處理結(jié)果如圖5所示。由圖5的處理結(jié)果可看出:VCIP算法和SSR算法都能在一定程度上提高水下圖像較暗的部分的亮度,但在亮度較高的部分出現(xiàn)了曝光現(xiàn)象,且處理后的水下圖像的清晰度和對比度仍有待提高;UDCP算法降低了光照較強部分的亮度,但光照較暗部分的亮度同樣降低了,使處理后圖像整體亮度過低;GC算法的處理結(jié)果與原始圖像差異不大,增強效果不明顯;文獻[10]中的算法提高了水下圖像的亮度,但出現(xiàn)了少量色偏,圖像的清晰度也有所降低;本文算法的處理結(jié)果提高了水下圖像較暗部分的亮度,圖像暗處的細節(jié)在處理后得到了更好的呈現(xiàn),提高了圖像的對比度。
圖5 圖像3的增強結(jié)果
針對水下自然弱光照且光照不均勻的情況,5種算法的處理結(jié)果如圖6所示。由圖6的處理結(jié)果可看出:VCIP算法一定程度上改善了水下圖像光照不均勻的現(xiàn)象,但是處理后的圖像的清晰度較低、對比度較差;UDCP算法使水下圖像的整體亮度降低,對于整體亮度較低的水下圖像增強效果并不明顯,圖像暗處的細節(jié)丟失較為嚴重;GC算法雖然在水下圖像的光照均勻方面起到了一定的作用,但對水下圖像的整體增強效果較之原始圖像并無大的改善;SSR算法出現(xiàn)了過曝現(xiàn)象,增強算法在該情況下并不十分有效;文獻[10]中的算法降低了強光照部分的亮度,但弱光照部分并無明顯改善,且水下圖像的對比度仍有待提高;本文算法處理后的水下圖像在光照均勻和顏色校正方面的表現(xiàn)都較好,光照強度高的部分并未產(chǎn)生過曝現(xiàn)象,光照強度低的部分的亮度也得到了提高,圖像的整體可見度得到了較大的改善,同時圖像的清晰度和對比度也較高。
圖6 圖像4的增強結(jié)果
為了定量地對水下圖像增強效果進行評價,本文采用圖像信息熵(information entropy)和圖像自然統(tǒng)計特性[18](natural image quality evaluator,NIQE)作為指標(biāo)對處理結(jié)果進行評價,如表1所示。同時,本文還通過計算平均運行時間對幾種算法的計算復(fù)雜度進行了比較,如表2所示。
式中:S為圖像信息熵;pi表示圖像中灰度值為i的像素所占的比例;N是圖像的NIQE值,v1,v2,Σ1,Σ2分別是增強圖像與原始圖像的多元高斯分布的均值和協(xié)方差。
從表1中的數(shù)據(jù)可知,由本文算法處理后的增強水下圖像,信息熵都高于其他算法,說明相比于其他算法,本文算法處理后的圖像質(zhì)量更高、蘊含的信息量更大。在水下弱光照以及水下光照較弱且不均勻的情況下,文獻[10]和GC算法處理結(jié)果的NIQE值優(yōu)于本文算法處理結(jié)果。相較于本文算法,文獻[10]中的算法的處理結(jié)果在顏色復(fù)原方面表現(xiàn)較好,但出現(xiàn)了部分噪聲;GC算法的處理結(jié)果與原始水下圖像更接近,但圖像蘊含信息量較少。其他情況下本文算法處理結(jié)果的NIQE值均優(yōu)于其他算法,更接近人眼視覺系統(tǒng)。從表2中的數(shù)據(jù)可知,VCIP算法和SSR算法的平均運行時間較短,但處理結(jié)果都有待提高;本文算法耗時較之其他3種算法都具有一定的優(yōu)勢,計算復(fù)雜度也相對較小。
表1 圖像增強效果的評價指標(biāo)
表2 平均運行時間
圖像處理效果和評價指標(biāo)表明,本文算法較之其他算法有更好的性能,在提高水下圖像質(zhì)量、改善水下圖像光照不均勻及弱光照現(xiàn)象、增強水下圖像對比度、有效保留水下圖像細節(jié)等方面具有明顯優(yōu)勢。
針對水下圖像普遍存在的光照不均勻及光照較弱現(xiàn)象,本文基于Retinex顏色恒常性理論,提出一種在交替方向乘子法(ADMM)基礎(chǔ)上構(gòu)造增廣拉格朗日框架的優(yōu)化方法來求取精準(zhǔn)光照圖。該算法將亮度通道與顏色通道分離,只對光照圖進行處理,保證了處理過程中水下圖像的顏色不受影響,再對光照圖進行優(yōu)化和校正,進而去除光照對水下圖像的影響,最后采用雙邊濾波的方法抑制圖像中的噪聲。實驗結(jié)果表明,本文提出的方法有效地提高了水下光照不均勻圖像的質(zhì)量,相較于其他幾種算法,在去除光照對水下圖像的影響以及保留圖像細節(jié)方面有更好的性能。