石 偉,王德雨,張?jiān)?/p>
(江蘇海洋大學(xué) 海洋工程學(xué)院,江蘇 連云港 222005 )
中國海域面積約300萬km2,海洋生物資源極其豐富,但中國海洋資源的開發(fā)利用程度與發(fā)達(dá)國家相比仍然較低,海洋經(jīng)濟(jì)發(fā)展總體水平不高。魚類資源作為海洋生物資源中最重要的種類,不僅是人類重要的食物來源,也是沿海城市漁業(yè)發(fā)展的經(jīng)濟(jì)基礎(chǔ)[1]。鱈魚在中國主要分布于黃海和渤海,其營養(yǎng)價(jià)值豐富且肉質(zhì)鮮美,是海洋魚類資源中重要的食用經(jīng)濟(jì)魚類。本文選取鱈魚為圖像識(shí)別的研究對象。目前,水下目標(biāo)識(shí)別已經(jīng)成為視覺行業(yè)的研究熱點(diǎn)。由于光在水體中傳播會(huì)被吸收和散射,導(dǎo)致水下獲取的圖像相較實(shí)物原圖質(zhì)量退化嚴(yán)重,存在色偏、對比度低以及模糊等問題,因此,直接對原始圖像進(jìn)行圖像識(shí)別效果不夠理想,目標(biāo)識(shí)別準(zhǔn)確率低,特征提取困難,所以需要對圖像進(jìn)行增強(qiáng)和顏色恢復(fù)。水下圖像增強(qiáng)技術(shù)可分為深度學(xué)習(xí)類和非深度學(xué)習(xí)類。對于非深度學(xué)習(xí)類的增強(qiáng)方法,Ancuti等[2]基于融合原理,提出了一種色彩補(bǔ)償與白平衡的多尺度融合方法,該方法增強(qiáng)后的圖像和視頻降低了噪聲水平,更好地暴露了黑暗區(qū)域,提高了全局對比度;劉柯等[3]針對水下低光環(huán)境以及色偏等問題,提出了一種低光水下環(huán)境中的圖像復(fù)原及增強(qiáng)辦法。對于深度學(xué)習(xí)類的水下圖像增強(qiáng),F(xiàn)u等[4]通過結(jié)合深度學(xué)習(xí)和傳統(tǒng)圖像增強(qiáng)方法,提出采用兩分支網(wǎng)絡(luò)分別補(bǔ)償顏色和降低對比度的方法;Islam等[5]提出了一種名為FUnIE-GAN的生成對抗網(wǎng)絡(luò),通過配對和非配對訓(xùn)練來學(xué)習(xí)提高水下圖像質(zhì)量。
對于魚類識(shí)別技術(shù),Li等[6]針對LifeCLEF數(shù)據(jù)集中的部分魚類目標(biāo)提出了一種輕量型R-CNN算法,獲得了較高的魚類識(shí)別準(zhǔn)確率;顧?quán)嵠降萚7]基于卷積神經(jīng)網(wǎng)絡(luò)采用遷移學(xué)習(xí)、支持向量機(jī)相融合的方法進(jìn)行魚類識(shí)別研究;Yusup等[8]使用YOLO深度學(xué)習(xí)算法進(jìn)行自動(dòng)識(shí)別,并根據(jù)YOLO更快的物體檢測優(yōu)勢,通過珊瑚魚水下視頻對算法進(jìn)行了分析;Lin等[9]采用帶有全景攝像機(jī)的水下無人機(jī),進(jìn)行了基于深度學(xué)習(xí)的魚類自動(dòng)識(shí)別。
傳統(tǒng)的水下圖像增強(qiáng)方法無法完全去除圖像色偏,且圖像質(zhì)量也會(huì)有所下降,對此,本文提出了一種基于圖像增強(qiáng)的鱈魚識(shí)別方法,首先利用UWGAN通過其自身的數(shù)據(jù)集生成逼真的水下圖像,然后利用Deep WaveNet框架中的增強(qiáng)框架進(jìn)行顏色恢復(fù)和細(xì)節(jié)復(fù)原,再利用RGHS對圖像的亮度和對比度進(jìn)行調(diào)整,并采用深度學(xué)習(xí)和非深度學(xué)習(xí)方法相結(jié)合的手段來進(jìn)一步提高圖片質(zhì)量,最后利用改進(jìn)的YOLOv5進(jìn)行鱈魚識(shí)別。本文所提出的方法可為水下魚類探索以及智能化捕撈研究提供一定的參考。
本文所提出的算法流程如圖1所示。首先,通過UWGAN框架中的生成對抗網(wǎng)絡(luò),根據(jù)紐約大學(xué)NYU數(shù)據(jù)集中的空中圖像(airimage)和圖像的深度信息(airdepth),以及自建鱈魚數(shù)據(jù)集中的水下圖像,生成逼真的水下圖像(fakeimage),然后利用airimage和fakeimage構(gòu)成的圖像對Deep WaveNet框架中的圖像增強(qiáng)模塊進(jìn)行顏色恢復(fù)及細(xì)節(jié)復(fù)原,最后利用相對全局直方圖拉伸(RGHS)進(jìn)行對比度以及亮度調(diào)整,至此圖像增強(qiáng)模塊已經(jīng)完成,隨后用改進(jìn)YOLOv5對增強(qiáng)后的鱈魚圖像進(jìn)行檢測識(shí)別。
圖1 算法流程
UnderWater GAN(UWGAN)基于水下成像模型生成水下圖像,并通過生成對抗式網(wǎng)絡(luò)估計(jì)其各項(xiàng)參數(shù)。此外,從水下成像模型來看,水下圖像可看成由兩部分組成,一種是直接衰減圖像,另一種是后向散射圖像。將不同水類型的真實(shí)水下圖像輸入到模型中,可以得到相應(yīng)類型的合成水下圖像,最后利用UNet作為水下圖像的恢復(fù)網(wǎng)絡(luò)對這些圖像進(jìn)行增強(qiáng)。
本文主要利用UWGAN生成逼真的水下圖像。水下光學(xué)成像過程可以用水下成像模型進(jìn)行數(shù)學(xué)描述,如式(1)所示。此模型廣泛應(yīng)用于近年來的水下圖像增強(qiáng)方法。
I(x)=D(x)+B(x)。
(1)
式中:I(x)為每個(gè)像素的光照強(qiáng)度x,D(x)和B(x)分別表示直接衰減圖像和后向散射圖像中每個(gè)像素的強(qiáng)度x。在此模型的基礎(chǔ)上,訓(xùn)練一個(gè)包括生成器G和鑒別器D的標(biāo)準(zhǔn)生成對抗網(wǎng)絡(luò),以此得到最后的輸出I(x)。通過UWGAN生成對抗網(wǎng)絡(luò),可以得到airimage和fakeimage的圖像對[10]。
Deep WaveNet網(wǎng)絡(luò)可以同時(shí)增強(qiáng)和提高退化水下圖像的空間分辨率,為此,其接受域采用了衰減制導(dǎo)局部和全局一致性的顏色通道。此外,接收域越大,就越能夠更好地學(xué)習(xí)圖像中的全局特征。一般來說,水下圖像的全局特征主要以藍(lán)色為主,而海洋生物則與綠色緊密相連,因此,藍(lán)色通道被分配了一個(gè)較大的接收域,而綠色通道則被分配了一個(gè)較小的接收域,同時(shí)進(jìn)一步減小紅色通道接收域。此外,此方法還采用了以阻斷注意力為基礎(chǔ)的方法,自適應(yīng)調(diào)節(jié)網(wǎng)絡(luò)中信道的特定信息流。
在本文中,分別用D,E來表示退化圖像和增強(qiáng)的圖像,D表示fakeimage中的圖像,E表示airimage中的圖像,整個(gè)Deep WaveNet分為四個(gè)階段,如圖2所示。第一階段的目標(biāo)是生成具有波長驅(qū)動(dòng)的上下文信息特征。第二階段的第一層類似于第一階段,其由一堆具有不同接收域的卷積層組成,實(shí)際上,階段二的目的是從階段一的上下文信息特征中生成顏色特定的失真殘差。第三階段以上下文注意力殘差作為輸入,輸出全局顏色校正殘差。第四階段作為圖像重構(gòu)模塊,由一個(gè)反卷積層、一個(gè)注意力殘差塊和另一個(gè)反卷積層組成,其以全局顏色校正殘差作為輸入,最后輸出增強(qiáng)后的水下圖像[11]。
圖2 Deep WaveNet工作流程
RGHS是在RGB和CIE-Lab顏色模型中提出的,它基于灰度世界理論來處理圖像。
RGHS首先根據(jù)灰度世界假設(shè)理論修正G和B通道,而不考慮R通道,因?yàn)樗械募t光很難通過簡單的顏色均衡進(jìn)行補(bǔ)償,當(dāng)然,這樣也可能帶來紅色過飽和的問題。
其次是進(jìn)行相對全局直方圖拉伸。全局直方圖拉伸公式見式(2),輸入和輸出像素強(qiáng)度值分別表示為pi和po,a,b分別表示輸入圖像的最小強(qiáng)度和最大強(qiáng)度;c,d分別表示目標(biāo)輸出圖像的最小強(qiáng)度和最大強(qiáng)度。與全局直方圖拉伸公式不同,相對全局直方圖拉伸公式見式(3)[3],其中pin和pout分別為輸入和輸出像素,Omax,Omin,Imax和Imin分別為拉伸前后圖像的自適應(yīng)參數(shù)。
(2)
(3)
在經(jīng)過RGB顏色模型的對比度校正后,對圖像進(jìn)行顏色校正處理。在此過程中,將水下圖像轉(zhuǎn)換為CIE-Lab顏色模型,以提高顏色性能。在此顏色模型中,用L分量表示圖像的亮度,當(dāng)a=b=0時(shí),顏色通道將呈現(xiàn)中性灰色值。因此,對輸出的a和b分量進(jìn)行修改,以獲得準(zhǔn)確的顏色校正,同時(shí)使用L分量調(diào)整整個(gè)圖像的亮度。CIE-Lab顏色模型中的L,a和b分量經(jīng)過自適應(yīng)拉伸過程后,將通道組合并轉(zhuǎn)換回RGB顏色模型,可以生成對比度增強(qiáng)和顏色校正的輸出圖像[12]。
YOLOv5算法是一種單階段目標(biāo)檢測算法,它能夠使目標(biāo)定位與目標(biāo)分類任務(wù)均在一個(gè)階段完成,不僅簡化了目標(biāo)檢測的整個(gè)過程,同時(shí)大大減少了目標(biāo)檢測所需的時(shí)間,在檢測速度上更加滿足實(shí)際需求。YOLOv5檢測網(wǎng)絡(luò)共有4個(gè)版本,分別為YOLOv5x,YOLOv5l, YOLOv5m,YOLOv5s。其中,YOLOv5s是深度和特征圖寬度均最小的網(wǎng)絡(luò),相對于其他網(wǎng)絡(luò),它的優(yōu)點(diǎn)是模型尺寸比較小且檢測速度快。YOLOv5s包括4個(gè)部分:輸入端、基準(zhǔn)網(wǎng)絡(luò)、Neck網(wǎng)絡(luò)和Head輸出端[13]。
本文選用的檢測權(quán)重即為YOLOv5s,并在YOLOv5網(wǎng)絡(luò)中引入了SE(squeeze-and-excitation networks)注意力機(jī)制。SE注意力增強(qiáng)模型對網(wǎng)絡(luò)進(jìn)行優(yōu)化增強(qiáng)的方法分為兩步[14](見圖3)。首先是壓縮過程,就是對輸入特征圖W×H×C進(jìn)行通道信息的全局平均池化,目的是將特征圖變?yōu)?×1×C向量;隨后是激勵(lì)過程,激勵(lì)模塊中含有兩個(gè)全連接層。為了減少通道個(gè)數(shù)進(jìn)而降低計(jì)算量,在網(wǎng)絡(luò)中設(shè)置了縮放參數(shù)SERatio。在第一個(gè)含有C×SERatio個(gè)神經(jīng)元的全連接層中,其輸入向量為1×1×C,通過全連接層后輸出的向量為1×1×C×SERadio。隨后通過第二個(gè)含有C個(gè)神經(jīng)元全連接層,這樣的輸出向量為1×1×C。之后進(jìn)行的是Scale操作,其目的是將原特征圖對應(yīng)通道的矩陣和SE模塊計(jì)算出來的各通道權(quán)重值分別相乘,得到輸出結(jié)果W×H×C。
圖3 SE注意力機(jī)制模塊
鱈魚視頻文件來自Nature Footage網(wǎng)站。本文將鱈魚視頻文件分割成1 400張圖片文件,運(yùn)用于YOLOv5識(shí)別的訓(xùn)練集和測試集,比例為8∶2,其中鱈魚標(biāo)注為gadus;運(yùn)用于UWGAN中的圖像數(shù)量為416張水下帶有綠色色偏的鱈魚圖像。此外,還使用了紐約大學(xué)數(shù)據(jù)集中的420張空氣圖片和420個(gè)深度數(shù)據(jù)。
不同算法的實(shí)驗(yàn)結(jié)果如圖4所示,圖片從上到下依次為測試圖1~6。引用水下彩色圖像質(zhì)量評估(UCIQE)[15]和水下圖像質(zhì)量評價(jià)指標(biāo)(UIQM)[16]兩種指標(biāo)來評價(jià)并比較本文算法與其他算法的差異。本文算法先通過深度學(xué)習(xí)算法進(jìn)行顏色校正并改善圖片質(zhì)量,再用非深度學(xué)習(xí)的方法調(diào)整對比度及亮度。不同算法的增強(qiáng)效果如表1和表2所示,表中黑體數(shù)值表示最優(yōu)結(jié)果。
a 原圖
表1 相關(guān)增強(qiáng)方法UCIQE值
表2 相關(guān)增強(qiáng)方法UIQM值
從原圖來看,鱈魚圖片存在明顯的綠色色偏,這對鱈魚識(shí)別增加了一定的難度。根據(jù)實(shí)驗(yàn)結(jié)果,AHE和Fusion兩種算法都使圖像得到了一定程度的色彩增強(qiáng)和對比度增強(qiáng),但圖像細(xì)節(jié)在增強(qiáng)之后丟失;RGHS增強(qiáng)使圖片亮度和對比度都得到了提高,細(xì)節(jié)處理也較好,但其存在明顯的綠色色偏;SSR增強(qiáng)之后所形成的色偏更加嚴(yán)重,部分圖像增強(qiáng)后對比度過高,色彩過分調(diào)節(jié),圖片細(xì)節(jié)丟失嚴(yán)重;UWGAN很好地解決了圖像的色偏問題,細(xì)節(jié)恢復(fù)也比較好,但是部分圖像存在對比度較高的問題;Deep WaveNet增強(qiáng)之后細(xì)節(jié)恢復(fù)較好,也去除了綠色色偏,但存在亮度過低的問題。運(yùn)用本文所提出的算法,經(jīng)過深度學(xué)習(xí)及非深度學(xué)習(xí)處理之后,所得的視覺效果好于其他方法,較好地去除了綠色色偏,圖片細(xì)節(jié)和亮度效果等表現(xiàn)均較好。
從客觀評價(jià)指標(biāo)來看,本文算法的UCIQE值在6幅圖片處理結(jié)果上的平均值為0.573 6,均優(yōu)于其他算法;從UIQM值來看,本文算法的平均值為3.198 8,同樣也高于其他幾種算法。綜合主觀和客觀評價(jià)結(jié)果,本文方法在圖像對比度、亮度以及增強(qiáng)后的圖像細(xì)節(jié)等方面均表現(xiàn)出較高的處理能力,總體上略微優(yōu)于其他幾種方法,因此選擇本算法作為圖像預(yù)處理的方法。
為了體現(xiàn)出本文方法的有效性,共進(jìn)行了三種算法進(jìn)行目標(biāo)識(shí)別的實(shí)驗(yàn)。第一種為原圖片作為數(shù)據(jù)集直接進(jìn)行檢測識(shí)別,項(xiàng)目命名為YOLOv5-before;第二種是用本文算法增強(qiáng)后的圖片進(jìn)行鱈魚識(shí)別,項(xiàng)目命名為YOLOv5-after;第三種就是在第二種算法的基礎(chǔ)上添加SE注意力機(jī)制從而進(jìn)行識(shí)別,項(xiàng)目命名為YOLOv5-SE,并在訓(xùn)練時(shí)保留最好權(quán)重。本文算法均是基于NVIDA RTX3070 8G,學(xué)習(xí)率設(shè)置為0.01,學(xué)習(xí)閾值設(shè)置為0.2,三種算法的各項(xiàng)數(shù)據(jù)如圖5和表3所示。
a 準(zhǔn)確率
表3 三種算法各項(xiàng)數(shù)據(jù)的比較
從圖5可以看出,使用圖像增強(qiáng)后的數(shù)據(jù)集相比直接用原始數(shù)據(jù)集進(jìn)行識(shí)別訓(xùn)練,不管是準(zhǔn)確率(precision)、召回率(recall),還是AP(average precison)值,都得到了提高。而添加了SE注意力機(jī)制的網(wǎng)絡(luò)的各項(xiàng)參數(shù)相比YOLOv5-after也得到了提高,但此網(wǎng)絡(luò)在150周期訓(xùn)練之后各項(xiàng)數(shù)據(jù)都呈現(xiàn)出下降趨勢,出現(xiàn)過擬合現(xiàn)象,因此之后又將此網(wǎng)絡(luò)訓(xùn)練至150周期,而非原來的300周期。
從表3中的數(shù)據(jù)可以看出,YOLOv5-before和YOLOv5-after的訓(xùn)練周期數(shù)均為300,處理圖片的速度都是143 frame/s,而YOLOv5-SE僅僅訓(xùn)練了150個(gè)周期,不管是準(zhǔn)確率還是召回率和平均準(zhǔn)確率都得到提高,即客觀上整體得到提高。
圖6是三種算法的部分實(shí)際測試結(jié)果。從圖中可以看出,相比未添加注意力機(jī)制的YOLOv5-after算法,YOLOv5-SE有了一些提升,主要體現(xiàn)在識(shí)別的置信度上,而采用原圖數(shù)據(jù)集直接進(jìn)行訓(xùn)練識(shí)別的結(jié)果則比較差,也存在部分鱈魚識(shí)別不出來的現(xiàn)象,且置信度很低。綜合以上來看,最后改進(jìn)得到的YOLOv5-SE網(wǎng)絡(luò)相較于YOLOv5-before在各項(xiàng)指標(biāo)上都有大幅提高,其中AP值從0.85提升至0.97,提升了14%,改進(jìn)后得到的YOLOv5-SE算法在識(shí)別精確率上相比用原圖作為數(shù)據(jù)集的方法得到了提升。此外,增加SE注意力機(jī)制后,訓(xùn)練周期數(shù)相比之前也減少了50%。
圖6 三種算法的識(shí)別結(jié)果對比
為了有效且較精準(zhǔn)地檢測出視頻中的鱈魚目標(biāo),本文先利用UWGAN生成對抗網(wǎng)絡(luò)以及鱈魚數(shù)據(jù)集生成fakeimage,其次利用Deep WaveNet進(jìn)行顏色以及細(xì)節(jié)矯正,最后使用相對全局直方圖拉伸算法進(jìn)行亮度以及對比度調(diào)整。相比其他算法,本文使用了深度學(xué)習(xí)算法與非深度學(xué)習(xí)算法相結(jié)合的方法,客觀上在UCIQE和UIQM指標(biāo)上均優(yōu)于其他算法,在主觀上也相對優(yōu)于其他算法。對于本文中改進(jìn)的YOLOv5算法,其引入了SE注意力機(jī)制,不僅訓(xùn)練周期數(shù)相比之前減少了50%,準(zhǔn)確率也得到了提高。