馬銘志,黃麗姝
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)
由于光在水下環(huán)境傳播過(guò)程中,會(huì)受到水介質(zhì)的吸收和水中顆粒物的散射,進(jìn)而導(dǎo)致水下圖像退化,出現(xiàn)對(duì)比度下降、細(xì)節(jié)信息缺失、顏色失真等現(xiàn)象。如今,水下圖像處理技術(shù)已經(jīng)應(yīng)用到海洋研究的諸多領(lǐng)域,因此水下圖像復(fù)原具有重要的現(xiàn)實(shí)意義。
基于水下成像的模型,水下圖像處理方法主要?jiǎng)澐譃閮深?lèi):一類(lèi)為圖像增強(qiáng)方法,利用一定的技術(shù)手段,來(lái)提高對(duì)比度低的圖像清晰度,增加圖像細(xì)節(jié)信息,另一類(lèi)為圖像復(fù)原方法,對(duì)圖像退化模型進(jìn)行分析,通過(guò)逆求解成像模型對(duì)圖像進(jìn)行復(fù)原。He 等對(duì)大量室外無(wú)霧圖像進(jìn)行統(tǒng)計(jì)總結(jié)出暗通道先驗(yàn)理論,并提出相應(yīng)的單幅圖像去霧算法,對(duì)該算法進(jìn)行改進(jìn)并應(yīng)用到水下圖像復(fù)原中,也取得了很好的效果。
由于水下圖像的特殊性,不同波長(zhǎng)的光在水下的傳輸過(guò)程中衰減比例不同,He 算法所達(dá)到的效果并不理想,出現(xiàn)了嚴(yán)重的顏色失真、圖像邊緣處“光暈效應(yīng)”等現(xiàn)象??偨Y(jié)以上方法,本文提出了一些改進(jìn)措施:通過(guò)采用四叉樹(shù)的分層搜索方法估計(jì)大氣光值;提出基于小波分解的多尺度融合方法計(jì)算暗通道圖,減少邊緣外溢現(xiàn)象;采用梯度域?qū)驗(yàn)V波算法細(xì)化透射率圖,降低算法復(fù)雜度;復(fù)原圖像時(shí),采用三顏色通道分別復(fù)原策略,補(bǔ)償不同波長(zhǎng)光在水中衰減損失。實(shí)驗(yàn)結(jié)果表明,本文方法具有很好的效果和執(zhí)行效率。
假參考霧天圖像形成模型,由于水下圖像與大氣圖像不同,光在水下傳播時(shí),不同波長(zhǎng)的光在水中的衰減程度不同,所以R、G、B 三通道中的透射率是有區(qū)別的,應(yīng)分別處理。即水下成像模型可表示為:
式中λ 為R、G、B 某一通道,Iλ(x )為某一通道的水下圖像,Jλ(x )為某一通道無(wú)污染圖像,Bλ,∞為背景光,tλ(x )為某一通道透射率。
He 等對(duì)大量的室外無(wú)霧圖像進(jìn)行統(tǒng)計(jì),發(fā)現(xiàn)除天空區(qū)域外,其他部分的每個(gè)局部小區(qū)域中,R、G、B 通道至少有一個(gè)顏色通道的像素值很低或接近于零。求取暗通道的數(shù)學(xué)表達(dá)式為:
式中Jc為彩色圖像的每個(gè)通道,Jdark為彩色圖像的暗通道圖,Ω(x )為以像素為中心的小窗口,c 為三個(gè)顏色通道其中之一。根據(jù)暗原色先驗(yàn)理論可以得到Jdark(x)→0,在水下環(huán)境中,紅光的波長(zhǎng)最大,在水中的衰減程度最大,所以R 通道的透射率最小。根據(jù)水下成像模型,可以得到R 通道的粗透射率公式為:
式中tr(x )為R 通道粗透射率,Bλ,∞為背景光。
He 算法中,大氣光值是通過(guò)暗通道圖從有霧圖像中獲得的。在暗通道圖中將像素點(diǎn)按照亮度值進(jìn)行從大到小的排列,提取前0.1%像素點(diǎn),找到原始圖像中的對(duì)應(yīng)位置,在相應(yīng)位置上尋找亮度最大的像素值,將該值作為背景光。該方法在估計(jì)背景光時(shí),先要估計(jì)暗通道圖,并從中根據(jù)亮度值找到背景光,與直接采用圖像相比,提高了一定的魯棒性。但在估計(jì)過(guò)程中,會(huì)受到局部塊尺寸的影響,如果圖像中有強(qiáng)光源或白色噪聲點(diǎn),且其面積大于局部塊尺寸時(shí),易將其錯(cuò)誤的估計(jì)為背景光值,導(dǎo)致背景光值偏高。
由于光在水中傳播時(shí)不同波長(zhǎng)衰減比例不同,紅光與藍(lán)光或綠光的差值會(huì)越來(lái)越大,從而本文提出了一種基于四叉樹(shù)剖分和最大色差的自適應(yīng)背景光估計(jì)方法,步驟如下:
(1)對(duì)水下圖像進(jìn)行四等分,分別計(jì)算每個(gè)子塊的分值,計(jì)算公式為:
式中c 為四等分后四子塊中任意一塊,uc為子塊c的像素平均值,uc為子塊c 的方差。分值越大,說(shuō)明存在環(huán)境光的機(jī)率越高。
(2)對(duì)分值最高的子塊進(jìn)一步劃分,重復(fù)(1)步驟,直到面積小于設(shè)定的閾值,表達(dá)式為:
式中Sc為劃分的子塊面積,Ts為提前設(shè)定的閾值,width 和height 分別為輸入圖像的寬和高。
(3)計(jì)算候選區(qū)域暗通道圖并將像素點(diǎn)按照亮度值進(jìn)行排序,提取前10%像素點(diǎn)并在原始圖像中找到對(duì)應(yīng)位置。
(4)在選取的像素點(diǎn)中,計(jì)算并選取具有最大R-G差值或R-B 差值的像素點(diǎn)值作為估計(jì)的背景光值。
不同尺寸的局部塊所得到的暗通道圖,對(duì)圖像的復(fù)原效果是不同的,小尺寸局部塊可較好的保留圖像的邊緣細(xì)節(jié)信息,大尺寸的則可平滑掉景物本身的紋理等細(xì)節(jié)信息。結(jié)合以上問(wèn)題,本文提出了一種多尺度融合的方法來(lái)計(jì)算暗通道圖,具體操作如下:
(1)計(jì)算圖像的最小顏色分量:
(4)二值圖像Ibin中,白色區(qū)域?qū)?yīng)的像素位置采用3×3 的尺寸,而其他區(qū)域采用ω×ω 進(jìn)行處理便可得到暗通道圖
其中,α 為參數(shù),通常設(shè)置為0.95,B 為所求得的背景光的值。
經(jīng)研究表明,光在水中的吸收系數(shù)與波長(zhǎng)有關(guān),但變化規(guī)律并不明顯,很難直接用關(guān)系式進(jìn)行表示。由于在一類(lèi)和二類(lèi)海水中,水的散射系數(shù)受波長(zhǎng)影響較小,與波長(zhǎng)近似成線(xiàn)性關(guān)系,所以通過(guò)在不同水域中采集9 組不同波長(zhǎng)及對(duì)應(yīng)的散射系數(shù)數(shù)據(jù)做最小二乘回歸分析可得到相應(yīng)關(guān)系式。本文選取文獻(xiàn)中的一個(gè)線(xiàn)性表達(dá)式來(lái)描述水下環(huán)境中光的散射系數(shù)與波長(zhǎng)的關(guān)系:
式中選定555nm 為參考波長(zhǎng),選定R、G、B 三顏色通道所對(duì)應(yīng)的標(biāo)準(zhǔn)波長(zhǎng)為640nm、540nm、450nm。進(jìn)而得到不同顏色通道之間光的衰減系數(shù)比為:
式中tr(x)、tg(x)、tb(x )分別為R、G、B 三通道的透射率圖。
估計(jì)出三通道透射率圖后,結(jié)合背景光值,通過(guò)水下成像模型復(fù)原降質(zhì)圖像,計(jì)算公式為:
式中Jλ(x )為復(fù)原后的λ 通道圖像,Iλ(x )為彩色水下圖像在λ 通道的圖像。
為驗(yàn)證本文改進(jìn)算法的可行性和有效性,利用多幅水下含質(zhì)圖像進(jìn)行測(cè)試,并與Fattal、Tarel、Fu 和導(dǎo)向?yàn)V波細(xì)化透射率圖的He 算法進(jìn)行對(duì)比,分別從主觀(guān)視覺(jué)效果、客觀(guān)指標(biāo)和算法的運(yùn)行效率來(lái)分析算法的優(yōu)劣。所有算法均采用MATLAB R2011a 實(shí)現(xiàn),運(yùn)行環(huán)境為Windows 7,計(jì)算機(jī)配置為Intel Core i5 3.2GHz 和4GB RAM。
為進(jìn)一步驗(yàn)證算法的有效性,新增可見(jiàn)邊e 以及信息熵entropy 作為輔助評(píng)價(jià)指標(biāo)。e 值越大,表明復(fù)原圖像清晰度越高,細(xì)節(jié)信息越豐富;entropy 值越大,說(shuō)明圖像中包含更多的信息。但在復(fù)原過(guò)程中出現(xiàn)過(guò)處理現(xiàn)象時(shí),可能會(huì)出現(xiàn)視覺(jué)效果較差,但e 值較高的情況,此時(shí)不作為判別條件。不同算法對(duì)應(yīng)結(jié)果圖的評(píng)價(jià)指標(biāo)如表1 所示。從表中可知,(a)、(b)、(e)實(shí)例的處理結(jié)果,在本文改進(jìn)算法中e 和entropy 兩項(xiàng)指標(biāo)上數(shù)值都是最高,與主觀(guān)視覺(jué)效果一致,圖像的清晰度和細(xì)節(jié)信息都要優(yōu)于其他算法。(c)、(d)實(shí)例的處理中,F(xiàn)attal 算法e 值最高,但視覺(jué)效果較差,此時(shí)不能作為評(píng)判指標(biāo),但本文算法與He 算法相比,兩項(xiàng)指標(biāo)都有顯著提升,恢復(fù)效果更好。此外,我們還測(cè)試了不同算法的處理時(shí)間如表2 所示。可以看出,基于導(dǎo)向?yàn)V波細(xì)化透射率圖的He 算法處理速度更快,這是由于本文算法在求取暗通道圖的步驟中采用基于多尺度融合的方法,圖像會(huì)經(jīng)歷小波分解和重構(gòu)的過(guò)程,會(huì)造成一定的耗時(shí),但是比較顯著地提升了圖像的整體視覺(jué)效果,并且執(zhí)行效率處于理想范圍。
表1
通過(guò)標(biāo)準(zhǔn)的24 色卡來(lái)驗(yàn)證復(fù)原后的顏色標(biāo)準(zhǔn)度,如圖1 所示(從左到右依次為標(biāo)準(zhǔn)24 色板、輸入圖像、Fattal、Tarel、Fu、He 以及本文改進(jìn)算法)。越接近標(biāo)準(zhǔn)顏色卡說(shuō)明復(fù)原圖像的顏色準(zhǔn)確性越好。從圖中可以看出,本文算法較其他四種,左下角白色塊沒(méi)有像其他算法一樣被處理成灰色,復(fù)原圖像中的24 色卡更接近標(biāo)準(zhǔn)。
圖1
本文以單幅水下圖像復(fù)原技術(shù)為重點(diǎn)展開(kāi)研究,在現(xiàn)有算法的基礎(chǔ)上提出了若干改進(jìn)。首先提出了基于四叉樹(shù)剖分和最大色差的方法估計(jì)背景光值,提高了算法的魯棒性;然后針對(duì)求取暗通道圖的邊緣外溢現(xiàn)象,采用一種基于多尺度融合的方法,分別對(duì)兩種不同尺寸局部塊計(jì)算暗通道圖,進(jìn)行小波分解得到高頻和低頻分量,并按照特定的規(guī)則進(jìn)行融合,有效抑制了顏色失真和邊緣的“光暈效應(yīng)”;最后,在細(xì)化透射率圖時(shí),利用梯度域?qū)驗(yàn)V波代替軟扣圖和導(dǎo)向?yàn)V波,執(zhí)行效率更高,保持邊緣性更好,并且在復(fù)原圖像時(shí),根據(jù)R、G、B 通道分別進(jìn)行,有效恢復(fù)了退化圖像的顏色信息。實(shí)驗(yàn)結(jié)果表明,本文算法不僅具有很好的水下圖像復(fù)原效果,且執(zhí)行效率也達(dá)到了理想狀態(tài)。