楊羽翼,陳 亮,張 劍,郭慧慧
(湖南科技大學信息與電氣工程學院,湖南 湘潭 411201)
視覺檢測是水下探測機器人環(huán)境感知與目標定位識別的重要手段。不同于工業(yè)視覺,在深海領域由于海水介質對光波信號不同程度的吸收與折射、反射、散射等,水下視覺檢測的圖像普遍存在模糊、顏色失真、對比度低等問題[1],因而難以為水下探測機器人提供高精度目標辨識、空間位置定位等服務[2]。
傳統(tǒng)水下圖像增強主要針對水下環(huán)境的光信號傳輸進行數學建模,通過信息的補償與校正完成圖像的恢復[3-4]。如文獻[5]通過學習水下圖像和大氣圖像之間的跨域映射函數,實現基于弱監(jiān)督顏色轉移的水下圖像顏色校正。文獻[6]通過對水下透射率的估計,實現G-B顏色通道校正,能夠更準確地估計水下透射率圖。文獻[7]利用灰度世界假設理論糾正紅通道[7],實現對圖像中亮度不均、顏色偏差等問題自適應補償。上述方法在特定的應用背景條件下,采用先驗信息進行建模,對水下圖像進行了增強,有效提升了圖像的對比度,但在深海領域,海水的溫度、鹽度、濕度等均存在一定的不確定性[8],固定結構的校正與補償模型難以滿足機器人多領域自主探測的需求。
近年來,隨著深度學習在機器視覺領域快速發(fā)展,基于卷積神經網絡的水下圖像增強算法在圖像的自適應能力方向取得了顯著效果。文獻[9]采用兩階段網絡對圖像進行恢復,較好地實現了水下圖像色差校正。此外,通過生成對抗網絡實現對水下干擾的非線性估計,也能有效解決水下圖像的退化與模糊問題。如FUnIE-GAN[10]利用先驗失真圖像和增強圖像之間的非線性映射,提高圖像清晰度,但該方法容易對環(huán)境光建模不準從而擴大背景噪聲的干擾。上述二階段深度學習模型或生成對抗網絡系列算法均具有模型結構復雜,訓練與應用部署困難、實時性差等問題[11-12],難以有效應用于小型化的水下探測機器人。
針對上述問題,本文以網絡結構輕量化為目標,構建基于通道特征融合的水下圖像增強網絡,并通過從通道引導與結構相似度兩方面設計了模型損失函數,實現對水下存在色偏、模糊等問題的圖像自適應增強。
圖像增強是改善圖像質量、增強圖像特征的重要手段。深度學習圖像增強網絡通過對圖像中被抑制信息的恢復以及失真信號的校準,實現基于圖像的水下目標探測與識別性能提升。
深度學習圖像增強網絡是以圖像特征選擇與提取為基礎,其通過不同信息流的相互傳遞與交互,實現對不同層級特征的有效提取[13]。網絡結構組成方式以及網絡的深度、寬度等特性不僅決定了網絡訓練的難易程度,還在一定程度上影響最終輸出的效果。目前常用的網絡框架是將不同網絡分支提取的特征信息進行信息融合,然后利用編解碼結構實現網絡的非線性映射。
典型深度學習圖像增強網絡結構如圖1所示,其采用卷積神經結構構建了水下圖像增強超分辨率模型,通過雙路徑結構融合不同感知層特征信息,并將結果輸入給其后的基于注意力的多任務分支結構,實現水下圖像多尺度特征提取。
圖1 基于CNN的圖像增強超分辨率網絡結構Fig.1 CNN-based super-resolution network architecture for image enhancement
上述網絡中,在雙路徑結構通過不同濾波器提取多尺度特征信息,然后利用密集殘差結構提升網絡性能。在各支路中,輸入圖像經過2層卷積層后調整通道維度及尺度大小,然后在密集殘差結構中積累深度信息,并與上一層特征圖進行通道疊加,以此保持梯度界限。該密集殘差結構在各模塊間需重復8次。雖然該網絡圖像特征恢復上具有較為明顯的提升,但網絡中的密集連接模塊缺乏對重要通道的關注度,因而特征提取效率低。此外,上述網絡分支結構多、結構復雜、參數量多、訓練與應用部署時計算量大,且結構設計繁雜容易造成寬度上的信息冗余與沖突,降低特征提取精準性,最終使得基于嵌入式芯片的算法應用部署困難。
水下圖像增強網絡其本質是實現低質量水下圖像源域到高質量圖像目標域之間的像素與像素之間映射關系的重構。深度學習特征提取網絡優(yōu)化的重點是加強退化后圖像隱含特征提取能力??紤]水下圖像的細節(jié)特征信息以及水下圖像由于光線扭曲、顏色退化所引起的通道信息,本文構建了基于通道特征融合的水下圖像增強框架,在提高模型泛化能力的同時降低模型結構的計算量與存儲量,為水下小型探測機器人應用部署提供理論支撐。
網絡的總體結構如圖2所示。系統(tǒng)主要由3個卷積塊階段構成,所有結構采用全卷積模塊進行設計。模型從輸入到輸出的特征圖尺寸不發(fā)生改變,并且在每個卷積階段的尾部增加特征交叉模塊,通過每個階段與前一個階段的特征圖進行信息交叉,實現不同層級特征信息融合。此外,模型引入高效的通道注意力機制提升通道感知能力,通過2層倒殘差結構堆疊實現網絡深度信息的積累。最后在輸出層引出通道評分預測模型,通過卷積層提取顏色通道的評分特征信息,優(yōu)化圖像通道的目標函數。
圖2 結構框架圖Fig.2 Structural frame
在上述網絡結構中,原始圖像通過卷積層升維獲得其64通道的特征映射,然后再將特征映射分為上下兩個部分。上部分通過后續(xù)卷積模塊與信息交叉模塊獲得更深層次的特征,下部分則將淺層特征與原始圖像通過堆疊操作完成特征交叉,通過對前期學習的特征施加更大權重,防止網絡梯度消失。最后將網絡輸出與原始圖像進行殘差融合,得到增強圖像輸出。
融合層可表示為
pout=pi+V(o(pi),θ(pi)),
(1)
式(1)中,pout是增強后的圖像,pi為輸入的每個位置的像素與殘差項融合獲得的輸出信息,V(o(pi),θ(pi))為進行學習后的原圖殘差項,增加該模塊,使得增強后的圖片原始細節(jié)不會出現丟失。
由于水下圖像與大氣圖像在顏色通道上存在較大差異。在水下圖像中,紅色光波長越長,其衰減越快,因而容易導致圖像色偏呈現藍綠色。針對上述情況,本文在輸出的顏色通道上引入顏色評分,構建了基于高斯建模的顏色評分引導的優(yōu)化模型,如圖3所示。
圖3 不同顏色通道輸出的高斯參數化Fig.3 Gaussian parameterization of outputs from different color channels
在上述高斯模型中,定義恢復圖像的每個像素為模型的均值mean(μp),高質量圖像的像素作為高斯模型的變量x,最后通過模型實現高斯模型的方差variance(σc)的回歸實現對通道的評分估計,即將網絡后兩階段的特征圖作為輸入,經過密集連接的倒殘卷積模塊獲得像素評分特征圖,評分特征圖經過全局池化即得到通道評分。
假設水下場景如圖4所示,上圖為原圖,下圖則為對應的特征評分圖。由于該評分為通道負評分,即輸出結果越大,通道增強的效果越弱,因此,特征圖中越亮表示方差越高,評分更低,增強效果越強。如場景(a)中,其特征圖中的魚存在藍色與黃色,黃色和藍色對比強烈,且黃色灰度值更大,因此黃色區(qū)域的小魚增強效果將明顯比藍色區(qū)域的小魚更強。
圖4 不同水下場景圖像像素評分特征圖Fig.4 Pixel score featuremaps for different underwater scenes
上述方法通過對通道的評分值對損失函數的梯度下降方向進行引導,實現通道之間的回歸分離,有效提升水下圖像的增強效果。
為保證網絡的輕量,網絡在每個卷積階段僅用少量3×3卷積層提取其局部特征,該操作使得網絡感受野無法顧及全局。為緩解上述問題,算法除了在損失函數中引入感知損失外,網絡架構在每個卷積階段后引入通道注意力,通過輸出的特征圖與上一階段的特征圖進行特征信息交叉,緩解感受野不足的問題。
特征交叉模塊結構如圖5所示。
圖5 特征信息交叉模塊Fig.5 Feature information cross module
在圖3中,卷積層后包含LeakyRelu激活函數與Dropout層,防止圖像過擬合。在對特征圖進行通道池化方面,擴展soft pooling[14]為global soft pooling,計算公式如下:
(2)
式(2)中,p為特征圖中的像素,將較大的激活值p通過自然對數保留它的重要性,計算每個激活值在全圖激活值之和中的比率,并以此作為特征全局加權的像素權重。與global平均池化相比,這種方法用全局softmax產生歸一化結果,更能反應特征圖單通道的全局信息,同時能保證反向傳播時是可微的。
此外,圖3中的通道注意力模塊以文獻[15]提出的efficient channel attention為基礎,采用global soft pooling對不同通道的全局特征進行提取,不僅保留了各特征圖的特殊性,也有助于形成聚合特征圖的全局語義信息。在通道注意力模塊中,模型還利用自適應k近鄰卷積提取局部通道的特征關注度,減少模型由于維度降低而對通道注意力產生負面影響。為了有效緩解網絡中跨通道信息交互所引起的局部限制,模塊采用通道shuffle方法實現對通道關注度權值優(yōu)化,并將獲得的權值與特征圖進行相乘,最后將輸出的結果與原始圖像進行融合,在保留初始梯度信息的基礎上獲得增強圖像。
基于通道注意力模塊的卷積核參數ω優(yōu)化為
(3)
考慮圖像局部結構相似性、通道之間的像素偏差以及圖像邊緣信息和高層語義相似性,本文算法采用多損失函數對模型進行訓練,即將損失函數定義為通道引導的高斯均方損失、結構相似性損失SSIM Loss和感知損失三者之和。
在有監(jiān)督學習的低層級圖像增強任務中,輸入圖像和高質量圖像的像素之間偏差常采用歐式距離進行評價,即將損失函數定義為均方誤差值(mean squared error,MSE):
(4)
由于上述損失函數的定義沒有考慮通道特征的差異性,因此,本文利用增強圖片的像素值輸出作為高斯參數,將損失函數重新設計成負對數似然損失(negative log-likehoad, NLL),表達式為
(5)
式(5)中,W和H分別表示增強圖像的寬和高;C表示圖像的RGB顏色通道;μ(o(pijc))為通道評分中高斯模型參數均值,即恢復圖像的每個像素;σ(o(pijc))為通道評分預測器輸出高斯模型方差,即顏色通道的負評分。
當網絡輸出的評分數值越大,損失曲線梯度越平緩,此時訓練需選擇相對較大的學習率;而當評分數值越小時,表示增強圖片的通道品質越接近高質量圖片所對應通道,學習率也將隨模型的訓練趨近至一個極小值。對比損失函數LMSE,此時該模型存在難以繼續(xù)收斂的問題,而Lp則仍能較好地提升損失梯度,保持模型在低谷訓練時的收斂特性。
此外,在訓練中期時,評分預測器未達到最佳性能時,提供的通道評分具有一定擾動性,此時模型需要正則化,以實現網絡避免陷入局部最優(yōu)。由于傳統(tǒng)MSE方法對每個顏色通道的優(yōu)化方式完全相同,因而無法適應不同場景下水下視覺檢測的需求。而Lp則會根據不同通道的偏差,在損失函數計算時進行針對性懲罰,使對不同類型的水下環(huán)境數據有更強的健壯性,通過這種損失函數,能提升算法收斂效果。
結構相似性作為衡量圖像質量的評價函數,不僅滿足人眼視覺的色彩需求,同時也反映了水下圖像的結構和紋理恢復特性,因而相比圖像的峰值信噪比(PSNR)更加適用。定義圖像batch為11×11內的結構相似性(SSIM)為
(6)
(7)
當LSSIM值越小,增強后的圖像和高質量圖像越相似度越高,網絡增強效果越好。
感知損失是文獻[16]基于VGG19網絡定義的,由前人實驗可知沒有殘差結構的VGG比Resnet更能捕獲高層抽象信息,將增強的圖像和真實圖像送入預處理后的VGG網絡得到最后的特征圖表示,這樣能夠提升主觀上更好的視覺表現,并計算它們之間的距離作為損失函數。
(8)
于是最后的損失函數可以定義為
L=LSSIM+Lguassian-MSE+0.5×LVgg。
(9)
為了驗證本文基于通道特征融合的水下圖像輕量增強網絡的可行性與有效性,實驗分別選擇了反映不同光照的、不同成像質量的EUVP(enhancement of underwater visual perception)中10 kB的數據為訓練集,選擇擁有890張不同亮度的真實水下圖像數據集UIEB(underwater image enhancement benchmark)作為驗證集,采用 Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10 GHz, 12 GB RAM和Nvidia 1070的平臺進行訓練,模型選擇Adam優(yōu)化器進行訓練,初始學習率為0.000 3,batchsize為1,抽取真實水下數據集作為測試數據。
通過橫向消融實驗對比增強網絡各模塊在圖像增強中的不同表現性能,驗證網絡設計的合理性,同時,通過縱向對比本文算法與當前水下增強領域其他算法,驗證整體網絡的先進性。
圖像增強最終目的是為了提高被探目標的特征表征能力。在水下環(huán)境條件下,由于圖像存在模糊、干擾、顏色失真等問題,所以,針對增強后的圖像,首先可通過視覺判斷,對比分析增強前后圖像的亮度、顏色、紋理、模糊度以及圖像中前景與背景的對比度,分析圖像的失真程度,完成增強圖像的定性分析。
其次,從定量分析角度,水下圖像常采用(peak signal-to-noise ratio, PSNR)與(structural similarity index measure, SSIM)[17]以及UIQM對圖像增強及恢復效果進行評價。其中,PSNR從圖像重構角度對圖像質量進行量化[18],體現了圖像像素之間的差距,而SSIM則通過對圖像不同區(qū)域樣本的亮度、對比度和結構等進行綜合評價。UIQM是一種基于人眼視覺系統(tǒng)激勵的無參考水下質量評價指標,其通過色彩、清晰度和對比度三者之間的線性組合最終實現對圖像質量的綜合評判。UIQM公式可表達為
UIQM=c1×UICM+c2×UISM+c3×UIConM,
(9)
式(9)中,UICM是圖像色彩指標,UISM是圖像清晰度指標,UIConM是圖像對比度指標,c1、c2、c3是權重系數。
對于基于深度學習的圖像增強網絡,考慮在部署于水下探測機器人時,系統(tǒng)對其內部模塊具有體積小、重量輕、功耗低等要求,因此,網絡的計算量、模型的存儲量、參數量等也是算法設計必需考慮的因素。
從網絡結構分析,本文增強網絡首先通過交叉模塊實現對不同層級特征信息的融合,其次采用高效通道注意力模塊,通過倒殘差結構設計,即Shuffle-ECA模塊,提升通道的信息感知能力,最后利用通道評分預測模塊(Rateifier&Guassian-MSE模塊),完成對損失函數的自適應優(yōu)化,保障增強后圖像色彩恢復質量。
為了分析上述三個主要模塊對總體增強的影響,實驗分別對基礎網絡、Shuffle-ECA模塊,Rateifier&Guassian-MSE模塊進行消融實驗,實驗結果如表1所示。
表1 增強網絡消融實驗結果Tab.1 Results of enhanced network ablation experiments
表1中,基礎網絡僅包括圖1中前向傳播網絡,網絡增強效果較差,然而,增加了特征交叉模塊后,網絡的增強效果得到了明顯的提升,PSNR提升8.4,增幅達81.47%;SSIM提升了0.32,增幅達86.48%;UIQM提升了0.38,增幅達16.24%。此后,增加了通道評分模塊與Shuffle-ECA模塊,網絡的PSNR分別提升了0.23與0.2,SSIM則均提升了0.1,UIQM提升了約0.11及0.02。綜合考慮三個評價指標,特征交叉模塊、通道評分模塊與Shuffle-ECA模塊,各模塊之間彼此并不存在相互競爭的問題,而是彼此互補增強,且特征交叉影響系數相對最大,Shuffle-ECA相對最小。
對比本文算法與其他深度學習算法,包括基于對抗生成的神經網絡算法FUnIE-GAN、利用超分辨率提升神經網絡增強性能的方法Deep-SESR[19]以及輕量化增強網絡Shallow-UWNet[20]等,通過綜合考慮定性分析與定量的PSNR、SSIM、UIQM等評價指標,完成對增強效果、網絡參數量、計算量以及泛化能力的比較與評價。實驗結果圖如圖6所示。
圖6 不同算法的圖像增強與恢復結果Fig.6 Image enhancement and restoration results of different algorithms
比較各算法對水下圖像在清晰度、顏色校正等方面的效果,可以發(fā)現UDCP算法中,圖像容易出現顏色斑塊。由于色彩空間過度拉伸,雖然有效提升了圖像中的對比度,但在目標的紋理細節(jié)方面表現不足,容易在暗黑區(qū)域、陰影區(qū)域出現細節(jié)丟失的問題?;谏蓪咕W絡的FUnIE-GAN,其在前景中過度增強,使得背景容易呈現紅色色偏現象,同時在放大后會有棋盤狀的顏色斑塊。Deep-SESR算法采用基于超分辨率算法進行增強,算法雖然較好地保持了目標顏色空間的信息,但網絡引入了偽影帶來新的噪聲,在圖像目標的邊緣輪廓等方面,容易給圖像增加模糊性,使得圖像銳化效果不足。相對比上述幾種算法,本文的網絡在圖像的亮度平衡、顏色校正、去除水霧、紋理的保持以及暗黑區(qū)域的處理等方面具有較優(yōu)效果。
此外,從定量評價指標的角度,本文算法與FUnIE-GAN、Deep-SESR、UDCP及Shallow-UWNet實驗結果如表2所示。同時,考慮水下探測機器人應用部署要求,實驗對各深度學習網絡的計算量與模型的存儲量、參數量等進行統(tǒng)計,實驗結果如表3所示。
表2 水下圖像增強性能指標Tab.2 Underwater image enhancement performance indicators
表3 不同模型存儲與計算對比Tab.3 Different models are stored and compared
通過分析表2可知,對比傳統(tǒng)圖像增強算法UDCP,基于深度學習的系列增強算法其在PSNR,SSIM及UIQM等性能指標上均明顯更優(yōu)。由于基于物理模型手工提取特征的UDCP,其參數自適應能力相對較差,而深度學習網絡通過對各類場景信息的擬合,算法具有更強的自適應性,因此,針對自主作業(yè)機器人的探測需求,基于深度學習的圖像增強算法更具有適用性。此外,對比各深度學習圖像增強網絡,PSNR,SSIM與UIQM相差較小,性能稍弱的為Shallow-UWNet網絡,主要原因在于該網絡通過優(yōu)化結構,模型相對更加簡單,參數更少。通過表3可知,Shallow-UWNet網絡的參數是FUnIR-GAN網絡的1/19,Deep SESR網絡的1/11。
而相比較上述網絡,本文提出的增強網絡,其在增強的PSNR,SSIM及UIQM值上與其他網絡相差較小,甚至在PSNR上略優(yōu)于其他網絡。但是在網絡的結構于參數方面,本文網絡比Shallow-UWNet更少,僅具有FUnIR-GAN網絡的1/36,Deep SESR網絡的1/21,Shallow-UWNet網絡的1/2。由于模型更加輕量化,因而在計算推理時速度最優(yōu)。
在水下探測過程中,由于水介質的特殊性,水下光學圖像存在嚴重的退化問題,導致圖像容易存在模糊、顏色失真等問題。針對上述問題,本文從深度學習網絡設計角度,通過在不同通道上加入引導模型訓練的評分預測信息,并使用交叉注意力方法實現不同層級特征的信息融合,提高網絡在圖像增強的同時對細節(jié)信息的保留能力。此外,損失函數是網絡設計的重要支撐,本文針對水下圖像增強任務,從結構相似性、顏色偏差以及高層語義與邊緣信息的相似性等方面,設計了包括高斯均方損失、結構性相似損失與感知損失的網絡損失函數,通過損失函數對網絡的優(yōu)化訓練,完成水下圖像的增強。實驗結果表明,本文算法在增強效果上與其他網絡相當,但網絡的模型參數更少,僅為Shallow-UWNet網絡參數的一半,因而推理速度更快,更適合小型化的水下探測機器人應用部署。