陳清江,王炫鈞,邵 菲
(西安建筑科技大學 理學院,陜西 西安 710055)
隨著陸地資源的枯竭與科技的不斷發(fā)展,尋找、勘探、開發(fā)海底資源,已然成為各個國家關注的重點。通過水下機器人獲取水下光學圖片是進行海洋研究重要環(huán)節(jié),但因為光在水下傳播的過程中會受到水介質(zhì)的吸收和散射[1],以及水下成像環(huán)境的影響,使得傳回的水下圖像不可避免地出現(xiàn)模糊、色偏、對比度低的情況,這樣退化嚴重的水下圖像不僅影響了視覺美感,而且嚴重降低了海底地質(zhì)研究[2]、海洋生物檢測[3]、水下考古[4]等一系列海洋研究的準確性。
為了獲取高質(zhì)量的水下圖像,眾多學者們提出了諸多水下圖像增強方法,根據(jù)圖像增強方式的不同可分為兩類:傳統(tǒng)方法和基于深度學習的方法。傳統(tǒng)方法:如ZUIDERVELD K 等人[5]于1994 年提出的限制對比度自適應圖像增強算法(contrast limited adaptive histogram equalization,CLAHE),該方法將圖片分為多個子模塊,在每個子模塊中進行直方圖均衡操作,降低了增強圖像的噪聲;IQBAL K 等人[6]于2010 提出的無監(jiān)督色彩校正(unsupervised color correction method,UCM)法,在增加了圖片顏色飽和度的同時有效地消除了藍色色偏和綠色色偏;DREWS P L J 等人[7]提出的水下暗通道先驗法(Underwater Dark Channel Prior,UDCP),在傳統(tǒng)的暗通道先驗的基礎上進行改進,將其與波長相關算法結合,增強了在水下圖像增強任務中的魯棒性;PENG Y T 等人[8]提出圖像模糊和光吸收算法(image blurriness and light absorption,IBLA),該方法利用圖像的模糊性和光吸收來估計背景光、場景深度和透射圖,從而達到增強圖像的目的?;谏疃葘W習的方法:SUN X 等人[9]提出了用于水下圖像增強的深度像素到像素網(wǎng)絡模型(pixel to pixel),該模型采用編碼解碼框架,并在模型中引入了跳躍連接,對退化圖像進行增強;LI C 等人[10]提出了UWCNN(underwater image enhancement fully convolutional neural network)模型,該模型利用端到端自動數(shù)據(jù)驅(qū)動訓練機制,直接重建清晰的水下圖像。
上述增強方法雖然在一定程度上增強了圖像質(zhì)量,但增強過后的圖片還是存在些許顏色失真、對比度不強、細節(jié)信息丟失等問題,為了解決上述問題,本文提出了基于多尺度殘差注意力的水下圖像增強網(wǎng)絡。本文的主要貢獻如下:1) 提出了一個端到端的多尺度殘差注意力水下圖像增強網(wǎng)絡,通過編碼器-解碼器結構、密集連接、注意力機制的結合,避免了單個尺度下的網(wǎng)絡特征提取不充分問題;2) 提出了多尺度稠密特征提取模塊(multi-scale dense feature extraction module,MDFE)與殘差注意力恢復模塊(residual attention recovery module,RAR),可在多個尺度上獲取豐富的空間信息與位置信息,在增強圖片的同時很好地避免了顏色失真問題,并保留了豐富的細節(jié)信息;3) 本文建立了由Charbonnier loss 和邊緣損失(edge loss)構成的聯(lián)合損失函數(shù),在恢復色彩的同時也使邊緣信息得以保留,避免了邊緣模糊;4) 實驗結果表明,本文方法在峰值信噪比和結構相似度的指標上均超過其他對比方法,增強過后的水下原始圖片擁有了令人愉悅的色彩和較高的對比度。
卷積運算[11]通過具有一定間隔的滑動濾波器,將各個位置上的濾波器元素與輸入數(shù)據(jù)對應的元素進行乘積累加運算,并將運算結果保存到相同位置,以得到卷積運算輸出。計算過程如式(1)所示:
式中:S(i,j)是第i行第j列元素卷積運算結果;X(i,j)為輸入二維圖像;*為卷積運算;K(i,j)為二維卷積核;x(i+h,j+n)為輸入二維圖像中第i+h行j+n列的元素;k(h,n)為第h行n列的二維卷積核元素。卷積運算過程如圖1 所示。
圖1 卷積運算Fig.1 Convolution operation
池化操作一般設置在卷積運算之后,池化操作通過縮小長、高方向上的空間運算以達到對特征進行降維的目的,對于卷積層在特征提取過程中的特征維數(shù)過高的問題有一定的緩解作用。池化層具有以下特點:沒有學習的參數(shù)、通道數(shù)不發(fā)生變化、對微小的數(shù)據(jù)偏差具有魯棒性。池化層一般分為兩種,分別是平均池化、最大池化,其含義分別是計算目標區(qū)域的平均值和最大值。池化操作過程如圖2 所示。
圖2 最大池化與平均池化操作Fig.2 Maximum pooling and average pooling operations
在神經(jīng)網(wǎng)絡設計過程中,隨著網(wǎng)絡層數(shù)的加深,往往會出現(xiàn)網(wǎng)絡準確性達到飽和后迅速下降的問題,這并不是由于過擬合導致的,這種情況稱之為退化。為了解決網(wǎng)絡退化問題,HE K 等人[12]提出了殘差網(wǎng)絡。殘差網(wǎng)絡是由一系列的殘差模塊組成,殘差模塊如圖3 所示。
圖3 殘差結構Fig.3 Structure diagram of residual module
該模塊是在兩個基本模塊之后增加了一個恒等映射,將原本的輸出F(x)變?yōu)镕(x)+x,其中F(x)+x通過快捷連接和按元素添加來執(zhí)行,使得輸出結果增加了一項,這樣該層網(wǎng)絡在反向傳播對x求偏導時,增加了一個常數(shù)項,避免了梯度消失和梯度爆炸的問題,這樣的結構可以使卷積神經(jīng)網(wǎng)絡向更深層發(fā)展。
本文所提出的多尺度殘差注意力網(wǎng)絡由多尺度稠密特征提取模塊(multi-scale dense feature extraction module,MDFE)和殘差注意力恢復模塊(residual attention recovery module,RAR)組成,總網(wǎng)絡結構如圖4 所示。其中多尺度稠密特征提取模塊用于提取圖片的高級語義特征與低級詳細特征,結合稠密連接,使網(wǎng)絡可學習到豐富的語義信息,并且避免產(chǎn)生過多的參數(shù),之后將特征圖傳入殘差注意力恢復模塊,進一步恢復圖像細節(jié)與顏色。殘差注意力恢復模塊將注意力機制與殘差結構巧妙結合,使得網(wǎng)絡得以更加關注有價值的特征信息,同時也避免了在網(wǎng)絡學習過程中由于網(wǎng)絡層數(shù)的加深,導致丟失原始圖像信息的問題。
圖4 多尺度殘差注意力網(wǎng)絡結構Fig.4 Structure diagram of multi-scale residual attention network
水下圖像由于受光在水下傳輸介質(zhì)的影響,往往存在不同程度的色偏色弱問題,并且因為水下人工光源的照明范圍有限,使得處于不同場景深度的物體所保留的信息均不相同,因此需要在多個尺度上對圖片進行特征提取,使得網(wǎng)絡盡可能多地學習到圖片的特征信息。多尺度密集特征提取模塊(MDFE)將改進的UNet3+-Avg 網(wǎng)絡結構與密集連接塊相結合,使網(wǎng)絡得以在多尺度上提取不同的特征信息,并且密集塊的加入增加了特征信息在網(wǎng)絡中的傳播,避免了特征丟失。該網(wǎng)絡模塊結構如圖5 所示。
圖5 多尺度密集特征提取模塊Fig.5 Multi-scale dense feature extraction module
UNet3+網(wǎng)絡[13]最有特點的是它所提出的全量程跳躍連接與全尺度深度監(jiān)督,該網(wǎng)絡中每個解碼器層都合并了編碼器中的小尺度和同尺度的特征映射,以及解碼器中的大尺度特征映射,有效解決了UNet 網(wǎng)絡[14]的平面連接和UNet++[15]嵌套密集連接所存在的全尺度信息探索不全面的問題。根據(jù)水下圖像增強任務的需要,在設計本文網(wǎng)絡時去除了UNet3+網(wǎng)絡中的全量程深度監(jiān)督模塊,并且將網(wǎng)絡中的最大池化操作變?yōu)槠骄鼗僮?,使其更適合于圖像顏色的恢復任務。該網(wǎng)絡的編碼部分共有5 層,分別進行了4 次下采樣,得到5 種尺寸的特征圖,每一層都通過核數(shù)為64 的3×3Conv 及Relu 激活函數(shù),再通過平均池化(Avg-Pooling)對特征圖進行2 倍下采樣后送入下一層。解碼部分與編碼部分層數(shù)相同,進行了4 次上采樣,使得圖像恢復為原始尺寸,并通過全量程跳躍連接,使得每層解碼器都可獲得前層的特征圖,這種結構可將全尺度特征映射的低級細節(jié)與高級語義結合起來,同時也擁有更少的參數(shù)。UNet3+-Avg模塊結構如圖6 所示。
圖6 UNet3+-Avg 模塊Fig.6 UNet3+-Avg module
在UNet3+-Avg 之后加入了3 層并行連接的密集連接模塊[16](dense block),每個密集連接模塊由5 個基本卷積塊構成,基本卷積塊結構由核數(shù)為64 的 3×3Conv、批量歸一化(BN)、Leaky Relu 激活函數(shù)組成。每個塊之間進行密集連接,使每一層的輸出都可作為輸入傳入到后面的卷積層,并將前面所有層獲得的特征與本層特征按通道相連接一同傳遞到下一層,這樣的結構緩解了特征圖在卷積層間傳遞時產(chǎn)生的梯度消失。由于密集連接模塊模塊的加入,提高了整個網(wǎng)絡的信息流和梯度的傳遞,從而使得網(wǎng)絡在學習圖片特征的同時增加了可訓性。
為了詳細說明UNet3+-Avg 提取特征的過程,以特征圖為例說明該網(wǎng)絡構造特征圖的方式,構造如圖7 所示。
圖7 第3 層解碼器特征圖構造過程Fig.7 Construction process of layer-3 decoder feature map
2)同尺度的編碼器,將該層編碼器得到的特征圖直接通過核數(shù)為64 的 3×3 Conv、批量歸一化(BN)、Relu 激活函數(shù);
網(wǎng)絡在通過多尺度稠密特征提取模塊之后學習到了豐富的特征信息,為了使網(wǎng)絡可以學習到更具有價值的信息,本文提出了注意力殘差恢復模塊(RAR)。該模塊首先通過一個核數(shù)為64 的3×3Conv,Leaky Relu 對傳入特征圖進行初始化,接著將傳入特征圖與之進行殘差連接后傳入注意力模塊(convolutional block attention module,CBAM)當中,以捕捉特征圖中有價值的信息。為了減少梯度消失的問題,在CBAM 模塊之后也與傳入特征圖進行殘差連接,最后通過核數(shù)為64 的3×3Conv、批量歸一化(BN)及Leaky Relu 得到輸出。該模塊結構如圖8 所示。其中CBAM 模塊由通道注意力模塊(channel attention model)與空間注意力模塊(spatial attention module)串連構成,接著將注意力模塊得到的權重與輸入特征圖進行特征細化,實現(xiàn)從通道到空間的順序注意力結構,結構如圖9 所示。
圖8 注意力殘差恢復模塊Fig.8 Attention residual recovery module
圖9 CBAM 模塊Fig.9 CBAM module
通道注意力模塊首先對特征圖同時進行最大池化與平均池化操作,對輸入特征圖的尺度進行壓縮,以得到具有不同維度信息的特征圖,接著將得到的特征圖送入信息共享網(wǎng)絡(MLP)進行信息共享,MLP 通過具有不同核數(shù)的1×1 Conv 對輸入特征圖進行先降維再升維操作,降維升維的倍數(shù)設置為16,待共享完成后,對特征圖進行元素相加。計算過程如式(3)所示:
式中:F為傳入特征圖;AvgPool 為平均池化操作;MaxPool 為最大池化操作;MLP 為多層感知器;σs為Sigmoid 激活函數(shù)。
空間注意力模塊對輸入特征圖沿通道進行最大池化與平均池化操作,接著將得到的特征圖進行通道維度堆疊后,通過一個核數(shù)為64 的1×1 Conv調(diào)整通道數(shù),最后得到輸出特征圖。計算過程如式(4)所示:
式中:F為傳入特征圖;AvgPool 為平均池化操作;MaxPool 為最大池化操作;σs為Sigmoid 激活函數(shù)。
為了更好地恢復圖像色彩和細節(jié),本文根據(jù)所提出網(wǎng)絡的獨特性,構造出一個由Charbonnier 損失[17]和邊緣損失(edge loss)相結合的聯(lián)合損失函數(shù),以彌補單一損失函數(shù)在水下圖像增強任務中的局限性。
Charbonnier 損失可看作是改進的l1損失,在l1損失的基礎上添加了一個可變的微小變量ε。該損失函數(shù)可以緩解生成圖片像素過于平滑的問題,使生成的圖片更符合人肉眼的感官認知,如式(5)所示:
式中 ε的值設置為1e-3。
高質(zhì)量的圖片不止具有令人愉悅的色彩,其圖片內(nèi)部的物體還應具有較為清晰的邊緣特征,邊緣損失函數(shù)的加入可以使圖片中的物體保留更多的邊緣細節(jié)信息,如式(6)所示:
式中:X為網(wǎng)絡輸出的圖像;Y為對比圖像;Ei,j為求得的邊緣特征。
為了使增強圖片具有較好色彩和豐富細節(jié)信息的同時加快網(wǎng)絡訓練速率,本文將以上兩種損失函數(shù)進行聯(lián)合,聯(lián)合損失函數(shù)如式(7)所示:
式中 λ為0.05。
為了說明本文所提網(wǎng)絡模型的有效性,設計實驗1,將本文所提方法與其他經(jīng)典方法(傳統(tǒng)算法與深度學習算法)進行對比實驗,比較的算法包括CLAHE[5]、UCM[6]、UDCP[7]、IBLA[8]、UWCNN[10]、CycleGAN[18]、MSRA-Net[19]、AttR2U-Net[20]。為了驗證本文各模塊設計的有效性,設計實驗2,對本文所提網(wǎng)絡模型中不同的模塊進行對比實驗分析。實驗中,為了明確了解各個方法的優(yōu)劣性,本文采用主觀評價以及客觀評價指標對實驗結果進行評價分析。
本文所使用的數(shù)據(jù)集來自于UIEB dataset,該數(shù)據(jù)集包含了890 張在自然光、人造光或自然光和人造光混合下拍攝的水下圖像,同時也提供了與之對應的高質(zhì)量參考圖像。在本文中,以8∶2的比例將數(shù)據(jù)集的圖片數(shù)據(jù)劃分為訓練集與測試集,并在進行訓練前將訓練集中的圖片進行左右翻轉以擴充訓練集。最后,隨機挑選出具有以下場景的水下圖像,如海床、海洋生物、珊瑚作為測試圖像,以說明模型的泛化性與有效性。原始水下圖像與其對應的高質(zhì)量對比圖像如圖10 所示。
圖10 水下圖片示例Fig.10 Underwater image example
實驗條件:本文采用pytorch2.8 深度學習框架進行訓練和測試。所使用的計算機硬件配置如下:GPU 為 Nvidia GeForce 3060(6 GB);CPU 為 Intel Core i7-11800H,內(nèi)存為 16 GB,主頻為 2.30 GHz。
參數(shù)設置:本文網(wǎng)絡中輸入圖片統(tǒng)一為長、寬均為 256 像素的 RGB(red-green-blue)圖像,優(yōu)化器為AdamW,使用余弦退火學習率,使學習率由4e-3 逐漸縮小至1e-6,批量大小(batch size)為 16,迭代次數(shù)(epoch)為 1 000。
4.3.1 實驗設置及評價指標
為了說明本文所提網(wǎng)絡模型與各模塊的有效性,將分別進行2 次實驗。對比實驗,將本文所提模型與基于非物理模型的水下圖像增強方法(CLAHE[5]、UCM[6])、基于物理模型的水下圖像增強方法(UDCP[7]、IBLA[8])、基于深度學習的水下圖像增強方法(UWCNN[10]、CycleGAN[18])和同樣使用多尺度殘差注意力網(wǎng)絡的水下圖像增強方法(MSRANet[19]、AttR2U-Net[20])進行對比實驗。此外,對所提網(wǎng)絡進行消融實驗,分別驗證多尺度稠密特征提取模塊、殘差注意力恢復模塊及損失函數(shù)的有效性。
本文采取主觀評價與客觀評價相結合的評價方法,分別通過人的主觀評價與客觀數(shù)據(jù)全方位分析本文所提模型對于水下圖像的增強效果。主觀評價通過找尋10 位志愿者(其中5 名志愿者有圖像處理經(jīng)驗,其余5 名無圖像處理經(jīng)驗),讓其在同一顯示器下觀察使用不同方法增強的圖片,并單獨對每幅圖片進行打分(分值范圍為1 至5)??陀^評價選取兩種全參考圖像質(zhì)量評價指標:峰值信噪比(PSNR)與結構相似度(SSIM)。
峰值信噪比(PSNR)是峰值信號的能量與噪聲的平均能量比。PSNR 是基于對應像素點間的誤差,即基于誤差敏感對圖像進行質(zhì)量評價。PSNR的值越大,圖像質(zhì)量越好。
結構相似度(SSIM)分別從圖像的亮度、對比度與結構3 方面共同衡量圖像的相似度,取值范圍為 [0,1]。SSIM 值越大,圖像失真越小。
但因人眼對亮度對比差異的敏感度比色度高,且易受周圍區(qū)域顏色的影響,因此峰值信噪比(PSNR)得出的結論有可能和人的直觀感受不一致,因此本文加入了由人肉眼直接觀察的主觀評價。
4.3.2 實驗結果
4.3.2.1 對比實驗
本文的對比實驗結果圖如圖11 所示。CLAHE 算法[5]可以較好地改善圖像的對比度,使得圖像色偏問題得到改善,但在光斑區(qū)域存在對比度過強的現(xiàn)象,并且對于圖像中較暗區(qū)域增強效果不佳,導致圖像顏色不自然。UCM 算法[6]可以較好地去除色偏現(xiàn)象,增強過后的圖像整體顏色也較為自然,但存在丟失圖像中較暗區(qū)域的細節(jié)信息的問題。UDCP 算法[7]存在過度增強現(xiàn)象,使得經(jīng)處理過后的圖像整體顏色偏暗,加深了色偏,并且物體細節(jié)信息丟失嚴重。IBLA 算法[8]并沒有改善圖像色偏的問題,甚至造成了更嚴重的色偏。經(jīng)UWCNN 算法[10]增強過后的圖像引入了新的色偏。CycleGAN 算法[18]可以較好地改善圖像的色偏問題,但增強后圖像整體色彩亮度偏暗。MSRANet[19]算法可以有效改善圖片存在的色偏問題,但增強后的部分圖片存在區(qū)域性的顏色不均。AttR2UNet[20]算法對于色偏問題有著較好的改善,但會造成圖片顏色淡化的問題。與前8 種模型相比,本文所提模型可以有效去除綠色色偏,在光斑區(qū)域也擁有較好的對比度,并且也可以很好地保留水下物體的細節(jié)信息,更加接近參考圖像。表1 展示了實驗中9 種模型的主觀評價平均得分。表2 展示了實驗中9 種模型的評價指標平均得分。通過觀察兩種評價的得分情況,發(fā)現(xiàn)相同方法的主觀評價與客觀評價的得分存在一定差異,通過詢問10 名志愿者,發(fā)現(xiàn)造成這種情況的原因是由于具有豐富色彩和較高對比度的圖片更受他們的青睞。
表1 9 種實驗模型主觀評價平均得分Table 1 Average scores of subjective evaluation of nine experimental models
表2 9 種實驗模型評價指標平均得分Table 2 Average scores of evaluation indexes of nine experimental models
圖11 不同增強方法結果比較Fig.11 Comparison of results of different enhancement methods
4.3.2.2 消融實驗
為了證明本文所提模型中各模塊及損失函數(shù)的有效性,本文設置如下消融實驗:1) 去除多尺度稠密特征提取模塊(MDFE);2) 去除殘差注意力恢復模塊(RAR);3) 無Charbonnier 損失函數(shù);4) 無邊緣損失函數(shù)(edge loss)。所進行消融實驗結果如圖12 所示。由圖片對比結果可以看出,模型a、b、c、d 均存在不同程度的色偏、色弱以及圖片物體邊緣模糊的問題,因此確定本文所提模型為最優(yōu)模型。不同模型消融實驗評價指標如表3 所示。
表3 消融實驗評價指標平均得分Table 3 Mean scores of evaluation indexes of ablation experiments
圖12 消融實驗結果比較Fig.12 Comparison of results of ablation experiments
為了說明本網(wǎng)絡增強后的水下圖像對后續(xù)視覺任務的激勵作用,在此采用Canny 邊緣檢測[21],用以對比原始圖像與經(jīng)本文設計網(wǎng)絡增強后圖像的邊緣檢測結果。因為圖像中物體的邊緣往往是局部像素變化最顯著的區(qū)域,圖像中可提取的邊緣信息越多,表明圖像中保留的細節(jié)信息越豐富,對后續(xù)的高層語義信息獲取有很大幫助。邊緣檢測結果如圖13 所示??梢悦黠@看出,經(jīng)過增強后的圖片相較于未增強的圖片提取到的物體邊緣更加豐富。
圖13 邊緣檢測結果Fig.13 Edge detection results
針對水下圖像增強問題,本文提出了一個多尺度殘差注意力網(wǎng)絡,該網(wǎng)絡通過多尺度稠密特征提取模塊(MDFE)和殘差注意力恢復模塊(RAR)的巧妙設計,在融合圖像多尺度特征信息的基礎上,結合注意力機制對退化的水下圖像進行增強。在數(shù)據(jù)集UIEB 上的大量實驗表明,本文所提網(wǎng)絡相較于其他幾種主流方法有著更好的指標與主觀視覺感受,并且在恢復退化圖像顏色的同時,還可保留圖像中大量的邊緣細節(jié)信息,有效提高了后續(xù)邊緣檢測任務的準確性,但在個別場景下的水下圖像經(jīng)本文所提網(wǎng)絡增強后會存在對比度過強的問題,所以未來將就該問題提出新的網(wǎng)絡模型,進一步提高模型的泛化性。