摘? 要:為掌握水下海珍品分布情況,本文結(jié)合YOLOv5s算法和注意力機制,得到一種新的輕量化目標檢測模型——SE-YOLO模型。實驗結(jié)果顯示,相較于原YOLOv5s模型,該模型的準確率提升了1.1%、召回率提升了0.7%,并且在設計對比實驗的過程中,發(fā)現(xiàn)傳統(tǒng)圖像增強算法并不具備提升目標檢測準確度的可能。由此可見,本文提出的改進模型符合輕量化模型標準并兼具檢測準確度高的優(yōu)點,能夠很好地完成對水下海珍品資源評估的任務。
關(guān)鍵詞:深度學習;海珍品檢測;YOLOv5
中圖分類號:TP391.4? ? 文獻標識碼:A 文章編號:2096-4706(2021)18-0080-06
Abstract: In order to master the distribution of underwater treasures, a new lightweight target detection model, SE-YOLO model, is obtained by combining YOLOv5s algorithm and attention mechanism. The experimental results show that compared with the original YOLOv5s model, the accuracy of the model is increased by 1.1% and the recall rate is increased by 0.7%. And in the process of designing the comparison experiment, it is found that the traditional image enhancement algorithm does not have the possibility to improve the accuracy of the target detection. It can be seen that the improved model proposed in this paper conforms to the lightweight model standard and has the advantages of high detection accuracy, and can well complete the task of evaluating underwater treasure resources.
Keywords: deep learning; sea treasure detection; YOLOv5
0? 引? 言
海珍品具有很高的營養(yǎng)價值和經(jīng)濟價值,有效獲取海珍品具有重要意義。在獲取海珍品的過程中,需要掌握海珍品的分布范圍以及對海珍品進行資源評估。這些任務需要耗費大量的人力和物力。近些年來,深度學習[1,2]發(fā)展迅速,誕生了基于CNN(Convolutional Neural Networks)的目標檢測算法[3-7]。目標檢測算法能夠定位圖像中的目標,并且能夠做到將目標分類。為此,目標檢測算法在漁業(yè)與農(nóng)業(yè)方面擁有廣泛的發(fā)展前景[8-14]。使用目標檢測算法對海珍品進行檢測,能夠有效地減少人力成本和時間成本。袁利毫等[15]使用YOLOv3算法對水下機器人采集的圖片進行訓練,實現(xiàn)對水下小目標的識別與檢測。趙德安等[16]通過在投餌船上安裝攝像頭,使用YOLOv3對水下河蟹進行識別與檢測。Cai Kewei[17]等使用YOLOv3算法實現(xiàn)對紅鰭東方鲀的精確識別與計數(shù)。然而,為了準確地掌握水下海珍品的分布情況以及對海珍品進行資源評估,需要設計開發(fā)出檢測精度更高、檢測速度更快的目標檢測模型。因此,本文在YOLOv5目標檢測算法的基礎上,提出一種檢測精度更高的SE-YOLO網(wǎng)絡結(jié)構(gòu)作為目標檢測算法。相較于原模型,本模型加入了注意力機制來優(yōu)化其對目標關(guān)鍵特征的提取能力。實驗結(jié)果表明,本文提出的模型不僅保持模型輕量化并且精確度更高。
1? 海珍品檢測框架
1.1? YOLOv5網(wǎng)絡模型
YOLOv5目標檢測算法是一種能夠直接預測目標邊界框和類別的端到端網(wǎng)絡模型。該算法將圖片分成S×S的網(wǎng)格,首先判斷該網(wǎng)格內(nèi)是否包含物體框的中心點,再預測該物體類別的置信度和邊界框的坐標,最后通過真實標注框?qū)︻A測框進行邊框回歸,實現(xiàn)對目標物體的檢測。YOLOv5有四種網(wǎng)絡結(jié)構(gòu),分別為YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x,網(wǎng)絡大小依次增大,其模型大小可通過寬度參數(shù)和深度參數(shù)來控制。寬度參數(shù)用來控制網(wǎng)絡模型輸出層的通道數(shù),深度參數(shù)用來控制網(wǎng)絡模型中卷積層的層數(shù)。
1.2? SE-YOLO網(wǎng)絡模型
為了進一步提升目標檢測模型的識別精度,本文提出SE-YOLO目標檢測模型。SE-YOLO模型結(jié)合YOLOv5s網(wǎng)絡結(jié)構(gòu)和SE(Squeeze-and-Excitation Networks)[18]注意力模塊,強化對檢測目標有用特征的提取,以此來提升網(wǎng)絡檢測的精度,減少漏檢和錯檢的概率。SE是通道注意力機制,它屬于空間注意力機制。在卷積網(wǎng)絡中每層都有卷積核,每一個卷積核對應一個通道,通道包含目標的一些特征。在SE注意力機制的作用下,主干網(wǎng)絡會根據(jù)全局信息為這些富有特征的通道分配權(quán)重,重點關(guān)注對檢測目標有用的特征,抑制與檢測目標無關(guān)的特征。此外,SE的優(yōu)點是其屬于輕量化模型,不需要增加過多的計算量,在保證模型運算速度的同時提升模型的精度。如表1所示,加入SE注意力模塊后,僅僅增加了少量的參數(shù)。
SE-YOLO在YOLOv5s中加入了SE注意力機制,它是由Backbone、Neck和Head三部分組成的。Backbone是SE-YOLO的主干網(wǎng)絡,由Darknet53、CSPNet網(wǎng)絡和SE注意力模塊構(gòu)成,用來提取特征圖中的特征。Neck部分使用PANet[19]來生成特征金字塔。使用PANet不僅能夠融合多層特征,增強模型對不同尺度對象的檢測能力,還能在不受損失的情況下將淺層信息傳遞給深層,從而防止淺層的位置信息丟失過多。Head是模型的輸出端,能夠生成目標的邊界框并預測類別。YOLOv5的檢測頭采取了多尺度輸出,分別通過32倍下采樣、16倍下采樣、8倍下采樣輸出13×13、26×26、52×52三個尺度的特征圖來檢測大、中、小的目標。gzslib202204051155在SE-YOLO中,主干網(wǎng)絡的作用是提取特征,SE的作用是分配特征,所以在SE-YOLO模型中,將SE模型加在backbone后面,使模型所提取到的特征信息在輸入到Head之前,不會因為經(jīng)過多次卷積而丟失,其結(jié)構(gòu)如圖1所示。其中U是特征圖,C是特征圖的通道,H和W是特征圖的高和寬。
1.3? 整體實驗框架
本文的總體框架圖如圖2所示。SE-YOLO目標檢測模型的輸入端采用Mosaic數(shù)據(jù)增強的方法。Mosaic在對4張圖像進行隨機翻轉(zhuǎn)、裁剪、排布后,再將它們拼接在一起,不僅使數(shù)據(jù)集更加豐富,還使模型在每次訓練時都能夠?qū)W習到目標的多樣性,提升模型學習特征的能力。在數(shù)據(jù)增強之后,將圖片輸入到SE-YOLO網(wǎng)絡結(jié)構(gòu)中進行切片操作。切片操作即是在圖片中每隔一個像素取一個值,以此將圖片分成四份并將這四張圖片的通道拼接在一起,然后經(jīng)過卷積后得到二倍下采樣的特征圖,這樣大大減小了計算量使得模型更加輕量化。執(zhí)行完切片操作后,特征圖進入SE-YOLO的主干網(wǎng)絡,主干網(wǎng)絡由若干卷積單元、跨層單元和SE注意力模塊構(gòu)成,主要用來提取特征圖的特征??鐚訂卧褂昧薈SPNet網(wǎng)絡結(jié)構(gòu),將特征圖分成兩部分,一部分做卷積操作,另一部分與前一部分的卷積結(jié)果拼接并進行特征融合。在跨層單元后加入SE注意力模塊。SE通過學習全局的特征信息,可為海珍品關(guān)鍵的特征信息分配更多的權(quán)重,避免在后續(xù)執(zhí)行卷積操作時,出現(xiàn)丟失關(guān)鍵特征信息進而導致檢測精度下降的問題。SE-YOLO延續(xù)了YOLOv5目標檢測的方式,針對不同大小的目標,設置三個不同尺度的檢測頭對目標進行檢測。因此,在SE-YOLO三個輸出尺度前分別加入SE注意力模塊,保證特征圖在被輸入檢測頭之前,不會因為卷積操作而損失關(guān)鍵特征信息。在目標檢測時,尤其要注意小目標的檢測,小目標在特征圖的卷積操作過程中更容易丟失目標信息。所以加入SE注意力模塊不僅能提升模型的精度,還能優(yōu)化模型對小目標檢測的性能。特征圖經(jīng)過主干網(wǎng)絡提取特征后,SE-YOLO網(wǎng)絡模型采取上采樣和拼接的方式,將不同尺度的特征進行特征融合。在卷積網(wǎng)絡中,特征圖經(jīng)過的卷積層數(shù)越多,包含的目標語義信息越多,但位置信息越少,因為像素點會隨著卷積次數(shù)的增加而減少。相反,淺層的特征圖像素點越多,其所包含的位置信息越多,語義信息越少。因此要使用多尺度的特征融合,使特征圖既包含語義信息又包含豐富的位置信息。特征圖經(jīng)過三個尺度的特征融合后分別輸入到52×52×225、32×32×225、16×16×225三個尺度的檢測頭中,分別對小目標、中目標、大目標做獨立檢測,最后得到三個尺度的輸出結(jié)果。每個尺度的輸出都攜帶了通道數(shù)、邊框坐標、類別置信度以及目標類別數(shù)的信息。
2? 實驗方法與比較
2.1? 數(shù)據(jù)集
目標檢測模型需要大量的圖像來進行訓練,學習目標的特征。本文使用的數(shù)據(jù)集來自鵬城實驗主辦的全國水下機器人大賽——水下目標檢測算法賽的官方數(shù)據(jù)集。該數(shù)據(jù)集涵蓋了潛水員在水下用攝像機拍攝得到的數(shù)據(jù)(包含海參、海膽、扇貝以及海星四種目標的數(shù)據(jù))。數(shù)據(jù)集的圖像存儲格式為JPG格式,圖像高度為405像素、寬度為720像素。圖片的標注信息儲存在txt文件中,保存的內(nèi)容包括目標的種類、檢測框的X、Y軸中心坐標以及寬度和高度。數(shù)據(jù)集標注樣例如圖3所示。
2.2? 模型訓練
在本實驗中,使用至強CPU、TiTanGPU以及兩根16 GB內(nèi)存條作為硬件設備,采用Windows10(64位)操作系統(tǒng)和Pytorch框架作為實驗的運行環(huán)境。首先使用官方的YOLOv5s權(quán)重作為預訓練模型來進行遷移學習,加快模型訓練速度。訓練過程中的訓練集樣本為6 737張圖像,驗證集樣本為2 020張圖像,在每輪的訓練中進行分批次訓練,每一批次訓練16張圖片,共訓練200輪。為避免模型過早地發(fā)生過擬合現(xiàn)象,使用權(quán)重衰減以及對學習率熱身的方法。學習率熱身即首先讓模型在開始訓練時以很小的學習率來學習,熟悉模型后使用初始設置的學習率進行學習,經(jīng)過多次訓練后,學習率會慢慢減小,學習率變化呈現(xiàn)先上升到平穩(wěn)再到下降的趨勢。權(quán)值衰減速率設置為0.000 5,初始學習率設置為0.01。
2.3? 圖像增強算法對比實驗
海珍品大多生長在水下,與生長在陸地環(huán)境中不同,當光線射入水中時,光的紅波波長最長、穿透能力最弱,會發(fā)生衰減,而藍波和綠波波長較短、穿透能力更強,不會發(fā)生衰減,所以會導致水下圖像呈現(xiàn)藍綠色的情況。圖像增強算法通過提升圖像對比度、恢復或增強圖像色彩等手段來提升圖像的質(zhì)量,以此來解決水下圖像因光線在水中的衰減而產(chǎn)生的色偏現(xiàn)象。目前傳統(tǒng)的圖像增強算法有很多,如基于Retinex[20]原理的MSRCR算法、ICM[21]算法、RGHS[22]算法,其圖像增強效果如圖4所示。圖4(a)、(b)、(c)、(d)分別為原圖、MSRCR增強效果圖、RGHS增強效果圖、ICM增強效果圖。僅憑肉眼是無法判斷增強效果好壞的,還需要進行定量分析。本文使用PSNR和UIQM兩種評價指標來評判圖像增強算法的性能優(yōu)劣。PSNR是一種圖像的峰值信噪比,用以評價圖像的客觀標準,UIQM是一種水下圖像質(zhì)量評價指標。兩種指標的值越高說明圖像的質(zhì)量越高,上述圖像增強算法評價指標的值如表2所示。結(jié)合圖和表可知,MSRCR圖像增強算法各個指標的值均為最高,因此MSRCR圖像增強算法的效果最好。
2.4? 目標檢測模型對比實驗
通過上述圖像增強效果比較可知,MSRCR算法的效果最優(yōu)。為驗證圖像增強算法對目標檢測精度的影響,并且驗證本文提出的SE-YOLO目標檢測模型性能的強弱,本文共設計三種模型來做對比實驗。將原版YOLOv5s目標檢測模型作為模型I,將結(jié)合了MSRCR圖像增強算法的YOLOv5s目標檢測模型作為模型Ⅱ,將本文提出的SE-YOLO目標檢測模型作為模型Ⅲ。gzslib2022040511553? 實驗結(jié)果與分析
本文采用的評價標準是平均精度均值(Mean Average Precision)、準確率(Precision)和召回率(Recall)三個指標來評價模型。準確率P和召回率R的公式分別為式(1)和式(12):
其中,TP為模型正確檢測出的正樣本的個數(shù);FP為模型錯誤檢測出的正樣本的個數(shù);FN表示模型預測為負樣本,但真實值為正樣本的個數(shù);AP是通過P和R的點組合后,所畫出曲線的下面積,公式為:
平均精度均值是對所有類別的檢測精度取均值,它能夠更為直觀地衡量目標檢測效果的好壞,其值越高說明模型性能越強,簡稱mAP,公式為:
三組模型分別經(jīng)過200輪的訓練之后,得到mAP0.5、mAP0.95、Precision和Recall四個評價指標,最終評價參數(shù)如表3所示。
由圖5可知,模型在經(jīng)過100輪的訓練后,mAP趨于平穩(wěn),不再有較大的提升,將100輪訓練之后的結(jié)果圖放大,得到圖6。從圖6中可以直觀地看出,加入了SE注意力模塊的模型Ⅲ的性能優(yōu)于使用圖像增強算法的模型Ⅱ和使用原版YOLOv5s的模型I。如表3所示,在mAP@0.5方面,模型I、模型Ⅱ、模型Ⅲ的值分別為83.7%、82.4%、84.3%,模型Ⅲ的mAP值最高。在準確率方面,模型I、模型Ⅱ、模型Ⅲ的值分別為86.0%、86.1%、87.1%,模型Ⅲ分別比模型I和模型Ⅱ提升了1.1和1.0個百分點。在召回率方面,模型I、模型Ⅱ、模型Ⅲ的值分別為77.1%、76.5%、77.8%,模型Ⅲ分別比模型I和模型Ⅱ提升了0.7和1.3個百分點。由此可見,加入SE注意力機制能夠提高目標檢測模型的性能。
通過上述實驗分析可以看出,使用了圖像增強算法的模型Ⅱ并沒有取得良好的效果,甚至導致mAP下降,證明傳統(tǒng)的圖像增強算法對于目標檢測算法并不奏效。但是加入了SE注意力模塊的模型Ⅲ在各項評價指標中均得到了提升。如圖7所示,使用訓練好的權(quán)重模型對水下圖片進行檢測,模型Ⅲ能夠檢測出模型I和模型Ⅱ漏檢的目標。這說明添加注意力機制能夠提升目標檢測算法的精度,對目標檢測算法的性能有較大的提升,并且在幾乎不改變模型大小和增加計算量的條件下,在使模型保持輕量化的同時,提升目標檢測模型的性能,能夠有效地對水下海珍品資源進行評估。
4? 結(jié)? 論
為解決水下海珍品檢測的問題,本文提出了改進的YOLOv5目標檢測網(wǎng)絡框架。首先在輸入階段使用Mosaic數(shù)據(jù)增強來豐富數(shù)據(jù)集,提升模型的泛化能力,避免過擬合現(xiàn)象。然后在原YOLOv5結(jié)構(gòu)中添加SE注意力機制,用以提升目標檢測模型的精度,而在取得性能提升的同時,增加的計算代價幾乎可以忽略不計。最后通過設置三組模型來做對比實驗,不僅證明了改進的SE-YOLO模型優(yōu)于YOLOv5s模型,還證明了傳統(tǒng)的圖像增強算法并不能提升目標檢測模型的精度。綜上所述,本文提出的SE-YOLO目標檢測模型能夠有效地檢測水下海珍品,可有效降低人力成本和時間成本。
參考文獻:
[1] AGGARWAL C C.Neural Networks and Deep Learning [M].Cham:Springer,2018.
[2] LECUN Y,BOTTOU L,BENGIO Y,et al. Gradient-based learning applied to document recognition [J].Proceedings of the IEEE,1998,86(11):2278-2324.
[3] REDMON J,DIVVALA S,GIRSHICK R,et al. You Only Look Once:Unified,Real-Time Object Detection [C]//IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Las Vegas:IEEE,2016:8418.
[4] REDMON J,F(xiàn)ARHADI A.YOLO9000:Better,F(xiàn)aster,Stronger [C]//IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Honolulu:IEEE,2017:6517-6525.
[5] REDMON J,F(xiàn)ARHADI A. YOLOv3:An Incremental Improvement [EB/OL].[2021-09-02] http://alumni.soe.ucsc.edu/~czczycz/src/YOLOv3.pdf.
[6] LIU W,ANGUELOV D,ERHAN D,et al. SSD:Single Shot MultiBox Detector [C]//Computer Vision – ECCV 2016.Cham:Springer,2016:21-37.
[7] REN S Q,HE K M,GIRSHICK R,et al. Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.
[8] 王柯力.深度學習在漁業(yè)圖像識別中的應用研究 [D].上海:上海海洋大學,2018.
[9] 閆建偉,趙源,張樂偉,等.改進Faster-RCNN自然環(huán)境下識別刺梨果實 [J].農(nóng)業(yè)工程學報,2019,35(18):143-150.gzslib202204051155[10] 易詩,李欣榮,吳志娟,等.基于紅外熱成像與改進YOLOV3的夜間野兔監(jiān)測方法 [J].農(nóng)業(yè)工程學報,2019,35(19):223-229.
[11] 李善軍,胡定一,高淑敏,等.基于改進 SSD 的柑橘實時分類檢測 [J].農(nóng)業(yè)工程學報,2019,35(24):307-313.
[12] KAVETI P,SINGH H. Towards Automated Fish Detection Using Convolutional Neural Networks [C]//OCEANS - MTS/IEEE Kobe Techno-Oceans.Kobe:IEEE,2018:1-6.
[13] 郭祥云,王文勝,劉亞輝,等.基于深度殘差網(wǎng)絡的水下海參自動識別研究 [J].數(shù)學的實踐與認識,2019,49(13):203-212.
[14] LI X,SHANG M,HAO J,et al. Accelerating fish detection and recognition by sharing CNNs with objectness learning [C]//OCEANS 2016 - Shanghai.Shanghai:IEEE,2016:1-5.
[15] 袁利毫,昝英飛,鐘聲華,等.基于YOLOv3的水下小目標自主識別 [J].海洋工程裝備與技術(shù),2018,5(S1):118-123.
[16] 趙德安,劉曉洋,孫月平,等.基于機器視覺的水下河蟹識別方法 [J].農(nóng)業(yè)機械學報,2019,50(3):151-158.
[17] CAI K W,MIAO X Y,WANG W,et al. A modified YOLOv3 model for fish detection based on MobileNetv1 as backbone [J].Aquacultural Engineering,2020:91:102117.
[18] ROY A G,NAVAB N,WACHINGER C. Concurrent Spatial and Channel Squeeze & Excitation in Fully Convolutional Networks [C]//Cham:Springer,2018:421-429.
[19] LIU S,QI L,QIN H F,et al. Path Aggregation Network for Instance Segmentation [C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition.Salt Lake City:IEEE,2018:8759-8768.
[20] RAHMAN Z,JOBSON D J,WOODELL G A. Multi-scale retinex for color image enhancement [C]//.Proceedings of 3rd IEEE International Conference on Image Processing.Lausanne:IEEE,1996:1003-1006.
[21] KASHIF I,SALAM R A,AZAM O,et al. Underwater Image Enhancement Using an Integrated Colour Model [J].Iaeng International Journal of Computer Science,2007,34(2):239-244.
[22] HUANG D M,WANG Y,SONG W,et al. Shallow-water Image Enhancement Using Relative Global Histogram Stretching Based on Adaptive Parameter Acquisition [C]//Multimedia Modeling.Cham:Springer,2018:453-465.