孫昊宇,牛宏俠
(1.蘭州交通大學 光電技術與智能控制教育部重點實驗室,甘肅 蘭州 730070;2.甘肅省高原交通信息工程及控制重點實驗室,甘肅 蘭州 730070;3.蘭州交通大學 自動化與電氣工程學院,甘肅 蘭州 730070)
21世紀以來,人類對陸地的勘探已經大部分完成,未知的海洋成為了人們新的目標。隨著陸地資源的緊缺與能源危機的產生,海洋是接下來人類的重要資源來源。作為水下探測中的最基礎的圖像信息,能夠在受到較少干擾的情況下直觀地反映水下的狀況。在水下,由水中包含的雜質、附著在水中物體表面的沉積物以及水體中的漂浮物造成的不正常散射,以及水對陽光的反射與折射相互作用,多種因素的疊加造成了水下圖像較為復雜的成像以及嚴重低下的清晰度和完整度。盡管目前的圖像增強得到了很大的提高,但由于水下環境的特殊性和非線性使得一些算法對細節不能達到很好的增強效果,且由于環境的不確定性導致神經網絡的泛化性低且效果不明顯,主要表現為水中的圖像噪聲較大、圖片模糊不清、像素聚焦困難、顏色色調偏離嚴重、邊緣與整體細節的退化等問題。因此,對現有的水下圖像進行清晰化,具有很高的研究價值。
目前水下圖像處理算法主要分為以下3種:基于物理模型的增強算法、基于非物理模型的增強算法和基于數據驅動的增強方法。基于物理模型的增強方法一般通過建立水下成像的物理模型,再采用假設估計與直接測量的方法得到模型內水體性質參數,經過反演推斷獲得未退化的水下清晰圖像,在數據缺乏或受限的情況下,仍然能夠進行模型預測和控制,對于已知的物理系統,模型的參數可以根據實驗或理論進行準確估計。如Li等[1]擴展暗通道先驗(Dark Channel Prior,DCP)算法通過去霧算法恢復藍綠信道,并按照灰色世界理論進行紅通道校正,減少光吸收和散射的影響,對于淺水圖像的色偏去除效果較好。文獻[2]融合雙透射率成像模型與Retinex方法,使用多尺度融合的方法獲得清晰化水下圖像,環境適應性較強。文獻[3]提出一種水下圖像形成模型的無監督和未訓練的水下圖像復原方法,將水下圖像分解為場景輻射圖、直接傳輸圖、反向散射傳輸圖和全球背景光4個組成部分,以自監督的方式重建水下圖像,對于光照還原效果更真實。但此類方法目前通常需要較多的領域專業知識和數學能力,建立精確的物理模型也需要耗費大量的時間和資源,在實際應用中,無法完全精確地演化水下退化模型,需要進行模型簡化和適當的近似。
基于非物理模型的方法通過調整給定的圖像像素值來增強圖像,通常可以通過優化算法和機器學習技術來提高預測和控制的精度和魯棒性,可以應用于各種不同環境水下圖像的處理,不受物理特性的限制。文獻[4]利用LAB顏色空間并使用K均值聚類的雙直方圖增強算法增強拆分圖像基礎層的對比度,對于處理圖像集合,該算法非常高效。文獻[5]將水下圖像分解光照層進行亮度補償和反射層進行對比度提升,具有較高的靈活性,細節損失較小。文獻[6]通過多級小波變換拆分圖像的高低頻,組成了多級小波變換增強網絡并基于二階龍格庫塔模塊的細化子網絡,去除水下圖像噪聲,表現出較好的去噪能力。但此類方法缺少物理基礎,難以提供系統的深入分析;對于數據缺乏或受限的情況,預測和控制的精度會受到影響。
基于數據驅動的方法一般利用神經網絡來學習退化圖像到清晰圖像的映射,可以從海量數據中自動學習系統的特征和行為,不需要對系統進行先驗知識的建模;通過模型優化和深度學習等技術來提高預測和控制的精度。如Li等[7]創建了水下圖像數據集UIEB,并結合數據集提出了waternet網絡,針對不同光照和深淺的水下圖像都展現出了較好的泛化能力。文獻[8]針對針對水下深水環境利用卷積神經網絡提出了 DUIENet網絡,對水下圖像顏色的校正與背景特征的保留和光照都有很好的主觀效果。文獻[9]提出了使用殘余密集學習的FloodNet,從退化的水下圖像中提取特征的低級特征提取,通過跳躍連接密集連接的殘差密集塊進行分層特征融合,自適應利用局部和全局殘差學習獲得恢復的水下圖像,對細節保留效果較為優秀。但數據驅動的方法目前仍需大量的圖像數據來進行訓練,這對于一些特殊場景的圖像增強可能會比較困難,且需要大量的計算和模型訓練,十分耗費計算資源和時間。
圖像增強算法可以提高圖像處理和分析的準確性和效率,有助于更好地識別和提取圖像特征,從而更好地實現各種應用,且方法更便捷。基于此,本文提出了基于色彩均衡和多權重融合的水下圖像增強算法,針對水下圖像的低清晰度、低信息度和高色偏分別處理,相比于其他算法,本文算法在保證圖像無色偏的基礎上,還具有更好的飽和度提升效果和更好的明暗對比細節能力,且針對不同程度的水下渾濁圖像都有很好的增強效果,適用環境較廣。經過主客觀實驗對比后,驗證了本文算法對水下圖像整體清晰度恢復效果,為后續水下圖像目標識別等領域提供更優的處理圖像。
本文提出的基于色彩均衡和多權重融合的水下圖像增強算法主要分為3個部分處理:第一部分是針對水下圖像模糊影響,利用DCP算法進行去模糊處理;第二部分是偏色校正處理,本文采取基于動態閾值法的白平衡算法解決偏色影響,并利用灰度世界算法進行校正后處理,以均衡處理后存在的過度曝光問題;第三部分對于圖像邊緣和圖像細節增強采取多權重融合的方式處理,主要是分為2個圖譜,利用伽馬校正和基于直方圖均衡化的邊緣增強算法分別處理,然后單獨計算顯著性權重和飽和度權重,最后線性加權融合后得到輸出圖像。
本文算法流程如圖1所示。

