趙 鑫, 于 波, 徐慧琳, 韋小牙
(1.深部煤礦采動響應與災害防控國家重點實驗室,安徽 淮南 232000;2.安徽理工大學,安徽 淮南 232000)
目前,諸如塑料、木材、漁具、紡織品等海洋垃圾對生態系統產生了嚴重威脅。由于海洋面積大,在海洋中搜尋和清除垃圾所花費的時間是無法估量的。為解決此問題,帶有目標檢測功能和機械抓手功能的海底機器人為垃圾清理提供了一種可行方案。
針對海洋垃圾檢測,國內外學者已經開展了基于深度學習算法的相關研究,其中YOLO 系列算法[1-8]因其具有檢測精度高、檢測速度快等優勢,常被作為基礎算法模型。Fulton 等[9]采用開放水域水下圖片數據集訓練了SSD、Faster R-CNN、YOLOv2 等多個深度學習模型,其中Faster R-CNN 模型在塑料垃圾類別上的檢測精度達到了83.3%,但檢測速度較慢,無法滿足多類別檢測需求。劉萍等[10]在YOLOV3 的基礎上引入UGAN-P 生成對抗網絡作為增強網絡,有效地提高了水下目標的檢測準確率。袁紅春等[11]提出了一種基于YOLOV5 的水下垃圾檢測算法,通過采用伽馬變換提升圖像對比度和細節,引入幽靈卷積模塊降低模型參數,在水下垃圾數據集上檢測精度達到93.7%,但數據集中目標類別較少。
面對在復雜環境中海洋垃圾實時高精度檢測的需求,本文在YOLOX 和上述研究的基礎上提出一種改進的水下垃圾目標檢測算法。采用空間到深度卷積(Space-to-Depth Convolution,SPD_C)模塊代替原YOLOX主干網絡的下采樣模塊以提高對低分辨率圖像和小目標的特征提取能力,并在主干網絡中通過融合空洞空間卷積池化金字塔(Atrous Spatial Pyramid Pooling,ASPP)模塊來增強深層特征提取能力,同時在頸部網絡引入幽靈混洗(Ghost Shuffle,GS)卷積模塊和Vov-GSCSP(Vov Ghost Shuffle Cross Stage Partial,Vov-GSCSP)模塊以捕獲更多的多尺度特征信息,綜合提升算法的檢測精度。
YOLOX 主要包括主干網絡、頸部網絡及預測端3 個部分,其網絡結構如圖1 所示。主干網絡使用結合聚焦結構的跨階段瓶頸網絡,在下采樣的過程中通過切片的方式保證信息的完整性,提取到的特征信息包含較多的位置信息和細節信息,但語義信息較少,之后經過卷積操作得出特征圖。頸部網絡部分采用特征金字塔網絡+路徑聚合網絡結合的結構,實現上采樣特征及下采樣特征融合,加強了網絡特征的融合能力。預測端部分采用了基于無錨節點技術的解耦頭結構,收斂速度更快、檢測精度更高,最后利用簡化標簽分配策略方法求解最優解并完成最終預測。

圖1 YOLOX 網絡結構
卷積神經網絡的普通卷積和池化會引起細粒度信息丟失,導致其在低分辨率圖像或小物體的目標檢測任務中的檢測性能迅速下降。針對這一問題,本文引入了空間到深度(Space-to-Depth,SPD)模塊[12],其結構如圖2 所示,其中輸入特征圖的尺寸為S×S×C1,切割出子特征圖特征序列為

