杜守慶,陳 明,王俊豪
(1 上海海洋大學(xué)信息學(xué)院,上海 201306;2 農(nóng)業(yè)農(nóng)村部漁業(yè)信息重點實驗室,上海 201306)
復(fù)雜的水下成像環(huán)境和光照條件導(dǎo)致水下成像系統(tǒng)拍攝的圖像往往具有對比度低、紋理模糊、顏色失真、非均勻光照、可視范圍有限等質(zhì)量退化問題,嚴重影響到基于視覺引導(dǎo)的水下目標識別與跟蹤[1]、機器人水下作業(yè)[2]等任務(wù)的性能,需要通過水下圖像增強技術(shù)作為預(yù)處理手段來提升視覺質(zhì)量。
目前主流的水下圖像增強算法主要分為三類:基于非物理模型的方法[3-8]、基于物理模型的方法[9-15]和基于深度學(xué)習(xí)的方法[16-21]。Iqbal等[3]提出了基于直方圖拉伸的無監(jiān)督顏色校正方法(UCM),分別在RGB空間增強對比度和HSI空間校正顏色。Huang等[5]提出一種基于自適應(yīng)參數(shù)采集的相對全局直方圖拉伸算法(RGHS)校正圖像對比度和顏色。基于非物理模型的方法對單張圖像建模,沒有深入考慮到水下圖像退化的根本原因,泛化性不強。Drews 等[10]提出基于藍綠通道的水下暗通道先驗算法(UDCP)估計場景深度,減少紅色通道光衰減的影響。Peng 等[11]提出圖像模糊和光吸收算法(IBLA),該方法對模糊先驗假設(shè)做進一步的改善,提高了水下場景深度估計的準確性?;谖锢砟P偷姆椒ㄒ蕾囉趯λ鲁上裨斫:蛧栏竦南闰炛R,方法大多結(jié)構(gòu)復(fù)雜,算力消耗巨大,實時性不高。Islam 等[17]提出了一種基于條件對抗生成網(wǎng)絡(luò)的實時水下圖像增強模型(FGAN),該模型在大規(guī)模水下圖像數(shù)據(jù)集 EUVP 上通過對抗性訓(xùn)練來學(xué)習(xí)失真圖像到清晰圖像的端到端映射。Islam等[18]提出一種基于殘差結(jié)構(gòu)的超分辨率增強網(wǎng)絡(luò)(Deep SESR),該模型可以學(xué)習(xí)在2、3或4個更高空間分辨率下恢復(fù)水下圖像質(zhì)量?;谏疃葘W(xué)習(xí)的方法由數(shù)據(jù)和模型雙驅(qū)動,在水下圖像增強領(lǐng)域取得了顯著的成果。但是此類方法往往為了追求模型的精度,大多采用深度網(wǎng)絡(luò)結(jié)構(gòu),極大地限制了方法的實時性能;反之若追求模型的輕量級,往往又在真實數(shù)據(jù)集上的表現(xiàn)不夠穩(wěn)定。
針對現(xiàn)有基于深度學(xué)習(xí)方法的局限性,本研究提出了一種輕量級卷積神經(jīng)網(wǎng)絡(luò)模型,實現(xiàn)對水下圖像的實時感知增強。為了加強模型的圖像特征提取能力,設(shè)計了一個多尺度特征提取模塊實現(xiàn)多感受野范圍下的多層次特征信息的提取和融合。本研究在多項損失函數(shù)中加入梯度差損失項,加強模型對水下圖像邊緣細節(jié)的學(xué)習(xí)能力。
給定源域X(失真圖像)和期望域Y(增強圖像),本研究的目標是學(xué)習(xí)一個映射G:X->Y,以便執(zhí)行自動水下圖像感知增強。本研究采用了一個基于多尺度特征提取的輕量級神經(jīng)網(wǎng)絡(luò)模型,通過多模態(tài)損失函數(shù)指導(dǎo)模型學(xué)習(xí)這種映射。
如圖1所示,本研究的執(zhí)行流程如下:為了實現(xiàn)快速推理,模型的輸入設(shè)置為256×256×3,通過一個優(yōu)化的特征提取模塊(MFE Module)生成256×256×32的多尺度特征圖,然后將該特征圖輸入到三個密集連接的卷積塊中。卷積塊是卷積層(Conv)、隨機失活層(Dropout)和LeakyReLU激活函數(shù)的串行化結(jié)構(gòu),首先對輸入的特征圖采用3×3的卷積,在卷積之后接入隨機失活層來避免高權(quán)重節(jié)點完全控制輸出結(jié)果,再引入LeakyReLU激活函數(shù)來加強模型的非線性能力。由于串行連接的網(wǎng)絡(luò)隨著深度疊加,容易導(dǎo)致高維權(quán)重矩陣大部分維度沒有有效信息,造成網(wǎng)絡(luò)退化。本研究將多尺度特征圖跳躍連接到每個卷積塊的輸出來打破結(jié)構(gòu)對稱性,從而改善權(quán)重矩陣的表達能力。最后通過一個3×3的卷積層生成256×256×3的輸出圖像,該輸出圖像即為增強圖像。
圖1 模型框架
1.2.1 可分離殘差密集塊
受深度殘差密集網(wǎng)絡(luò)[22-24]的啟發(fā),使用其中的殘差密集塊(RDB)作為特征提取基本單元,其結(jié)構(gòu)如圖2所示。但是為了保持整體的輕量型結(jié)構(gòu),對RDB模塊進行了簡化改進,形成了可分離殘差密集塊(SRDB)作為特征提取模塊的基本單元,其結(jié)構(gòu)如圖3所示。
圖2 殘差密集塊
圖3 可分離殘差密集塊
改進1是使用深度可分離卷積(DSC)[25]取代RDB模塊中的標準卷積層。本研究中的DSC首先使用3×3的深度逐通道卷積(D_Conv)得到每個通道的特征圖,然后使用批量歸一化(BN)和LeakyReLU激活函數(shù)加快網(wǎng)絡(luò)訓(xùn)練和收斂的速度,再使用1×1的卷積融合每個通道的特征形成完整的輸出。
改進2是改變局部分層特征間的傳遞方式,僅將上一層的輸入特征傳遞給當前層。由于SRDB本身僅使用三組卷積進行特征提取,網(wǎng)絡(luò)層次較淺,而且也使用了殘差連接將SRDB模塊的輸入信息跳躍連接到模塊的輸出,所以并無多少語義信息損失,使用上一層的輸入特征傳遞是能夠滿足特征保留需求的。而且每一個局部分層特征都向后傳遞,會導(dǎo)致局部淺層特征對局部高層特征的提取產(chǎn)生抑制作用。
1.2.2 多尺度特征提取
單一的卷積層感受野固定,無法滿足不同大小的目標物特征和不同語義信息的提取。圖像的不同層次特征包含不同的語義信息,一般淺層卷積提取圖像的細節(jié)和紋理信息,中層卷積一般提取的是圖像的部分輪廓信息,高層卷積提取圖像的整體結(jié)構(gòu)信息,對水下圖像恢復(fù)都有著重要作用。
為了充分利用原始圖像的特征,本研究參照文獻[26]中的MSRB模塊設(shè)計了一個多尺度特征提取模塊來提取不同尺度范圍下的不同層次的特征信息,結(jié)構(gòu)如圖4所示。
圖4 多尺度特征提取模塊
首先,3個并行分支分別使用不同大小卷積核(3×3,5×5,7×7)的標準卷積提取三種感受野范圍內(nèi)的淺層特征。然后,分別在每個分支使用4個密集連接的SRDB進一步提取圖像的中高層語義信息,密集連接支持 SRDB 間的連續(xù)記憶,一個 SRDB 的輸出可以直接影響下一個SRDB各層信息的傳遞,從而使狀態(tài)連續(xù)傳遞。再將每一個SRDB的輸出特征作為分層特征進行通道連接,自適應(yīng)地保留每一個分層特征圖的語義信息。最后通過1×1標準卷積調(diào)整通道數(shù),并用殘差連接融合淺層特征信息作為每一個分支的特征輸出。將3個不同分支輸出的特征圖進行通道連接,接一個1×1標準卷積調(diào)整通道數(shù)作為多尺度特征提取模塊的輸出。
特征提取模塊每一個分支都是用標準卷積提取淺層特征,然后使用密集連接的SRDB模塊逐步擴大感受野范圍,分層次提取原始圖像的中高層語義信息,最終融合淺層和中高層的語義信息使其具備豐富的上下文信息。3個尺度不同的并行分支是為了滿足不同大小的目標物體特征提取,融合3個分支的特征得到不同尺度范圍下的多層次特征信息,具備更好的特征表達能力。
本研究使用一個多模態(tài)的損失函數(shù)約束模型的訓(xùn)練方向,使源域圖像X能夠?qū)W習(xí)到期望域圖像Y的紋理結(jié)構(gòu)、內(nèi)容感知和色彩感知,通過考慮生成圖像G(X)和期望域圖像Y之間的梯度差損失,使生成的圖像保持源圖像邊緣的銳度和細節(jié)信息。具體的損失函數(shù)如下所示:
1)全局相似性損失
現(xiàn)有的方法表明,在目標函數(shù)中添加L1(L2)損失使G能夠?qū)W習(xí)從L1(L2)意義上的全局相似空間中采樣,由于L1損失不容易受噪聲影響,故使用L1損失來計算生成圖像和目標圖像之間的像素級損失。L1損失項的數(shù)學(xué)表達如式(1)所示:
(1)
式中:Y為標簽圖像;G(X)為生成圖像。
2)梯度差損失
為了保持原始圖像的細節(jié)信息,銳化圖像的邊緣,引入二階微分算子Laplace算子計算生成圖像G(X)和目標圖像Y之間的梯度差損失。Laplace算子的數(shù)學(xué)表達如式(2)所示,梯度差損失項的數(shù)學(xué)表達如式(3)所示:
(2)
(3)
式中:?2(G(X))表示生成圖像G(X)在(x,y)處的梯度,?2(Y)表示目標圖像Y在(x,y)的梯度。
3)內(nèi)容感知損失
為了鼓勵映射G能夠生成與標簽圖像具有相似內(nèi)容(即特征表示)的增強圖像,受文獻[27]的啟發(fā),本研究將圖像內(nèi)容感知函數(shù)定義為由預(yù)訓(xùn)練的VGG19網(wǎng)絡(luò)的最后一層提取出來的高級特征。內(nèi)容感知損失項的數(shù)學(xué)表達如式(4)所示:
(4)
式中:φ(G(X))為生成圖像經(jīng)過VGG19網(wǎng)絡(luò)訓(xùn)練后的輸出,φ(Y)為目標圖像經(jīng)過VGG19網(wǎng)絡(luò)的輸出。
4)總損失函數(shù)
總損失函數(shù)的數(shù)學(xué)表達如式(5)所示:
Ltotal=α×L1+β×Lcontent+γ×Lgd
(5)
式中:α,β,γ表示每一項損失所占比重,取α=0.6,β=0.3,γ=0.1。
2.1.1 數(shù)據(jù)集
為解決水下圖像退化域和期望域的成對訓(xùn)練數(shù)據(jù)問題,本研究收集了EUVP數(shù)據(jù)集中的underwater_dark、underwater_imagenet和underwater_scenes中成對的水下圖像5 000張,這些圖像包含了大量的水下場景和豐富的水下內(nèi)容信息,能夠表示絕大多數(shù)的水下真實場景。另外為了保證模型的泛化性,選取了從人工養(yǎng)殖基地采集的大量河豚圖像中的300張具有代表性的圖片。將成對的水下圖像按照7∶2∶1的比例劃分為訓(xùn)練集和驗證集和測試集A,并將選取的河豚圖像作為測試集B。這樣劃分數(shù)據(jù)能夠充分驗證模型在公開數(shù)據(jù)集和真實數(shù)據(jù)集的增強效果,保證模型的有效性和泛化性。
2.1.2 試驗設(shè)置
本試驗在Windows 10操作系統(tǒng)下,基于Pytorch1.7深度學(xué)習(xí)開源框架實現(xiàn),編程語言為Python 3.6。計算機的配置如下:處理器為Intel(R)Core(TM)i7-9700 CPU@3.6GHz,GPU為NVIDIA GeForce RTX2080Ti,內(nèi)存64GB。本試驗為了更好地訓(xùn)練模型,統(tǒng)一將圖像尺寸設(shè)定為256×256×3,并歸一化到[0,1]區(qū)間。模型在訓(xùn)練過程中采用Adam優(yōu)化器,學(xué)習(xí)率lr=0.000 2,批處理大小batch_size=16,迭代次數(shù)epoch=1 000。另外為了保證試驗的公平性,所有基于深度學(xué)習(xí)的對比試驗都是采用原文獻的參數(shù)設(shè)計以及本文相同的數(shù)據(jù)集訓(xùn)練和測試。
2.2.1 本研究與對比方法的對比分析
為了驗證本研究的有效性與泛化性,通過大量的對比試驗,將本研究與基于非物理模型的典型方法(UCM[3],RGHS[5]),基于物理模型的典型方法(UDCP[10],IBLA[11]),基于深度學(xué)習(xí)驅(qū)動的最新方法(FGAN[17],Deep SESR[18])從水下圖像感知增強角度進行主觀和客觀的評價,分析本研究與其他最新方法對比存在的優(yōu)勢與劣勢;然后,從模型的處理速度出發(fā),分析本研究和對比方法的實時性能。
1)主觀評價
主觀評價是從人眼觀察角度來分析水下圖像感知增強的效果,6種水下圖像增強方法和本研究在測試集A、B上的主觀表現(xiàn)如圖5、圖6所示。
圖5 不同方法在測試集A上的結(jié)果
通過圖5、圖6可以發(fā)現(xiàn),UCM明顯增強了圖像的對比度,但是出現(xiàn)了色彩飽和現(xiàn)象,部分圖像呈現(xiàn)出偏紅色調(diào)。RGHS較好地改善了圖片的模糊問題,提升了圖像的清晰度,但是在去除色偏問題上表現(xiàn)不足,部分圖像還是呈現(xiàn)出明顯的藍綠色偏現(xiàn)象。UDCP處理后的圖像并沒有解決圖像的色偏問題,甚至加深了圖像的色偏程度,相當于引入了新的噪聲,而且圖像偏暗,整體的增強效果欠佳。IBLA增強后的圖像整體對比度和亮度都得到了改善,但是部分區(qū)域表現(xiàn)出過度增強的現(xiàn)象,圖像的色彩有不自然的趨勢。
圖6 不同方法在測試集B上的結(jié)果
基于深度學(xué)習(xí)的方法由模型和數(shù)據(jù)雙驅(qū)動,模型的泛化性往往比傳統(tǒng)方法更好。FGAN的處理效果較好,能夠有效去除圖像模糊和色偏現(xiàn)象。Deep SESR在測試集A上表現(xiàn)良好,但是在測試集B上出現(xiàn)圖像更加模糊的現(xiàn)象,顏色也趨向于不自然。本研究處理后的圖像去除了色偏和模糊現(xiàn)象,對比度和亮度得到提升,而且邊緣更加清晰,保留了更多的細節(jié)信息。
2)客觀評價
為了客觀評價和分析本研究方法的性能,選取兩種全參考圖像質(zhì)量評價指標:結(jié)構(gòu)相似性(SSIM)和峰值信噪比(PSNR)[28]以及兩種無參考圖像質(zhì)量評價指標:UIQM[29]和NIQE[30]對不同方法在測試集A、B上的增強效果進行定量評價。
通常情況下,SSIM和PSNR越大,表明被評價圖像越接近標簽圖像。UIQM 是水下圖像色度度量(UICM)、水下圖像清晰度度量(UISM)和水下圖像對比度度量(UIConM)的線性組合,其值和圖像的視覺質(zhì)量成正比。NIQE是用來衡量待測圖像和自然圖像提取的特征所構(gòu)建的多元分布上的差異,其值越小,表示待測圖像越接近自然圖像。
由于測試集A具有參考圖像,所以選取PSNR、SSIM、UIQM和NIQE來定量對比不同方法在測試集A上的表現(xiàn),其均值和方差結(jié)果如表1所示。從整體來看,基于深度學(xué)習(xí)的方法的表現(xiàn)要優(yōu)于傳統(tǒng)的方法,這和主觀的分析結(jié)果一致。其中本研究在PSNR和SSIM上的平均值得分最高,UIQM和NIQE平均值得分第二且方差較小,表明本研究在測試集A上增強的圖像更接近于自然圖像,且增強效果更加穩(wěn)定。
表1 不同方法在測試集A上的定量對比
由于測試集B沒有參考圖像,所以選取UIQM和NIQE來定量對比不同方法在測試集B上的表現(xiàn),其均值和方差結(jié)果如表2所示。
表2 不同方法在測試集B上的定量對比
通過表2發(fā)現(xiàn),本研究在UIQM和NIQE上的平均得分都是最高,充分說明了本研究在測試集B上的表現(xiàn)要優(yōu)于列出的其他方法。
綜合表1和表2的分析結(jié)果得出,本研究不僅在公共數(shù)據(jù)集上取得了優(yōu)秀的表現(xiàn),而且在真實數(shù)據(jù)集上也取得了優(yōu)于其他方法的表現(xiàn),體現(xiàn)了本研究的有效性和泛化性。
2.2.2 處理速度對比
一個好的水下圖像增強模型追求的不僅僅是視覺感知的增強,而且也要考慮到模型的處理速度,這將決定該模型是否能夠應(yīng)用到實時情景中。本研究用FPS(模型處理圖片的幀率)分析當下幾種主流的水下圖像增強方法和本研究方法的實時性能。試驗后得出UCM的FPS為0.64;RGHS的FPS為1.00;UDCP的FPS為0.42;IBLA的FPS為0.18;FGAN的FPS為5.56;Deep SESR的FPS為6.25;本研究的FPS為27.55。從結(jié)果來看,基于深度學(xué)習(xí)方法的FPS都要高于傳統(tǒng)方法,其中本研究方法排在第一,而且要明顯優(yōu)于其余幾種方法的處理速度,表明本研究方法的處理速度較快,具備良好的實時性能。
2.2.3 MFE模塊SRDB數(shù)量的對比分析
對MFE模塊中每個分支提取不同層次信息的特征提取單元SRDB的數(shù)量進行了對比試驗,驗證MFE模塊設(shè)計的合理性。為了統(tǒng)一衡量測試集A,B的客觀對比結(jié)果,選用UIQM和NIQE評價指標,其平均值結(jié)果如圖7所示。從圖7可以明顯看出,UIQM和NIQE得分在SRDB數(shù)量為4時基本達到了最優(yōu)情況,繼續(xù)堆疊SRDB的數(shù)量也不會對模型的性能產(chǎn)生明顯的提升,而且還會加深網(wǎng)絡(luò)結(jié)構(gòu),帶來更多的內(nèi)存和時間消耗,所以MFE模塊將SRDB的數(shù)量設(shè)計為4是合理的。
圖7 SRDB數(shù)量的對比試驗結(jié)果
2.2.4 消融試驗
1) SRDB改進組件的消融試驗
為了進一步驗證本研究對SRDB組件改進的有效性,對改進部分進行消融試驗,設(shè)計以下試驗:(a)改進1;(b)改進2;(c)改進1+改進2;(d)原RDB結(jié)構(gòu)。其客觀評價指標表現(xiàn)如表3所示。
表3 SRDB改進組件消融試驗的定量比較
從表3的定量比較結(jié)果來看,本研究對RDB模塊的改進是不會對測試集水下圖像的質(zhì)量恢復(fù)產(chǎn)生太大的負面影響,甚至部分數(shù)據(jù)產(chǎn)生了正向作用。經(jīng)過試驗后得出(a)的FPS為21.82;(b)的FPS為19.43;(c)的FPS為27.55;(d)的FPS為16.70。由此可見,本研究在不損害模型性能的基礎(chǔ)之上對RDB組件的輕量化優(yōu)化是合理有效的。
2) MFE模塊和梯度差損失項的消融試驗
為了進一步驗證本研究在基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)之上改進的每個組件的有效性,對改進部分進行消融試驗。消融試驗設(shè)計以下內(nèi)容:(a)無MFE 模塊;(b)無梯度差損失項;(c)本研究方法。消融試驗的主觀表現(xiàn)如圖8所示,客觀評價指標如表4所示。
圖8 消融試驗主觀結(jié)果
表4 消融試驗的客觀結(jié)果
圖8所示,MFE模塊能夠校正水下圖像的對比度和顏色,尤其是對TestB的顏色校正結(jié)果尤其明顯;梯度差損失項能夠加強水下圖像的邊緣細節(jié)保持能力,使得邊緣部分更加清晰。
表4所示,本研究改進的模塊都能夠提升水下圖像的客觀質(zhì)量評價表現(xiàn),其中MFE模塊的提升效果尤其明顯。綜合主客觀表現(xiàn),證明本研究所提組件都能夠提升水下圖像復(fù)原的效果,表明本研究改進部分的合理有效性。
2.2.5 應(yīng)用測試
圖像增強的目的是給后續(xù)高層應(yīng)用提供高質(zhì)量的輸入圖像,使得高階視覺任務(wù)更容易提取圖像特征信息。采用了Canny邊緣檢測和SURF特征點檢測與匹配來進一步說明本研究的增強效果,結(jié)果如圖9、圖10所示。圖像的邊緣是指圖像局部區(qū)域灰度強度變化最顯著的部分,屬于圖像中最直觀的結(jié)構(gòu)信息,良好的邊緣信息代表著更多的細節(jié)信息,其對高級語義信息的提取有著重要的影響。
圖9 Canny邊緣檢測
圖10 SURF特征點檢測與匹配
從圖9可以看出,經(jīng)過本研究增強后的水下圖像 提取的邊緣更加清晰,包含更多的細節(jié)信息,而且也沒有產(chǎn)生多余的噪聲。
SURF特征屬于尺度不變特征,且具備較高的計算效率,能夠很好地反映圖像的特征表達能力。為了體現(xiàn)其尺度不變性,將圖像經(jīng)過180°旋轉(zhuǎn),變換后的圖像置于特征點匹配圖像的右半部分。圖10第一幅對比圖像中,原圖的特征點匹配數(shù)量為120,增強后的圖像匹配的特征點數(shù)量為666;圖10第二幅對比圖像中,原圖的特征點匹配數(shù)量為107,增強后的圖像匹配的特征點數(shù)量為205。經(jīng)過SURF特征點的檢測與匹配結(jié)果來看,增強后的圖像能夠提取和匹配更多的特征點,進一步說明本研究對圖像特征的增強效果。
綜合canny邊緣檢測和SURF特征點檢測和匹配的結(jié)果來看,本研究方法能夠有效增強圖像的細節(jié)特征,使其語義信息更加豐富,有利于高階視覺任務(wù)性能的提升。
針對水下圖像視覺質(zhì)量退化和現(xiàn)有基于深度學(xué)習(xí)方法的局限性,提出了一種基于多尺度特征提取的水下圖像增強模型,使用公共數(shù)據(jù)集EUVP和真實養(yǎng)殖環(huán)境下拍攝的河豚圖像構(gòu)造的大規(guī)模數(shù)據(jù)集來訓(xùn)練和驗證模型的精度。多尺度特征提取模塊構(gòu)建基本特征提取單元SRDB,堆疊SRDB模塊并使用殘差密集連接組合分層特征信息,使用3個不同尺度的并行分支提取并融合不同感受野范圍下的多層次特征信息形成多尺度特征圖。模型在損失函數(shù)中加入梯度差損失項,加強對水下圖像邊緣細節(jié)的學(xué)習(xí)能力。結(jié)果表明,本研究對比其他幾種主流算法在測試集上有更好的主客觀表現(xiàn),表明所提算法能有效提高圖像清晰度和對比度,校正圖像顏色,提升圖像視覺感知。本研究整體保持為一個輕量級模型,擁有優(yōu)秀的性能之外還保持了較高的處理速度,期望為實時水下圖像增強做出一些參考。
□