陳宇梁,董紹江,朱孫科,孫世政,胡小林
1.重慶交通大學(xué)機(jī)電與車輛工程學(xué)院,重慶400074
2.重慶工業(yè)大數(shù)據(jù)創(chuàng)新中心有限公司,重慶404100
我國漁業(yè)資源豐富,通過水下圖像進(jìn)行水下生物檢測對于漁業(yè)資源勘測具有重要意義。目前普遍采用將攝像頭放入水中的方式進(jìn)行水下圖像獲取,該方式效率低且難以檢測深水區(qū)域,而通過水下機(jī)器人搭載攝像頭對海洋漁業(yè)資源進(jìn)行探索能夠在提高效率,并且能夠?qū)ι钏h(huán)境進(jìn)行廣泛探測[1]。傳統(tǒng)目標(biāo)檢測方法通過人工進(jìn)行特征提取后再分類,效率極低。自卷積神經(jīng)網(wǎng)絡(luò)被提出以來,基于深度學(xué)習(xí)的目標(biāo)檢測方法能夠在同一個網(wǎng)絡(luò)中進(jìn)行不同尺度的特征提取,使目標(biāo)檢測的效率得到大幅提升,進(jìn)而獲得廣泛應(yīng)用[2]。
目前主流的目標(biāo)檢測方法根據(jù)網(wǎng)絡(luò)檢測順序分為“雙階段(Two-stage)”和“單階段(One-stage)”兩類[3]。“Two-stage”目標(biāo)檢測算法中具有代表性的是Girshick等[4]提出的超快區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster R-CNN),該類算法基于候選區(qū)域進(jìn)行目標(biāo)分類,資源消耗較大,檢測速度也有待提高。為了提高模型的檢測速度,減少資源的消耗,Redmon 等[5]提出了基于深度學(xué)習(xí)的YOLO(You Only Look Once)算法,該算法為“One-stage”目標(biāo)檢測算法,將區(qū)域預(yù)測和分類兩個步驟整合至稠密卷積神經(jīng)網(wǎng)絡(luò)(DCNN)中完成,檢測速度得到大大提升,但檢測精確度不如Faster R-CNN。針對精確度,Liu等[6]提出了單階段多尺度目標(biāo)檢測(single shot multibox detector,SSD),通過使用不同的特征圖對不同尺寸的物體進(jìn)行檢測的多層預(yù)測完成目標(biāo)檢測,但檢測速度方面未得到提升,仍難以達(dá)到實(shí)時性要求。針對檢測速率和精確度較低的問題,Redmon 等[7]提出的YOLOv3(YOLO version 3)采用將深層特征和淺層特征相融合的殘差單元模塊(Res Unit)融入到網(wǎng)絡(luò)中,對檢測速度和精確度都有大幅提升,達(dá)到實(shí)時檢測的條件。因此許多研究人員基于單階段目標(biāo)檢測算法對水下目標(biāo)檢測進(jìn)行研究。袁利毫等[8]通過將YOLOv3用于水下目標(biāo)檢測以輔助水下機(jī)器人進(jìn)行水下工作。高英杰[9]基于SSD 算法結(jié)合深度分離可變形卷積模塊提高了水下目標(biāo)檢測的精度,但大幅增加模型的參數(shù)量后降低了檢測速度,實(shí)時性較差。趙德安等[10]提出圖像預(yù)處理與YOLOv3 算法相結(jié)合的方式提高了對河蟹的檢測精度,但對特征模糊的水下小目標(biāo)的識別精度較低。劉萍等[11]基于YOLOv3算法利用GAN(generative adversarial networks)模型提高對海洋生物的識別能力,但該方法提高了訓(xùn)練難度以及對數(shù)據(jù)集的要求。
但該類算法并未充分利用水下目標(biāo)的特征,并且水下圖像存在色彩失真和紋理不清晰,且存在目標(biāo)尺寸較小或曝光問題時檢測精度影響較大,存在漏檢和誤檢的問題。
目前YOLO系列已優(yōu)化到Y(jié)OLOv5,該網(wǎng)絡(luò)在對于正常場景下的數(shù)據(jù)集的檢測精確度和速度上均獲得更好的效果,但對目標(biāo)尺寸較為敏感,在小目標(biāo)的檢測檢測任務(wù)中效果表現(xiàn)較差,而水下圖像中由于拍攝位置等問題極易出現(xiàn)小目標(biāo)[12]。但YOLOv5極為精簡,難以針對水下圖像融入特征提取模塊,因此本文將基于YOLOv3進(jìn)行模型改進(jìn)。
首先,針對使用人造光源改善淺海中光線較暗時易導(dǎo)致圖像中距離光源較近物體出現(xiàn)局部過曝以及小目標(biāo)難以檢測的問題,本文在YOLOv3網(wǎng)絡(luò)中加入殘差卷積塊注意力模塊(residual convolutional block attention module,Res CBAM),增強(qiáng)對目標(biāo)的特征提取能力;然后,針對淺海中水下光線衰弱嚴(yán)重帶來的圖像色彩失真和圖像毛糙等影響生物目標(biāo)檢測識別效果的問題[13],本文采用跨階段局部模塊(cross stage partial block,CSP Block)增強(qiáng)特征提取,提高檢測精確度;最后,針對水下生物目標(biāo)尺寸差異大且數(shù)據(jù)集有限的情況,為提高小目標(biāo)和過大目標(biāo)的檢測精確度,引入了完全交并比(complete intersection over union,CIoU)[14]的預(yù)測框損失函數(shù)進(jìn)行訓(xùn)練,以增強(qiáng)預(yù)測框的適應(yīng)能力,提高目標(biāo)檢測精確度。
YOLOv3模型主要由主干(backbone)、連接頸(neck)和預(yù)測頭(head)三個部分組成,結(jié)構(gòu)如圖1所示。
圖1 YOLOv3模型結(jié)構(gòu)圖Fig.1 YOLOv3 module structure diagram
YOLOv3 的主要由卷積模塊(CBL)和殘差單元模塊(Res Unit)組成。darknet-53 網(wǎng)絡(luò)是YOLOv3 模型的主干部分,負(fù)責(zé)圖像的特征提取。其中,卷積模塊由卷積(Conv)層、標(biāo)準(zhǔn)歸一化(BN)層和Leaky ReLU 激活函數(shù)組成;殘差單元模塊如圖2所示,基于經(jīng)典殘差結(jié)構(gòu),由卷積模塊和相加融合(Add)模塊組成,計(jì)算如式(1):
圖2 殘差單元模塊結(jié)構(gòu)圖Fig.2 Res Unit structure diagram
y=CBL3×3(CBL1×1(x))+x(1)其中,x表輸入的圖像特征,y代表經(jīng)提取后輸出的圖像特征,CBL(x)計(jì)算如式(2):
其中,CBL模塊結(jié)構(gòu)如圖3所示。
圖3 卷積模塊結(jié)構(gòu)圖Fig.3 CBL structure diagram
連接頸部分在YOLOv3 中將主干部分輸出特征進(jìn)行特征融合。
預(yù)測頭部分起目標(biāo)檢測識別的作用,通過連接頸部分輸出的多尺度特征生成預(yù)測框和識別類型作為目標(biāo)檢測識別結(jié)果輸出。
本文將YOLOv3 與所構(gòu)造的跨階段局部模塊和殘差卷積塊注意力模塊相結(jié)合,提出了YOLO-fish 結(jié)構(gòu),如圖4所示,并使用CIoU進(jìn)行損失計(jì)算。
圖4 YOLO-fish網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.4 YOLO-fish network structure diagram
其中,將YOLOv3中的殘差單元均修改為跨階段局部模塊;并在網(wǎng)絡(luò)的第15、21和26層加入了殘差卷積塊注意力模塊。
YOLOv3 使用的殘差單元模塊在對特征進(jìn)行提取時易將水下圖像中的噪聲帶到下一層網(wǎng)絡(luò)使特征信息冗雜,掩蓋有用特征。為提高網(wǎng)絡(luò)的特征提取能力,本文借鑒跨階段局部網(wǎng)絡(luò)(cross stage partial network,CSPNet)[15]的結(jié)構(gòu),提出跨階段局部模塊(CSP Block),結(jié)構(gòu)如圖5所示。
圖5 跨階段局部模塊結(jié)構(gòu)圖Fig.5 CSP Block structure diagram
跨階段局部模塊在通過融合多通道特征對淺海水下圖像進(jìn)行深層特征提取的同時,避免了殘差網(wǎng)絡(luò)帶來的信息冗余問題,提高了特征提取能力;并使梯度路徑長度最小化,提高了誤差反向傳播的傳播效率。
將YOLOv3 網(wǎng)絡(luò)中的殘差單元模塊替換為跨階段局部模塊,緩解了其中多層殘差單元模塊堆疊提取的深層特征被淺層特征覆蓋的問題,提高了淺層特征與深層特征的融合。殘差單元模塊的計(jì)算如式(3)所示:
y(x)=M([x′;x′])(3)式中,[;]表示通道連接,M表示通道連接后相連的3個模塊的操作,x′、x′分別表示圖4中兩條支路的輸出特征。
對于淺海水下圖像中,通過人造光源進(jìn)行亮度補(bǔ)充易造成的因物體距離人造光源較近出現(xiàn)目標(biāo)圖像過曝和光照較弱或物體距離較遠(yuǎn)出現(xiàn)光線不足等情況,在卷積時,該部分圖像中存在的信息易被冗余信息所掩蓋,從而影響水下生物目標(biāo)檢測識別的精確度[16]。因此,本文提出殘差卷積塊注意力模塊以增強(qiáng)對水下生物目標(biāo)特征的提取,達(dá)到增強(qiáng)對目標(biāo)信息識別的目的。
殘差卷積塊注意力模塊是一個將卷積塊注意力模塊(convolutional block attention module,CBAM)[17]與殘差網(wǎng)絡(luò)(residual network,ResNet)相結(jié)合的注意力模塊。其中,卷積塊注意力模塊是由通道注意力模塊(channel attention module,CAM)和空間注意力模塊(spatial attention module,SAM)組成的輕量化注意力模塊。卷積塊注意力模塊首先將輸入特征F與其被通道注意力模塊處理后所得到的特征F′CA相乘,得到通道細(xì)化注意力特征FCA;然后與空間注意力模塊處理所得到的特征F′SA相乘得到空間細(xì)化注意力特征FSA;最后與輸入特征F進(jìn)行相加融合得到殘差卷積塊注意力模塊的輸出FOUT,如圖6所示。
圖6 殘差卷積塊注意力模塊結(jié)構(gòu)圖Fig.6 Res CBAM structure diagram
通道注意力模塊由最大池化層(MaxPool)、平均池化層(AvgPool)、多層感知機(jī)(multilayer perception,MLP)、相加融合模塊和Sigmoid激活函數(shù)構(gòu)成,如圖7所示。
圖7 空間注意力模塊結(jié)構(gòu)圖Fig.7 CAM structure diagram
通道方向注意力F′CA計(jì)算如式(4)所示:
式中,σ代表Sigmoid激活函數(shù),F(xiàn)代表輸入特征圖。
空間注意力模塊由最大池化層、平均池化層、通道連接模塊、卷積層和Sigmoid激活函數(shù)構(gòu)成,如圖8所示。
圖8 SAM結(jié)構(gòu)圖Fig.8 SAM structure diagram
空間方向注意力F′SA計(jì)算如式(5)所示:
式中,f3×3代表卷積核為3×3的卷積操作,[;]表示通道連接。
YOLOv3 中使用Rezatofighi 等提出的廣義交并比(generalized intersection over union,GIoU)計(jì)算預(yù)測框損失。該損失計(jì)算在IoU[18]的基礎(chǔ)上,引入了標(biāo)注框A和預(yù)測框AP的最小包圍框C,如圖9所示。但淺海中生物個體體積懸殊較大,其中多為小目標(biāo),并且由于物體在圖像中會呈現(xiàn)遠(yuǎn)小近大的實(shí)際情況,即使同一體積物種在淺海中自由運(yùn)動時同樣會因空間位置而造成尺寸差距較大,易導(dǎo)致預(yù)測框與標(biāo)注框存在包含關(guān)系,使GIoU損失計(jì)算失效,影響目標(biāo)標(biāo)定的精確度。因此,在訓(xùn)練時為增強(qiáng)對標(biāo)注框信息的挖掘,本文將參考中心交并比(center intersection over union,CIoU)的方法,充分考慮兩框的相對位置,對重疊面積、中心點(diǎn)距離和長寬比對輸出結(jié)果進(jìn)行評估。
圖9 預(yù)測框與標(biāo)注框參數(shù)解釋圖Fig.9 Explanatory diagram of parameters of prediction frame and anchor frame
GIoU計(jì)算如式(6)所示:
式中,C(A?AP)表示C中標(biāo)注框A和預(yù)測框AP未包含的區(qū)域,IoU的計(jì)算如式(7)所示:
當(dāng)兩框出現(xiàn)包含關(guān)系時,GIoU將與IoU效果相同。而對兩框相對位置進(jìn)行充分考慮的CIoU 計(jì)算如式(8)所示:
式中,ρ(A,AP)表示A框和AP框中心點(diǎn)坐標(biāo)的歐式距離d,l表示C的對角線長度,α是權(quán)重參數(shù),計(jì)算如式(9):
式中,v是長寬比相似度的衡量值:
式中,WP為預(yù)測框的寬,HP為預(yù)測框的高,WA為標(biāo)注框的寬,HA為標(biāo)注框的高。由CIoU 損失函數(shù)LCIoU表示為:
本文進(jìn)行的實(shí)驗(yàn)環(huán)境為Windows 操作系統(tǒng),AMD Ryzen 7 5800H(CPU),16 GB 隨機(jī)存取內(nèi)存(RAM),RTX 3060 Laptop(GPU),6 GB 顯示內(nèi)存,深度學(xué)習(xí)框架為pytorch。
本文所使用的淺海水下生物目標(biāo)數(shù)據(jù)集,由奧爾堡大學(xué)(Aalborg University,AAU)在丹麥北部的利姆水道底部所采集[19],共14 674幅圖像,包含海星(starfish)、小魚(small fish)、蝦(shrimp)、水母(jellyfish)、大魚(fish)和螃蟹(crab)六種海洋動物。取其中1 467幅(約10%)作為驗(yàn)證集,取其中1 468幅(約10%)作為測試集,剩余11 739 幅(約80%)作為訓(xùn)練集進(jìn)行訓(xùn)練。其中部分圖像及其Scharr算子處理后的圖像如圖10所示。
圖10 數(shù)據(jù)集圖片(左)和Scharr算子處理后的圖像(右)Fig.10 Dataset images(left)and images processed by Scharr operator(right)
從圖10 中右側(cè)圖片可以看出,由于光線衰弱導(dǎo)致了水下圖像中輪廓和紋理特征的損失,極大影響了清晰度。圖10 中(a)和(b)左側(cè)兩幅原圖分別如圖11 中的(a)和(b)兩幅三通道直方圖。
圖11 三通道直方圖Fig.11 Histogram of three channels
從圖11 可以看出兩幅圖像的像素值整體偏小,且從圖11(a)中可以看到像素值為227 到237 之間像素點(diǎn)數(shù)量有明顯爆發(fā),表示圖像中發(fā)生了大面積的曝光,而且數(shù)據(jù)集中一定數(shù)量的圖像存在該類情況。數(shù)字圖像中,圖像的標(biāo)準(zhǔn)差反映了圖像像素值與均值的離散程度,標(biāo)準(zhǔn)差越大說明圖像的質(zhì)量越好。而圖10 中左側(cè)兩張?jiān)瓐D的標(biāo)準(zhǔn)差分別為49.593和50.682,本數(shù)據(jù)集的平均標(biāo)準(zhǔn)差為51.849,低于正常場景下的圖像的標(biāo)準(zhǔn)差,可知本數(shù)據(jù)集的水下圖像質(zhì)量較差,圖像中信息豐富度較低。
本文的目標(biāo)檢測任務(wù)采用精確度P(Precision)、召回率R(Recall)、平均精確度(mean average precision,mAP)和幀數(shù)(frame per second,F(xiàn)PS)四種評價指標(biāo)對模型進(jìn)行評價。
通過混淆矩陣對精確度P、召回率R 和平均精確度mAP 進(jìn)行計(jì)算,混淆矩陣包含四個指標(biāo),即真陽性(true positive,TP)、真陰性(true negative,TN)、假陽性(false positive,F(xiàn)P)和假陰性(false negative,F(xiàn)N),如表1所示。
表1 二元分類的混淆矩陣Table 1 Confusion matrix for binary classification
表1中,預(yù)測框與標(biāo)注框之間的IoU值≥所設(shè)閾值的預(yù)測框數(shù)量為TP,相反,IoU<閾值的數(shù)目則為FP,未檢測到的目標(biāo)數(shù)量為FN。
精確度AP的定義是預(yù)測值為Positive 的總數(shù)量中,TP所占的比例,該指標(biāo)是直觀反映模型錯檢程度的衡量值,其式如式(12)所示:
召回率R的定義是實(shí)際值為Positive 的總數(shù)量中,TP所占的比例,該指標(biāo)是直觀反映模型漏檢程度的衡量值,其式如式(13)所示:
平均精確度(mAP)代表所有物種精確度的平均值,如式(14):
式中,n代表物種數(shù)量。
mAP 包含了mAP@0.5 和mAP@0.5:0.95 兩種,其中mAP@0.5 是當(dāng)IoU閾值取值為0.5時,對于其中一個類別,有n個正例樣本,對這n個樣本的精確度APi求取平均值即得該類的mAP@0.5。將mAP 的IoU 閾值從0.5以0.05為步長增至0.95并取mAP 的平均值,其計(jì)算分別為式(15)、(16):
式中,C代表類別數(shù)。
mAP@0.5 能夠表現(xiàn)精確度P 和召回率R 的變化趨勢,mAP@0.5 越高越容易使二者保持較高水平。
mAP@0.5:0.95 是在不同IoU閾值取值情況下的綜合表現(xiàn),相較于mAP@0.5更加考慮整體情況,mAP@0.5:0.95越高代表模型高精度邊界回歸能力越強(qiáng),即預(yù)測框與標(biāo)注框的擬合越精確。
FPS表示的是每秒完成檢測的圖像的數(shù)量,其計(jì)算如式(17)所示:
式中,t代表單幅圖像的處理時間,單位是秒(s)。
本文所使用的數(shù)據(jù)集中存在大量小目標(biāo),訓(xùn)練集圖片的分辨率與輸入圖片所設(shè)置的分辨率的比例對所訓(xùn)練網(wǎng)絡(luò)的檢測效果影響較大,因此本文中將輸入圖片尺寸設(shè)置為640×640,與數(shù)據(jù)集圖片本身分辨率相同。
將以GIoU作為預(yù)測框損失計(jì)算的YOLOv3為原生模型,與使用CIoU 改進(jìn)了損失函數(shù)的YOLOv3-CIoU、模型僅加入了殘差卷積塊注意力模塊的YOLOv3-ResCBAM、模型結(jié)構(gòu)修改為跨階段局部模塊的YOLOv3-CSP、模型結(jié)構(gòu)修改為本文所提出的網(wǎng)絡(luò)框架而訓(xùn)練時未使用CIoU改進(jìn)損失函數(shù)的YOLOv3-a和本文提出的改進(jìn)了框架和損失函數(shù)的YOLO-fish 通過測試集數(shù)據(jù)進(jìn)行對比實(shí)驗(yàn)。
通過表2 可以看出,本文改進(jìn)后的YOLO-fish 算法相較于原YOLOv3算法在水下生物目標(biāo)檢測方面,對于各種物種的檢測均有所提高。其中,YOLOv3-CIoU 平均準(zhǔn)確率提升了9.5 個百分點(diǎn),召回率提高了42.9 個百分點(diǎn)由于對預(yù)測框的損失函數(shù)上做出優(yōu)化,提高了預(yù)測框的精確度,因此對各物種目標(biāo)的精確度都有所提升。YOLOv3-ResCBAM 平均精確度提高了1.1 個百分點(diǎn),召回率提高了5.1 個百分點(diǎn),由于添加了ResCBAM 模塊,增強(qiáng)了模型對部分水下生物目標(biāo)特征的提取能力。YOLOv3-CSP 平均精度提高了7.2 個百分點(diǎn),召回率提高了32.3 個百分點(diǎn),由于改變了網(wǎng)絡(luò)結(jié)構(gòu),增加了網(wǎng)絡(luò)的深度和廣度。YOLOv3-a 平均精確度提高了10.7 個百分點(diǎn),召回率提高了42.3 個百分點(diǎn),融合了以上兩種改進(jìn)方法的特點(diǎn),其各物種目標(biāo)的精確度和召回率都得到了提升。結(jié)合了以上三種改進(jìn)方式的YOLO-fish,其精確度提高了11.3個百分點(diǎn),召回率提高了43.0個百分點(diǎn)。
表2 改進(jìn)的YOLOv3和YOLOv3實(shí)驗(yàn)結(jié)果詳情Table 2 Details of improved YOLOv3 and YOLOv3 experiment results 單位:%
通過表3可以看出,三種優(yōu)化方式在不影響檢測速度的情況下,其mAP@0.5 和mAP@0.5:0.95 兩種指標(biāo)相較于YOLOv3均有提高,說明綜合提高了算法對于水下圖像的檢測能力。表明結(jié)合了三種優(yōu)化方式Y(jié)OLO-fish在對于水下圖像進(jìn)行水下生物目標(biāo)檢測識別時有更好的檢測效果。
表3 改進(jìn)的YOLOv3和YOLOv3實(shí)驗(yàn)結(jié)果參數(shù)Table 3 Improved YOLOv3 and YOLOv3 experimental result parameters
綜合以上分析結(jié)果表明,通過將預(yù)測框標(biāo)定的損失函數(shù)進(jìn)行優(yōu)化,增加了更多的預(yù)測框評定指標(biāo)對誤差進(jìn)行分析,使得更多的標(biāo)定誤差情況得以考慮,增強(qiáng)了目標(biāo)檢測的魯棒性,從而提高了精確度和召回率。另外,添加了CSP 模塊和Res CBAM 模塊增加了網(wǎng)絡(luò)的深度和廣度,增強(qiáng)網(wǎng)絡(luò)對于水下圖像中目標(biāo)物種的特征獲取能力,因此進(jìn)一步地提高了算法的檢測能力。
為了進(jìn)一步驗(yàn)證本文提出的YOLO-fish 算法在淺海水下生物目標(biāo)檢測識別上要優(yōu)于其他目標(biāo)檢測算法,將使用同樣的淺海水下生物目標(biāo)數(shù)據(jù)集對目前幾種效果較好的目標(biāo)檢測算法進(jìn)行對比。
從表4可以看出,不論是“Two-stage”的Faster RCNN還是“One-stage”的SSD、RetinaNet和CenterNet,其對于水下生物目標(biāo)檢測的精確度和召回率均低于改進(jìn)模型,且YOLO-fish 在檢測速度方面是前三種方法的3 倍,稍低于CenterNet,但完全能夠達(dá)到實(shí)時性要求。證明了YOLO-fish 在淺海水下生物目標(biāo)檢測上有更好的實(shí)時檢測效果。
表4 改進(jìn)的YOLOv3和其他目標(biāo)檢測算法實(shí)驗(yàn)結(jié)果參數(shù)Table 4 Improved YOLOv3 and YOLOv3 experimental result parameters
隨機(jī)抽取測試集中的3 張圖片進(jìn)行檢測,結(jié)果如圖12所示。
圖12 YOLOv3(左)和YOLO-fish(右)的檢測結(jié)果Fig.12 Detect result of YOLOv3(left)and YOLO-fish(right)
圖12中左側(cè)和右側(cè)分別為YOLOv3 和YOLO-fish的檢測結(jié)果。圖12(a)中,YOLOv3 對因人造光源發(fā)生曝光的目標(biāo)進(jìn)行檢測時無法檢測出該目標(biāo),并錯檢出一個海星,而YOLO-fish 對于該類目標(biāo)能夠完成檢測,且無錯檢;圖12(b)中,YOLOv3 未檢測出圖中的小魚,而YOLO-fish 完成了檢測;圖12(c)中,YOLOv3 將圖中約螃蟹1/3 的物體錯檢為小魚,并在錯檢了圖中的無目標(biāo)部分,而YOLO-fish完成了該圖片的檢測任務(wù)。
針對目前通用的目標(biāo)檢測算法對水下生物目標(biāo)檢測中精度低、易漏檢和錯檢的問題,本文提出改進(jìn)的YOLOv3水下生物目標(biāo)檢測識別算法,以完成對水下生物圖像的檢測任務(wù)。針對水下光線衰弱嚴(yán)重、圖像色彩失真、物體曝光和尺寸差異大等問題,本文在YOLOv3中加入殘差卷積塊注意力模塊和跨階段局部模塊,提出了適合水下生物目標(biāo)的實(shí)時檢測算法(YOLO-fish)。針對水下圖像中物種目標(biāo)尺寸差異大,且數(shù)據(jù)集有限的問題,為提高對小目標(biāo)和過大目標(biāo)的預(yù)測精確度,引入了CIoU 的預(yù)測框損失函數(shù)進(jìn)行訓(xùn)練,有效提高預(yù)測框的適應(yīng)能力并提高預(yù)測精確度。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的YOLOv3在水下魚類目標(biāo)檢測識別任務(wù)中,在不影響檢測實(shí)時性的情況下平均精確度比原YOLOv3 網(wǎng)絡(luò)提高了11.3個百分點(diǎn),同時漏檢率和錯檢率降低了37.3個百分點(diǎn)。下一步工作將研究改進(jìn)型YOLOv3 算法搭載到本實(shí)驗(yàn)室的智能水下機(jī)器人進(jìn)行漁業(yè)資源檢測的實(shí)際應(yīng)用,以機(jī)器人代替人工進(jìn)行海洋漁業(yè)資源探索作業(yè)。
參考文獻(xiàn):[1] 郭威,張有波,周悅,等.應(yīng)用于水下機(jī)器人的快速深海圖像復(fù)原算法[J].光學(xué)學(xué)報(bào),2022,42(4):53-67.GUO W,ZHANG Y B,ZHOU Y,et al.Rapid deep-sea image restoration algorithm applied to unmanned underwater vehicles[J].Acta Optica Sinica,2022,42(4):53-67.
[2] 張立藝,武文紅,牛恒茂,等.深度學(xué)習(xí)中的安全帽檢測算法應(yīng)用研究綜述[J].計(jì)算機(jī)工程與應(yīng)用,2022,58(16):1-17.ZHANG L Y,WU W H,NIU H M,et al.Summary of application research on helmet detection algorithm based on deep learning[J].Computer Engineering and Applications,2022,58(16):1-17.
[3] 周清松,董紹江,羅家元,等.改進(jìn)YOLOv3 的橋梁表觀病害檢測識別[J].重慶大學(xué)學(xué)報(bào),2022,45(6):121-130.ZHOU Q S,DONG S J,LUO J Y,et al.Bridge apparent disease based on improved YOLOv3[J].Journal of Chongqing University,2022,45(6):121-130.
[4] REN S,HE K,GIRSHICK R,et al.Faster R-CNN:towards real-time object detection with region proposal networks[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2017,39(6):1137-1149.
[5] REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once:unified,real-time object detection[C]//IEEE Conference on Computer Vision & Pattern Recognition,2016.
[6] LIU W,ANFUELOY D,ERLAN D,et al.SSD:single shot multibox detector[C]//European Conference on Computer Vision.Cham:Springer,2016:21-37.
[7] REDMON J,F(xiàn)ARHADI A.Yolov3:an incremental improvement[J].arXiv:1804.02767,2018.
[8] 袁利毫,昝英飛,鐘聲華,等.基于YOLOv3 的水下小目標(biāo)自主識別[J].海洋工程裝備與技術(shù),2018,5(S1):118-123.YUAN L H,ZAN Y F,ZHONG S H,et al.Small under-water target recognition based on YOLOv3[J].Ocean Engineering Equipment and Technology,2018,5(S1):118-123.
[9] 高英杰.基于“SSD”模型的水下目標(biāo)檢測網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[J].電子世界,2019(8):110-111.GAO Y J.Design and implementation of underwater tar get detection network based on SSD model[J].Electronics World,2019(8):110-111.
[10] 趙德安,劉曉洋,孫月平,等.基于機(jī)器視覺的水下河蟹識別方法[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2019,50(3):151-158.ZHAO D A,LIU X Y,SUN Y P,et al.Detection of underwater crabs based on machine vision[J].Transactions of the Chinese Society for Agricultural Machinery,2019,50(3):151-158.
[11] 劉萍,楊鴻波,宋陽.改進(jìn)YOLOv3 網(wǎng)絡(luò)的海洋生物識別算法[J].計(jì)算機(jī)應(yīng)用研究,2020,37(S1):394-397.LIU P,YANG H B,SONG Y.Improved marine biometrics identification algorithm for YOLOv3 network[J].Application Research of Computers,2020,37(S1):394-397.
[12] 邢晉超,潘廣貞.改進(jìn)YOLOv5s的手語識別算法研究[J].計(jì)算機(jī)工程與應(yīng)用,2022,58(16):194-203.XING J C,PAN G Z.Research on improved YOLOv5s sign language recognition algorithm[J].Computer Engineering and Applications,2022,58(16):194-203.
[13] 董紹江,劉偉,蔡巍巍,等.基于分層精簡雙線性注意力網(wǎng)絡(luò)的魚類識別[J].計(jì)算機(jī)工程與應(yīng)用,2022,58(5):186-192.DONG S J,LIU W,CAI W W,et al.Fish recognition based on hierarchical compact bilinear attention network[J].Computer Engineering and Applications,2022,58(5):186-192.
[14] REZATOFIGHI H,TSOI N,GWAK J Y,et al.Generalized intersection over union:a metric and a loss for bounding box regression[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2019:658-666.
[15] WANG C Y,LIAO H Y M,WU Y H,et al.CSPNet:a new backbone that can enhance learning capability of CNN[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops,2020:390-391.
[16] 農(nóng)元君,王俊杰.基于嵌入式的遙感目標(biāo)實(shí)時檢測方法[J].光學(xué)學(xué)報(bào),2021,41(10):179-186.NONG Y J,WANG J J.Real-time object detection in remote sensing images based on embedded system[J].Acta Optica Sinica,2021,41(10):179-186.
[17] WOO S,PARK J,LEE J Y,et al.Cbam:convolutional block attention module[C]//Proceedings of the European Conference on Computer Vision(ECCV),2018:3-19.
[18] YU J,JIANG Y,WANG Z,et al.Unitbox:an advanced object detection network[C]//Proceedings of the 24th ACM International Conference on Multimedia,2016:516-520.
[19] PEDERSEN M,BRUSLUND HAURUM J,GADE R,et al.Detection of marine animals in a new underwater dataset with varying visibility[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops,2019:18-26.
[20] ZHOU X,WANG D,KRAHENBUHL P.Objects as points[J].arXiv:1904.07850,2019.