• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于改進(jìn)YOLOv7-tiny和動態(tài)檢測門的金槍魚自動檢測與計數(shù)研究

      2023-12-23 03:15:06袁紅春史經(jīng)偉
      漁業(yè)現(xiàn)代化 2023年6期
      關(guān)鍵詞:金槍魚計數(shù)卷積

      袁紅春,史經(jīng)偉

      (上海海洋大學(xué)信息學(xué)院,上海 201306)

      金槍魚遠(yuǎn)洋漁業(yè)中,漁獲量統(tǒng)計普遍采用人工計數(shù)[1-2],不僅人工成本高、效率低[3-4],還會出現(xiàn)統(tǒng)計偏差等現(xiàn)象。使用自動計數(shù)方法可以有效提高效率,但目前針對金槍魚延繩釣漁業(yè)的漁獲量自動統(tǒng)計研究還較少。傳統(tǒng)方法使用計數(shù)傳感器等硬件設(shè)備,船員等移動物體經(jīng)常會自動計入,計數(shù)誤差較大,而錯誤的漁獲量統(tǒng)計會直接影響到漁業(yè)資源評估[5]與金槍魚漁情預(yù)報的準(zhǔn)確性[6],且不能識別魚的種類、硬件成本昂貴[7]。隨著計算機視覺技術(shù)的發(fā)展,基于深度學(xué)習(xí)的目標(biāo)檢測算法成為主流解決方案[8-11],可以實現(xiàn)無接觸計數(shù),提高計數(shù)效率,解放人力。

      Albuquerque等[12]提出了一種基于Blob跟蹤和高斯混合的魚類計數(shù)方法,設(shè)計了一條計數(shù)線,當(dāng)魚停留時間滿足一定時長后進(jìn)行計數(shù),并使用卡爾曼濾波跟蹤來避免重復(fù)計數(shù)。這種方法存在如下缺點:首先,當(dāng)魚停留在計數(shù)線上的時間超過讀取時間間隔時,卡爾曼濾波器不能實現(xiàn)去重;其次,當(dāng)魚被遮擋并重新跟蹤時,容易產(chǎn)生漏計問題。Yu等[13]提出了一種基于特征提取模塊和注意力機制的深度學(xué)習(xí)網(wǎng)絡(luò)模型來實現(xiàn)養(yǎng)殖魚類的計數(shù),該模型由特征提取模塊、注意力模塊和密度圖模塊組成。該模型對靜態(tài)圖片中的魚計數(shù)的準(zhǔn)確率為97%,但忽略實際生產(chǎn)過程中由于魚的自由游動導(dǎo)致的重復(fù)計數(shù)問題。此外,該模型比較復(fù)雜,無法識別魚類和提供不同魚類數(shù)量的統(tǒng)計,對動態(tài)視頻計數(shù)也缺乏支持。吳必朗等[14]提出了改進(jìn)的Deepsort追蹤算法和虛擬計數(shù)線的方式對魚道內(nèi)通過的魚進(jìn)行計數(shù),計數(shù)準(zhǔn)確率僅為71%,這是由于Deepsort跟蹤算法對于遮擋問題處理能力較差[15],且對于外觀差異較大的識別對象比較敏感,而同種魚類的外形差異較小,無法穩(wěn)定跟蹤目標(biāo)[16],其次,如果魚類在通過計數(shù)線時突然消失,將會導(dǎo)致漏計。綜上可知,已有研究在出現(xiàn)遮擋時,模型提取目標(biāo)特征能力較差,易出現(xiàn)目標(biāo)遺失問題[17],導(dǎo)致計數(shù)偏差。雖然可以通過引入注意力機制提高檢測模型的網(wǎng)絡(luò)性能,但是現(xiàn)有注意力機制還不足以解決上述問題[18],同時計數(shù)線與跟蹤算法也無法彌補檢測算法遺失目標(biāo)時產(chǎn)生的計數(shù)偏差。陳子文等[19]在數(shù)據(jù)預(yù)處理階段提出自適應(yīng)圖片裁切算法,使用YOLOv5算法對養(yǎng)殖蝦進(jìn)行檢測與計數(shù),擴(kuò)展了數(shù)據(jù)集,減少了數(shù)據(jù)特征的丟失,但對拍攝設(shè)備要求較高,對低分辨率的圖片與大體型目標(biāo)不友好,易將圖片變得模糊丟失細(xì)節(jié),也會將大型目標(biāo)裁剪為多份,使網(wǎng)絡(luò)學(xué)習(xí)時產(chǎn)生混淆。

      綜上可知,目前普遍使用的計數(shù)算法多為Deepsort跟蹤算法,檢測算法YOLOv5、YOLOv5s、YOLOv7等與Deepsort的結(jié)合計數(shù)方法,以及虛擬計數(shù)線,其中YOLO系列與Deepsort的結(jié)合方法在不同計數(shù)領(lǐng)域被廣泛使用[2,14,18-21]。

      針對上述方法的局限性與數(shù)據(jù)集的特點,提出了一種改進(jìn)的YOLOv7-tiny的輕量化檢測模型DP-YOLO,通過可變形卷積DCNv2提升骨干網(wǎng)絡(luò)對金槍魚不規(guī)則形體的特征提取能力,通過PConv降低模型的計算量,提高檢測速度。為解決已有計數(shù)線存在的問題,設(shè)計了一條具有矯正和緩沖功能的動態(tài)雙向計數(shù)線,稱為“動態(tài)檢測門”。以上改進(jìn)提升YOLOv7-tiny 在真實金槍魚延繩釣捕撈中檢測的平均精度和計數(shù)性能指標(biāo)。

      1 方法

      1.1 數(shù)據(jù)獲取

      延繩釣常用來捕獲海洋中的中大型動物[22],每隔一段時間需要人工將捕獲的魚從海中經(jīng)過甲板上拖入貨艙[23]。本研究數(shù)據(jù)集與深圳市聯(lián)成遠(yuǎn)洋漁業(yè)有限公司合作采集,于2021年9月在其遠(yuǎn)洋延繩釣漁船上使用具有夜視攝像功能的720 px高清攝像頭固定于漁船上方俯視拍攝數(shù)據(jù),采集了40段不同時間段和不同光照下的捕撈數(shù)據(jù),視頻的幀率為30FPS,圖片與視頻大小皆為1 280 px×720 px,如圖1所示。

      圖1 數(shù)據(jù)集示例Fig.1 Data set example

      1.2 DP-YOLO框架設(shè)計

      在真實捕撈作業(yè)中金槍魚與船員皆處于運動狀態(tài),對金槍魚的檢測和計數(shù)有較高的準(zhǔn)確性和實時性要求,YOLO系列具有計算成本小、推理速度快且保證性能的優(yōu)點[24-25]。其中YOLOv7同體量下比其他YOLO系列模型精度更高,能學(xué)習(xí)更多特征[26],比YOLOv5檢測速度快1.2倍[27]。YOLOv7精度較高,但參數(shù)量較大,實際捕撈過程中,為每艘漁船搭載高性能顯卡的設(shè)備成本較高,無法使用低成本邊緣計算機實現(xiàn)現(xiàn)場部署,在現(xiàn)有條件下無法運行YOLOv7模型,無法滿足計數(shù)的實時性,而輕量級YOLOv7-tiny模型的計算量僅為YOLOv7的1/7[17],適合在邊緣設(shè)備上運行[28]。

      DP-YOLO基于YOLOv7-tiny改進(jìn),其結(jié)構(gòu)如圖2所示,分為骨干網(wǎng)絡(luò)和頭部網(wǎng)絡(luò)兩部分。數(shù)據(jù)輸入時,模型會對數(shù)據(jù)進(jìn)行Mosaic數(shù)據(jù)增強[29]、自適應(yīng)調(diào)整輸入圖片為3通道大小為640 px×640 px的特征圖、自適應(yīng)錨框等數(shù)據(jù)預(yù)處理工作;骨干網(wǎng)絡(luò)負(fù)責(zé)金槍魚的特征提取;頭部網(wǎng)絡(luò)通過骨干網(wǎng)絡(luò)中輸出的3層不同大小的特征圖,經(jīng)過特征融合輸出3個檢測層,分別檢測不同大小的目標(biāo);最后輸出包括金槍魚類別的置信度和錨框位置。

      圖2 DP-YOLO結(jié)構(gòu)圖Fig.2 DP-YOLO structure diagram

      為解決金槍魚魚體不規(guī)則、易變化,外形特征難以提取導(dǎo)致后續(xù)的計數(shù)誤差,在骨干網(wǎng)絡(luò)中,通過將DCNv2嵌入在高效層聚合網(wǎng)絡(luò)ELAN中實現(xiàn)D2模塊,提升了對金槍魚外形特征的提取能力;為緩解加入D2模塊導(dǎo)致模型檢測速度下降問題,使用PConv替換骨干網(wǎng)絡(luò)中的常規(guī)卷積有效減少了模型的計算量,提升了模型的檢測速度,使得該模型可以在邊緣設(shè)備上運行。綜上可知,DP-YOLO模型通過加強不規(guī)則形狀的特征提取的能力,提高了對易變形魚體的學(xué)習(xí)能力,通過減少參數(shù)量和內(nèi)存訪問次數(shù),提高檢測速度,實時性和準(zhǔn)確性的改善為檢測門算法的計數(shù)效果提供了先決條件。

      1.3 骨干網(wǎng)絡(luò)改進(jìn)

      YOLOv7-tiny使用Mosica數(shù)據(jù)增強技術(shù)增加特征圖的特征豐度,提升骨干網(wǎng)絡(luò)的特征提取能力,但在金槍魚捕撈環(huán)境中,金槍魚外形易變,晝夜光照條件不同,模型中的預(yù)處理技術(shù)無法有效提取該類問題下金槍魚的外形特征。為解決上述問題,使用可變形卷積DCNv2,可以有效提取金槍魚外形的特征[30-31]。

      圖3顯示了DCNv2與常規(guī)卷積的工作原理,假設(shè)卷積核大小為3 px×3 px,以金槍魚魚鰭為例,綠色陰影部分為卷積的特征提取像素,常規(guī)卷積只能提取矩形范圍內(nèi)的像素特征,需多次卷積才能提取魚鰭的外形特征,但DCNv2使得卷積核可以根據(jù)輸入特征圖的內(nèi)容進(jìn)行自適應(yīng)空間變形,通過學(xué)習(xí)位置偏移量實時調(diào)整采樣位置,從而更好適應(yīng)形變物體。

      圖3 常規(guī)卷積(a)和DCNv2(b)的卷積過程Fig.3 The process of regular convolutions (a) and DCNv2(b)

      使用額外的回歸網(wǎng)絡(luò)來學(xué)習(xí)每個像素位置的偏移量,使卷積中心從固定位置移動到自適應(yīng)位置,更好地適應(yīng)了輸入數(shù)據(jù)的特征分布。因此在相同卷積次數(shù)下,相較常規(guī)卷積,有較快的特征提取能力。YOLOv7中的高效層聚合網(wǎng)絡(luò)ELAN是一種高效的網(wǎng)絡(luò)架構(gòu),使用殘差結(jié)構(gòu)將每個中間層得到的特征圖都在最后一層聚合進(jìn)行特征融合,能提取不同卷積得到的特征圖和不同通道下的特征,同時將DCNv2嵌入ELAN網(wǎng)絡(luò)中組成D2模塊,D2模塊中通過連續(xù)使用DCNv2卷積可以在不同尺度上與感受野上提取特征,并將它們?nèi)诤?能夠捕捉到不同層次的細(xì)節(jié)和結(jié)構(gòu)信息,從而提高特征提取的準(zhǔn)確性與魯棒性。D2模塊結(jié)構(gòu)如圖4所示,使用LeakyRelu激活函數(shù)替代原來的Relu函數(shù),將所有負(fù)值權(quán)重改為非零斜率,擴(kuò)大了Relu函數(shù)的范圍,減少環(huán)境因素產(chǎn)生的金槍魚漏檢問題。

      圖4 D2模塊Fig.4 D2 module

      D2模塊提升了骨干網(wǎng)絡(luò)的特征提取能力,但增加了較多計算量與檢測時的內(nèi)存訪問次數(shù),使模型檢測時間增加。由于金槍魚捕撈是一個動態(tài)過程,對檢測速度要求較高,為了使模型能夠部署在資源受限的船載邊緣設(shè)備上,使用PConv代替常規(guī)卷積,減少模型的計算量的同時提升硬件設(shè)備的每秒浮點運算次數(shù),達(dá)到更低的檢測延遲。DP-YOLO提高了特征提取能力,降低了骨干網(wǎng)絡(luò)的計算量,同時優(yōu)化硬件性能,提高了模型速度,保證金槍魚計數(shù)的準(zhǔn)確性與實時性,適合現(xiàn)場部署,降低船載硬件成本。

      (1)

      C=h×w×k2×c2

      (2)

      M=h×w×2c+k2×c2

      (3)

      式(1)中:顯示了檢測延遲L與模型計算量f、硬件每秒浮點運算次數(shù)F的關(guān)系。式(2)與式(3)中:兩式分別計算卷積的計算量C和卷積過程中的內(nèi)存訪問次數(shù)M,其中h、w分別為輸入特征圖的高度和寬度。c是卷積的通道數(shù)量,k是卷積核的大小。

      由式(1)知,檢測速度與模型計算量與設(shè)備單位時間的浮點運算次數(shù)有關(guān),前者導(dǎo)致模型計算時間的延長,后者頻繁訪問內(nèi)存會導(dǎo)致硬件的處理性能下降,故較大的模型計算量和頻繁的內(nèi)存訪問會導(dǎo)致延遲增加。因為PConv的通道數(shù)c為常規(guī)卷積的1/4,由式(2)知,PConv計算量僅為常規(guī)卷積的1/16,極大降低了模型的計算量;由式(3)知,PConv的內(nèi)存訪問次數(shù)約為常規(guī)卷積的1/4,使硬件的性能提升約4倍左右。因此PConv通過減少自身的計算量和內(nèi)存訪問次數(shù),同時優(yōu)化了模型與硬件性能,減少了一定延遲,提高了模型的檢測速度。

      1.4 檢測門設(shè)計

      由于金槍魚捕撈視頻是連續(xù)的,但目標(biāo)檢測模型按每幀圖片單獨提取檢測,僅使用目標(biāo)檢測模型計算錨框的個數(shù)[32-33],無法判斷不同幀的金槍魚是否為同一條,卻將每幀中的魚都計算在內(nèi),導(dǎo)致該場景下的金槍魚統(tǒng)計不具可行性,因此引入一條計數(shù)線,金槍魚經(jīng)過時進(jìn)行計數(shù)。

      計數(shù)線提高了計數(shù)的可行性,解決了將每幀中金槍魚都計算在內(nèi)的問題,但船員的捕魚行為會為金槍魚造成大面積長時間的遮擋,不論將計數(shù)線置于何處,經(jīng)常在目標(biāo)通過計數(shù)線的時間段被遮擋,導(dǎo)致無法判斷是否經(jīng)過計數(shù)線。受到點、直線位置關(guān)系的啟發(fā),設(shè)計了檢測門算法,若金槍魚經(jīng)過檢測門瞬間被遮擋,如圖5所示,在第n幀在A點第一次識別到金槍魚,在第n+δf幀再次在A’檢測到目標(biāo),即第n幀與第n+δf幀是檢測到目標(biāo)的相鄰兩幀,該算法可以觀察到金槍魚在檢測到的相鄰兩幀中是否位于檢測門的兩側(cè),如果位于兩側(cè)則說明金槍魚經(jīng)過計數(shù)線,位于同側(cè)則說明還未經(jīng)過檢測門,解決了金槍魚被遮擋造成漏計的問題。

      圖5 對遮擋金槍魚計數(shù)的可行性示意圖Fig.5 Schematic of the feasibility of counting blocked tuna

      1.5 檢測門改進(jìn)

      捕撈中有些死魚和較小的金槍魚因沒有價值或遵守捕撈規(guī)范,會被重新投入海中,目標(biāo)將會反向經(jīng)過檢測門,此時真實的數(shù)量是減少的,為實現(xiàn)漁獲量的自動增減,設(shè)計了雙向檢測門,金槍魚進(jìn)出檢測門的次數(shù)分別記作nin、nout,兩者的差值矯正視為漁獲物統(tǒng)計量可以有效檢測到被重新投入海中的金槍魚,加入矯正功能提升了計數(shù)的靈活性。

      船員拖拽金槍魚時,由于金槍魚力量較大,常常產(chǎn)生劇烈反抗,可能會在檢測門上反復(fù)沖撞,雖然雙向檢測門識別并矯正計數(shù)量,但是攝像頭由于設(shè)備性能和存儲大小限制,只能拍攝30 FPS的視頻,如果金槍魚一直位于檢測門附近反抗,反復(fù)進(jìn)出雙向檢測門由于視頻兩幀卡頓偶爾會出現(xiàn)誤差,但長時間的捕撈作業(yè)會放大誤差。為解決上述問題,得益于目標(biāo)不用與檢測門碰撞計數(shù)的特點,為雙向檢測門設(shè)計了緩沖函數(shù),如公式(4)所示。

      (4)

      式中:b是由d變量表示的緩沖函數(shù),d表示金槍魚中點目標(biāo)到檢測門的距離,offset表示最小接受距離的偏置,若金槍魚與檢測門的距離的像素點過小,即使兩幀之間金槍魚位于檢測門兩側(cè)也不會計數(shù),解決了金槍魚反抗時反復(fù)撞門造成的計數(shù)誤差,也節(jié)約了算力。

      由于捕撈中經(jīng)常會出現(xiàn)下雨的夜晚,夜視成像很差,或部分金槍魚被拖拽太快,以至模型未在檢測門前檢測到金槍魚,如圖6所示,金槍魚經(jīng)過檢測門L1時沒有被檢測到,那么它將一直位于檢測門的下方,這樣,即使被拖進(jìn)貨艙也不會被計算在內(nèi)。因此,在以上改進(jìn)基礎(chǔ)上設(shè)計了動態(tài)檢測門,若發(fā)生上述問題,將原來的檢測門平移至A點下方,形成新的檢測門L2,避免發(fā)生漏計。

      圖6 動態(tài)檢測門的原理Fig.6 Principle of Dynamic Detection Gate

      2 試驗分析

      2.1 數(shù)據(jù)處理

      考慮到數(shù)據(jù)集的特點和算法要求,將數(shù)據(jù)預(yù)處理的過程分為以下3個步驟:

      (1)由于視頻數(shù)據(jù)集是40個低價值密度的視頻,需要對含有金槍魚的視頻片段進(jìn)行截取,針對其中8個含有不同種類以及天氣環(huán)境的視頻按照幀數(shù)劃分為圖像,得到2 155幅圖像,圖片大小為1 280 px×720 px,剩余的32個視頻將作為計數(shù)測試。

      (2)由于YOLOv7-tiny的圖片輸入要求,通過深度學(xué)習(xí)中最常用的數(shù)據(jù)集標(biāo)注軟件LabelImg[34]對數(shù)據(jù)集進(jìn)行標(biāo)注為6類,分別為白天和夜晚不同時間段的黃鰭金槍魚、大眼金槍魚和旗魚,同時將圖片調(diào)整為640 px×640 px的大小。

      (3)將訓(xùn)練集和測試集劃分為總數(shù)據(jù)量的80%和20%,分別為1 724張和431張圖像。

      2.2 環(huán)境和參數(shù)設(shè)置

      在Windows 10系統(tǒng)上使用PyTorch深度學(xué)習(xí)框架開展試驗。計算機硬件配置包括NVIDIA GeForce RTX 3090 24GB GPU,第12代英特爾(R)酷睿(TM) i9-12900K和128GB ARM。用于訓(xùn)練的超參數(shù)設(shè)置如下:權(quán)值衰減系數(shù)為0.000 5,學(xué)習(xí)率為0.01,迭代次數(shù)為150,批處理大小設(shè)置為64。

      2.3 評估指標(biāo)

      本研究從模型檢測精度、模型復(fù)雜度與檢測速度三方面評估目標(biāo)檢測模型,分別使用mAP0.5、參數(shù)量、浮點運算次數(shù)(FLOPs)、計算時間、每秒傳輸幀數(shù)FPS評價指標(biāo)。平均精度(Average Precision)是使用積分運算準(zhǔn)確率和召回率曲線下的面積,可以綜合反映模型在不同金槍魚類別上的識別能力,其公式為:

      (5)

      為體現(xiàn)模型在所有類別上的識別能力,各類AP數(shù)值平均后得到mAP(mean Average Precision)。本研究是通過目標(biāo)檢測模型和動態(tài)檢測門的兩階段計數(shù)算法,預(yù)測錨框與真實錨框的匹配度極大影響了后續(xù)計數(shù)的準(zhǔn)確性,因此使用標(biāo)記錨框和預(yù)測錨框交并比(IoU)大于0.5的平均精度mAP0.5作為模型精度評價指標(biāo),表示在IoU取值為0.5時,計算出的mAP。

      模型參數(shù)量表示模型中需要學(xué)習(xí)的權(quán)重數(shù)量,用來衡量模型復(fù)雜度,參數(shù)量的大小是影響模型檢測速度的重要原因之一,浮點運算次數(shù)FLOPs表示模型在推斷過程中需要執(zhí)行浮點運算的數(shù)量,用于衡量模型的計算量,FLOPs較大會延遲推理時間,不適合部署在邊緣設(shè)備上,無法滿足漁船的實際應(yīng)用,兩者作為模型復(fù)雜度的評價指標(biāo)。

      計算時間表示模型在推理每張圖片時所用的時間,FPS表示每秒傳輸幀率,二者作為模型檢測速度的評價指標(biāo)。

      本研究從計數(shù)數(shù)量、計數(shù)誤差、錯計誤差(Error Counting Error,ECE)、重復(fù)計數(shù)(Repeat Counting,RC)和漏計數(shù)量(Missing Counting,MC)評估計數(shù)方法。計數(shù)數(shù)量表示計數(shù)方法的計數(shù)總量,計數(shù)誤差表示方法計數(shù)總量與實際數(shù)量的比值,但由于漏計和重復(fù)計數(shù)互相修正會導(dǎo)致整體計數(shù)誤差較小,不能客觀反映技術(shù)方法的能力,提出錯計誤差評估指標(biāo)ECE,其公式為:

      (6)

      式中:S表示實際目標(biāo)數(shù)量,R與M分別表示重復(fù)計數(shù)與漏計的目標(biāo)數(shù)量,使用ECE可以直觀地反映計數(shù)方法的整體反映計數(shù)方法的性能,關(guān)注重復(fù)計數(shù)、漏計帶來的計數(shù)誤差影響。

      2.4 DP-YOLO模型消融試驗

      為驗證對YOLOv7-tiny改進(jìn)的有效性,設(shè)計以下消融試驗:各模型的訓(xùn)練參數(shù)和數(shù)據(jù)保持一致,逐步為YOLOv7-tiny模型加入PConv卷積、D2模塊,分別訓(xùn)練模型作對比,如表1所示,結(jié)果表明PConv和D2模塊都提升了基準(zhǔn)模型的性能,反映了加入模塊的有效性,D2模塊的模型在精度提升上效果很大,但是增加了較大的計算量,計算速度明顯變緩。

      表1 消融試驗Tab.1 Ablation experiment

      PConv具有模型輕量化并提升計算速度的效果,使用該卷積替換常規(guī)卷積大幅減少模型的計算量,緩解了D2模塊帶來的速度劣勢,提高了模型檢測速度。因此,通過結(jié)合PConv和D2模塊,DP-YOLO降低了3.3%的參數(shù),減少了23.7%的FLOPs和2.1%計算時間,提高了5.3%的平均精度和2.3%的FPS。試驗結(jié)果表明,DP-YOLO相比原模型具有精度高、模型復(fù)雜度低、檢測速度快的優(yōu)勢,可以更好滿足金槍魚延繩釣漁船上的現(xiàn)場部署。

      2.5 可變形卷積的可視化試驗

      D2模塊能夠較為準(zhǔn)確地學(xué)習(xí)到金槍魚的外形特性,所以聚焦區(qū)域更為收斂,可以有效降低背景噪音,提升置信度,減少了誤檢或漏檢,為直觀展示該模塊優(yōu)勢,設(shè)計以下可視化試驗:保持訓(xùn)練數(shù)據(jù)與超參數(shù)不變,訓(xùn)練不同模型并對同一張圖像檢測,生成不同對應(yīng)的可視化熱圖。圖7為YOLOv7-tiny和兩個經(jīng)過改進(jìn)后的YOLOv7-tiny熱圖,其中紅色區(qū)域表示模型在識別物體時應(yīng)該關(guān)注的部分。與圖7(c)和圖7(d)相比,圖7(b)的紅色部分更集中在目標(biāo)的右側(cè),同時0.84的置信度也遠(yuǎn)遠(yuǎn)高于后兩者的0.68。另外,后兩者更多關(guān)注了左側(cè)船員這一錯誤目標(biāo)。試驗表明, DP-YOLO中基于DCNv2的D2模塊受外界環(huán)境因素影響較小,可以更好地聚焦于目標(biāo)。

      圖7 不同YOLOv7-tiny模型的熱圖可視化Fig.7 Feature heat maps of variousYOLOv7-tiny

      2.6 檢測門的消融試驗

      為反映不同檢測門對計數(shù)性能的影響,設(shè)計了消融試驗:使用DP-YOLO模型檢測目標(biāo),依次為檢測門加入矯正功能(Correction,C)、緩沖函數(shù)(Buffer Function,B)和動態(tài)功能(Dynamic,D),檢測門中緩沖函數(shù)的offset設(shè)置為5。使用剩余32條視頻數(shù)據(jù)試驗,其中共捕獲49條金槍魚,1條金槍魚由于死魚被重新投入海中,實際捕獲48條金槍魚。

      如表2所示,試驗結(jié)果顯示普通的檢測門在存在遮擋和金槍魚反抗時,易導(dǎo)致很大計數(shù)誤差,這兩種情況導(dǎo)致了2.5倍的計數(shù)誤差。為解決上述問題,在檢測門中引入矯正功能和緩沖函數(shù)。添加矯正功能大幅度提高了計數(shù)準(zhǔn)確度,誤差降低至33%,再使用緩沖函數(shù),誤差再減少15%。然而,9條金槍魚由于被拖拽速度過快,無法在預(yù)設(shè)檢測門前檢測到,這導(dǎo)致了9條魚的漏計,最后引入動態(tài)檢測門以良好的效果解決了這個問題,計數(shù)準(zhǔn)確率達(dá)到了97.9%。試驗結(jié)果表明,本研究提出的動態(tài)檢測門可以有效地解決遮擋問題,避免目標(biāo)掙扎造成的重復(fù)計數(shù)問題,解決了漁船上金槍魚的自動計數(shù)問題。

      表2 檢測門消融試驗Tab.2 Ablation test results of detection gate

      2.7 計數(shù)方法對比試驗

      由于Deepsort算法、YOLOv5s、YOLOv7與Deepsort結(jié)合算法、計數(shù)線算法被普遍應(yīng)用到各領(lǐng)域計數(shù)的研究中,且被證明有較好的效果,為比較所提方法與上述方法的計數(shù)效果與驗證所提方法在本領(lǐng)域中的有效性,設(shè)計試驗如下:第一階段探究已有計數(shù)方法與所提方法在32段金槍魚捕撈視頻中的計數(shù)性能,與現(xiàn)有YOLOv5s結(jié)合計數(shù)線、YOLOv7-tiny結(jié)合Deepsort的先進(jìn)計數(shù)方法對測試視頻計數(shù)作對比。第二階段探究計數(shù)線、Deepsort與動態(tài)檢測門的計數(shù)性能,設(shè)計試驗如下:保持檢測模型相同,使用DP-YOLO模型分別結(jié)合計數(shù)線、Deepsort與動態(tài)檢測門對測試視頻計數(shù)作對比。各檢測模型使用同一數(shù)據(jù)集訓(xùn)練,各訓(xùn)練參數(shù)設(shè)置相同,所有試驗結(jié)果如表3所示。

      表3 計數(shù)方法對比試驗Tab.3 Comparative test results of counting methods

      首先,分析已有計數(shù)算法的性能表現(xiàn)。表中①數(shù)據(jù)顯示,僅使用Deepsort跟蹤模型計數(shù),對外觀特征差異較小的同類金槍魚不能做到穩(wěn)定跟蹤,經(jīng)常對同一條魚重復(fù)計數(shù)。表中②③數(shù)據(jù)顯示,在目標(biāo)檢測模型中引入計數(shù)線和Deepsort解決了目標(biāo)檢測模型處理視頻計數(shù)的可行性,但無法處理遮擋問題,造成較多的漏計數(shù)量。由①②③數(shù)據(jù)知,先進(jìn)計數(shù)算法雖然降低了計數(shù)誤差,但錯計誤差較大,表明已有計數(shù)方法不能滿足金槍魚漁業(yè)的統(tǒng)計要求,突出了錯計誤差在評估計數(shù)方法時的客觀性。

      其次,分析檢測模型性能對計數(shù)結(jié)果產(chǎn)生的影響。表中②與④,③與⑤兩組數(shù)據(jù)顯示,檢測模型的性能也會對計數(shù)效果產(chǎn)生較大影響,DP-YOLO模型相比YOLOv5s與YOLOv7有更好的檢測性能,使用同樣的計數(shù)線與Deepsort算法,但達(dá)到了更好的計數(shù)效果。

      最后,為客觀評估動態(tài)檢測門的計數(shù)性能,表中④⑤⑥數(shù)據(jù)顯示,保持檢測算法不變,提出的動態(tài)檢測門算法計數(shù)效果領(lǐng)先于計數(shù)線和Deepsort,改善了遮擋問題導(dǎo)致的漏計,解決了金槍魚反抗導(dǎo)致的重復(fù)計數(shù)問題,錯計誤差降低至2.1%,分別領(lǐng)先計數(shù)線和Deepsort算法43.7%和10.4%。

      試驗結(jié)果表明,本研究所提檢測模型性能較優(yōu),計數(shù)方法的計數(shù)偏差小于已有計數(shù)方法,計數(shù)更為精準(zhǔn),適合金槍魚延繩釣漁業(yè)的漁獲物自動統(tǒng)計任務(wù)。

      2.8 計數(shù)試驗

      為了解所提計數(shù)算法的分類精度與計數(shù)性能,設(shè)計以下測試模擬真實捕撈環(huán)境:使用DP-YOLO模型對剩余長達(dá)10 h的32段視頻實時視頻檢測和計數(shù),結(jié)果如表4所示,其中BE、YF、SF分別表示大眼金槍魚、黃鰭金槍魚和旗魚,day和night分別表示金槍魚捕捉的時間(白天或者夜晚)。計數(shù)精度達(dá)到97.9%,1條重新被扔進(jìn)海里的魚也成功區(qū)分。

      表4 金槍魚計數(shù)試驗Tab.4 Experiment of counting tunas

      但是,兩條在夜間捕獲的黃鰭金槍魚被錯誤地歸類為兩條大眼金槍魚,由于一條大眼金槍魚目標(biāo)較小且在暴雨的夜晚能見度很差,因此夜晚的大眼金槍魚漏計了一條,導(dǎo)致夜晚的黃鰭金槍魚缺失了兩條,大眼金槍魚多計入一條,因此,在32段視頻中,金槍魚分類準(zhǔn)確率為95.8%。

      3 結(jié)論

      提出了一種基于DP-YOLO模型與動態(tài)檢測門算法的兩階段計數(shù)方法, D2模塊擁有卷積核自適應(yīng)變形與位置偏移量參數(shù)高效學(xué)習(xí)的特點,連續(xù)使用DCNv2能夠達(dá)到多尺度特征融合的效果,它通過卷積核的變形獲得不同的感受野,同時LeakyRelu激活函數(shù)擴(kuò)大參數(shù)學(xué)習(xí)范圍避免細(xì)節(jié)丟失,因此D2模塊提高了骨干網(wǎng)絡(luò)中對于金槍魚外形特征提取的能力。由于常規(guī)卷積存在的特征冗余問題明顯,卷積后輸出大量相似特征的特征圖,造成計算資源的浪費,PConv只對1/4通道數(shù)的特征圖進(jìn)行常規(guī)卷積操作,對剩余通道直接向后傳遞,輸出特征圖的大小與數(shù)量不變,避免特征圖冗余的同時減少了浮點計算次數(shù),提高了模型檢測速度,使得模型能夠在邊緣設(shè)備運行。為解決金槍魚目標(biāo)的遮擋導(dǎo)致的計數(shù)誤差,設(shè)計了動態(tài)檢測門,計數(shù)效果領(lǐng)先于現(xiàn)有方法,可為金槍魚延繩釣漁船的漁獲量統(tǒng)計提供現(xiàn)場部署,降低人力與時間成本。但是,算法還有一些不足之處,試驗數(shù)據(jù)表明在處理夜間圖片時,模型的目標(biāo)識別能力有所下降,容易將大眼金槍魚和黃鰭金槍魚混淆。由于夜視攝像頭拍攝的視頻在夜間模糊不清,呈綠色。因此,可以引入夜視圖像增強技術(shù)提高改進(jìn)的YOLOv7-tiny性能。

      猜你喜歡
      金槍魚計數(shù)卷積
      金槍魚淹死事件
      可以加速的金槍魚機器人
      軍事文摘(2021年22期)2022-01-18 06:22:00
      古人計數(shù)
      基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
      金槍魚與海豚
      遞歸計數(shù)的六種方式
      古代的計數(shù)方法
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      國內(nèi)新型遠(yuǎn)洋金槍魚圍網(wǎng)漁船首航
      商周刊(2018年19期)2018-12-06 09:49:41
      基于傅里葉域卷積表示的目標(biāo)跟蹤算法
      苏尼特右旗| 昭苏县| 孟津县| 固镇县| 祁阳县| 民乐县| 长乐市| 福泉市| 聊城市| 永仁县| 乡城县| 胶南市| 青阳县| 任丘市| 基隆市| 浪卡子县| 吴忠市| 威信县| 钟山县| 洛宁县| 苏尼特右旗| 娄底市| 金乡县| 安溪县| 长宁区| 青铜峡市| 常德市| 江油市| 依兰县| 佛坪县| 吴江市| 盐津县| 湘潭市| 靖西县| 城固县| 淮滨县| 高邑县| 乌拉特后旗| 元朗区| 瑞昌市| 新田县|