彭 迪,吳 太 夏,王 樹 東,鞠 茂 森
(1.河海大學(xué) 地球科學(xué)與工程學(xué)院,江蘇 南京 211100; 2.中國科學(xué)院 空天信息創(chuàng)新研究院,北京 100000; 3.河海大學(xué) 河長制研究與培訓(xùn)中心,江蘇 南京 210098)
河湖管理與保護(hù)是一項復(fù)雜的系統(tǒng)工程,涉及上下游、左右岸、不同行政區(qū)域和行業(yè)[1]。近年來,一些地區(qū)積極探索河長制,協(xié)調(diào)整合各方力量,有力促進(jìn)了水資源保護(hù)、水域岸線管理、水環(huán)境治理等工作。河湖水域岸線是保障供水安全與防洪安全的重要屏障,河湖岸線周圍存在違法侵占河道、圍墾湖泊、非法采砂釣魚等亂占濫用河湖水域岸線情況等。2016年底,中共中央辦公廳、國務(wù)院辦公廳印發(fā)了《關(guān)于全面推行河長制的意見》,要求各地區(qū)各部門結(jié)合實(shí)際認(rèn)真貫徹落實(shí),提升管理水平,推進(jìn)生態(tài)文明建設(shè);2019年初,多部委聯(lián)合印發(fā)《長江流域重點(diǎn)水域禁捕和建立補(bǔ)償制度實(shí)施方案》,對長江流域分階段實(shí)施禁捕做了規(guī)定[2];2022年初,水利部制定了《2022年水利政策法規(guī)工作要點(diǎn)》,明確提出加強(qiáng)常態(tài)化水行政執(zhí)法,強(qiáng)化日常執(zhí)法巡查,加大對妨礙行洪、侵占河湖岸線、違法取水、損害水生態(tài)水環(huán)境等水事違法行為打擊力度[3]。為了應(yīng)對人為偷捕對于水生態(tài)損害、水環(huán)境污染的影響[4],農(nóng)業(yè)農(nóng)村部的通告宣布從2020年1月1日起開始實(shí)施長江十年禁漁計劃。規(guī)范禁捕水域的垂釣行為是長江岸線監(jiān)管的一個重要內(nèi)容,非法垂釣不但違反了法規(guī)管理條例,而且給岸線的治理帶來了很大的麻煩。傳統(tǒng)的解決方案往往采用24 h輪班巡查來提防偷捕偷釣者,這種人防的方式給監(jiān)管帶來非常大的壓力。雖然近些年在禁捕區(qū)域投入了非常多地面攝像頭,減輕了安防人員的巡邏壓力,但是通過人工判讀河湖岸線周邊錄像攝影,再追究違規(guī)者的責(zé)任,此方法費(fèi)時費(fèi)力且時效性差。故本文將深度學(xué)習(xí)中目標(biāo)檢測算法運(yùn)用到河湖岸線的監(jiān)管中來,經(jīng)過訓(xùn)練得到的模型可以實(shí)時檢測出偷釣者的位置信息,通知安防人員采取行動,實(shí)現(xiàn)實(shí)時管控的同時還節(jié)約了人力物力成本。
目標(biāo)檢測是計算機(jī)視覺的重要內(nèi)容,它將目標(biāo)的分割和識別結(jié)合,其準(zhǔn)確性和實(shí)時性在安防領(lǐng)域、軍事領(lǐng)域和交通領(lǐng)域等有著廣泛的應(yīng)用場景。傳統(tǒng)的目標(biāo)檢測算法,如SHIFT算法[5]、HOG算法[6]等,需要人工選擇特征提取器里的特征用于分類器的訓(xùn)練。基于卷積神經(jīng)網(wǎng)絡(luò)提取特征的深度學(xué)習(xí)檢測方法依靠其強(qiáng)大的自學(xué)習(xí)能力和自適應(yīng)性成為當(dāng)今檢測技術(shù)領(lǐng)域的主流方法[7]。目前基于深度學(xué)習(xí)的目標(biāo)檢測方法主要分為兩類:第一類是兩階段的目標(biāo)檢測算法,這類算法先粗略生成樣本候選框,再進(jìn)行精細(xì)的選取調(diào)整,但是檢測速度較慢,其代表算法有R-CNN[8]、Fast R-CNN[9]等;第二類是一階段的目標(biāo)檢測算法,利用卷積網(wǎng)絡(luò)對整個圖像進(jìn)行處理,實(shí)現(xiàn)目標(biāo)定位的同時預(yù)測類別,所以檢測速度快,能達(dá)到實(shí)時檢測的要求,其代表算法有SSD[10]、YOLOv1-v3[11-13]等。鑒于YOLOv3算法的精度和速度的優(yōu)勢,許多學(xué)者通過對YOLOv3算法結(jié)構(gòu)的改進(jìn),使其能更好地適用不同的場景。魏潤辰等[14]基于YOLOv3融入空間注意力機(jī)制模塊增強(qiáng)網(wǎng)絡(luò)特征學(xué)習(xí),提出對網(wǎng)絡(luò)寬度進(jìn)行調(diào)整以改善模塊運(yùn)算速度,提高城市道路區(qū)域行人檢測的準(zhǔn)確性和實(shí)時性,更好應(yīng)對駕駛場景的實(shí)際需求;岳曉新等[15]提出的道路小目標(biāo)檢測算法對YOLOv3算法網(wǎng)絡(luò)模型中的聚類算法和損失函數(shù)進(jìn)行優(yōu)化,提高道路小目標(biāo)的檢測精度。
本次研究以河湖岸線上的垂釣行為為主要研究對象??紤]到河湖岸線的攝像頭往往是位置固定的,但對于距離攝像頭較遠(yuǎn)的垂釣者,目標(biāo)變小而使得識別精度不高。針對此問題,本次研究在原YOLOv3的網(wǎng)絡(luò)結(jié)構(gòu)中嵌入多個注意力機(jī)制模塊,改變特征層的權(quán)重信息,使網(wǎng)絡(luò)聚焦于垂釣行為特征,抑制背景的干擾;同時由于樣本量不易擴(kuò)充,借助遷移學(xué)習(xí)的思想,利用COCO數(shù)據(jù)集得到預(yù)訓(xùn)練主干權(quán)重,提高模型的提取特征能力和泛化能力。試驗(yàn)結(jié)果表明,將上述兩者結(jié)合起來可大幅提高檢測精度,能進(jìn)行快速高效的垂釣行為提取。
YOLOv3的主干網(wǎng)絡(luò)為Darknet-53模型。Dartknet-53模型采用調(diào)整卷積核的步長代替最大池化來改變前向傳播中張量尺寸變換,并且舍棄了v2版本中參數(shù)量大的全連接層;它還借鑒了Res-Net的殘差結(jié)構(gòu)加深網(wǎng)絡(luò)結(jié)構(gòu)的深度,并采用類似FPN(Feature Pyramid Networks)網(wǎng)絡(luò)結(jié)構(gòu),提取不同尺度的特征圖。YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)基本組件DBL(Darknetconv2d_BN_Leaky)由卷積層、BN層和Leaky ReLU激活函數(shù)構(gòu)成,通過兩個DBL的卷積及跳躍連接構(gòu)成殘差單元,加深神經(jīng)網(wǎng)絡(luò)的層數(shù)的同時,有效避免了梯度消失問題。Darknet-53交替使用殘差單元和步長為2的3×3卷積核將輸入模型416×416尺寸的圖片縮小32倍,后續(xù)多次卷積及兩次上采樣保證FPN拼接時張量尺度相同,輸出3種不同尺度的特征圖。其中,二、三層的特征圖由前一層的特征圖上采樣后與低層網(wǎng)絡(luò)中相同大小的特征圖進(jìn)行融合得到。因?yàn)闇\層網(wǎng)絡(luò)語義信息較少、位置信息較多,而深層網(wǎng)絡(luò)中語義信息相對較多,故YOLOv3采用類似FPN結(jié)構(gòu)將淺層與深層信息融合,可實(shí)現(xiàn)對不同尺度特征有效提取。
本次研究主要是禁捕區(qū)域的垂釣行為,由于在禁捕區(qū)域的許多垂釣者距離攝像頭較遠(yuǎn),在影像中呈現(xiàn)為小目標(biāo),本文針對YOLOv3算法在小目標(biāo)識別上的缺陷,將卷積塊注意力模塊CBAM(Convolutional Block Attention Module)分別嵌入到模型網(wǎng)絡(luò)結(jié)構(gòu)的5個位置上,其分別位于主干網(wǎng)絡(luò)Darknet-53模型輸出的3個特征層后以及特征融合階段中兩個上采樣處理得到的特征層后,以此得到改進(jìn)后的網(wǎng)絡(luò)模型YOLOv3-CBAM,結(jié)構(gòu)如圖1所示。本次研究保持了主干的完整性,可共用YOLOv3算法在COCO數(shù)據(jù)集上得到的主干網(wǎng)絡(luò)權(quán)重,節(jié)約了訓(xùn)練成本。
圖1 YOLOv3-CBAM的網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 YOLOv3-CBAM network structure
注意力機(jī)制被廣泛用在自然語言處理、計算機(jī)視覺等任務(wù)中,是一種能改變特征權(quán)重的有效手段,在許多實(shí)驗(yàn)中都表現(xiàn)出較好的性能[16-19]。注意力機(jī)制可以看作是一種權(quán)重分配方式,注意力是模仿人類大腦處理大量信息時的一種機(jī)制,即關(guān)注重點(diǎn)區(qū)域,而忽視不重要的部分。對于不同的位置信息或者不同的通道信息賦予不同的權(quán)重因子,這樣做的目的就是增加了有用特征的權(quán)重,從而獲得更多目標(biāo)的細(xì)節(jié)信息,提高目標(biāo)識別的精度。
與SENet[19]、ECANet[20]等其他只關(guān)注通道特征的注意力機(jī)制不同,卷積塊注意力模塊CBAM提供了一種兼顧通道位置權(quán)重和空間位置權(quán)重的特征權(quán)重產(chǎn)生方式,它將通道注意力機(jī)制和空間注意力機(jī)制進(jìn)行結(jié)合,在幾乎不增加模型復(fù)雜度的情況下,能夠獲得十分明顯的性能增益[17]。其實(shí)現(xiàn)過程如圖2所示,CBAM對輸入進(jìn)來的特征層,分別進(jìn)行通道注意力機(jī)制的處理和空間注意力機(jī)制的處理。在網(wǎng)絡(luò)加入CBAM后,特征層對于不同空間位置、通道位置的權(quán)重得到了調(diào)整,讓網(wǎng)絡(luò)學(xué)會關(guān)注重點(diǎn)信息,提高識別目標(biāo)物體的概率。
圖2 CBAM模塊的結(jié)構(gòu)Fig.2 CBAM module structure
圖3表示CBAM中通道注意力模塊和空間注意力模塊微調(diào)特征層的過程。
圖3(a)表示通道注意力機(jī)制的結(jié)構(gòu)。通道注意力機(jī)制的實(shí)現(xiàn)可以分為兩個部分:模塊會對輸入進(jìn)來的單個特征層分別進(jìn)行全局平均池化和全局最大池化。將平均池化和最大池化的結(jié)果送入共享全連接層(Shared MLP)進(jìn)行處理,其中共享全連接層包括兩個全連接層,對通道數(shù)先降維再升維:第一個全連接層將輸出通道數(shù)縮小至原通道數(shù)的1/r;第二個全連接層將通道放大至r倍,調(diào)整回原來的通道數(shù),本文中縮放因子r取8。對處理后的兩個特征層結(jié)果進(jìn)行相加,然后進(jìn)行sigmoid函數(shù)處理。此時獲得了輸入特征層每一個通道的權(quán)值,且大小都在0~1之間。在獲得這個權(quán)值后,將這個權(quán)值乘上原輸入特征層即可。
圖3(b)為空間注意力機(jī)制的結(jié)構(gòu)。對輸入進(jìn)來的特征層,每一個特征點(diǎn)在通道上取最大值和平均值。之后將這兩個結(jié)果進(jìn)行堆疊,堆疊之后的結(jié)果利用一次通道數(shù)為1的卷積調(diào)整通道數(shù),其中卷積核尺寸k取7,為了保證特征層空間上的尺寸不發(fā)生改變,填充量p取3,卷積之后得到一個通道數(shù)為1的特征層,然后進(jìn)行sigmoid函數(shù)處理。此時獲得了輸入特征層每一個特征點(diǎn)的權(quán)值,且大小都在0~1之間。在獲得這個權(quán)值后,將這個權(quán)值乘上原輸入特征層即可。
圖3 CBAM中的通道注意力模塊和空間注意力模塊的結(jié)構(gòu)Fig.3 Channel attention module andspatial attention module in CBAM
遷移學(xué)習(xí)在大量的試驗(yàn)中被證明是一種有效的模型改進(jìn)方式,尤其是當(dāng)目標(biāo)數(shù)據(jù)不足時,遷移學(xué)習(xí)的方式能夠在小樣本的情況下獲得比較好的訓(xùn)練結(jié)果,提升模型的訓(xùn)練精度和魯棒性能。遷移學(xué)習(xí)是模型訓(xùn)練效果的一種泛化,諸多學(xué)者從模型復(fù)雜性和學(xué)習(xí)算法的穩(wěn)定出發(fā),導(dǎo)出了模型泛化的理論邊界[21]。深度神經(jīng)網(wǎng)絡(luò)的識別效果很大程度上取決于數(shù)據(jù)樣本的數(shù)量,基于大批量相關(guān)場景的數(shù)據(jù)樣本才能訓(xùn)練出一個表現(xiàn)效果優(yōu)異的神經(jīng)網(wǎng)絡(luò)模型。如果樣本集的數(shù)據(jù)不足,模型提取的效果很難得到充分的訓(xùn)練,從而訓(xùn)練出來的神經(jīng)網(wǎng)絡(luò)模型產(chǎn)生比較嚴(yán)重的過擬合現(xiàn)象,且泛化能力比較差[22]。
本次研究中構(gòu)建的垂釣行為的數(shù)據(jù)集比較小,若將其直接用于訓(xùn)練一個目標(biāo)檢測的網(wǎng)絡(luò),則訓(xùn)練收斂速度慢且準(zhǔn)確率不高。因此,為了有效加快訓(xùn)練的迭代速度、增強(qiáng)訓(xùn)練模型的提取特征能力和模型的泛化能力、提高模型預(yù)測識別的準(zhǔn)確率,采用了預(yù)訓(xùn)練權(quán)重。由于YOLOv3-CBAM算法未對Darknet53主干進(jìn)行調(diào)整,所以可以與YOLOv3算法共用同一個預(yù)訓(xùn)練權(quán)重,節(jié)約訓(xùn)練成本。COCO數(shù)據(jù)集是一個大規(guī)模的、豐富的物體檢測和圖像分割的開源數(shù)據(jù)集,提供的標(biāo)簽類別有80類,超過33萬張圖片,其中20萬張有標(biāo)注,整個數(shù)據(jù)集中個體的數(shù)目超過150萬個[23]。通過COCO數(shù)據(jù)集訓(xùn)練得到的預(yù)訓(xùn)練權(quán)重具有強(qiáng)大的泛化能力,其在淺層學(xué)習(xí)圖像低層次的特征,包括圖像的邊緣、顏色信息等;在深層學(xué)習(xí)圖像的高層語義特征,這些特征將隨著圖像的不同而有不同的表現(xiàn)。
在目標(biāo)檢測模型中,常使用目標(biāo)損失函數(shù)(Loss function)來衡量模型預(yù)測值與樣本真實(shí)值的差異性程度。對于本文所研究的敏感目標(biāo)檢測問題,網(wǎng)絡(luò)在訓(xùn)練過程中需要考慮3個方面:位置預(yù)測的均方損失、置信度的交叉熵?fù)p失以及類別的交叉熵?fù)p失,其中置信度又分為包含目標(biāo)置信度和不包含目標(biāo)置信度兩部分。
Loss=loss_coord+loss_conf+loss_cls
(1)
式中:Loss表示總損失;loss_coord表示位置損失;loss_conf表示置信度損失;loss_cls表示類別損失。
具體各個部分損失函數(shù)的公式如下:
(2)
(3)
(4)
本文實(shí)驗(yàn)配置環(huán)境如下:操作系統(tǒng)為Windows10,中央處理器為4核 Intel(R) Xeon(R) Silver 4110 CPU @.10GHz,GPU為英偉達(dá)GeForce系列11G顯存,16GB內(nèi)存的RTX 2080Ti顯卡。語言選擇的是Python3.8,深度學(xué)習(xí)框架為PyTorch庫,并安裝CUDA11.0實(shí)現(xiàn)加速運(yùn)算。
由于本文針對的是垂釣行為的識別,場景類型較為多樣化,并沒有大量公開可用的專業(yè)數(shù)據(jù)集,因此采用人臉球機(jī)在湖北省黃石市和鄂州市的長江岸線及其他河湖岸線監(jiān)測站點(diǎn)拍攝的影像和網(wǎng)上收集的圖片制作了數(shù)據(jù)集。在對數(shù)據(jù)集篩選之后,一共制作了1 200張圖片,利用Labelme庫對其進(jìn)行手工標(biāo)注,用于模型的訓(xùn)練、驗(yàn)證和測試。對收集的數(shù)據(jù)采用分離驗(yàn)證方法,將圖片數(shù)據(jù)集按8∶2劃分為訓(xùn)練集和測試集,在訓(xùn)練集中以9∶1比例再細(xì)分為訓(xùn)練集和驗(yàn)證集。
本文中除了YOLOv3模型,還引入經(jīng)典的單階段目標(biāo)檢測算法——SSD算法作為對比,總共涉及3個模型,分別為SSD模型、YOLOv3模型和YOLOv3-CBAM模型,3個模型分別采用直接訓(xùn)練和預(yù)訓(xùn)練權(quán)重進(jìn)行訓(xùn)練。同時,使用批量隨機(jī)梯度下降算法,初始學(xué)習(xí)率為0.000 1,動量參數(shù)設(shè)定為0.94,權(quán)重衰減正則項為0.000 5,防止模型過擬合,設(shè)置batchsize為6,最大迭代次數(shù)設(shè)為1 000。數(shù)據(jù)集每完成一次迭代訓(xùn)練后評估模型,通過訓(xùn)練過程中的誤差變化曲線判讀模型的收斂情況。在實(shí)驗(yàn)過程中,所有模型都在不到最大迭代次數(shù)一半的輪次收斂。
本文算法測試使用平均準(zhǔn)確率mAP、召回率Recall、準(zhǔn)確率Precision、平均交并比IOU評價算法性能,評價公式分別為
(5)
式中:AP表示各個目標(biāo)對應(yīng)的準(zhǔn)確率;h表示識別物體的總類別數(shù),本實(shí)驗(yàn)只預(yù)測垂釣行為,故h取1;mAP是記錄召回率與準(zhǔn)確率曲線下方的面積,是衡量目標(biāo)檢測性能的依據(jù)。
(6)
式中:TP表示真正類,即正類垂釣樣本被預(yù)測成正類垂釣樣本;FN表示假負(fù)類,即正類垂釣樣本沒有被模型預(yù)測到;召回率Recall也稱查全率,刻畫分類器所識別出的真實(shí)例占總真實(shí)例的比例,召回率的取值處于[0,1]內(nèi),受到超參數(shù)(如IOU)的影響,呈曲線形式變化。
(7)
式中:FP表示假正類,即不是垂釣行為卻被預(yù)測成正類垂釣樣本;準(zhǔn)確率Precision也稱查準(zhǔn)率,刻畫的是分類器所識別出的真實(shí)例占所有識別實(shí)例的比例,準(zhǔn)確率的取值處于[0,1]內(nèi),受到超參數(shù)(如IOU)的影響,呈曲線形式變化。
(8)
式中:STrue∩Pre代表真實(shí)垂釣行為框與預(yù)測垂釣行為框的交集部分面積;STrue∪Pre代表真實(shí)垂釣行為框與預(yù)測垂釣行為框的并集部分面積;IOU取值處于[0,1]內(nèi),IOU值越大,候選框越精確;反之,值越小,候選框偏差越大。
本節(jié)主要包括損失函數(shù)曲線的收斂情況、各個模型的識別精度和各個模型的識別示例。
圖4是YOLO-CBAM模型應(yīng)用在禁捕數(shù)據(jù)集的損失函數(shù)曲線,包含了不使用預(yù)訓(xùn)練權(quán)重和使用預(yù)訓(xùn)練權(quán)重分別進(jìn)行訓(xùn)練時,在訓(xùn)練集和驗(yàn)證集上的損失函數(shù)曲線。其中兩條藍(lán)線為直接訓(xùn)練的結(jié)果,兩條橙線為采用預(yù)訓(xùn)練權(quán)重訓(xùn)練的結(jié)果,其中虛線為訓(xùn)練集上的結(jié)果,實(shí)線為測試集上的結(jié)果。
圖4 添加CBAM模塊后的模型損失函數(shù)曲線Fig.4 Model loss function curve after adding CBAM module
從迭代次數(shù)來看,不使用預(yù)訓(xùn)練權(quán)重訓(xùn)練大約在迭代約300輪次后損失函數(shù)曲線收斂,而使用了預(yù)訓(xùn)練模型之后只需要迭代200輪便可以收斂;從擬合程度來看,不使用預(yù)訓(xùn)練權(quán)重訓(xùn)練時,損失函數(shù)曲線趨于收斂之后訓(xùn)練集和驗(yàn)證集上的損失值差距較大,存在比較嚴(yán)重的過擬合問題,而使用了預(yù)訓(xùn)練模型之后兩者之間的差值明顯減??;從損失值來看,無論是訓(xùn)練集上的損失值,還是驗(yàn)證集上的損失值,采用預(yù)訓(xùn)練模型的結(jié)果均明顯優(yōu)于不采用預(yù)訓(xùn)練模型的結(jié)果。綜上可知,使用預(yù)訓(xùn)練模型權(quán)重可以大大減少模型訓(xùn)練過程中收斂所需的迭代輪次,降低模型過擬合的風(fēng)險,提高模型的泛化能力,同時最終得到的模型在本次研究的數(shù)據(jù)集上也有著更小的損失值。
模型的識別精度用于衡量模型的優(yōu)異性,是用來比較不同算法之間性能的重要標(biāo)準(zhǔn)。表1為3種不同的目標(biāo)檢測模型的識別精度。由表1可知:縱向上,SSD模型使用預(yù)訓(xùn)練權(quán)重精度提升了3.52個百分點(diǎn),YOLOv3模型使用預(yù)訓(xùn)練權(quán)重精度提升了14.70個百分點(diǎn),YOLOv3-CBAM模型使用預(yù)訓(xùn)練權(quán)重精度提升了14.89個百分點(diǎn),可以看出采用預(yù)訓(xùn)練權(quán)重可以大幅提高模型識別的精度。從表格中橫向比較,可知無論是否采用預(yù)訓(xùn)練權(quán)重,3個模型的mAP大小關(guān)系均為YOLOv3-CBAM>YOLOv3>SSD,且YOLOv3算法模型及其改進(jìn)模型的精度遠(yuǎn)高于SSD算法模型,可以看出YOLOv3-CBAM在禁捕場景識別上的優(yōu)異性。添加注意力機(jī)制模塊后,不采用預(yù)訓(xùn)練模型直接訓(xùn)練得到的模型的識別精度可以提高0.53個百分點(diǎn),使用預(yù)訓(xùn)練權(quán)重訓(xùn)練得到的模型其識別精度可以提高0.72個百分點(diǎn),可以看出注意力機(jī)制模塊通過對空間位置和通道賦予不同權(quán)重,提高了模型的識別精度。
表1 3種不同的目標(biāo)檢測模型的識別精度Tab.1 The recognition accuracy of three different objection detection models %
不難看出,采用預(yù)訓(xùn)練權(quán)重可提升模型識別精度。為了更好地探究不同算法在禁捕場景的差異性,進(jìn)一步分析采用預(yù)訓(xùn)練權(quán)重得到的模型準(zhǔn)確率Precision和召回率Recall。表2為使用預(yù)訓(xùn)練權(quán)重進(jìn)行訓(xùn)練后的SSD算法、YOLOv3算法、YOLOv3-CBAM算法3個模型的詳細(xì)評價指標(biāo)。就Precision而言,3個模型分別為95.15%,95.54%和96.18%,表明模型對于垂釣行為的識別的準(zhǔn)確度都比較高;就Recall而言,3個模型分別為91.03%,93.75%和94.38%,YOLOv3系列算法的召回率明顯高于SSD算法,且原YOLOv3架構(gòu)添加CBAM模塊后,召回率提高了0.63個百分點(diǎn),表明YOLOv3-CBAM算法的識別結(jié)果存在更少的漏檢情況。在3個評價指標(biāo)中,均是YOLOv3-CBAM模型結(jié)果最優(yōu)。
表2 使用預(yù)訓(xùn)練模型的目標(biāo)檢測的模型評價指標(biāo)Tab.2 Model evaluation indicators of objection detection using pre-trained models %
本文中涉及到的模型,從經(jīng)典的SSD模型到Y(jié)OLOv3模型、YOLOv3-CBAM模型,在非極大值抑制值設(shè)置為0.5,置信度閾值設(shè)置為0.5后,分別對示例圖片進(jìn)行預(yù)測。示例圖片均為訓(xùn)練測試集之外的數(shù)據(jù),包括單一目標(biāo)的圖片和多目標(biāo)的圖片。
對于單一目標(biāo)的圖片,以圖5為例,在環(huán)境較為復(fù)雜的陰雨天且垂釣對象有部分遮擋的情況下,圖片影像上的垂釣行為都能做到精確的識別,雖然預(yù)測框的位置信息略有差異,但能夠準(zhǔn)確地包含垂釣者且置信度都在0.98以上,其中采用預(yù)訓(xùn)練權(quán)重的YOLOv3系列模型的預(yù)測框置信度能達(dá)到1,表明各個模型對于單一目標(biāo)釣魚行為能夠達(dá)到很好的識別效果。
圖5 不同模型對單一目標(biāo)的識別結(jié)果Fig.5 Recognition results of single object by different models
對于多目標(biāo)的圖片,以圖6為例,圖片場景中多個小目標(biāo)且光影條件下人物細(xì)節(jié)不清楚。由于(a)~(c)使用的模型沒有預(yù)訓(xùn)練權(quán)重提供比較強(qiáng)的特征提取能力,所以在多目標(biāo)、小目標(biāo)的識別方面存在漏檢和預(yù)測目標(biāo)框置信度低的問題。使用預(yù)訓(xùn)練模型的SSD算法也存在小目標(biāo)漏檢的問題,使用預(yù)訓(xùn)練模型的YOLOv3算法和YOLOv3-CBAM算法都能得到很好的檢測結(jié)果,其中YOLOv3-CBAM模型比YOLOv3模型在小目標(biāo)識別結(jié)果上表現(xiàn)出更高的置信度。
圖6 不同模型對多目標(biāo)的識別結(jié)果Fig.5 Recognition results of multi-object by different models
本文基于YOLOv3基礎(chǔ)模型,提出了一種將遷移學(xué)習(xí)和注意力機(jī)制結(jié)合的YOLOv3-CBAM的目標(biāo)檢測算法,構(gòu)建了禁捕垂釣場景的數(shù)據(jù)集,并在禁捕垂釣場景中取得較高的精度。借鑒遷移學(xué)習(xí)的思想,使用預(yù)訓(xùn)練權(quán)重實(shí)現(xiàn)了模型參數(shù)共享和特征提取能力的遷移,降低了模型損失函數(shù)收斂所需的迭代次數(shù),減弱了訓(xùn)練結(jié)果對于特定樣本數(shù)據(jù)量的依賴,節(jié)約了訓(xùn)練的成本,模型在禁捕場景中識別垂釣行為的準(zhǔn)確率和召回率都有大幅的提升。在特征提取和上采樣之后嵌入了注意力機(jī)制模塊,賦予模型對于不同空間位置、不同通道位置的權(quán)重,小幅提高了模型的識別精度。實(shí)驗(yàn)結(jié)果表明,最優(yōu)模型為采用預(yù)訓(xùn)練權(quán)重的YOLOv3-CBAM,其mAP可達(dá)到93.99%,可以用于長江流域的實(shí)時禁捕識別。
雖然改進(jìn)后的YOLOv3-CBAM能夠達(dá)到96.18%的準(zhǔn)確率和94.38%的召回率,但是對于河湖岸線的預(yù)警而言,召回率的提升更為重要,召回率提高意味著很少的漏檢現(xiàn)象。考慮模型識別后還有人工判讀確認(rèn)的步驟,后續(xù)的研究中可以微調(diào)模型,在準(zhǔn)確率不下降太多的情況下,提高模型的召回率。同時,在研究的過程中也發(fā)現(xiàn)了一些缺陷,模型存在誤識別的問題,即把湖邊的行人識別成垂釣者。解決這個問題需要擴(kuò)充禁捕場景的樣本集,優(yōu)化網(wǎng)絡(luò)來增強(qiáng)模型對于識別細(xì)節(jié)特征的把握,提高模型的準(zhǔn)確率和召回率,促進(jìn)長江流域河湖岸線管理向智能化發(fā)展。