圖1 本文算法流程Fig.1 Flowchart of the proposed algorithm
由于水下圖像在光照下部分光波會衰減消失,導致獲取到的圖像會產生模糊效果[10],再加上存在水域渾濁影響,會產生類似霧氣干擾的問題,DCP算法是經典去霧算法,在保證時間效率的同時,能有效去除霧氣效果,進而提升圖像清晰度。因此本文利用DCP算法進行預處理,消除水下圖像模糊問題,有利于后續的增強算法進一步處理。該算法的具體實現如下。
水下模糊圖像的表達式為:
I(x)=J(x)t(x)+A(1-t(x)),
(1)
式中:I(x)為初始水下圖像,t(x)為透射率,J(x)為需要逆推得到的清晰圖像,A為水中的背景光值。
設定水下圖像對應的暗通道圖像Jdark為:
Jdark=miny∈Ω(x)(minC∈{R,G,B}JC(y)),
(2)
式中:JC(y)表示暗通道圖像在C通道下的像素值,Ω(x)表示像素值為x的鄰域窗口。
在暗通道圖像基礎上進行去模糊處理,首先獲取到Jdark前0.1%最亮的灰度值,在初始水下圖像中進行對比,將大于這些像素點的灰度值設為水下的背景光值A,為了保留較好的水下圖像景深保留效果,設定修正參數ω,求得的透射率為:
(3)
據此逆向反推可求得清晰的去霧圖像J(x)。獲取到的圖像結果為:
(4)
式中:為了防止透射率為零導致表達式無法正常執行,t0一般設為0.1。
通過DCP處理后的結果如圖2所示。

