俞偉聰,郭顯久,2*,劉鈺發(fā),劉婷,李雅薇
(1.大連海洋大學(xué) 信息工程學(xué)院,遼寧 大連 116023;2.遼寧省海洋信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,遼寧 大連 116023)
近年來,中國(guó)海珍品養(yǎng)殖量和需求量迅速增長(zhǎng),大規(guī)模商業(yè)化養(yǎng)殖對(duì)海珍品的檢測(cè)需要投入巨大的成本。基于計(jì)算機(jī)視覺的海珍品目標(biāo)檢測(cè)技術(shù)可有效節(jié)約人力,降低運(yùn)營(yíng)成本,提高海珍品養(yǎng)殖自動(dòng)化水平。因此,實(shí)現(xiàn)基于計(jì)算機(jī)視覺的目標(biāo)檢測(cè)技術(shù)在海珍品養(yǎng)殖產(chǎn)業(yè)上的應(yīng)用,對(duì)于提高海珍品養(yǎng)殖的信息化程度,改善養(yǎng)殖條件具有重要意義[1]。
目前,輕量級(jí)的目標(biāo)檢測(cè)模型已經(jīng)在各行業(yè)有著廣泛運(yùn)用。如在車輛檢測(cè)領(lǐng)域,劉肯等[2]利用Tiny-YOLO模型實(shí)現(xiàn)了在真實(shí)環(huán)境下對(duì)車輛的自動(dòng)識(shí)別。而目標(biāo)檢測(cè)在漁業(yè)領(lǐng)域上的發(fā)展也趨向完善,F(xiàn)rench等[4]使用卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了魚類捕撈視頻監(jiān)控識(shí)別;Chen等[5]采用卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了野外環(huán)境下魚類的分類和檢測(cè)。隨著目標(biāo)檢測(cè)在漁業(yè)領(lǐng)域應(yīng)用中的推進(jìn),基于深度學(xué)習(xí)的計(jì)算機(jī)視覺技術(shù)也運(yùn)用到海珍品目標(biāo)檢測(cè)上,并取得了一定效果。如袁利毫等[3]采用YOLOV3模型實(shí)現(xiàn)了水下小目標(biāo)的識(shí)別并成功運(yùn)用在水下海珍品抓取。
目標(biāo)檢測(cè)技術(shù)應(yīng)用在海珍品上主要存在以下問題:一是自然環(huán)境下,海珍品大多生長(zhǎng)在泥沙多、水質(zhì)混濁的區(qū)域,在水下攝像機(jī)鏡頭中呈現(xiàn)出一種深綠色,就需要對(duì)采集的圖像進(jìn)行預(yù)處理;二是在大型服務(wù)器上運(yùn)行的分類網(wǎng)絡(luò)如VGG[6]等,對(duì)設(shè)備要求較高,不便于在海珍品養(yǎng)殖場(chǎng)等區(qū)域部署;三是水下通信條件遠(yuǎn)不及陸地,特別在遠(yuǎn)離海岸的地方,信號(hào)延時(shí)較大。因此,構(gòu)建輕量化模型并把模型運(yùn)行在船載設(shè)備上,是解決此類問題的重要思路?;谏鲜鲈?,本研究中提出了基于輕量化深度學(xué)習(xí)模型的海珍品檢測(cè)方法,并對(duì)水下環(huán)境較暗、物體與背景分辨率低等特點(diǎn),采用優(yōu)化的Retinex算法[7]進(jìn)行圖像增強(qiáng),針對(duì)通信網(wǎng)絡(luò)環(huán)境復(fù)雜,構(gòu)建低時(shí)延、高精度的輕量化網(wǎng)絡(luò)模型Mobilenet-SSD對(duì)海珍品進(jìn)行檢測(cè),旨在實(shí)現(xiàn)精確檢測(cè)多種水下海珍品,為科學(xué)養(yǎng)殖海珍品過程中掌握海珍品分布提供可靠保障。
當(dāng)前主流的深度學(xué)習(xí)目標(biāo)檢測(cè)網(wǎng)絡(luò)模型有SSD[8]和YOLO模型[9]。為了選擇一種適合邊緣計(jì)算的輕量化網(wǎng)絡(luò)模型,本文對(duì)比了Tiny-YOLO網(wǎng)絡(luò)模型的主干網(wǎng)絡(luò)YOLOV2和SSD網(wǎng)絡(luò)模型的主干網(wǎng)絡(luò)Mobilenet[10]。Mobilenet模型是當(dāng)前最流行的輕量化網(wǎng)絡(luò)模型之一,相比于Mobilenet模型,YOLOV2模型有兩點(diǎn)明顯的缺點(diǎn):一是其屬于端到端的訓(xùn)練方式,對(duì)于訓(xùn)練結(jié)果不容易進(jìn)行科學(xué)調(diào)試;二是YOLOV2模型只做了7層的卷積尺度變換,特征損失較大,MobileNet和YOLOV2網(wǎng)絡(luò)模型參數(shù)的比較如表1所示。
針對(duì)海珍品檢測(cè),本文利用Mobilenet網(wǎng)絡(luò)檢測(cè)到目標(biāo)海珍品后,再用SSD的分類網(wǎng)絡(luò)進(jìn)行目標(biāo)分類,組成MobileNet-SSD輕量化深度學(xué)習(xí)網(wǎng)絡(luò)模型,以便達(dá)到提高海珍品檢測(cè)準(zhǔn)確率和實(shí)時(shí)性的要求。
表1 Mobilenet與YOLOV2網(wǎng)絡(luò)模型參數(shù)的比較
本研究中使用的網(wǎng)絡(luò)模型是Mobilenet-V1版本,Mobilenet核心思想是引入了深度可分離卷積[10](圖1),將標(biāo)準(zhǔn)的卷積過濾器拆分成深度卷積和逐點(diǎn)卷積兩個(gè)結(jié)構(gòu)。假設(shè)輸入與輸出的長(zhǎng)×寬不變,標(biāo)準(zhǔn)的卷積過程是將輸入為DF×DF×M的輸入層轉(zhuǎn)化為維度為DF×DF×N的輸出層,其中DF×DF為輸入或輸出feature map的長(zhǎng)×寬,M為是輸入通道數(shù),N為輸出通道數(shù)。 假設(shè)卷積核過濾器的尺寸為DK×DK,則標(biāo)準(zhǔn)卷積核的計(jì)算量為DK×DK×M×N×DF×DF。對(duì)于深度可分離卷積來說,卷積執(zhí)行次數(shù)的計(jì)算分為2步,第一步深度卷積計(jì)算中,有M個(gè)DK×DK的矩陣移動(dòng)DF×DF次,第二步1×1卷積計(jì)算中,有N個(gè)1×1×M的卷積核移動(dòng)DF×DF次,因此,將以上2步執(zhí)行次數(shù)相加,得到總的卷積執(zhí)行次數(shù),深度可分離卷積的計(jì)算量為DK×DK×M×DF×DF+1×1×M×N×DF×DF,深度可分離卷積和標(biāo)準(zhǔn)卷積的計(jì)算量比值為
(1)
圖1 深度卷積和逐點(diǎn)卷積Fig.1 Deep convolutional neural networks and point by point convolution neural networks
Mobilenet的卷積核尺寸選用DK×DK=3×3,帶入式(1)得到深度可分離卷積的計(jì)算量是標(biāo)準(zhǔn)卷積的1/8~1/9,從而達(dá)到提升網(wǎng)絡(luò)模型運(yùn)算速度的目的。
水下海珍品目標(biāo)檢測(cè)網(wǎng)絡(luò)模型Mobilenet-SSD的整體結(jié)構(gòu)如圖2所示。模型將增強(qiáng)后的圖像統(tǒng)一調(diào)節(jié)長(zhǎng)×寬至300×300像素,送入網(wǎng)絡(luò)結(jié)構(gòu),圖中綠色邊框組成的是Mobilenet網(wǎng)絡(luò)模型,圖像經(jīng)過Mobilenet基礎(chǔ)分類網(wǎng)絡(luò)模型的底層網(wǎng)絡(luò)提取位置邊緣等信息,通過上層網(wǎng)絡(luò)提取更加具象的特征。圖中由黑色邊框組成的目標(biāo)檢測(cè)器SSD是采用多尺度特征進(jìn)行預(yù)測(cè),取消預(yù)先提取候選區(qū)域這一步驟,對(duì)目標(biāo)按照位置和類別置信度分別進(jìn)行評(píng)價(jià),評(píng)估總體的損失函數(shù)。在形成Mobilenet-SSD網(wǎng)絡(luò)模型后,分別在conv11、conv13、conv14_2、conv15_2、conv16_2、conv17_2卷積共6層上提取特征,將SSD檢測(cè)器的最小尺寸38×38改進(jìn)為19×19尺寸的feature map,開始提取特征送給檢測(cè)器,同時(shí)在6層不同尺度的特征層生成多組對(duì)應(yīng)先驗(yàn)框(prior box),這些先驗(yàn)框選取的長(zhǎng)與寬比例分別為1、2、3、1/2、1/3,在6層特征層上各采用一次1×1卷積對(duì)每個(gè)先驗(yàn)框進(jìn)行位置和類別的預(yù)判別。令n為該特征層所需要的先驗(yàn)框個(gè)數(shù),則對(duì)于位置預(yù)測(cè)所需要的卷積核個(gè)數(shù)是n×4,對(duì)于類別預(yù)測(cè)需要的卷積核個(gè)數(shù)是n×c,其中c是類別數(shù),本文中取為3。由于每個(gè)真實(shí)目標(biāo)(ground truth)會(huì)匹配多個(gè)先驗(yàn)框,最后要選擇交并比(IOU)最大的先驗(yàn)框與真實(shí)目標(biāo)做匹配成為真樣本,對(duì)于其余先驗(yàn)框,如果交并比大于一定閾值,就將這些框刪除,這個(gè)過程就是非極大值抑制(NMS)算法,只留下得分最高的框然后輸出。非極大值抑制算法對(duì)于海珍品目標(biāo)檢測(cè)十分必要,因?yàn)楹U淦飞L(zhǎng)特點(diǎn)是密集性的,即使在1×1卷積核情況下,仍會(huì)受到其余海珍品的部分影響,非極大值抑制過濾多余先驗(yàn)框,保證了分類網(wǎng)絡(luò)在卷積核中心分類的準(zhǔn)確性。
在Mobilenet-SSD結(jié)構(gòu)上,conv11、conv13、conv14_2、conv15_2、conv16_2、conv17_2卷積的先驗(yàn)框的個(gè)數(shù)分別是3、6、6、6、6、6,對(duì)于某一類檢測(cè)目標(biāo),檢測(cè)器都有19×19×3+10×10×6+5×5×6+3×3×6+2×2×6+1×1+6=1917個(gè)先驗(yàn)框負(fù)責(zé)檢測(cè)這個(gè)目標(biāo)。圖2下半部分展示了將卷積提取特征至SSD檢測(cè)器并最后輸出的過程。
試驗(yàn)數(shù)據(jù)來自ChinaMM2018水下機(jī)器人目標(biāo)抓取大賽官方標(biāo)注的海珍品數(shù)據(jù)集,由潛水員在特定養(yǎng)殖海域進(jìn)行拍攝,拍攝對(duì)象為海參、海膽、扇貝三類目標(biāo),圖像格式為.jpg格式,固定分辨率為720×405像素,官方同時(shí)也提供了標(biāo)注有圖像類別和位置的.xml文件,文件名與圖像名稱一一對(duì)應(yīng)。
篩選通過Retinex算法增強(qiáng)后的圖像,選定5 606張圖像用于訓(xùn)練和測(cè)試模型性能。由于海珍品的生長(zhǎng)特性,往往是一張圖像中有多類海珍品,且每種海珍品的數(shù)量不止一個(gè),因此,對(duì)于一個(gè)輕量化模型來說這個(gè)數(shù)據(jù)量是足夠的。按照VOC2012數(shù)據(jù)集的格式規(guī)范化數(shù)據(jù),將80%的數(shù)據(jù)量用于訓(xùn)練驗(yàn)證,20%用于測(cè)試。在與圖像對(duì)應(yīng)的信息文件中,包含了圖像名稱、海珍品類別名稱、標(biāo)注框的位置信息、標(biāo)注框的長(zhǎng)和寬。
訓(xùn)練數(shù)據(jù)集圖像大小均為統(tǒng)一的720×405像素,訓(xùn)練平臺(tái)是Windows10操作系統(tǒng),型號(hào)為2070的顯卡,12G內(nèi)存條。全局訓(xùn)練次數(shù)為30 000次,初始學(xué)習(xí)率(rL)設(shè)置2組候選值,分別為0.004、0.04,動(dòng)量系數(shù)(α)設(shè)置3組候選值,分別為0.5、0.9、0.99。針對(duì)這些候選值設(shè)計(jì)了多組對(duì)比試驗(yàn),序號(hào)為1、2、3的試驗(yàn)在固定學(xué)習(xí)率為0.04的情況下改變動(dòng)量系數(shù),序號(hào)為4、5、6的試驗(yàn)在固定學(xué)習(xí)率為0.004的情況下改變動(dòng)量系數(shù),超參數(shù)組合試驗(yàn)情況如表2所示。
表2 不同超參數(shù)組合對(duì)應(yīng)的平均準(zhǔn)確率
由表2可以看出,設(shè)置學(xué)習(xí)率為0.04對(duì)于模型的梯度下降過程不能較好地收斂到全局最小值,在網(wǎng)絡(luò)模型訓(xùn)練初始階段,設(shè)置學(xué)習(xí)率較大有助于模型盡快收斂,但是在訓(xùn)練后期,較大的學(xué)習(xí)率會(huì)讓梯度下降在權(quán)重更新的時(shí)候出現(xiàn)波動(dòng)影響收斂。據(jù)此在第4組試驗(yàn)時(shí),把學(xué)習(xí)率定在0.004,對(duì)比第4組、第5組、第6組試驗(yàn),發(fā)現(xiàn)當(dāng)α取值為0.9時(shí)的平均準(zhǔn)確率最高。動(dòng)量系數(shù)是避免梯度下降時(shí)模型陷入局部最小值時(shí)引入的一個(gè)超參數(shù),α設(shè)置為0.5時(shí)過小,不能使模型逃脫局部最小值陷阱,α設(shè)置為0.99時(shí)過大,可能使模型跳過局部最小值。綜合以上考慮,最終選擇初始學(xué)習(xí)率為0.004,動(dòng)量系數(shù)為0.9。
根據(jù)上面最佳參數(shù)組合(rL=0.004,α=0.9)訓(xùn)練模型的權(quán)重參數(shù)。訓(xùn)練使用的參數(shù)初始化方式是載入在Imagenet數(shù)據(jù)集上已預(yù)訓(xùn)練的參數(shù),訓(xùn)練開始后可以通過卷積層的名稱固定底層的參數(shù)不進(jìn)行訓(xùn)練,解凍上層卷積結(jié)構(gòu),針對(duì)海珍品的特征進(jìn)行參數(shù)微調(diào)。最終在測(cè)試集上的損失率固定在0.9~1.1范圍內(nèi),如圖3所示,模型的平均準(zhǔn)確率為85.79%,檢測(cè)一幅海珍品圖像用時(shí)0.2 s。
圖3 網(wǎng)絡(luò)模型損失函數(shù)的變化情況Fig.3 Change in network loss function
為了進(jìn)一步說明提出的Mobilenet-SSD模型的有效性,本試驗(yàn)中選擇了VGG-SSD模型作為參照,對(duì)比兩種模型的檢測(cè)效果。VGG與Mobilenet都是基礎(chǔ)分類網(wǎng)絡(luò)模型,相比Mobilenet,VGG網(wǎng)絡(luò)卷積核尺寸較小,但是參數(shù)量更多。從海珍品的大小和海珍品的品種2個(gè)方面分別做比較,每個(gè)評(píng)價(jià)指標(biāo)均設(shè)置3組對(duì)比試驗(yàn)。為了對(duì)比兩種檢測(cè)模型的效果,需要先確定模型的評(píng)價(jià)指標(biāo)。
由于本文構(gòu)建的Mobilenet-SSD網(wǎng)絡(luò)模型的主干網(wǎng)絡(luò)Mobilenet最大的優(yōu)點(diǎn)是網(wǎng)絡(luò)參數(shù)量小,對(duì)運(yùn)行速度有顯著提升,因此,在選擇評(píng)價(jià)指標(biāo)的時(shí)候,除了采用在各類檢測(cè)物體的準(zhǔn)確率和調(diào)和平均值(F1)指標(biāo)外,還加入了對(duì)每張圖像的運(yùn)算時(shí)間指標(biāo)(t)。F1的計(jì)算公式為
(2)
其中:P為準(zhǔn)確率,P=TP/(TP+FP);R為召回率,R=TP/(TP+FN),公式中TP、FP、FN、TN參數(shù)含義如表3所示。
表3 分類結(jié)果混淆矩陣Tab.3 Classification results of the fuscate matrix
為了獲得真正例和假反例,需要先計(jì)算交并比(IOU),交并比是預(yù)測(cè)框與真實(shí)值的交集和并集的比值,本文參考PASCAL VOC數(shù)據(jù)集所用的指標(biāo),設(shè)置交并比的閾值為0.5,如果IOU>0.5,認(rèn)為檢測(cè)結(jié)果是真正例,否則認(rèn)為是假正例。真正例確定后,漏檢的物體數(shù)即假反例就可以由所有正例減去真正例求出。
在實(shí)際測(cè)試集當(dāng)中,海珍品的大小往往對(duì)最后的檢測(cè)結(jié)果有較大的影響。大目標(biāo)遮擋較少,識(shí)別難度低,小目標(biāo)較為密集遮擋程度大,識(shí)別難度高。根據(jù)目標(biāo)在整幅圖像中所占的比例把目標(biāo)分為大、小兩類,同時(shí)將模型對(duì)大、小兩類目標(biāo)海珍品的檢測(cè)結(jié)果進(jìn)行了評(píng)價(jià)。定義占全圖面積5%~20%為小目標(biāo),超過20%為大目標(biāo)。圖4為Mobilenet-SSD和VGG-SSD 2種模型在大、小兩類目標(biāo)海珍品上的檢測(cè)效果,表4是對(duì)檢測(cè)結(jié)果進(jìn)行統(tǒng)計(jì)。表4中總體的計(jì)算方法是:統(tǒng)計(jì)大、小兩類目標(biāo)試驗(yàn)的總樣本數(shù)、所有正樣本數(shù)、所有檢測(cè)到的樣本數(shù)和所有檢測(cè)到的正樣本數(shù)量,采用相同的試驗(yàn)方法計(jì)算總體的準(zhǔn)確率、召回率和F1值。分析顯示,Mobilenet-SSD模型在檢測(cè)結(jié)果優(yōu)于VGG-SSD的同時(shí),更明顯的提升是檢測(cè)速度比VGG-SSD快了近4倍,說明Mobilenet-SSD模型在不損失性能的同時(shí),通過優(yōu)化卷積之間的連接結(jié)構(gòu),使參數(shù)量下降并加快了運(yùn)算速度。
為了進(jìn)一步分析在不同種類海珍品上的檢測(cè)效果,本文用Mobilenet-SSD和VGG-SSD 2種模型分別對(duì)海參、海膽和扇貝3類海珍品目標(biāo)檢測(cè)效果進(jìn)行對(duì)比。在原始數(shù)據(jù)中3類海珍品生長(zhǎng)區(qū)域往往高度混合,海參和扇貝顏色相近,海膽顏色區(qū)分度最大但生長(zhǎng)也最為密集,完全被檢測(cè)到難度較大。圖5為2種模型在不同種類海珍品上的檢測(cè)效果。
統(tǒng)計(jì)每類海珍品被正確分類的樣本數(shù)TP、被分入正例的負(fù)樣本數(shù)FP和被分入負(fù)例的正樣本數(shù)量FN,并計(jì)算相關(guān)評(píng)價(jià)指標(biāo),結(jié)果顯示,Mobilenet-SSD模型的F1值比VGG-SSD高10.69%,平均準(zhǔn)確率比VGG-SSD高9.58%(表5),這表明Mobilenet-SSD模型在識(shí)別精度上表現(xiàn)得更為優(yōu)異。兩種模型同時(shí)在扇貝識(shí)別上表現(xiàn)最好,在海參識(shí)別上表現(xiàn)次之,在海膽識(shí)別上表現(xiàn)最差(表5)。推測(cè)導(dǎo)致這種情況的原因可能是:扇貝生長(zhǎng)分布較為分散,遮罩較少,所以檢測(cè)效果最好;部分海參埋在泥地下,可提取特征區(qū)域小,交并比小,導(dǎo)致假正例多,影響準(zhǔn)確率;海膽分布太過密集,遮擋大,導(dǎo)致很多海膽未被檢測(cè)到,召回率最低。
圖5 2種網(wǎng)絡(luò)模型對(duì)不同種類海珍品的檢測(cè)效果Fig.5 Detection effect of two network on different kinds of high value marine food organisms
表5 Mobilenet-SSD與VGG-SSD網(wǎng)絡(luò)模型對(duì)不同種類海珍品的檢測(cè)結(jié)果統(tǒng)計(jì)
圖6展示了部分識(shí)別遺漏或誤判的場(chǎng)景,圖6(a)把背景海草識(shí)別為扇貝,圖6(b)左側(cè)存在一塊扇貝漏檢的情況,圖6(c)因?yàn)闄z測(cè)目標(biāo)過于密集反而遺漏了稀疏部分的目標(biāo)。
圖6 部分存在錯(cuò)誤識(shí)別的圖像Fig.6 Part of the misidentified image
1) 提出了基于卷積神經(jīng)網(wǎng)絡(luò)的輕量化模型Mobilenet-SSD,在構(gòu)建適合自己數(shù)據(jù)集的結(jié)果上確定了適用于海珍品檢測(cè)的學(xué)習(xí)率0.004和動(dòng)量系數(shù)0.9,最終輸出的模型在3類海珍品檢測(cè)上的平均精度為85.79%,測(cè)試一張海珍品圖像用時(shí)0.2 s,在大、小兩類海珍品目標(biāo)檢測(cè)上,較VGG-SSD模型在準(zhǔn)確率和實(shí)時(shí)性上都有明顯提升。
2) 對(duì)比因不同種類海珍品而產(chǎn)生的準(zhǔn)確率、召回率差異,表明Mobilenet-SSD模型能夠滿足在自然海域里對(duì)海參和扇貝的檢測(cè),而海膽因?yàn)槊芗偷纳L(zhǎng)分布情況,容易造成目標(biāo)丟失的情況。
3)在使用相同數(shù)據(jù)集的已報(bào)道文獻(xiàn)中,與使用YOLOV2網(wǎng)絡(luò)模型相比,本文中提出的Mobilenet-SSD網(wǎng)絡(luò)模型更加輕量化,為搭載在功率更低的水下設(shè)備上提供了條件;與使用Tiny-YOLO模型相比,Mobilenet-SSD模型增加了網(wǎng)絡(luò)層數(shù),使得目標(biāo)特征得到充分利用,同時(shí)模型的訓(xùn)練結(jié)果更容易調(diào)試,為未來的更新升級(jí)創(chuàng)造了空間。