黃思佳, 宋純鋒, 李 璇,*
(1. 中國科學(xué)院聲學(xué)研究所水下航行器信息技術(shù)重點實驗室, 北京 100190;2. 中國科學(xué)院大學(xué)電子電氣與通信工程學(xué)院, 北京 100049;3. 中國科學(xué)院自動化研究所智能感知與計算研究中心, 北京 100190)
伴隨著計算機的普及以及互聯(lián)網(wǎng)的飛速發(fā)展,信息的傳遞變得更加方便快捷,人們的交流媒介逐漸從文字轉(zhuǎn)變成圖片以及視頻。相比傳統(tǒng)處理圖像的方法而言,深度學(xué)習(xí)方法憑借其強大的處理數(shù)據(jù)和提取信息的能力、較高的準(zhǔn)確率和快速計算等優(yōu)點,脫穎而出成為圖像識別和目標(biāo)檢測領(lǐng)域的研究熱點[1]。
傳統(tǒng)的聲吶圖像目標(biāo)識別一般采用機器學(xué)習(xí)的方法,主要由候選區(qū)域生成、特征提取器以及分類器三部分組成。傳統(tǒng)的目標(biāo)識別方法對于目標(biāo)的先驗信息,形狀等都有一定的要求,特征提取非常依賴人工的選擇,若圖像的像素太少或者特征不夠有代表性,識別目標(biāo)的效果就會比較差。然而,由于水下環(huán)境復(fù)雜,回波受到混響噪聲、環(huán)境噪聲的影響,導(dǎo)致聲吶圖像分辨率低,邊緣細(xì)節(jié)較為模糊,很難找到像素和具有代表性的良好特征。另外,由于水下環(huán)境的不確定性很大,人工獲取先驗信息的代價也比較高,因此傳統(tǒng)的目標(biāo)檢測算法在聲吶圖像的目標(biāo)檢測中效果并不理想。
近些年,深度學(xué)習(xí)在人臉識別[2-4]、醫(yī)學(xué)圖像識別[5-7]、遙感圖像分類[8-10]等領(lǐng)域都有了廣泛應(yīng)用,許多學(xué)者開始將深度學(xué)習(xí)的模型遷移到聲吶圖像的目標(biāo)檢測中進行應(yīng)用,提高了水下聲吶圖像的識別精度和速度。文獻[11]提出利用輕量級的CPU卷積神經(jīng)網(wǎng)絡(luò)(lightweight CPU convolutional neural network, PP-LCNet)替換原Yolov5網(wǎng)絡(luò)中的跨階段局部網(wǎng)絡(luò)結(jié)構(gòu)(cross stage partial darkNet, CSPDarknet)主干網(wǎng)絡(luò),在不降低檢測精度的前提下減少了模型參數(shù)量和網(wǎng)絡(luò)計算量,能夠更好地滿足低功耗平臺的在航檢測要求。文獻[12]針對聲吶圖像數(shù)據(jù)量不足的情況,建立了水下目標(biāo)的仿真模型,并且利用仿真樣本與真實樣本相結(jié)合進行實驗,在不同的模型下都有一定的提升效果,為聲吶圖像數(shù)據(jù)不足的問題提供了解決思路。文獻[13]針對聲吶圖像像素空缺,成像效果不好的問題,采用雙線性插值算法進行像素填充,讓聲吶圖像變得更加清晰飽滿,并且在Yolov3模型上進行實驗,取得了良好的效果。文獻[14]針對聲吶圖像散斑噪聲強、分辨率低、圖像質(zhì)量差等問題,提出了一種基于快速曲線變換的去噪算法,有效提高了混響干擾下聲吶圖像的質(zhì)量。文獻[15]結(jié)合顯著性分割和金字塔池化的檢測模型,減小了輸入數(shù)據(jù)的維度并且減小了圖像背景對目標(biāo)提取的干擾,有效提高了水下目標(biāo)識別的準(zhǔn)確率。文獻[16]利用聲吶圖像模擬器來模擬聲吶傳感器的成像機制,結(jié)合各種退化效應(yīng)來合成訓(xùn)練圖像,一定程度上緩解了聲吶圖像數(shù)據(jù)量不足的問題。文獻[17]利用生成對抗網(wǎng)絡(luò)(generative adversarial networks, GAN)合成真實聲吶圖像作為目標(biāo)物體的訓(xùn)練圖像,該方法可以合成不同角度和不同環(huán)境的真實訓(xùn)練數(shù)據(jù),為其他基于聲吶圖像的算法提供了一定參考。 文獻[18]針對聲吶圖像噪聲干擾嚴(yán)重的問題,提出了一種自適應(yīng)全局特征增強網(wǎng)絡(luò),能夠獲取聲吶圖像多尺度語義特征,在噪聲嚴(yán)重的情況下仍然能對目標(biāo)進行準(zhǔn)確的檢測和定位。文獻[19]提出一種基于Yolov4改進的聲吶圖像目標(biāo)檢測算法,將Yolov4中的路徑聚合網(wǎng)絡(luò)(path aggregation network, PANet)特征增強模塊替換為自適應(yīng)空間特征融合(adaptively spatial feature fusion, ASFF)模塊,來獲得了更好的特征融合效果。文獻[20]針對前視聲吶圖像中的小目標(biāo)檢測問題提出了一種基于脈沖耦合神經(jīng)網(wǎng)絡(luò)和Fisher判別的實時目標(biāo)檢測方法,該算法結(jié)合模糊c均值聚類和K均值聚類獲得感興趣的區(qū)域,在低虛警概率下檢測誤差小,實時性好。文獻[21]根據(jù)實測過程中不同原因造成的成像差異進行了數(shù)據(jù)的增強與擴充,并改進了池化方式,提升了檢測效果。
上述研究通過借鑒深度學(xué)習(xí)在計算機視覺領(lǐng)域的成果,提升了聲吶圖像目標(biāo)檢測的性能。然而,聲吶圖像的目標(biāo)檢測方法仍然存在數(shù)據(jù)獲取難、數(shù)據(jù)量少、目標(biāo)尺度分布集中、檢測性能不佳、模型實時性差的問題,因此本文提出了一種基于輕量級目標(biāo)檢測模型Yolov5改進的水下目標(biāo)檢測方法。針對聲吶數(shù)據(jù)集與COCO數(shù)據(jù)集在目標(biāo)大小上的差異,利用目標(biāo)尺度的先驗信息,自適應(yīng)地生成可變尺度的先驗錨框,有效提高了聲吶圖像中目標(biāo)的尺度適應(yīng)性。深度學(xué)習(xí)的模型訓(xùn)練需要大量的數(shù)據(jù)支撐,因此本文采用了數(shù)據(jù)增強的方法對訓(xùn)練集進行有選擇性的擴充,進一步增強模型的魯棒性。此外,本文還探索了模型的輕量化,在不犧牲模型精度的前提下,通過刪減大目標(biāo)檢測層降低了模型復(fù)雜度,可更好地適應(yīng)實時檢測的要求。
(1) 輕量化目標(biāo)檢測模型概述
相比于快速局部卷積神經(jīng)網(wǎng)絡(luò)(fast region-convolutional neural network, Fast R-CNN)[22]以及Faster R-CNN[23]等兩階段目標(biāo)檢測算法,Yolo系列作為單階段目標(biāo)檢測算法的代表,不需要生成候選區(qū)域,而是直接通過網(wǎng)格進行坐標(biāo)回歸,大大提高了目標(biāo)檢測的速度。Yolov1[24]將圖像分成S×S個網(wǎng)格,如果物體的中心點落在某網(wǎng)格內(nèi),那么該網(wǎng)格就負(fù)責(zé)預(yù)測這個目標(biāo)。在Yolov1當(dāng)中,每個網(wǎng)格對應(yīng)兩個預(yù)測邊界框,并且每個網(wǎng)格只對應(yīng)一個類別,所以對于比較密集的小目標(biāo)檢測效果較差,會出現(xiàn)漏檢的情況。Yolov1在預(yù)測目標(biāo)位置的時候,是通過直接預(yù)測目標(biāo)的寬高以及中心點坐標(biāo),這種預(yù)測方法導(dǎo)致目標(biāo)框與物體的位置之間偏移量很大。針對Yolov1當(dāng)中定位不準(zhǔn)的問題,Yolov2[25]開始采用基于先驗框進行預(yù)測,相比于直接預(yù)測目標(biāo)邊界框,采用先驗框偏移的方式進行預(yù)測使得網(wǎng)絡(luò)更容易學(xué)習(xí)且更快收斂。Yolov2中每個網(wǎng)格對應(yīng)5個先驗框,且每個先驗框可以預(yù)測不同類別,改善了較為密集物體的目標(biāo)檢測的問題。除此之外,Yolov2還進行了一些嘗試,例如多尺度訓(xùn)練、通過passthrough層更好地提取目標(biāo)的細(xì)粒度特征等,速度和精度相對Yolov1都有了一定的提升。Yolov3[26]采用Darknet-53作為骨干網(wǎng)絡(luò),引入了空間金字塔池化(spatial pyramid pooling, SPP)的思想。在頸部引入了特征金字塔池化(feature pyramid network, FPN)的思想,可以融合不同特征圖的信息,能夠更好地提取目標(biāo)的特征。與FPN不同的是,Yolov3是在深度方向上進行拼接,可以更好地保留特征信息。Yolov3在3個預(yù)測特征層上進行預(yù)測,在每個預(yù)測特征層上分別使用3個不同大小的先驗框,可以檢測不同大小的目標(biāo)。Yolov4[27]采用CSPDarknet53作為骨干網(wǎng)絡(luò),在Darknet53的基礎(chǔ)上引入了跨階段部分(cross stage partial, CSP)結(jié)構(gòu),增強了CNN學(xué)習(xí)的能力以及降低了顯存的使用。Yolov4將(rectified linear activation function, ReLU)激活函數(shù)改為Mish激活函數(shù),Mish激活函數(shù)的圖像更加平滑,還采用了一些優(yōu)化策略,例如Mosaic增強,引入縮放因子來消除網(wǎng)格的敏感度等。與Yolov4相比,Yolov5在骨干網(wǎng)絡(luò)中增加了Focus層,在不影響算法精度的情況下提高了每秒浮點運算量(floating-point operations per second, FLOPS),Yolov5還引入了C3模塊,促進特征融合,與Yolov4相比性能更強。除此之外,Yolov5網(wǎng)絡(luò)還能通過改變參數(shù)來改變網(wǎng)絡(luò)的深度和寬度以更好地適應(yīng)不同數(shù)據(jù)量規(guī)模的需求,這種改進對于聲吶圖像這類數(shù)量較少的數(shù)據(jù)集有一定作用,可以根據(jù)聲吶數(shù)據(jù)集的大小調(diào)整模型的參數(shù),實現(xiàn)更好的自適應(yīng)。
(2) 本文采用的骨干模型
Yolov5的網(wǎng)絡(luò)結(jié)構(gòu)可以分為Backbone和Head兩大部分。輸入通過骨干網(wǎng)絡(luò)下采樣5次,選取3個特征層作為Head部分的輸入。在骨干網(wǎng)絡(luò)部分,輸入首先經(jīng)過一個Focus層,將數(shù)據(jù)的寬度和高度減小為原來的一半,減少了參數(shù)量,同時也提高了網(wǎng)絡(luò)的前向傳播速度。然后,通過4個卷積層和C3層,C3層是在Yolov4網(wǎng)絡(luò)CSP層的基礎(chǔ)上提出的,C3層可以幫助骨干網(wǎng)絡(luò)更好地提取特征信息。Yolov5將激活函數(shù)改為Silu函數(shù),Silu函數(shù)更為光滑且處處可導(dǎo)。最后,Yolov5在最后一個卷積層和C3層中間增加了SPP模塊,SPP將輸入并行通過多個不同大小的最大池化,然后進一步做融合,可以在一定程度上解決目標(biāo)多尺度的問題。
(3) 可變尺度先驗框模型
本文提出的可變尺度先驗框模型如圖1所示,首先對聲吶圖像的訓(xùn)練集進行分布統(tǒng)計,獲取目標(biāo)的尺度信息,并利用(intersection over union, IoU)聚類的方法重新設(shè)定先驗框;其次利用平移、旋轉(zhuǎn)、改變亮度、加噪聲、cutout、鏡像等方式選擇性的對數(shù)據(jù)集進行增強,將擴增后的數(shù)據(jù)集輸入到Y(jié)olov5骨干網(wǎng)絡(luò)提取目標(biāo)特征信息;最后在兩個尺度的目標(biāo)檢測層進行目標(biāo)定位以及類別判定。
圖1 可變尺度先驗框模型Fig.1 Variable scale prior box model
1.2.1 基于數(shù)據(jù)統(tǒng)計的目標(biāo)尺度分布獲取
本文所使用的數(shù)據(jù)集來源于2022年全國水下機器人大賽(underwater robot professional contest, URPC)的比賽數(shù)據(jù)集[28],該數(shù)據(jù)集共有9 200張前視聲吶圖像,分別由人體模型、球體、圓籠、方籠、輪胎、金屬桶、立方體、圓柱體、飛機模型以及水下機器人10類目標(biāo)組成。
在進行目標(biāo)檢測之前,需要先對數(shù)據(jù)集的目標(biāo)進行分析。深度學(xué)習(xí)算法是以數(shù)據(jù)驅(qū)動的, 雖然數(shù)據(jù)集有9 200張圖片,但對于深度學(xué)習(xí)而言,數(shù)據(jù)量還是偏少。針對數(shù)據(jù)量不足的問題,本文根據(jù)聲吶圖像的特點進行相應(yīng)的增強。在獲取水下目標(biāo)的聲吶圖像時,由于聲吶檢測的角度不同、水底地形的干擾、水下深淺不一導(dǎo)致信號有偏差以及各種環(huán)境噪聲、混響噪聲的影響,導(dǎo)致水下目標(biāo)檢測困難。為增強圖像的魯棒性,本文采用旋轉(zhuǎn)、平移、改變亮度、加噪聲等圖像增強的方式對數(shù)據(jù)集進行增強,能夠有效的提高檢測目標(biāo)的精度。
目標(biāo)尺度的統(tǒng)計結(jié)果如圖2所示,圖2(a)給出了目標(biāo)框最長邊與圖片邊長的比例,可以看到大多集中在0.04~0.16左右,圖2(b)給出了所有目標(biāo)的面積與圖片面積的比例,大部分集中在0.002~0.008附近。通過各類比例可以發(fā)現(xiàn),該數(shù)據(jù)集的目標(biāo)基本上都是小目標(biāo),而Yolov5網(wǎng)絡(luò)的先驗框是以COCO數(shù)據(jù)集聚類得到的,與本文所使用的數(shù)據(jù)集差異較大,所以本文根據(jù)該數(shù)據(jù)集的特點重新設(shè)定先驗框。除此之外,Yolov5的head部分有3個不同尺寸的檢測頭,分別用來預(yù)測大目標(biāo)、中目標(biāo)以及小目標(biāo),由于本文所使用的數(shù)據(jù)集多為小目標(biāo),所以對Yolov5進行剪枝操作,減少一個檢測頭,在參數(shù)量減少的基礎(chǔ)上保持精度不變且提升了檢測速度。
圖2 目標(biāo)尺度分析結(jié)果Fig.2 Target scale analysis results
1.2.2 先驗框計算
由于Yolov1直接計算目標(biāo)框的方法效率和精度都很低,因此Yolov2基于Fast R-CNN的思想引入了錨框,能夠更好地匹配樣本的尺寸大小。Yolov3和Yolov4都使用了K均值聚類方法來計算錨框,而Yolov5將手動計算錨框的方式改為自動計算錨框,并將K均值聚類和遺傳算法相結(jié)合。Yolov5的初始錨框通過統(tǒng)計COCO數(shù)據(jù)集的目標(biāo)尺寸獲得,而本文所使用的數(shù)據(jù)集大多為小目標(biāo),與COCO數(shù)據(jù)集的寬高比有較大的差異,因此需要根據(jù)聚類結(jié)果重新設(shè)定初始錨框的大小。原始Yolov5中的聚類方式使用的是傳統(tǒng)的K均值聚類,以歐式距離函數(shù)作為判斷類別是否相近的標(biāo)準(zhǔn)。本文首先嘗試了Yolov5默認(rèn)的聚類方式,由于使用歐式距離函數(shù)會使得較大的目標(biāo)框比較小的目標(biāo)框具有更大的偏差,因此本文提出利用IoU替換歐氏距離函數(shù),利用IoU作為距離函數(shù)能夠更好地判斷錨框與目標(biāo)框的匹配程度,提高預(yù)測邊界框的準(zhǔn)確度和精度。
不同聚類方案的結(jié)果如圖3所示,不同的顏色代表訓(xùn)練集中真實框不同的寬度以及高度分布,五角星分別代表9個類的中心錨框的高度和寬度分布。從圖3(a)可以看到,IoU K均值聚類方法得到的錨框與訓(xùn)練集真實框大小的匹配度為85.39%,而圖3(b)中使用傳統(tǒng)的K均值聚類方法得到的錨框與訓(xùn)練集真實框大小之間的匹配程度為84.23%,平均IoU匹配度提高了1.16%左右。在最小的特征圖上,由于其感受野最大,所以用來檢測大目標(biāo),因此大尺度的先驗框應(yīng)用在小特征圖上用來檢測大目標(biāo),而小尺度的先驗框用在大特征圖上用來檢測小目標(biāo)。表1給出了特征圖與先驗框的對應(yīng)關(guān)系。本文將傳統(tǒng)的K均值聚類方法替換成IoU-K均值聚類方法,可以有效提高錨框與目標(biāo)框之間的匹配程度,能夠更好的定位目標(biāo),減少損失。
圖3 聚類結(jié)果對比Fig.3 Comparison of clustering results
表1 先驗框尺寸Table 1 Prior box size
1.2.3 選擇性聲吶數(shù)據(jù)擴增
深度學(xué)習(xí)網(wǎng)絡(luò)訓(xùn)練過程中需要大量的數(shù)據(jù)支撐,模型樣本越多越充足,網(wǎng)絡(luò)模型的泛化性就越好,魯棒性越強。本文的數(shù)據(jù)集一共有9 200張,與經(jīng)典的COCO數(shù)據(jù)集以及VOC數(shù)據(jù)集相比,數(shù)據(jù)量遠(yuǎn)遠(yuǎn)不夠,所以本文針對該數(shù)據(jù)集的特點,對圖像進行有選擇性的增強。聲吶圖像通常會因為波浪起伏、拖魚傾斜等原因造成回波強度的起伏,導(dǎo)致圖像出現(xiàn)灰度不均的情況[29]。在利用聲吶進行水底探測的過程中,同一個目標(biāo)由于探測角度、船行方向等原因也會有一定差異,且水下環(huán)境復(fù)雜,聲陰影、混響噪聲以及環(huán)境噪聲等都會影響聲吶圖像的質(zhì)量。為了增加數(shù)據(jù)量和增強圖像的魯棒性,本文采用平移、旋轉(zhuǎn)、改變亮度、加噪聲、cutout、鏡像等方式隨機對圖像進行增強。數(shù)據(jù)集按8∶2的比例劃分訓(xùn)練集和驗證集,對訓(xùn)練集進行數(shù)據(jù)增強,將原訓(xùn)練集的每張圖片進行兩次隨機增強,得到新訓(xùn)練集,數(shù)量為原訓(xùn)練集的3倍。數(shù)據(jù)增強的效果如圖4所示。
圖4 數(shù)據(jù)增強Fig.4 Data enhancement
1.2.4 基于Yolov5的輸出分支裁剪
原Yolov5s網(wǎng)絡(luò)中存在3個目標(biāo)檢測層,分別對應(yīng)檢測大目標(biāo)、中目標(biāo)以及小目標(biāo)。而本文所使用的數(shù)據(jù)集小目標(biāo)居多且不存在大目標(biāo),如果保留大目標(biāo)檢測層,反而對小目標(biāo)的檢測有所干擾。所以本文對原Yolov5s網(wǎng)絡(luò)中的目標(biāo)層進行了刪減,剔除了大目標(biāo)檢測層如圖5所示。每個特征檢測層的每個網(wǎng)格可以得到3×(5+num) 個檢測結(jié)果,其中num為目標(biāo)的類別數(shù)量。
圖5 大目標(biāo)層刪減示意圖Fig.5 Schematic diagram of deleting large target layers
由于20×20大小的特征層下采樣次數(shù)最多,感受野最大,所以用來檢測大目標(biāo)。而在不斷下采樣的過程中,很有可能會丟失小目標(biāo)的特征信息,因此20×20的檢測層對本文所采用的數(shù)據(jù)集檢測意義不大,所以本文選擇刪除20×20大小的大目標(biāo)檢測層,網(wǎng)絡(luò)模型的層數(shù)由原來的283層縮減為現(xiàn)在的201層,每秒10億次浮點運算次數(shù)(giga FLOPs, GFLOPs)由16.5減少至14.9,在降低網(wǎng)絡(luò)模型復(fù)雜度的同時,精度較原來有所提升。
本節(jié)基于各類模型對聲吶圖像進行目標(biāo)檢測,所使用的數(shù)據(jù)集為2022年全國水下機器人大賽的比賽數(shù)據(jù)集,共有9 200張前視聲吶圖像,分別由人體模型、球體、圓籠、方籠、輪胎、金屬桶、立方體、圓柱體、飛機模型以及水下機器人10類目標(biāo)組成。對于各算法的數(shù)據(jù)集劃分,通過隨機種子按8∶2的比例劃分為訓(xùn)練集和驗證集,針對訓(xùn)練集的數(shù)據(jù),采用平移、旋轉(zhuǎn)、改變亮度、加噪等方式隨機增強,將原訓(xùn)練集擴大了3倍。為驗證模型的有效性,本文選取了2021年URPC的比賽數(shù)據(jù)集[30]對模型進行驗證,該數(shù)據(jù)集有6 000張前視聲吶圖像,分別由人體模型、球體、圓籠、方籠、輪胎、金屬桶、立方體和圓柱體8類目標(biāo)組成。由于該數(shù)據(jù)集的目標(biāo)也大多為小目標(biāo),且有在航檢測的需求,所以本文提出的模型對于該數(shù)據(jù)集同樣適用。
實驗環(huán)境配置使用Ubuntu16.04操作系統(tǒng),使用NVIDIA GeForce GTX 2080Ti 顯卡,CUDA版本為11.6,Pytorch版本為1.12.1,Python版本為3.8.15。本實驗將epochs設(shè)置為150次,batch_size設(shè)置為8。在訓(xùn)練過程中,首先將圖像輸入到檢測器中,Backbone生成特征圖,然后利用Neck對特征進行增強和融合,最后利用Head從特征空間映射到標(biāo)簽空間。計算預(yù)測的標(biāo)簽與真實標(biāo)簽之間的損失,采用隨機梯度下降(stochastic gradient descent, SGD)對參數(shù)進行更新。
本文采用平均精度均值mAP來評價各網(wǎng)絡(luò)模型在前視聲吶圖像目標(biāo)檢測中的性能。平均精度AP由精確率P和召回率R決定,指的是P-R曲線的面積,而mAP代表的是各類目標(biāo)P-R曲線面積的平均值。當(dāng)IoU大于或等于設(shè)置的閾值且類別判斷正確時,那么該預(yù)測框為正確檢測框TP,隨著IoU指標(biāo)的提升,目標(biāo)檢測的定位回歸標(biāo)準(zhǔn)就越嚴(yán)格。在本文中,分別采用0.5和0.75的IoU標(biāo)準(zhǔn)來評價網(wǎng)絡(luò)的性能。此外,結(jié)合IoU從0.5變化到0.95的平均mAP值,用以衡量每個模型的精度。
本文采用GFLOPs來衡量模型的復(fù)雜度。FLOPs為浮點運算數(shù),可以用來衡量模型的計算量;而一個GFLOPs代表每秒十億次的浮點運算。GFLOPs越大,模型越復(fù)雜。
2.4.1 模型消融實驗
消融實驗經(jīng)常用來探索某些網(wǎng)絡(luò)改進或者訓(xùn)練策略對網(wǎng)絡(luò)模型性能的影響[31]。針對本文提出的簡化網(wǎng)絡(luò)結(jié)構(gòu),基于目標(biāo)框進行聚類得到先驗框以及數(shù)據(jù)增強3部分改進方案,為了驗證其有效性,設(shè)置了多組消融實驗,實驗結(jié)果如表2所示。
表2 消融實驗結(jié)果Table 2 Results of ablation experiment
(1) 各項改進對網(wǎng)絡(luò)模型的影響
表2第一行是以原Yolov5s網(wǎng)絡(luò)訓(xùn)練得到的結(jié)果,由于數(shù)據(jù)集中都為小目標(biāo),與COCO數(shù)據(jù)集的目標(biāo)大小有較大差異,所以在不改變先驗框大小的時候,檢測效果一般。雖然本文數(shù)據(jù)集一共有9 200張圖片,但是對于以數(shù)據(jù)驅(qū)動的深度學(xué)習(xí)模型而言,數(shù)據(jù)量還是偏少,所以在劃分完測試集與驗證集以后,對測試集進行擴增,數(shù)量為原測試集的3倍,對精度有了一定提升。原Yolov5s網(wǎng)絡(luò)有3個目標(biāo)檢測層,分別檢測大目標(biāo)、中目標(biāo)以及小目標(biāo)。由于本文數(shù)據(jù)集大多為小目標(biāo),所以取消了大目標(biāo)的檢測層,在不影響網(wǎng)絡(luò)精度的前提下,降低了模型復(fù)雜度,提高了目標(biāo)檢測速度。
(2) 不同大小網(wǎng)絡(luò)模型的影響
本文還比較了幾種不同深度和寬度的YOLO網(wǎng)絡(luò)的性能,Yolov5m和Yolov5l在一定程度上提高了模型的檢測精度,但效果并不明顯。由于聲吶圖像的數(shù)據(jù)量有限,更深層次的網(wǎng)絡(luò)并沒有突出其優(yōu)越的檢測性能。同時,由于模型的深度和寬度增加,GFLOPs大幅提升,網(wǎng)絡(luò)模型復(fù)雜度增加,檢測速度進一步降低。
(3) 各類模型結(jié)果分析
通過比較各模型的訓(xùn)練和測試性能,發(fā)現(xiàn)本文提出的改進方案在前視聲吶圖像的目標(biāo)檢測中表現(xiàn)最好,檢測精度mAP@0.5、mAP@0.75以及mAP@0.5:0.95分別達到了0.971、0.585和0.559,與原Yolov5s網(wǎng)絡(luò)模型相比,mAP@0.5提升了0.9%,mAP@0.75提升了5.8%,mAP@0.5:0.95提高了3.1%。由于減少了目標(biāo)檢測層,網(wǎng)絡(luò)模型復(fù)雜度降低,所以GFLOPs也有所下降。綜上,本文提出的改進方案不僅有效提升了檢測精度,同時也降低了運算量,為后續(xù)基于深度學(xué)習(xí)的聲吶圖像目標(biāo)檢測提供了一定的參考。
2.4.2 多數(shù)據(jù)集驗證
為驗證本文算法的有效性,在其他的前視聲吶數(shù)據(jù)集上也進行了相應(yīng)的驗證,數(shù)據(jù)集來源于2021年的URPC比賽數(shù)據(jù)集,針對該數(shù)據(jù)集,以8∶2的比例隨機劃分訓(xùn)練集與驗證集進行實驗。各模型的測試結(jié)果如表3所示。
表3 URPC(2021)數(shù)據(jù)集實驗結(jié)果Table 3 URPC(2021) dataset experimental results
(1) 各類方法對比
表3第一行是以原Yolov5s網(wǎng)絡(luò)模型訓(xùn)練得到的結(jié)果,與兩級檢測模型的代表Faster R-CNN相比有明顯的優(yōu)勢,準(zhǔn)確率比Faster R-CNN高,GFLOPs僅為Faster R-CNN的1/4。由于Faster R-CNN需要先提取候選區(qū)域,所以模型更為復(fù)雜。文獻[32]提出了一種基于Yolov5模型改進的聲吶圖像檢測方法,通過實驗表明,本文提出的可變尺度先驗框模型優(yōu)于文獻[32]的方法。
(2) 各部分改進對比
針對該數(shù)據(jù)集的目標(biāo)重新進行聚類得到先驗框,與原Yolov5s網(wǎng)絡(luò)相比,mAP@0.75和mAP@0.5:0.95都有了一定提升,由于mAP@0.5的值已經(jīng)非常高了,所以有一定的波動是正?,F(xiàn)象。該數(shù)據(jù)集也大多為小目標(biāo),所以針對網(wǎng)絡(luò)結(jié)構(gòu)部分,也刪減了大目標(biāo)檢測層。雖然檢測精度有所下降,但是降低了模型復(fù)雜度,提升了檢測速度。結(jié)合先驗框和網(wǎng)絡(luò)簡化兩部分的改進,mAP@0.5達到了0.979,GFLOPs下降到14.9,與原Yolov5網(wǎng)絡(luò)相比都有了一定提升。實驗結(jié)果表明,針對類似的數(shù)據(jù)集,本文的改進方案具有一定的參考價值,有良好的泛化性。
本文根據(jù)聲吶圖像目標(biāo)檢測的特點以及使用場景,提出了一種基于可變尺度先驗框的目標(biāo)檢測方法。首先,對于聲吶圖像目標(biāo)較小的問題,利用先驗統(tǒng)計重新設(shè)定錨框的大小,有效提高目標(biāo)物的尺度適應(yīng)性,加快訓(xùn)練速度。其次,針對聲吶圖像數(shù)據(jù)量不足的問題,對圖像進行有選擇性的增強,豐富訓(xùn)練數(shù)據(jù)集,增強模型魯棒性。最后,為滿足聲吶圖像在航檢測的需求,通過刪減大目標(biāo)檢測層簡化模型結(jié)構(gòu),在不降低模型精度的條件下加快檢測速度。
實驗結(jié)果表明,本文提出的改進方案檢測精度最高且模型復(fù)雜度最低,對聲吶圖像的目標(biāo)檢測有一定的參考意義。然而由于水下環(huán)境復(fù)雜、噪聲嚴(yán)重,導(dǎo)致聲吶圖像質(zhì)量不高,目標(biāo)邊緣模糊,且存在部分目標(biāo)樣本稀少等問題,嚴(yán)重影響了目標(biāo)檢測準(zhǔn)確率。為了獲得更好的檢測性能,下一步將開展邊緣檢測、模型壓縮和少樣本學(xué)習(xí)等研究。