圖2 暗通道算法處理結果Fig.2 Processing results of dark channel algorithm
從圖2可看出經DCP算法處理后,圖像清晰度明顯提升,具有較好的去模糊效果,但是處理后的圖像整體偏暗,色彩豐富度較差,而且無法有效解決圖像偏色問題,仍需設計算法進一步處理。
1.2.1 基于動態閾值白平衡色彩校正
由于水下光波紅色波長最先衰減消失,綠波和藍波波長較短,受衰減較少,因此水下圖像會呈現偏綠或偏藍色調[11]。文獻[12]對水下圖像先進行全局光照補償,再采用灰度世界算法校正水下圖像顏色,該算法對于偏色不嚴重的圖像具有一定的色彩校正效果,但是對于光波衰減嚴重的水域圖像,并不能完全去除偏色影響。文獻[13]利用白平衡算法對水下圖像的藍(綠)色偏進行預處理,再進行灰度世界算法補償,但是由于傳統白平衡算法的限制,無法有效均衡調節色差,偏色校正效果仍有待提升。
經DCP算法預處理后圖像整體偏暗,本文在偏色校正基礎上進行動態范圍調節圖像整體灰度值,來提升圖像整體的細節表現能力。本文在傳統白平衡算法的基礎上引入動態閾值調整,該算法步驟主要分為兩部分,分別是白色參考點檢測和白色參考點校正,具體算法步驟為:
① 顏色空間轉換。由于在YCrCb顏色空間能方便提取Cr和Cb色度信號,更有利于色彩分量調節,所以需要將RGB空間的水下圖像轉到YCrCb空間進行處理,轉換過程如下:
(5)
② 計算Cr和Cb各分量均值,并據此計算出其均方差。設各分量均值分別為Mb、Mr,對應均方差分別為Db、Dr,求解過程為:
(6)
③ 檢測白色參考點,每個分量以1.5倍的均方差為參考值,當符合該范圍內的值確定為參考點,并取篩選后的前10%灰度值最大的像素點為需要處理的校正值。處理規則如下:

(7)
④ 計算上述步驟所獲取的各通道白色參考值的均值,并利用Y分量的最大值確定各通道所需的增益常量。
Cgain=Ymax/Cm,
(8)
式中:C?{R,G,B},Ymax表示Y分量的最大值,最終可求得各通道的增益值Cgain。
⑤ 利用上述求得的各通道增益確定校正后的灰度值。
C′=C×Cgain,
(9)
式中:C?{R,G,B},C′為最終調整后的各通道像素值。
通過該算法處理后的結果如圖3所示。

圖3 動態閾值白平衡算法調整結果Fig.3 Adjustment results of dynamic threshold white balance algorithm
圖3結果表明,經動態閾值白平衡算法處理后圖像整體偏色問題已基本解決,但是由于在動態閾值確定選取的灰度值為前10%最亮像素值,導致處理結果存在過度曝光,整體亮度并不符合預期校正后的視覺效果。所以在該算法處理的基礎上,仍需進行整體亮度重新分布調整。
1.2.2 灰度世界算法色彩均衡
對于上述算法存在的問題,引入灰度世界理論解決亮度不均勻的問題。該算法的主要思想是假設圖像中所有顏色的亮度值都相等,即假設整幅圖像處于“灰度世界”中,因此可以通過調整每個像素的RGB值,來使圖像整體的色彩達到均衡。由于灰度世界理論認為在正常情況下獲取的彩色圖像,RGB三通道灰度值分布趨于某一確定值,通常取三通道像素均值,然后可根據該確定值求取增益常量,進而調整各通道灰度值[14]。具體實現如下:
(10)


圖4 灰度世界算法處理后圖像Fig.4 Image processed by gray world algorithm

