安志強(qiáng) ,李智軍 ,劉 碩 ,趙永剛 ,陳啟俊 ,左然濤 ,林遠(yuǎn)山 ※
(1. 大連海洋大學(xué)信息工程學(xué)院,大連 116023;2. 遼寧省海洋信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,大連 116023;3. 設(shè)施漁業(yè)教育部重點(diǎn)實(shí)驗(yàn)室,大連海洋大學(xué),大連 116023;4. 大連鑫玉龍海洋生物種業(yè)科技股份有限公司,大連 116007;5. 大連海洋大學(xué)水產(chǎn)與生命學(xué)院,大連 116023 )
海珍品庫(kù)存是水產(chǎn)養(yǎng)殖企業(yè)在海珍品放苗、養(yǎng)殖狀態(tài)監(jiān)測(cè)、精準(zhǔn)投喂和經(jīng)濟(jì)效益估算等方面的重要參考數(shù)據(jù)[1]。傳統(tǒng)的海珍品庫(kù)存估算主要采用人工抽樣方法,例如稱質(zhì)量和框選計(jì)數(shù)等。這類方法勞動(dòng)力成本高、效率低、且難以保證結(jié)果的準(zhǔn)確性和全面性。因此,自動(dòng)、準(zhǔn)確、快速地統(tǒng)計(jì)完整養(yǎng)殖圈內(nèi)海珍品的數(shù)量已成為當(dāng)前迫切需要解決的問題之一[2]。近年來,無人船[3]、水下機(jī)器人[4]和深度學(xué)習(xí)[5-6]等新技術(shù)的發(fā)展為真正解決實(shí)際養(yǎng)殖環(huán)境下的海珍品數(shù)量估算問題提供了可能。
國(guó)內(nèi)外學(xué)者在水下拍攝圖像的基礎(chǔ)上,嘗試采用傳統(tǒng)圖像處理[7-8]和機(jī)器學(xué)習(xí)[9-12]技術(shù)開展海珍品自動(dòng)計(jì)數(shù)的研究。傳統(tǒng)圖像處理方法的基本思路是首先在RGB、HSV、Lab 或YCbCr 等[13-16]顏色空間對(duì)海珍品對(duì)象進(jìn)行分割,然后采用連通區(qū)域統(tǒng)計(jì)、端點(diǎn)細(xì)化、曲線演化、模板匹配和分類檢測(cè)等方法統(tǒng)計(jì)數(shù)量,并有效應(yīng)用在魚群、蝦苗[17]、扇貝苗[18]等的計(jì)數(shù)上。但是傳統(tǒng)圖像處理方法受水下圖像模糊、對(duì)比度差、噪聲和復(fù)雜背景等因素干擾[19-20],導(dǎo)致海珍品數(shù)量統(tǒng)計(jì)的準(zhǔn)確率普遍較低。
機(jī)器學(xué)習(xí)中的深度學(xué)習(xí)具有自動(dòng)逐層提取語(yǔ)義特征、泛化能力強(qiáng)、魯棒性好等優(yōu)點(diǎn)[21],為此國(guó)內(nèi)外學(xué)者紛紛嘗試將深度學(xué)習(xí)技術(shù)應(yīng)用到海珍品計(jì)數(shù)上,涌現(xiàn)出分割計(jì)數(shù)、檢測(cè)計(jì)數(shù)等方法?;趫D像分割的計(jì)數(shù)方法,一般利用U-Net[22]、Mask R-CNN[23]等對(duì)圖像進(jìn)行像素級(jí)的背景檢測(cè)和目標(biāo)分割,識(shí)別出圖像中的蝦體[24-25]、魚體[26]等目標(biāo),最后在此基礎(chǔ)上使用時(shí)間閾值法與空間閾值法確定海珍品數(shù)量。由于基于圖像分割的計(jì)數(shù)方法需要對(duì)目標(biāo)進(jìn)行像素級(jí)的定位,計(jì)算量較大。為此,部分學(xué)者提出了基于目標(biāo)檢測(cè)的海珍品計(jì)數(shù)方法,其僅需要預(yù)測(cè)出目標(biāo)邊界框,便可得到相關(guān)計(jì)數(shù)依據(jù),更加方便快捷。這種方法的基本思路是首先使用Faster R-CNN[27]、YOLO[28]等目標(biāo)檢測(cè)算法對(duì)圖像中海珍品對(duì)象進(jìn)行檢測(cè),然后根據(jù)目標(biāo)邊界框的數(shù)量確定海珍品的數(shù)量,已被應(yīng)用于魚群[29-30]和扇貝[31]的計(jì)數(shù)上。
然而,上述利用深度學(xué)習(xí)技術(shù)的海珍品計(jì)數(shù)方法大多只能統(tǒng)計(jì)單張圖像內(nèi)的海珍品數(shù)量,并未實(shí)現(xiàn)對(duì)完整養(yǎng)殖圈內(nèi)海珍品的數(shù)量統(tǒng)計(jì),而且只針對(duì)單一品種進(jìn)行檢測(cè)計(jì)數(shù)。為此,本文以真實(shí)底播養(yǎng)殖環(huán)境下的海珍品為研究對(duì)象,以水下拍攝的海珍品視頻為數(shù)據(jù)源,將基于深度學(xué)習(xí)的檢測(cè)模型與多目標(biāo)跟蹤算法相結(jié)合,嘗試?yán)靡曨l目標(biāo)跟蹤的方法同時(shí)統(tǒng)計(jì)多種海珍品(海參、扇貝、海膽)的數(shù)量。為保證海珍品檢測(cè)跟蹤算法的實(shí)時(shí)性與準(zhǔn)確性,采用新近發(fā)布的YOLOv7[32]作為為目標(biāo)檢測(cè)網(wǎng)絡(luò),以期在保證檢測(cè)精度的前提下實(shí)現(xiàn)更快的處理速度。在此基礎(chǔ)上,借鑒多目標(biāo)跟蹤BYTE[33]跟蹤算法的思想,提出一種面向多類別海珍品的跟蹤與計(jì)數(shù)方法,為水產(chǎn)養(yǎng)殖的智慧管理提供科學(xué)決策依據(jù)。本文所提方法已在大連鑫玉龍海洋生物種業(yè)科技股份有限公司海參庫(kù)存評(píng)估中得到應(yīng)用。
本節(jié)首先介紹了多類別海珍品技術(shù)方法的總體框架,使用到的算法技術(shù)為基于檢測(cè)的跟蹤算法,因此又分別介紹了檢測(cè)器與跟蹤器的設(shè)計(jì),最后介紹了用來評(píng)價(jià)本文所提算法的評(píng)價(jià)指標(biāo)。
本文旨在解決統(tǒng)計(jì)視頻中各類海珍品數(shù)量的問題。鑒于多目標(biāo)跟蹤技術(shù)能夠檢測(cè)并跟蹤視頻中的每個(gè)物體,因此采用多目標(biāo)跟蹤技術(shù)實(shí)現(xiàn)視頻中各類海珍品的計(jì)數(shù)。其基本思路是使用目標(biāo)檢測(cè)器檢測(cè)新的海珍品,并利用跟蹤器對(duì)其進(jìn)行跟蹤,獲取視頻中所有海珍品的軌跡信息,最后根據(jù)軌跡數(shù)量計(jì)算各類海珍品的數(shù)量,總體框架如圖1 所示。首先,將視頻中第i幀的圖像送入基于深度學(xué)習(xí)的海珍品目標(biāo)檢測(cè)器中,得到第i幀的檢測(cè)結(jié)果;然后,將此檢測(cè)結(jié)果與第i-1 幀海珍品軌跡經(jīng)跟蹤軌跡預(yù)測(cè)算法得到的預(yù)測(cè)框進(jìn)行目標(biāo)匹配,得到第i幀的匹配結(jié)果;最后,根據(jù)匹配結(jié)果更新海珍品的軌跡狀態(tài);以此反復(fù),直到整個(gè)視頻處理完成。最終得到所有海珍品的軌跡,通過分析這些軌跡即可估算出各類海珍品的數(shù)量。
圖1 多類別的海珍品計(jì)數(shù)方法總體框架Fig.1 General framework of multi-category sea foods counting method
本文所采用的多目標(biāo)跟蹤方法為基于檢測(cè)的跟蹤技術(shù),其跟蹤性能嚴(yán)重依賴目標(biāo)檢測(cè)器的性能。為此,選用YOLO 系列最新版本YOLOv7 作為檢測(cè)器基礎(chǔ)算法。YOLOv7 是一種一階段的目標(biāo)檢測(cè)算法,算法通過直接回歸的方式一次處理并獲得對(duì)應(yīng)物體的目標(biāo)區(qū)域、位置及類別,其檢測(cè)速度通常比兩階段目標(biāo)檢測(cè)算法快,能在精度和效率上進(jìn)行很好的平衡,為實(shí)現(xiàn)實(shí)時(shí)海珍品的跟蹤計(jì)數(shù)奠定了基礎(chǔ)。
YOLOv7 針對(duì)不同的場(chǎng)景和應(yīng)用提供了YOLOv7-tiny、YOLOv7、YOLOv7-X 等7 種不同的模型,綜合海珍品計(jì)數(shù)的實(shí)際需求,在此選用標(biāo)準(zhǔn)版的YOLOv7 模型權(quán)重實(shí)現(xiàn)快速、高精度的海珍品檢測(cè)器并使用“2017 首屆水下機(jī)器人目標(biāo)抓取大賽(2017 Underwater Robot Picking Contest,URPC2017)”提供的真實(shí)水下圖像數(shù)據(jù)集[34]訓(xùn)練YOLOv7 模型。首先將包含海參、海膽、扇貝三類海珍品的17 655 張圖像按8:1:1 的比例隨機(jī)劃分成訓(xùn)練集14 055 張圖片用于訓(xùn)練,校驗(yàn)集1 800 張圖片用于驗(yàn)證和測(cè)試集1 800 張圖片用于測(cè)試。
YOLOv7 檢測(cè)器訓(xùn)練的設(shè)置為圖片自適應(yīng)大小640×640,初始學(xué)習(xí)率為0.01,動(dòng)量為0.9,權(quán)重衰減為0.000 5,批量大小為16,訓(xùn)練回合數(shù)為300,每訓(xùn)練10 個(gè)回合進(jìn)行1 個(gè)測(cè)試回合。海珍品檢測(cè)器訓(xùn)練所采用的操作系統(tǒng)為Ubuntu18.04,深度學(xué)習(xí)框架為PyTorch,試驗(yàn)處理器為AMD Ryzen Threadripper 1920X 12 核,顯卡為NVIDIA GeForce RTX2080。
1.3.1 跟蹤器設(shè)計(jì)的總體思路
實(shí)際養(yǎng)殖環(huán)境下的海珍品視頻具有同類海珍品的相似性高、水下圖像模糊缺色等特點(diǎn),這可能會(huì)嚴(yán)重影響使用外觀信息進(jìn)行數(shù)據(jù)關(guān)聯(lián)的多目標(biāo)檢測(cè)器的性能。為此,本文借鑒BYTE 的基本思想,僅利用視頻中目標(biāo)的運(yùn)動(dòng)信息及其他啟發(fā)信息實(shí)現(xiàn)多類別海珍品跟蹤器,其總體思路如圖2 所示。
圖2 基于BYTE的多類別海珍品跟蹤計(jì)數(shù)算法設(shè)計(jì)的總體思路Fig.2 The general idea of multi-category sea foods tracking and counting algorithm design based on BYTE
首先將檢測(cè)的結(jié)果進(jìn)行分級(jí),分為高分目標(biāo)Dh和低分目標(biāo)Dl,高分目標(biāo)Dh與信任目標(biāo)預(yù)測(cè)框Tc通過匈牙利算法進(jìn)行第一次匹配。匹配成功的目標(biāo)保存到信任軌跡中并更新,剩余的目標(biāo)預(yù)測(cè)框Tc_r與低分目標(biāo)Dl通過匈牙利算法進(jìn)行第二次匹配。剩余的的高分目標(biāo)Dh_r與不信任目標(biāo)預(yù)測(cè)框Tu通過匈牙利算法進(jìn)行第三次匹配。第二次匹配成功的目標(biāo)同樣保存到信任軌跡中并更新,剩余的目標(biāo)預(yù)測(cè)框Tc_r_r標(biāo)記為丟失軌跡并存放在不信任軌跡中,剩余的低分目標(biāo)Dl_r將不再對(duì)其進(jìn)行處理。第三次匹配成功的目標(biāo)與前兩次進(jìn)行相同的操作,剩余的目標(biāo)預(yù)測(cè)框Tu_r對(duì)于已匹配上的軌跡出現(xiàn)丟失的情況對(duì)其進(jìn)行丟失軌跡處理,并為其設(shè)置一個(gè)閾值k,當(dāng)匹配失敗的次數(shù)大于閾值k將其丟棄否則將其標(biāo)記為丟失軌跡存放到不信任軌跡中。其他的剩余目標(biāo)預(yù)測(cè)框Tu_r對(duì)其進(jìn)行未匹配新軌跡丟棄處理,之后對(duì)虛假身份(identity,ID)數(shù)進(jìn)行更新,剩余的高分目標(biāo)Dh_r_r將對(duì)其進(jìn)行多類別海珍品目標(biāo)新軌跡生成處理并將其存放到不信任軌跡中,最后更新軌跡狀態(tài),以此反復(fù)。
1.3.2 多類別海珍品新軌跡生成策略
多目標(biāo)跟蹤器為了更好地跟蹤每個(gè)物體,需要在每個(gè)物體剛出現(xiàn)時(shí)為其創(chuàng)建一條軌跡記錄并在后續(xù)幀中進(jìn)行更新、維護(hù)。現(xiàn)有大多數(shù)基于多目標(biāo)跟蹤的計(jì)數(shù)方法對(duì)不同類別的物體用同一套ID 系統(tǒng)無差別地創(chuàng)建、維護(hù)軌跡,這樣需要對(duì)所有軌跡進(jìn)行分析才能實(shí)現(xiàn)多類別物體計(jì)數(shù),較為耗時(shí)、費(fèi)事。為了充分利用ID 本身所蘊(yùn)含的數(shù)量信息,實(shí)現(xiàn)多類別海珍品的快速計(jì)數(shù),為此設(shè)計(jì)一種多類別海珍品新軌跡生成策略,按類別為每類海珍品分配獨(dú)立的ID,具體如圖3 所示。
圖3 多類別ID 分配策略流程圖Fig.3 Flowchart of the multi-class ID allocation policy
經(jīng)過兩次匹配仍未匹配成功的高分目標(biāo)Dh_r_r,認(rèn)為其是一個(gè)新的海珍品的軌跡,因此將對(duì)其進(jìn)行激活并對(duì)其進(jìn)行ID 分配,其包含的主要信息有類別、位置等。首先將高分目標(biāo)Dh_r_r的類別傳入ID 分配模塊中,在ID分配模塊中創(chuàng)建了n個(gè)ID 分配器用來存放每個(gè)類別的海珍品ID。然后根據(jù)各類別為其分配ID,如當(dāng)前類別為海參,其對(duì)應(yīng)的數(shù)字類別為1,所以類別1ID 分配器將會(huì)為其分配一個(gè)ID,并將原有的ID 數(shù)量進(jìn)行加一操作,其他類別以此類推,分配好的ID 將會(huì)與其對(duì)應(yīng)的位置等信息結(jié)合到一起形成最終輸出的海珍品軌跡。
1.3.3 多類別海珍品計(jì)數(shù)策略
若使用上述多類別海珍品新軌跡生成策略對(duì)海珍品軌跡進(jìn)行初始化,原理上每類的最新ID 號(hào)(當(dāng)前最大值)即是該類別海珍品的數(shù)量,因?yàn)樽钚翴D 號(hào)為此類的軌跡數(shù)。然而,經(jīng)分析發(fā)現(xiàn),受目標(biāo)檢測(cè)器精度的影響,檢測(cè)結(jié)果會(huì)出現(xiàn)虛假的目標(biāo),進(jìn)而產(chǎn)生虛假的軌跡,造成數(shù)量的虛報(bào),這會(huì)對(duì)最終的計(jì)數(shù)產(chǎn)生重要的影響。
為了解決此問題,本文引入信任機(jī)制,即將跟蹤軌跡分成信任軌跡和不信任軌跡,其中信任軌跡為連續(xù)多幀均能很好匹配的軌跡,而不信任軌跡主要包括跟丟的軌跡、新軌跡等。為統(tǒng)計(jì)虛假軌跡的數(shù)量,在新軌跡生成之初先將其標(biāo)記為新軌跡,并加入不信任軌跡中待進(jìn)一步考察,若下一幀能很好與高分目標(biāo)匹配成功,則將其加入信任軌跡;否則,對(duì)應(yīng)類別的虛假軌跡數(shù)加一,將對(duì)應(yīng)軌跡刪除。在匹配過程中優(yōu)先對(duì)信任軌跡進(jìn)行匹配,不信任軌跡最后匹配。為此,多類別海珍品的數(shù)量采用式(1)計(jì)算。
1.3.4 多類別海珍品計(jì)數(shù)算法闡述
在上述各策略的基礎(chǔ)上,可得到多類別海珍品跟蹤計(jì)數(shù)算法,算法的輸入是海珍品視頻(圖像序列)V,目標(biāo)檢測(cè)器為Det,跟蹤分?jǐn)?shù)閾值。算法的輸出是海珍品各類別的數(shù)量N c以及對(duì)應(yīng)個(gè)體的軌跡T。
算法將當(dāng)前幀的目標(biāo)檢測(cè)結(jié)果分為高分目標(biāo)框集合Dh和低分目標(biāo)框集合Dl,并且利用卡爾曼濾波器預(yù)測(cè)上時(shí)刻軌跡的預(yù)測(cè)框集合Tc,為后續(xù)的多次關(guān)聯(lián)奠定基礎(chǔ)。
平均計(jì)數(shù)精度(average counting precision,ACP)、平均絕對(duì)誤差(mean absolute error,MAE)、均方根誤差(root mean square error,RMSE)等指標(biāo)通常被用來評(píng)價(jià)基于多目標(biāo)跟蹤的計(jì)數(shù)方法的性能。這些指標(biāo)更適用于基于過線模式的計(jì)數(shù)方法,而并不適用于基于ID 號(hào)模式的計(jì)數(shù)方法,因?yàn)榛贗D 號(hào)方法的結(jié)果受目標(biāo)的誤檢、ID 切換和漏檢影響較為嚴(yán)重。針對(duì)誤檢這一指標(biāo),一種情況是將某一類誤檢為另一類,但由于本文研究的3 種海珍品之間差異較大,這種情況很少出現(xiàn)。另一種情況是原本此處沒有海珍品,但算法錯(cuò)誤檢測(cè)了幾幀,此時(shí)便為其分配了一個(gè)ID,造成海珍品數(shù)量統(tǒng)計(jì)較真實(shí)情況增多,但本文通過改進(jìn)算法解決了這個(gè)問題,因此沒有將其考慮進(jìn)評(píng)價(jià)指標(biāo)。而ID 切換和漏檢是十分常見的,ID 切換會(huì)造成海珍品統(tǒng)計(jì)數(shù)量較真實(shí)值偏大的結(jié)果,而漏檢又會(huì)使得海珍品統(tǒng)計(jì)數(shù)量較真實(shí)值偏小,如果出現(xiàn)這樣的情況按照傳統(tǒng)的指標(biāo)去評(píng)價(jià)就會(huì)出現(xiàn)測(cè)試結(jié)果與真實(shí)值結(jié)果相近,但真實(shí)情況相差較大的問題。為此,本文提出一套考慮ID 切換和漏檢的計(jì)數(shù)平均指標(biāo),分別為改進(jìn)平均計(jì)數(shù)精度(modified average counting precision,MACP)、改進(jìn)平均絕對(duì)誤差(modified mean absolute error,MMAE)、改進(jìn)均方根誤差(modified root mean square error,MRMSE),具體計(jì)算見式(2)~(4)。這套指標(biāo)能較客觀地評(píng)價(jià)基于ID 號(hào)模式的計(jì)數(shù)方法的性能。
式中S表示算法統(tǒng)計(jì)的目標(biāo)數(shù)量,G表示真實(shí)數(shù)量,NIDs表示跟蹤ID 切換的次數(shù),NL表示漏檢海珍品的數(shù)量,NV表示海珍品視頻的個(gè)數(shù)。
為了驗(yàn)證本文方法的有效性和可用性,使用測(cè)試視頻(其中的圖像未用來訓(xùn)練)中的一個(gè)片段對(duì)其進(jìn)行評(píng)價(jià),并從該視頻中隨機(jī)挑選一幀用來展示,被挑選出的視頻幀如圖4 所示。圖中holothurian、echinus、scallop分別表示海參、海膽和扇貝,其對(duì)應(yīng)的檢測(cè)框顏色為紅色、黃色和藍(lán)色。
圖4 測(cè)試視頻4 的前107 幀統(tǒng)計(jì)結(jié)果Fig.4 Statistical results of the first 107 frames of test video 4
其數(shù)量為5、12 和6 個(gè),這些數(shù)量為被測(cè)海珍品視頻前107 幀各類別的總和,統(tǒng)計(jì)結(jié)果顯示在該幀的正上方。海珍品的數(shù)量是根據(jù)其真實(shí)跟蹤軌跡ID 得到的,真實(shí)跟蹤軌跡ID 為當(dāng)前類別海珍品最大ID 值減去該類別海珍品虛假軌跡數(shù)量得到的。結(jié)果表明,本文基于視頻多目標(biāo)跟蹤的多類別海珍品計(jì)數(shù)方法能夠多類別、快速準(zhǔn)確統(tǒng)計(jì)水下海珍品視頻中的海珍品數(shù)量。
為了充分驗(yàn)證本文算法的性能,以4 個(gè)不同于訓(xùn)練集的海珍品視頻中的海珍品為試驗(yàn)數(shù)據(jù),以目標(biāo)檢測(cè)領(lǐng)域應(yīng)用廣泛、性能良好的YOLOv5[35]和YOLOv7 檢測(cè)模型為檢測(cè)器,分別結(jié)合DeepSORT[36]和BYTE 算法進(jìn)行海珍品的數(shù)量統(tǒng)計(jì)。其中,測(cè)試視頻的真實(shí)海珍品數(shù)量由5 名研究人員進(jìn)行統(tǒng)計(jì)。首先記錄視頻的第一幀出現(xiàn)的海珍品數(shù)量,然后,逐幀播放并記錄新出現(xiàn)的海珍品數(shù)量,播放結(jié)束后每名人員分別得到各類別的數(shù)量,最后將5 名研究人員得到海珍品數(shù)量進(jìn)行取均值,用作試驗(yàn)的真實(shí)數(shù)值,視頻1-4 中海珍品的統(tǒng)計(jì)結(jié)果分別為66、85、59 和61。
表1 為各算法性能對(duì)比結(jié)果。從表1 中可以看出,DeepSORT 類的計(jì)數(shù)算法得到的結(jié)果普遍虛高,其原因是在跟蹤過程中ID 切換次數(shù)過多,比如YOLOv5+DeepSORT 在視頻1 中產(chǎn)生了7 次ID 切換。而YOLOv5+BYTE 和YOLOv7+BYTE 的計(jì)數(shù)算法ID 切換次數(shù)較少,因此得到的海珍品數(shù)量統(tǒng)計(jì)結(jié)果比較接近真實(shí)值,但是其漏檢數(shù)量偏高,偏高的原因是跟蹤過程中軌跡丟失較多引起的,將這項(xiàng)指標(biāo)考慮進(jìn)去便容易得出其結(jié)果是偏低的。本文方法無論是ID 切換的數(shù)量還是漏檢的數(shù)量都是相對(duì)較低的,得出的結(jié)果也是比較可靠的并且還實(shí)現(xiàn)了多類別同時(shí)計(jì)數(shù)的功能。
表1 不同海珍品計(jì)數(shù)方法的數(shù)量統(tǒng)計(jì)結(jié)果和定量評(píng)價(jià)Table 1 Quantitative statistical results and quantitative evaluation of different counting methods for sea foods
由于與本文對(duì)比的算法并沒有實(shí)現(xiàn)多類別ID 分配功能,得出的指標(biāo)均是按照總數(shù)計(jì)算得來的,其中表現(xiàn)較差的是YOLOv5、YOLOv7+DeepSORT 算法,最差的是YOLOv5+DeepSORT,其MACP、MMAE、MRMSE、和幀率(FR)均最低,分別為62.11%、25.25、29.41 和25 幀/s,證明DeepSORT 算法不適用于根據(jù)ID 統(tǒng)計(jì)海珍品數(shù)量這種方法;BYTE算法結(jié)合YOLOv5、YOLOv7目標(biāo)檢測(cè)算法表現(xiàn)效果更好,較好的是YOLOv7+BYTE,其MACP、MMAE、MRMSE、和FR 分別為86.39%、9.00、9.08和33 幀/s,但其計(jì)數(shù)精度不能滿足實(shí)際工作需要,不適合直接應(yīng)用到實(shí)際工作中,仍需加以改進(jìn);本文的YOLOv7+BYTEFit 表現(xiàn)最好,其MACP、MMAE、MRMSE、和FR 分別為91.62%、5.75、6.38 和32 幀/s,均優(yōu)于以上各算法,尤其在MACP和FR 指標(biāo)上比YOLOv5+Deep-SORT 高了29.51 個(gè)百分點(diǎn)和8 幀/s,在MMAE、MRMSE指標(biāo)上分別降低19.50 和12.08。
為了將本文所提方法更好地應(yīng)用到實(shí)際的水產(chǎn)養(yǎng)殖生產(chǎn)中,基于所提方法實(shí)現(xiàn)了簡(jiǎn)單的海珍品計(jì)數(shù)系統(tǒng),如圖5 所示。
圖5 計(jì)數(shù)系統(tǒng)軟件界面圖Fig.5 Software interface diagram of Counting system
軟件界面包括海珍品計(jì)數(shù)檢測(cè)信息的實(shí)時(shí)顯示、跟蹤檢測(cè)模型的選擇、運(yùn)行參數(shù)的設(shè)置以及運(yùn)行控制和顯示運(yùn)行信息等功能。計(jì)數(shù)系統(tǒng)工作時(shí)在計(jì)數(shù)檢測(cè)實(shí)時(shí)顯示區(qū)顯示檢測(cè)到的海珍品畫面,在其頂部顯示類別數(shù)量等信息;數(shù)據(jù)模型準(zhǔn)備區(qū)用來選擇跟蹤檢測(cè)模型和待檢測(cè)視頻;參數(shù)設(shè)置區(qū)可調(diào)整檢測(cè)海珍品的IoU 和置信度的閾值;運(yùn)行控制區(qū)用來控制計(jì)數(shù)系統(tǒng)需要執(zhí)行的內(nèi)容以及運(yùn)行結(jié)果的處理等功能;信息交互區(qū)用來顯示計(jì)數(shù)系統(tǒng)運(yùn)行的階段和已完成檢測(cè)的海珍品信息等內(nèi)容。本文軟件已在大連鑫玉龍海洋生物種業(yè)科技股份有限公司海參庫(kù)存評(píng)估中得到實(shí)際應(yīng)用。
本文以水下海珍品視頻為研究對(duì)象,針對(duì)統(tǒng)計(jì)海珍品數(shù)量的問題,提出一種基于視頻多目標(biāo)跟蹤的多類別海珍品計(jì)數(shù)方法。主要工作為設(shè)計(jì)改進(jìn)BYTE 目標(biāo)跟蹤方法,以及將該方法封裝成系統(tǒng)并應(yīng)用到實(shí)際生產(chǎn)工作中。試驗(yàn)結(jié)果得到如下結(jié)論:
1)測(cè)試結(jié)果顯示本文方法的改進(jìn)平均計(jì)數(shù)精度為91.62%、改進(jìn)平均絕對(duì)誤差為5.75、改進(jìn)均方根誤差為6.38、幀率為32 幀/s,其計(jì)數(shù)精度和計(jì)數(shù)效率滿足實(shí)際的需求可有效解決傳統(tǒng)海珍品數(shù)量統(tǒng)計(jì)費(fèi)時(shí)費(fèi)力、不精準(zhǔn)以及安全性不高等問題。
2)本文方法與YOLOv5+DeepSORT、YOLOv5+BYTE、YOLOv7+DeepSORT 以及YOLOv7+BYTE 等算法進(jìn)行對(duì)比,所提方法在改進(jìn)平均計(jì)數(shù)精度、改進(jìn)平均絕對(duì)誤差和改進(jìn)均方根誤差這3 個(gè)指標(biāo)上優(yōu)于其他算法,尤其在改進(jìn)平均計(jì)數(shù)精度和幀率指標(biāo)比YOLOv5+DeepSORT 高了29.51 個(gè)百分點(diǎn)和8 幀/s,在改進(jìn)平均絕對(duì)誤差、改進(jìn)均方根誤差指標(biāo)上分別降低19.50 和12.08,是實(shí)現(xiàn)多類別海珍品數(shù)量快速準(zhǔn)確統(tǒng)計(jì)的有效方法。
需要指出的是,本方法對(duì)于不同水下環(huán)境的海珍品計(jì)數(shù)存在誤檢的情況,雖然使用相同環(huán)境的水下數(shù)據(jù)集訓(xùn)練檢測(cè)模型可以很好地解決由于不同環(huán)境導(dǎo)致的誤檢等問題,但是水下環(huán)境因受光照等因素影響,變化較大,若每次采集海珍品視頻都需先使用相同環(huán)境的數(shù)據(jù)集訓(xùn)練檢測(cè)模型后,再進(jìn)行統(tǒng)計(jì)計(jì)數(shù),這將耗費(fèi)巨大的人力物力。此外,本方法還會(huì)出現(xiàn)ID 切換和漏檢的問題,這兩個(gè)問題也是影響計(jì)數(shù)精度的關(guān)鍵所在。因此未來還需就水下環(huán)境與ID 切換和漏檢這兩方面做進(jìn)一步的改進(jìn)與探索。