圖2 SPD 模塊結構
f0,0=X[0:S:scale,0:S:scale],
f1,0=X[1:S:scale,0:S:scale],
…,
fscale-1,0=X[scale-1:S:scale,0:S:scale];
f0,1=X[0:S:scale,1:S:scale],
f1,1=X[1:S:scale,1:S:scale],
…,
fscale-1,1=X[0:S:scale,scale-1:S:scale];
…,
f0,scale-1=X[0:S:scale,scale-1:S:scale],
f1,scale-1=X[1:S:scale,scale-1:S:scale],
…,
fscale-1,scale-1=X[scale-1:S:scale,scale-1:S:scale].
以scale=2 為例說明SPD 模塊,可得到4 個尺寸都是S/2×S/2×C1 的子特征映射圖,將該4 個子特征圖按照通道維度進行拼接操作,得到尺寸為S/2×S/2×4C1 的新特征圖,最后進行卷積操作得到尺寸為S/2×S/2×C2 的輸出特征圖。
本文結合SPD 模塊提出了SPD_C 下采樣模塊,以代替YOLOX 主干網絡中的下采樣模塊。其結構如圖3 所示。對輸入尺寸為S×S×C 的特征圖進行步長為2 的下采樣操作得到尺寸為S/2×S/2×C 的特征圖;同時對輸入特征進行通道壓縮操作,得到尺寸為S×S×C/4 的特征圖,將該特征圖輸入SPD 模塊,得到尺寸為S/2×S/2×C 的特征圖。將上述分別得到的特征圖進行拼接操作,得到尺寸為S/2×S/2×2C 的特征圖,將上述特征圖進行卷積核大小為1、步長為1 的卷積操作,得到輸出尺寸為S/2×S/2×2C 的特征圖。

圖3 SPD_C 下采樣模塊
為了在保持檢測精度的同時輕量化模型,在YOLOX 頸部網絡中引入一種新的輕量級卷積技術——GS 卷積模塊[13],其網絡結構如圖4 所示。該模塊結合了深度可分離卷積(Depth-Wise Convolution,DWConv)[14]和標準卷積(Standard Convolution,SC),通過DWConv 降低計算復雜度,弱化因其特征提取和融合能力低導致的識別精度低的問題,將SC 輸出的特征圖執行DWConv 操作,生成的特征圖與其拼接,最后進行混洗(Shuffle)操作,得到輸出特征圖。

圖4 GS 卷積模塊結構
在頸部網絡中引入Vov-GSCSP 模塊替換C_1(A Convolution BatchNorm SiLu,C_1)塊,進一步實現模型輕量化。Vov-GSCSP 模塊通過采用一次性聚合方法設計,在保持檢測精度的基礎上提高網絡模型的推理速度。Vov-GSCSP 模塊結構如圖5 所示。

圖5 Vov-GSCSP 模塊
在YOLOX 模型中,圖像通過普通卷積進入下采樣層時尺寸減小,通過上采樣恢復圖像時會丟失部分細節信息。對于低分辨率的圖像,尺寸較小的圖像,經卷積操作后,得到的特征圖變小,大大減少了特征圖中包含的空間信息,嚴重影響了目標檢測精度。針對上述問題,引入ASPP 模塊[17],其結構如圖6 所示。其利用3 種不同空洞率R的空洞卷積并行采樣,獲得不同尺寸的感受野,幫助網絡獲取不同尺度目標的信息,從而提高檢測精度。

圖6 ASPP 模塊
改進的YOLOX 網絡結構如圖7 所示。該結構利用主干網絡提取圖像的特征信息;在主干網絡引入ASPP 模塊代替空間金字塔池化(Spatial Pyramid Pooling,SPP)模塊,改進了對深層特征圖的感受野,增加對大物體特征的關注度;針對低分辨率圖像頻繁下采樣會導致細節特征信息易丟失的問題,采用SPD_C模塊代替網絡中下采樣模塊;在頸部網絡中添加了Vov-GSCSP 模塊和GS 卷積模塊,在減少參數量的同時保證檢測精度,使算法更易于部署在邊緣設備。

圖7 改進的YOLOX 網絡結構
該方法實驗相關硬件配置和模型參數如表1 所示。首先,對原始數據集應用了一系列的圖像旋轉、裁剪、混合[15]、馬賽克[16]等數據增強技術,以降低低圖像分辨率的影響,確保能夠有效地提取圖像特征,隨后將處理后的測試數據集輸入優化后的網絡模型進行訓練。在訓練階段,所有的模型都被訓練了150 個世代。輸入圖片大小為640×640,批處理大小設為16,初始學習率為1.0×10-2。