(a)初始校正圖像直方圖
本次實驗選取水下圖像數據集 (Underwater Image Enhancement Benchmark Dataset,UIEB)的部分不同的場景進行實驗驗證,由于篇幅限制,選取的部分圖像。圖5的直方圖表明經整體均衡算法處理后,水下圖像偏色問題得到了很好的處理,三通道分布更均勻,本文所提出的色彩均衡算法對于不同色偏程度的水下圖像均具有較好的處理效果,表現出優良的魯棒性。
水下圖像經偏色校正算法處理后已具有較好的視覺效果,但是對于圖像整體對比度和飽和度的提升效果仍有待提高。因此,本文提出了一種多權重融合算法,以提高水下圖像的整體細節表現能力。該算法分為兩部分,旨在進一步提高水下圖像的整體對比度和飽和度,并增強圖像的邊緣細節。在校正圖像的基礎上分為兩部分進行算法處理:第一部分經過伽馬校正,獲取處理后的顯著性權重和飽和度權重;第二部分是將校正圖像提取邊緣后再獲取顯著性權重和飽和度權重,然后將兩部分權重圖譜進行合并,與伽馬校正處理后的圖像融合得到最終的輸出圖像。具體過程如圖6所示。

圖6 多權重融合算法流程Fig.6 Flowchart of multi-weight fusion algorithm
1.3.1 邊緣增強算法
為了更好地體現圖像細節表現能力,本文在伽馬校正提升圖像整體對比度的同時,將邊緣保留特征也考慮在內,圖像邊緣可以更好地體現物體的形狀信息,去除其他非關鍵信息的干擾。本文所采用的邊緣增強算法流程為:
① 先利用高斯濾波平滑輸入圖像,去除部分噪聲的影響。
② 將輸入圖像與高斯濾波后的圖像做差分運算,得到圖像邊緣特征圖譜,再進行直方圖均衡化操作。
③ 根據上述步驟均衡化后的差分圖像得到銳化結果,如圖7所示。具體實現為:

圖7 差分運算結果圖像Fig.7 Image of differential operation result
Isharp=(Ih+Iin)/2,
(11)
式中:Ih表示均衡化后的差分圖像,Iin表示初始顏色校正后的輸入圖像,Isharp表示輸出的邊緣增強圖像。
④ 由于銳化后的差分圖像受直方圖均衡影響,整體會存在模糊效應,再將其進行DCP去模糊處理,可得到增強后的邊緣圖像Jsharp:
(12)
邊緣增強算法實現結果如圖8所示。

圖8 邊緣增強算法實現結果Fig.8 Results achieved by edge enhancement algorithm
從圖8邊緣檢測結果對比可以看出,經過本文邊緣增強算法銳化處理后,圖像的細節表現更為突出,相比校正后的輸入圖像,邊緣特征有明顯提升。
1.3.2 顯著性權重
為了更好地突出水下圖像顯著性對象的特征,本文將輸入圖像轉至LAB顏色空間,進而提取其分量圖譜,具體實現如下:
(13)

1.3.3 飽和度權重
飽和度分量能反映圖像的色度信息,突出圖像前景的物體細節信息,避免圖像畫面的蒼白感[15]。由于原始的水下圖像受到偏色影響飽和度明顯不足,同時經校正算法處理后,飽和度分量也會有相應損失,所以在考慮提升圖像對比度的同時,也需要相應提升飽和度分量,以更好地恢復圖像質量和色彩豐富度。
傳統提升圖像飽和度的方式一般為在飽和度均值的基礎上進行飽和度增益調節,但是增益常量的求取具有很大的不確定性,不利于算法的自適應調節,也有不少算法轉換顏色空間,單獨對飽和度分量進行調整,但是由于上下限的調節范圍有限,不能較好地改善整體飽和度,本文采用的調整算法是轉換到HSL顏色空間進行處理,并利用S和L雙分量進行限制飽和度動態范圍,從而能更大范圍地提升圖像飽和度。具體算法步驟為:
① 將RGB顏色空間轉到HSL顏色空間,由于色調分量H對飽和度分量調整并不干擾,僅轉換其余兩通道分量即可。轉換過程如下:
(14)
② 確定飽和度增益常量,該取值歸一化后為[-1,1]。確定該增益值后,和原始飽和度分量運算后可能已超過最大限定范圍,因此做出條件限定如下:
(15)
式中:?表示計算得到的調整參數,s表示初始飽和度分量,ins表示飽和度增益值,為了防止過飽和現象的出現,本文采用了增益中值0.5進行調節,以平衡飽和度參數的影響。
③ 通過上述參數對初始RGB圖像進行飽和度調整,調整過程為:
(16)
式中:Ws2表示輸出的飽和度權重圖,IC表示RGB空間各通道的原始灰度值,即將三通道分別進行調整后合并得到最終的權重圖譜。
1.3.4 加權融合

