涂萬(wàn),于紅*,張鵬,韋思學(xué),張?chǎng)危瑮钭谳W,吳俊峰,林遠(yuǎn)山,胡澤元
(1.大連海洋大學(xué) 信息工程學(xué)院,遼寧省海洋信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,遼寧 大連 116023;2.設(shè)施漁業(yè)教育部重點(diǎn)實(shí)驗(yàn)室(大連海洋大學(xué)),遼寧 大連 116023)
精準(zhǔn)養(yǎng)殖是水產(chǎn)養(yǎng)殖的新趨勢(shì),目標(biāo)檢測(cè)技術(shù)是精準(zhǔn)養(yǎng)殖的基礎(chǔ)[1-2]。然而,在真實(shí)的養(yǎng)殖環(huán)境中,模糊和遮擋對(duì)魚類目標(biāo)檢測(cè)具有較強(qiáng)的干擾。傳統(tǒng)的圖像處理和機(jī)器視覺(jué)方法往往難以處理復(fù)雜的水下情況,導(dǎo)致檢測(cè)準(zhǔn)確度不高[3-4]。近年來(lái),深度學(xué)習(xí)為目標(biāo)檢測(cè)提供了新的解決方法[5-6]。
深度學(xué)習(xí)中,YOLO算法因具有計(jì)算量較小、運(yùn)行速度快等特點(diǎn),廣泛應(yīng)用于水下目標(biāo)檢測(cè)中[7]。針對(duì)魚群模糊造成的特征丟失問(wèn)題,Chen等[8]在YOLOv7[9]中使用不同采樣率的膨脹卷積[10],在不增加算法參數(shù)量的情況下,減少特征融合中細(xì)粒度信息的丟失,增強(qiáng)了模型的特征提取能力;Li等[11]利用先驗(yàn)知識(shí)來(lái)增強(qiáng)目標(biāo)特征,在水下魚群檢測(cè)中,精度和召回率分別達(dá)到94.92%和92.21%,但模型過(guò)度依賴先驗(yàn)知識(shí)的數(shù)量,在魚群存在遮擋情況時(shí),無(wú)法保持高識(shí)別精度;袁紅春等[12]使用GCBlock[13],并優(yōu)化目標(biāo)框回歸損失函數(shù),在高密度遮擋情況下,以更低成本完成魚類檢測(cè)與識(shí)別,但YOLOv8n的識(shí)別能力有限,易產(chǎn)生目標(biāo)漏檢。Li等[14]利用可變形卷積模塊[15],減少了魚類個(gè)體漏檢數(shù)量,但可變形卷積模塊缺乏有效的學(xué)習(xí)指導(dǎo),會(huì)重點(diǎn)關(guān)注非必要特征,降低了模型的泛化能力。在模型的特征提取能力方面,注意力機(jī)制能夠提高模型對(duì)關(guān)鍵信息的感知能力。針對(duì)水下成像模糊、失真等導(dǎo)致魚群檢測(cè)準(zhǔn)確率低的問(wèn)題,趙夢(mèng)等[16]將SKNet[17]注意力機(jī)制與YOLOv5融合,構(gòu)成了關(guān)注像素級(jí)信息的特征提取網(wǎng)絡(luò),提升了養(yǎng)殖魚群檢測(cè)和識(shí)別的整體效果,但SKNet的降維操作會(huì)丟失魚類個(gè)體的空間信息,導(dǎo)致目標(biāo)定位精準(zhǔn)度下降;韋思學(xué)等[18]提出融合通道非降維雙重注意力機(jī)制ECBAM來(lái)獲取更多的魚類細(xì)節(jié)特征,對(duì)養(yǎng)殖魚群目標(biāo)檢測(cè)效果更佳,但ECBAM僅對(duì)氣泡造成的遮擋有所改善,仍具有局限性。
綜上可知,基于YOLO的水下魚群檢測(cè)方法存在如下問(wèn)題:養(yǎng)殖環(huán)境中,模糊會(huì)造成特征信息嚴(yán)重缺失,導(dǎo)致檢測(cè)精度下降;高密度養(yǎng)殖會(huì)產(chǎn)生密集遮擋,目標(biāo)間特征差異較小且會(huì)相互影響,使檢測(cè)的召回率降低。因此,針對(duì)上述問(wèn)題,本研究中,提出基于通道非降維與空間協(xié)調(diào)注意力ECAM(efficient coordination attention module)的改進(jìn)YOLOv8養(yǎng)殖魚群檢測(cè)方法YOLOv8-Head-ECAM,在FPN(feature pyramid network)[19]中增加大尺寸檢測(cè)頭,同時(shí)在特征融合后使用ECAM注意力機(jī)制,降低模糊、遮擋對(duì)魚群檢測(cè)的影響,以期為養(yǎng)殖魚群的檢測(cè)提供有效解決方案。
真實(shí)的養(yǎng)殖環(huán)境中,當(dāng)相機(jī)鏡頭或水質(zhì)發(fā)生變化時(shí),會(huì)造成魚群圖像出現(xiàn)模糊現(xiàn)象,從而降低算法對(duì)魚群的識(shí)別能力。另外,以不同角度觀察魚群時(shí)常常存在魚群遮擋現(xiàn)象,造成部分魚類個(gè)體出現(xiàn)漏檢問(wèn)題。為解決因模糊和遮擋導(dǎo)致的密集魚群檢測(cè)效果不佳的問(wèn)題,提出以YOLOv8為基礎(chǔ)模型框架的YOLOv8-Head-ECAM,通過(guò)改進(jìn)檢測(cè)頭和使用ECAM注意力機(jī)制,提升模型的檢測(cè)效果。
YOLOv8是YOLO系列算法的最新版本,能夠以高精度和高速度檢測(cè)物體[20]。與YOLOv8相比,YOLOv5中的C3模塊僅對(duì)多個(gè)BottleNeck結(jié)構(gòu)進(jìn)行簡(jiǎn)單的堆疊,限制了梯度在不同層之間的有效傳遞,模型提取到的特征只包含較少的上下文信息,導(dǎo)致對(duì)模糊和遮擋目標(biāo)的檢測(cè)效果下降;而YOLOv7中一系列可訓(xùn)練的技巧,需要更多的計(jì)算資源和訓(xùn)練時(shí)間才能達(dá)到最佳性能[21]。YOLOv8在保證其輕量化的同時(shí),可以獲得更豐富的梯度流信息,其算法系列包括5個(gè)模型,分別是YOLOv8n、YOLOv8s、YOLOv8m、YOLOv8l和YOLOv8x。相比于其他模型,YOLOv8x采用更深的網(wǎng)絡(luò)結(jié)構(gòu),引入了更多的卷積層和殘差連接,從而能夠?qū)W習(xí)到更多的特征。因此,本研究中采用YOLOv8x作為基礎(chǔ)模型框架。
YOLOv8模型由輸入端、骨干網(wǎng)絡(luò)和頭部網(wǎng)絡(luò)3部分組成。輸入端將圖像統(tǒng)一成分辨率為640×640的圖像;骨干網(wǎng)絡(luò)由用于提取圖像特征的卷積神經(jīng)網(wǎng)絡(luò)組成,通過(guò)C2f結(jié)構(gòu)獲取更豐富的梯度流,從而學(xué)習(xí)更多的特征;頭部網(wǎng)絡(luò)包括頸部(Neck)和檢測(cè)頭(Detect)兩部分,分別用于特征融合和目標(biāo)預(yù)測(cè)。其中,Neck是連接Backbone和Detect的中間層,用于進(jìn)一步提取特征和調(diào)整特征圖的分辨率,提升檢測(cè)頭的預(yù)測(cè)能力;Detect包括分類器和回歸器兩部分,根據(jù)Neck的輸出特征預(yù)測(cè)目標(biāo)的位置和類別。
YOLOv8使用Anchor-free檢測(cè)頭預(yù)測(cè)邊界框,通過(guò)去除一些不必要的卷積等優(yōu)化操作,達(dá)到更快的檢測(cè)速度[20],但對(duì)于遮擋魚群的檢測(cè)效果并不理想。FPN結(jié)構(gòu)在處理復(fù)雜的視覺(jué)場(chǎng)景時(shí)具有明顯優(yōu)勢(shì),其獨(dú)特的金字塔結(jié)構(gòu)允許模型在不同尺度下進(jìn)行特征融合,使模型能更好地理解圖像中的細(xì)節(jié)和上下文信息。最底層的C2f模塊接受的特征來(lái)自主干網(wǎng)絡(luò)更低層,從而能更好地提取圖像的細(xì)節(jié)信息,包括邊緣、角點(diǎn)和紋理等。因此,在FPN底層添加一個(gè)大尺寸檢測(cè)頭,與骨干網(wǎng)絡(luò)最底層的C2f進(jìn)行特征融合,新增加的分辨率為160×160的檢測(cè)頭能提供更高的分辨率,捕捉更多的細(xì)節(jié)信息,可更加有效地檢測(cè)水下模糊的魚類目標(biāo)個(gè)體。
為了降低模糊背景對(duì)魚群檢測(cè)造成的干擾,采用ECAM注意力機(jī)制,使模型聚焦于圖像中特定的感興趣區(qū)域,抑制冗余和干擾信息,提高特征表達(dá)能力。ECAM結(jié)構(gòu)如圖1所示,主要包括兩個(gè)部分,分別是高效通道注意力模塊(efficient channel attention block,ECAB)和協(xié)調(diào)空間注意力模塊(coordinated spatial attention block,CSAB)。
圖1 ECAM網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 ECAM network structure
針對(duì)魚群模糊造成的特征提取能力下降問(wèn)題,ECAB使用通道注意力[22]學(xué)習(xí)不同特征通道之間的相關(guān)性,提高模型對(duì)重要特征的關(guān)注程度。為了避免降維操作帶來(lái)的性能下降問(wèn)題,ECAB通過(guò)自適應(yīng)選擇一維卷積核大小的方法,實(shí)現(xiàn)局部通道的高效交互,從而降低模型的復(fù)雜度。對(duì)于給定特征張量F∈RC×H×W(C為通道,H為高度,W為寬度),ECAB的輸出Mc(F)為
Mc(F)=σ{C1[G(F)]}。
(1)
式中:G為全局平均池化;C1為一維卷積;σ為Sigmoid函數(shù)。
(2)
(3)
經(jīng)分解操作后,得到編碼空間信息的中間特征張量f,其計(jì)算公式為
f=δ[C2([Zh,Zw])]。
(4)
式中:[·,·]為拼接操作;C2為二維卷積;δ為非線性激活函數(shù)。
將f拆分后通過(guò)卷積變換得到注意力權(quán)重gh和gw,CSAB的最終輸出Ms為
(5)
因此,給定特征張量F,ECAM的輸出M(F)為
F′=Mc(F)?F,
(6)
M(F)=Ms(F′)?F′。
(7)
式中:F∈RC×H×W;?為逐元素相乘。
YOLOv8-Head-ECAM模型結(jié)構(gòu)如圖2所示,在FPN中加入大尺寸檢測(cè)頭,捕捉魚類個(gè)體的細(xì)節(jié)信息,然后使用ECAM注意力機(jī)制抑制模糊背景帶來(lái)的干擾,增強(qiáng)模型的特征提取能力,有效提高了模型對(duì)模糊與遮擋目標(biāo)的識(shí)別效果。
圖2 YOLOv8-Head-ECAM網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 YOLOv8-Head-ECAM network structure
試驗(yàn)所用數(shù)據(jù)采集自大連天正實(shí)業(yè)有限公司大黑石養(yǎng)殖場(chǎng)紅鰭東方鲀養(yǎng)殖車間,為了加大數(shù)據(jù)集樣本間的差異性,去除了部分高度相似數(shù)據(jù),得到600張分辨率為1 280×720的圖像。
由于養(yǎng)殖環(huán)境中魚群游動(dòng)方向不固定,而攝像機(jī)拍攝角度單一,為了增加魚群樣本的多樣性,對(duì)數(shù)據(jù)集進(jìn)行水平、垂直和水平垂直混合翻轉(zhuǎn)。通過(guò)數(shù)據(jù)增廣后,數(shù)據(jù)集擴(kuò)充1倍,共計(jì)1 200張分辨率為1 280×720的圖像。按照7∶2∶1的比例隨機(jī)劃分?jǐn)?shù)據(jù)集,得到訓(xùn)練集、驗(yàn)證集和測(cè)試集數(shù)量分別為840、240和120張,部分?jǐn)?shù)據(jù)集翻轉(zhuǎn)效果如圖3所示。
圖3 部分?jǐn)?shù)據(jù)增強(qiáng)圖像Fig.3 Partial data augmentation images
在魚類目標(biāo)檢測(cè)中,數(shù)據(jù)集的標(biāo)注是一個(gè)關(guān)鍵的環(huán)節(jié)。傳統(tǒng)的手工標(biāo)注因主體理解和判斷的不同,導(dǎo)致標(biāo)注結(jié)果出現(xiàn)主觀差異。本研究中數(shù)據(jù)標(biāo)注由半自動(dòng)化標(biāo)注和人工微調(diào)兩部分組成。首先,采用Li等[14]試驗(yàn)已標(biāo)注的1 008張魚群檢測(cè)圖像訓(xùn)練YOLOv8模型,再將本試驗(yàn)中所需1 200張未標(biāo)注圖像送入已訓(xùn)練好的YOLOv8模型進(jìn)行數(shù)據(jù)標(biāo)注,文件保存為.txt格式。在試驗(yàn)過(guò)程中發(fā)現(xiàn),經(jīng)過(guò)訓(xùn)練的YOLOv8模型能對(duì)圖像中70%的魚類個(gè)體實(shí)現(xiàn)精準(zhǔn)標(biāo)注,但對(duì)模糊和遮擋的目標(biāo)存在錯(cuò)檢和漏檢問(wèn)題。因此,對(duì)圖像中剩余30%無(wú)法準(zhǔn)確標(biāo)注的個(gè)體,通過(guò)LabelImg標(biāo)注工具進(jìn)行人工微調(diào)。
對(duì)養(yǎng)殖魚群檢測(cè)模型的訓(xùn)練和測(cè)試均在同一環(huán)境下運(yùn)行。試驗(yàn)所用的操作系統(tǒng)為Ubuntu 20.04,CPU型號(hào)為Intel(R)Xeon(R)Platinum 8255C CPU@2.50 GHz,GPU型號(hào)為Nvidia Geforce RTX 3080,顯存10 GB,使用的深度學(xué)習(xí)框架為Pytorch 1.10.0,編程語(yǔ)言為Python 3.8,GPU加速庫(kù)為CUDA 11.3。訓(xùn)練參數(shù)設(shè)置如下:批大小(batch size)為8,訓(xùn)練周期(epochs)為300輪,初始學(xué)習(xí)率(learning rate)為0.000 1。
在模型檢測(cè)精度方面,選取準(zhǔn)確率(precision rate,P)、召回率(recall rate,R)和平均精度均值(mean average precision,mAP@0.5)作為評(píng)價(jià)指標(biāo);在模型檢測(cè)性能方面,選取模型參數(shù)量(params)、檢測(cè)速度(detection speed)分別作為模型大小、檢測(cè)實(shí)時(shí)性的評(píng)價(jià)指標(biāo)。計(jì)算公式為
P=PT/(PT+PF),
(8)
R=PT/(PT+NF),
(9)
(10)
(11)
式中:PT為正確預(yù)測(cè)為魚的樣本數(shù);PF為錯(cuò)誤預(yù)測(cè)為魚的樣本數(shù);NF為未被預(yù)測(cè)為魚的樣本數(shù);PA為精度均值;PmA為mAP,mAP@0.5為IoU閾值設(shè)置成0.5的平均精度均值;N為類別總數(shù)。
為驗(yàn)證模型改進(jìn)部分的有效性,設(shè)計(jì)了消融試驗(yàn)。試驗(yàn)方案如下:將Head模塊和ECAM分別添加到Y(jié)OLOv8中,命名為YOLOv8-Head和YOLOv8-ECAM,與同時(shí)添加這兩個(gè)模塊的YOLOv8-Head-ECAM模型進(jìn)行對(duì)比。
試驗(yàn)結(jié)果如圖4、表1所示,在YOLOv8中,分別添加檢測(cè)頭Head與添加注意力機(jī)制ECAM后均增加了模型的參數(shù)量,降低了模型的檢測(cè)速度。這是因?yàn)闄z測(cè)頭通常由一些卷積層和全連接層組成,添加檢測(cè)頭會(huì)加重模型的計(jì)算量;而添加注意力機(jī)制使得網(wǎng)絡(luò)在多個(gè)層級(jí)中進(jìn)行計(jì)算和調(diào)整,導(dǎo)致計(jì)算量和檢測(cè)時(shí)間增加。而在YOLOv8模型中同時(shí)添加檢測(cè)頭和注意力機(jī)制,雖增加了計(jì)算時(shí)間,降低了檢測(cè)速度,但提高了模型檢測(cè)的準(zhǔn)確性。YOLOv8-Head-ECAM模型的識(shí)別效果最好,與YOLOv8模型相比,準(zhǔn)確率、召回率和平均精度均值分別提升了2.3%、1.7%和1.6%。
表1 添加Head與ECAM對(duì)模型檢測(cè)性能的影響Tab.1 Effects of adding Head and ECAM on model detection performance
圖4 YOLOv8與YOLOv8-Head-ECAM模型檢測(cè)效果對(duì)比Fig.4 Comparison of detection effects between YOLOv8 and YOLOv8-Head-ECAM model
為研究ECAM位置對(duì)檢測(cè)效果的影響,設(shè)計(jì)了位置對(duì)比試驗(yàn)。將ECAM分別放在3個(gè)不同的位置,分別是Backbone的SPPF后、Neck的C2f中及Neck的C2f后。
試驗(yàn)結(jié)果如表2所示,與添加到Backbone相比,將ECAM添加到Neck處,模型取得了更高的準(zhǔn)確率和召回率。這是因?yàn)锽ackbone網(wǎng)絡(luò)主要提取圖像底層特征,不能很好地獲取魚類個(gè)體的全局信息;而Neck網(wǎng)絡(luò)利用Backbone網(wǎng)絡(luò)的輸出,能夠更好地提取和融合特征。另外,將ECAM放在Neck的C2f后能夠帶來(lái)更顯著的提升,因?yàn)閷⒆⒁饬C(jī)制添加到C2f模塊之后,網(wǎng)絡(luò)會(huì)對(duì)特征融合的結(jié)果進(jìn)行更加精細(xì)的調(diào)整,使得模型能夠更好地關(guān)注與目標(biāo)相關(guān)的特征信息,從而進(jìn)一步提高目標(biāo)檢測(cè)的精度。
表2 ECAM模塊不同位置對(duì)模型檢測(cè)性能的影響
為驗(yàn)證算法對(duì)水下魚群檢測(cè)的效果,選擇該領(lǐng)域內(nèi)目前檢測(cè)準(zhǔn)確率較高的方法進(jìn)行模型對(duì)比試驗(yàn),對(duì)比模型分別是Li等[11]將先驗(yàn)知識(shí)融入YOLOv5中的水下群體目標(biāo)檢測(cè)模型KAYOLO,Li等[14]融入可變形卷積模塊的水下群體目標(biāo)檢測(cè)模型DCM-ATM-YOLOv5,趙夢(mèng)等[16]引入SKNet注意力機(jī)制的養(yǎng)殖魚群檢測(cè)模型SK-YOLOv5,以及韋思學(xué)等[18]使用通道非降維雙重注意力機(jī)制的養(yǎng)殖魚群檢測(cè)模型ESB-YOLO。
試驗(yàn)結(jié)果如表3、圖5所示,YOLOv8-Head-ECAM模型取得了最好的識(shí)別效果,雖然采用的對(duì)比模型都在一定程度上緩解了模糊、遮擋導(dǎo)致檢測(cè)效果不佳的問(wèn)題,但各自都存在著不足。KAYOLO模型利用先驗(yàn)知識(shí)增強(qiáng)待檢測(cè)對(duì)象的特征,但模型檢測(cè)結(jié)果過(guò)于依賴先驗(yàn)知識(shí)的質(zhì)量和數(shù)量,當(dāng)先驗(yàn)知識(shí)有噪聲或數(shù)量少時(shí),對(duì)模型的檢測(cè)效果影響較大;DCM-ATM-YOLOv5模型采用的可變形卷積模塊,由于缺乏有效的學(xué)習(xí)指導(dǎo),可能會(huì)重點(diǎn)關(guān)注非必要特征,造成特征提取能力下降;SK-YOLOv5模型由于采用了SKNet注意力機(jī)制,在基于全局上下文的特征融合后,會(huì)忽略局部細(xì)節(jié)信息,導(dǎo)致模糊魚群個(gè)體的檢測(cè)難度增加;ESB-YOLO模型在空間信息編碼操作中,未考慮空間位置信息交互,導(dǎo)致魚類個(gè)體無(wú)法精準(zhǔn)定位。在檢測(cè)速度方面,YOLOv8-Head-ECAM模型雖慢于DCM-ATM-YOLOv5和ESB-YOLO模型,但該模型通過(guò)添加大尺寸檢測(cè)頭和ECAM注意力機(jī)制,在速度滿足實(shí)時(shí)性要求的情況下,不僅提取了模糊個(gè)體的細(xì)節(jié)信息,還增強(qiáng)了模型的位置感知能力,從而提高了水下養(yǎng)殖魚群目標(biāo)檢測(cè)的準(zhǔn)確性。
圖5 不同模型檢測(cè)效果對(duì)比Fig.5 Comparison of detection effects among different models
為了驗(yàn)證算法的魯棒性,從中國(guó)農(nóng)業(yè)人工智能創(chuàng)新創(chuàng)業(yè)大賽魚類數(shù)據(jù)集中隨機(jī)選取2 420張圖像,按照7∶2∶1的比例劃分?jǐn)?shù)據(jù)集,與KAYOLO、DCM-ATM-YOLOv5、SK-YOLOv5和ESB-YOLO模型同時(shí)展開(kāi)試驗(yàn),進(jìn)行模型性能對(duì)比。
試驗(yàn)結(jié)果如圖6、表4所示,YOLOv8-Head-ECAM的準(zhǔn)確率、召回率和平均精度均值均高于其他模型,表明本研究中提出的添加ECAM模塊與改進(jìn)Head模塊的YOLOv8-Head-ECAM模型具有較強(qiáng)的魯棒性。
表4 公開(kāi)數(shù)據(jù)集的模型檢測(cè)性能對(duì)比
圖6 公開(kāi)數(shù)據(jù)集的模型檢測(cè)效果對(duì)比Fig.6 Comparison of model detection effects on public datasets
將特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)引入YOLO模型中,能更好地捕捉不同尺度目標(biāo)的細(xì)節(jié)信息,但考慮到每個(gè)檢測(cè)頭的尺度范圍是固定的,對(duì)于小尺度目標(biāo)無(wú)法準(zhǔn)確地定位邊界框,一般通過(guò)增加大尺度檢測(cè)頭來(lái)增強(qiáng)對(duì)小目標(biāo)的感知能力。陳衛(wèi)彪等[24]提出的基于深度可分離多頭網(wǎng)絡(luò)結(jié)構(gòu)的目標(biāo)檢測(cè)方法DSM-YOLOv5,在YOLOv5模型中增加一個(gè)分辨率為160×160的小目標(biāo)檢測(cè)頭,并將其與高層網(wǎng)絡(luò)進(jìn)行殘差連接,有效地解決了傳統(tǒng)無(wú)人機(jī)航拍圖像目標(biāo)檢測(cè)算法存在漏檢率高、檢測(cè)成功率低和模型體積大等問(wèn)題,DSM-YOLOv5的mAP@0.5較YOLOv5s提高了3.45%。袁磊等[25]通過(guò)在特征金字塔中增加分辨率為160×160的檢測(cè)層,提出了一種基于YOLOv5的道路目標(biāo)檢測(cè)改進(jìn)方法CTC-YOLO,該方法增強(qiáng)了對(duì)小目標(biāo)的學(xué)習(xí)能力,彌補(bǔ)了檢測(cè)目標(biāo)尺寸范圍小的缺點(diǎn),在公開(kāi)數(shù)據(jù)集KITTI、CITYSCAPES及BDD100K上的試驗(yàn)結(jié)果表明,該方法的mAP@0.5相較基線模型分別提高了3.1%、2%和1.2%。本研究中,保留YOLOv8原有的3個(gè)檢測(cè)頭,在FPN底層添加一個(gè)大尺寸檢測(cè)頭,與骨干網(wǎng)絡(luò)最底層的C2f進(jìn)行特征融合,新添加的分辨率為160×160的檢測(cè)頭能提供更高的檢測(cè)分辨率,捕捉更多的細(xì)節(jié)信息,更加有效地檢測(cè)水下模糊的魚類目標(biāo)個(gè)體。
引入注意力機(jī)制的方法能有效減少背景干擾,使模型更好地關(guān)注目標(biāo)區(qū)域。祝志慧等[26]在主干網(wǎng)絡(luò)加入卷積注意力模塊CBAM[27],提出一種基于改進(jìn)YOLOv7模型的復(fù)雜環(huán)境鴨蛋檢測(cè)方法,在干擾、遮擋等復(fù)雜環(huán)境下,該方法能夠加強(qiáng)網(wǎng)絡(luò)信息傳遞,提高模型對(duì)特征的敏感程度,減少?gòu)?fù)雜環(huán)境對(duì)鴨蛋的識(shí)別干擾,與YOLOv7相比,改進(jìn)YOLOv7模型的F1值提高了7.6%。 齊向明等[28]通過(guò)引入SimAM注意力機(jī)制[29],提出了一種小目標(biāo)檢測(cè)算法,有效地解決了圖像檢測(cè)中出現(xiàn)的相互遮擋、背景復(fù)雜和特征點(diǎn)少的問(wèn)題,在公開(kāi)數(shù)據(jù)集VOC2007+2012的試驗(yàn)結(jié)果表明,與原始算法相比,mAP@0.5提升了3.35%。蔡竹軒等[30]為了較好地關(guān)注到目標(biāo)信息,增強(qiáng)相關(guān)通道的特征表達(dá),在空間金字塔池化層前置入有效通道注意力機(jī)制ECA[31],通過(guò)不降維的跨通道交互,增強(qiáng)了相關(guān)通道的特征表達(dá)并降低了性能損耗,從而提高了對(duì)水稻稻穗的檢測(cè)精度。本研究中,在特征融合后使用ECAM注意力機(jī)制,能夠忽略模糊背景對(duì)魚類個(gè)體的影響,聚焦魚類的關(guān)鍵特征,檢測(cè)精度比原來(lái)的模型有所提升,這與上述研究網(wǎng)絡(luò)模型改進(jìn)的思想一致。
1)本研究中,提出的基于YOLOv8的養(yǎng)殖魚群檢測(cè)模型,通過(guò)增加大尺寸檢測(cè)頭,捕捉魚類個(gè)體的細(xì)節(jié)信息,增強(qiáng)了模型對(duì)模糊目標(biāo)的識(shí)別能力。
2)本研究中,在YOLOv8模型的基礎(chǔ)上,提出通道非降維與空間協(xié)調(diào)注意力機(jī)制ECAM,使模型聚焦于圖像中特定的感興趣區(qū)域,降低了模糊背景對(duì)魚群個(gè)體檢測(cè)造成的干擾,從而提高了特征表達(dá)能力,提升了檢測(cè)的準(zhǔn)確性。
3)本研究中,提出的YOLOv8-Head-ECAM模型可以檢測(cè)模糊、遮擋的魚群,平均精度均值、準(zhǔn)確率和召回率分別達(dá)到了96.6%、94.2%和92.4%,與已有檢測(cè)效果較好的水下魚群檢測(cè)模型相比,該方法具有更好的檢測(cè)性能,進(jìn)一步提高了魚群檢測(cè)的有效性。然而,本研究中提出的算法主要針對(duì)攝像頭位于水下的魚群檢測(cè),當(dāng)攝像頭處于水上時(shí),如何識(shí)別反光區(qū)域的養(yǎng)殖魚目標(biāo)是未來(lái)有待研究解決的問(wèn)題。