表1 相關硬件配置和模型參數
實驗采用TrashCan 數據集[18],該數據集共22 個類別,屬于4 個大類:垃圾、機器、生物和未知物品。數據集共包括7212 張圖像,其中包括訓練集6065 張圖像和驗證集1147 張圖像,該數據集中的圖像格式為jpg,分辨率為480×270,圖8 為數據集中的一些圖像。
本文使用目標檢測的通用評價指標評估模型,主要選取的指標為:準確率(Precision,P)、召回率(Recall,R)、平均準確率(Average Precision,AP)、平均精度均值(mean Average Precision,mAP)。AP值綜合考量了不同交并比閾值與置信度閾值條件下的目標檢測準確率。
其中,真正例(True Positive,TP)指檢測目標的實際類別與預測結果相同,即所有正例;假正例(False Positive,FP)指檢測目標被預測為正例但為反例;假反例(False Negative,FN)指檢測目標被預測為反例但實際上是正例的情況。
本文使用AP和mAP來評估模型的準確性。AP值是不同召回率下精度的平均值,即PR曲線下面積的大小,mAP值是所有目標類的平均精度的平均值。
其中,P、R和N分別表示精度、召回率和所有類別中的實例總數。檢測精度使用了2 個指標—mAP50、mAP,其中mAP50 代表置信水平為0.5 時的均值平均精度。
為了驗證改進的YOLOX 模型的功能,本文使用YOLOX-S 網絡作為基線網絡,在保持原有結構不變的同時,逐個替換要改進的模塊,通過對比不同網絡的測試結果來評估其有效性,綜合實驗結果如表2 所示。其中:“√”表示在網絡實驗中使用了該改進方法,“-”表示未使用該改進方法。從表2 可以得出,與基線網絡YOLOX-S 相比,在只利用SPD_C 模塊的條件下,mAP和mAP50 分別提高了1.7%和2.0%,雖然檢測時間有所增加,但精度較高,證明SPD_C 下采樣模塊能有效提高網絡特征提取能力;在上述基礎上,通過在頸部網絡添加GS 卷積模塊和Vov-GSCSP 模塊,mAP和mAP50 分別提升了0.6%和0.2%;之后,在加入ASPP 模塊之后,mAP50 提升了1.1%,且推理速度有所提高,降低了模型部署所需的硬件要求。綜上所述,在綜合應用以上3 種改進方法后,mAP可達到67.4%,較基線網絡提升了3.1%,雖然檢測效率有少量降低,但檢測精度得到較大的提升。

表2 使用不同的對象檢測方法
為證明本文方法在性能上的優越性,在同一數據集上同時用YOLOX-S、YOLOV5-S、YOLOV7、SSD[19]和Faster-RCNN[20]等多種模型進行了測試和對比,表3 為不同算法模型的性能對比結果。

表3 常用目標檢測模型性能對比
從表3 可知,與上述5 種算法相比,改進后的YOLOX 算法在TrashCAN 數據集中測試的綜合性能最好,測試效果得到了優化,證明本文提出的模型在目標檢測中取得了良好的效果,與原始模型相比,其性能得到了提高。
測試集中部分圖像檢測效果圖如圖9 所示??梢钥闯鰣D像中的垃圾目標均被檢測出,證明本文改進的網絡模型在水下垃圾的檢測中具有明顯的有效性,可完成精度較高的目標檢測。

圖9 部分圖像檢測效果圖
總之,本文提出一種基于改進YOLOX-S 網絡的水下垃圾檢測算法,其通過引入SPD_C 模塊、GS 卷積模塊和Vov-GSCSP 模塊、ASPP 模塊等方法增強對目標的特征提取能力,提高了檢測精度,從而為實現后續的海洋垃圾清除任務提供技術支撐。