(17)
(18)
式中:δ表示正則化系數,當各權重為0時也能起到部分貢獻。為了更好地平衡正則化系數對歸一化權重圖譜的影響,本文將正則化系數的默認值從0.1調整為0.2,以減少其對最終權重圖譜的影響。
因伽馬校正獲取的圖像已具有較高對比度,所以本文選取伽馬校正后的圖像,與上述計算得到的權重圖譜進行融合,得到最終的輸出圖像,最終加權融合的實現過程如下:
(19)
為了驗證本文算法的有效性和可行性,通過在典型數據集上進行大量實驗測試,從主觀視覺效果和客觀參數進行評價,與主流不同算法進行對比分析,說明了本文算法在色彩校正和圖像對比度提升方面具有較好的性能。本文實驗使用Matlab編程語言,硬件環境為Intel(R)Core(TM)i7-6700H CPU,16.0 GB RAM。
本文在公開數據集UIEB中進行了大量實驗驗證,然后選取其中9張圖像進行主客觀分析,并按不同色偏程度進行分類對比。圖9中前3組數據為色調偏藍的水下圖像,中間3組為色調偏綠的水下圖像,最后3組為整體泛白的水下圖像。通過實驗觀察本文算法對于不同程度色偏的圖像的處理效果,并與目前主流的一些較為先進的處理算法進行對比,分別是 Underwater Light Attenuation Prior(ULAP)算法[16]、Ancuti算法[11]、 Statistical Model of Background Light and Optimization of Transmission Map(BL-TM)算法[17]及 Differential Attenuation Compensation(DAC)算法[18]。

圖9 不同算法增強處理實驗對比Fig.9 Comparison of enhanced processing experiments with different algorithms
不同算法增強處理后的實驗效果如圖9所示。
從對比實驗可以看出,ULAP算法和BL-TM算法對色調偏藍和泛白的水下圖像,清晰度提升效果較好,但是色偏校正的結果展現并不理想,尤其對于色調偏綠且降質嚴重的圖像,如圖像(4)、(5),色偏問題并未解決,處理后仍呈現不同程度的綠色色調。BL-TM算法對于亮度提升效果較好,處理泛白圖像和降質不嚴重的圖像(1)、(6)后整體灰度值均有所提升,但是會導致圖像色彩體現不足,對于飽和度分量仍有待提高。相對而言,Ancuti算法 和DAC算法對于圖像色偏校正效果較好,即使是偏色嚴重的圖像,如偏藍色調的圖像(3)和偏綠色調的圖像(4)、(5),處理后偏色影響已基本消除,但是DAC算法對于水下圖像沒有進行去模糊處理,雖經過對比度拉伸和降噪處理在一定程度上提升了圖像細節的表現力,但是并沒有完全解決由水下光線前向散射導致的圖像顏色衰減;Ancuti算法在清晰度恢復方面具有優良的性能,但是在權重融合時采用銳化圖像后的分量權重導致圖像過度表現細節,出現了紫色邊緣和噪聲污染。綜合對比來看,雖然其他方法能夠增強圖像亮度,但部分區域存在著增強不足或過度增強的現象,導致物體顏色無法被有效識別。和其他圖像增強方法相比較,本文算法保留了目標物更多的細節,比如在低光照場景中可以看到明顯的改進效果,證明本文算法在色偏校正方面具有不錯的表現力,在不同程度的偏色環境下均能恢復色彩均衡的水下圖像,而且在飽和度和色彩豐富度方面也具有一定的提升效果。
本文選用4個客觀評價指標對上述算法處理圖像進行質量評估,分別是圖像平均梯度、信息熵、水下圖像色彩評價指標(Underwater Color Image Quality Evaluation, UCIQE)和水下圖像的質量評價指標(Underwater Image Quality Measurement, UIQM)。其中,平均梯度反映了圖像灰度層次,該值越大,表示圖像越清晰;信息熵象征著圖像細節的豐富度,信息熵越大,圖像細節展現得越多。上述2個值是傳統評價圖像質量優劣的指標,此外,本文還利用2個無參考評價指標UCIQE和UIQM進行了對比。UCIQE是綜合考量圖像飽和度、色度和銳化對比度參數之間的平衡,值越大,表明圖像整體恢復的質量更好;UIQM是將色彩指標、清晰度指標和對比度指標作為整體評價依據,該值也能很好評估圖像綜合質量的恢復效果,結果值越大越符合人類視覺效果。對3組不同色調偏色(偏藍、偏綠、泛白)的圖像進行參數評估,結果如表1~表3所示。

表1 基于不同算法處理第一組(偏藍)圖像評價指標對比

表2 基于不同算法處理第二組(偏綠)圖像評價指標對比

表3 基于不同算法處理第三組(泛白)圖像評價指標對比
由表1~表3可以看出,Ancuti算法和BL-TM算法在平均梯度評估參數上表現優異,如圖像(6)、(8),說明其針對不同偏色場景的圖像對比度都具有較好的提升作用,但是結合主觀效果來看,由于Ancuti算法銳化過度,會加重圖像噪聲和邊緣偽影,而BL-TM算法在偏色校正方面處理效果欠佳,圖像光暈十分嚴重,如圖像(4)、(6),無法完全體現圖像對比度的展現效果;對于信息熵評估參數,本文算法在第一組偏藍圖像和第三組泛白圖像中的表現均優于其他對比算法,在第二組偏綠圖像中,參數表現稍遜一些,但是對比其他算法仍取得了次優的數值體現。就評估參數UCIQE和UIQM而言,本文算法基本都獲得了最優值,說明綜合考量飽和度、清晰度和色度方面的表現,本文算法具有更好的質量恢復效果。綜上所述,本文所提算法對于不同偏色程度的水下圖像均具有較好的調整效果,而且增強后的圖像也更符合人類視覺系統的接受習慣。
各算法處理后UCIQE和UIQM平均值統計如圖10和圖11所示。根據圖中上述不同算法的UCIQE和UIQM的平均指標值可知,經過本文算法處理后,UCIQE的平均指標值比其他算法提升了22.3%,UIQM的平均指標值提升了10.2%。這表明本文算法的參數表現更加優異,適用于不同場景的水下圖像增強,并具有良好的圖像質量恢復效果。

圖11 各算法處理UIQM指標平均值統計Fig.11 The average statistics of UIQM indicators processed by different algorithms
本文針對水下圖像存在的色彩偏移和對比度不足等問題,提出一種基于色彩平衡和多權重融合的水下圖像增強算法。整體步驟主要包括圖像去模糊處理、色偏校正及多權重融合提升色彩豐富度。實驗驗證結果表明本文算法對水下圖像清晰度恢復和對比度提升具有較好的效果,而且相比其他主流算法,本文算法在保證圖像無色偏的基礎上,還具有更好的飽和度提升效果和細節表現能力。主客觀實驗對比后,驗證了本文算法對水下圖像整體清晰度恢復效果,對于對比度、信息量和圖像色彩均有很大提升。但是本文算法在處理降質嚴重的偏綠色調水下圖像時,會產生藍色偽影現象,未來仍需對此進一步研究。