劉有用,張江梅,王坤朋,馮興華,楊秀洪
西南科技大學(xué) 信息工程學(xué)院,四川 綿陽 621010
目前,在海洋牧場(chǎng)建設(shè)及漁業(yè)領(lǐng)域,海參、海膽、貝類等海珍品的捕撈方式主要依靠拉網(wǎng)式捕撈和人工捕撈兩種。拉網(wǎng)式捕撈效率高,成本相對(duì)低廉,但會(huì)對(duì)海底生態(tài)造成極其嚴(yán)重的破壞;而人工捕撈比較環(huán)保,但存在效率低、成本高及危險(xiǎn)性高等問題[1]。隨著機(jī)器人技術(shù)的應(yīng)用發(fā)展,人們期望利用水下捕撈機(jī)器人實(shí)現(xiàn)海珍品的捕撈,而實(shí)現(xiàn)機(jī)器人捕撈的關(guān)鍵在于能夠準(zhǔn)確、快速地識(shí)別水下目標(biāo)。
由于海洋水下成像環(huán)境復(fù)雜,會(huì)導(dǎo)致光視覺系統(tǒng)獲取到的圖像出現(xiàn)顏色衰退、對(duì)比度低以及細(xì)節(jié)模糊等現(xiàn)象,嚴(yán)重退化的水下圖像由于缺少用于目標(biāo)識(shí)別的有效信息,導(dǎo)致水下目標(biāo)檢測(cè)識(shí)別難度提升[2]。傳統(tǒng)的水下目標(biāo)識(shí)別方法包含圖像預(yù)處理、目標(biāo)提取、特征描述和分類器設(shè)計(jì)等步驟[3]。目標(biāo)提取方法有閾值分割和邊緣檢測(cè)等,如Otsu的類間方差最小化全局閾值分割方法[4]和Canny 的基于雙閾值和邊緣跟蹤的邊緣檢測(cè)算法[5]。人工提取的特征包括形狀、尺寸、紋理和基于頻譜的特征等。之后再通過支持向量機(jī)、K-近鄰、神經(jīng)網(wǎng)絡(luò)等方法訓(xùn)練分類器以實(shí)現(xiàn)水下目標(biāo)的識(shí)別[6]。受水生動(dòng)植物、水流擾動(dòng)的影響,傳統(tǒng)方法在目標(biāo)提取時(shí)會(huì)提取出大量非目標(biāo)區(qū)域和邊緣,且基于人工選取的特征進(jìn)行分類,方法魯棒性差,目標(biāo)識(shí)別效果不理想。
近年來,伴隨著人工神經(jīng)網(wǎng)絡(luò)[7(]Artificial Neural Network,ANN)技術(shù)與計(jì)算機(jī)技術(shù)的快速發(fā)展,各國(guó)學(xué)者將人工神經(jīng)網(wǎng)絡(luò)運(yùn)用到水下目標(biāo)識(shí)別這一領(lǐng)域。由于計(jì)算能力的提升及神經(jīng)網(wǎng)絡(luò)訓(xùn)練、優(yōu)化算法的改進(jìn),深度學(xué)習(xí)方法[8]被逐漸應(yīng)用到水下圖像處理與目標(biāo)識(shí)別中。Kamal 等人提出了一種用于水下目標(biāo)識(shí)別的深度學(xué)習(xí)架構(gòu),使用深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)結(jié)構(gòu)來進(jìn)行預(yù)訓(xùn)練[9]。文獻(xiàn)[10]將卷積神經(jīng)網(wǎng)絡(luò)與遷移學(xué)習(xí)相結(jié)合用于魚類的自動(dòng)分類。文獻(xiàn)[11]將層疊自動(dòng)編碼器(Stacked Auto-Encoder,SAE)作為一種深度學(xué)習(xí)方法,用于獲取高級(jí)特征,并結(jié)合softmax分類函數(shù)進(jìn)行水下目標(biāo)分類,達(dá)到了較高的分類精度。
上述方法能夠提取目標(biāo)的深層次特征,解決傳統(tǒng)方法魯棒性差、識(shí)別精度低的問題。但仍存在兩方面的不足:一方面,由于水下圖像采集設(shè)備要求高、技術(shù)難度大等特點(diǎn),導(dǎo)致采集到的樣本數(shù)量少及類不平衡問題[12],對(duì)于目標(biāo)數(shù)量多、信息豐富的類別識(shí)別精確度高,而目標(biāo)數(shù)量少的類別則識(shí)別精確度低。另一方面,水下成像環(huán)境復(fù)雜導(dǎo)致圖像質(zhì)量下降,訓(xùn)練樣本不能包含豐富的有效目標(biāo)信息,嚴(yán)重限制了模型識(shí)別精確度的提升。
為解決訓(xùn)練樣本少的問題,傳統(tǒng)方法通過對(duì)圖像進(jìn)行翻轉(zhuǎn)、對(duì)比度和飽和度調(diào)整等操作擴(kuò)充訓(xùn)練樣本,增加了訓(xùn)練樣本的多樣性,從而能在一定程度上提升識(shí)別精確度。Alexnet 在分辨率為256×256 的數(shù)據(jù)集圖像中遍歷地選取224×224大小的圖像,并對(duì)圖像做了水平翻轉(zhuǎn)操作,從而將訓(xùn)練集擴(kuò)充了2 048倍[13],但此類操作增加的圖像僅是對(duì)原始圖像質(zhì)量的改變,對(duì)于降質(zhì)的水下圖像不能有效地豐富待識(shí)別目標(biāo)信息,識(shí)別精確度提升不明顯。文獻(xiàn)[14]提出了一種基于度量指標(biāo)優(yōu)化的不平衡數(shù)據(jù)Boosting算法,在一定程度上提高了正類分類性能。文獻(xiàn)[15]利用一種改進(jìn)的中值濾波算法對(duì)魚類圖像進(jìn)行噪聲抑制,然后利用圖像識(shí)別數(shù)據(jù)庫(kù)imagenet的圖像對(duì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)處理,最后利用預(yù)處理的魚類圖像對(duì)訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)進(jìn)行微調(diào),獲得了良好的魚種識(shí)別能力。該方法采用遷移學(xué)習(xí)的思想為解決小樣本情況下的識(shí)別任務(wù)提供了一種有效的方法,通過簡(jiǎn)單地調(diào)整在一個(gè)問題上訓(xùn)練好的模型即可得到適用于新問題的新模型,但在實(shí)際水下目標(biāo)的識(shí)別過程中很難找到具有相同特征的預(yù)訓(xùn)練數(shù)據(jù)庫(kù)。
2014年Goodfellow等人受博弈論中二人零和博弈思想的啟發(fā),開創(chuàng)性地提出了生成對(duì)抗網(wǎng)絡(luò)[16(]Generative Adversarial Network,GAN),使得利用已有圖像生成新圖像的設(shè)想成為可能。因此,針對(duì)水下目標(biāo)樣本數(shù)量有限及類不平衡問題,本文提出一種基于生成對(duì)抗網(wǎng)絡(luò)的訓(xùn)練樣本擴(kuò)充方法,通過截取訓(xùn)練樣本中數(shù)目少的類別目標(biāo)圖像,利用生成對(duì)抗網(wǎng)絡(luò)生成大量異構(gòu)的目標(biāo)圖像并融合到背景圖像中作為訓(xùn)練樣本,豐富目標(biāo)信息,有效擴(kuò)充訓(xùn)練樣本集。最終結(jié)合端到端的YOLO(You Only Look Once)[17]目標(biāo)識(shí)別算法訓(xùn)練識(shí)別模型,實(shí)現(xiàn)水下目標(biāo)的準(zhǔn)確、快速識(shí)別,并通過實(shí)驗(yàn)驗(yàn)證該方法的有效性和適用性。
生成對(duì)抗模型是一種無監(jiān)督的深度學(xué)習(xí)模型,模型框架中包含兩個(gè)模塊:生成模型(Generative Model)和判別模型(Discriminative Model),通過兩個(gè)模塊的互相博弈學(xué)習(xí),分別使模型G的生成能力和D的識(shí)別能力越來越強(qiáng),最終達(dá)到穩(wěn)定狀態(tài)。
在訓(xùn)練過程中,輸入訓(xùn)練樣本圖像和一組隨機(jī)噪聲,生成網(wǎng)絡(luò)G的目標(biāo)是通過隨機(jī)噪聲的分布學(xué)習(xí)訓(xùn)練圖片的數(shù)據(jù)分布,而D的目標(biāo)則是對(duì)G生成的圖片和真實(shí)圖片進(jìn)行識(shí)別,D和G的優(yōu)化過程是一個(gè)二元極小極大問題,模型目標(biāo)函數(shù)如下:
式中,x為真實(shí)數(shù)據(jù),pdata(x)是真實(shí)數(shù)據(jù)分布,z表示輸入G網(wǎng)絡(luò)的噪聲,pz(z)是噪聲分布,G(z)表示G網(wǎng)絡(luò)生成的數(shù)據(jù);D(x)表示D網(wǎng)絡(luò)判斷真實(shí)數(shù)據(jù)是否真實(shí)的概率,而D(G(z))是D網(wǎng)絡(luò)判斷G生成的數(shù)據(jù)是否真實(shí)的概率。訓(xùn)練判別器D時(shí),使用梯度上升算法,使目標(biāo)函數(shù)的值增大;同理,當(dāng)訓(xùn)練生成器G時(shí),使用梯度下降算法訓(xùn)練生成器參數(shù),使目標(biāo)函數(shù)的值減小。
本文采用生成對(duì)抗網(wǎng)絡(luò)生成目標(biāo)圖像從而達(dá)到擴(kuò)充訓(xùn)練樣本的目的,與圖像翻轉(zhuǎn)、飽和度及對(duì)比度調(diào)整等傳統(tǒng)方法擴(kuò)充的樣本不同,生成對(duì)抗網(wǎng)絡(luò)通過訓(xùn)練目標(biāo)圖像生成區(qū)別于原始圖像的異構(gòu)目標(biāo)圖像,并與背景融合得到新的訓(xùn)練樣本,能夠獲得更加豐富目標(biāo)特征信息。樣本生成方法流程如圖1所示。
圖1 訓(xùn)練樣本生成流程圖
生成對(duì)抗網(wǎng)絡(luò)中使用CNN實(shí)現(xiàn)類似于深度卷積生成 對(duì) 抗 網(wǎng) 絡(luò)[18(]Deep Convolutional Generative Adversarial Network,DCGAN)的全卷積網(wǎng)絡(luò),通過批規(guī)范化處理提升訓(xùn)練速度,也在一定程度上改善了D網(wǎng)絡(luò)分類能力;在G網(wǎng)絡(luò)和D網(wǎng)絡(luò)中使用ELU 作為激活函數(shù),加快了模型收斂速度,緩解了梯度消失的問題。利用原始樣本中截取出的目標(biāo)圖像作為生成對(duì)抗網(wǎng)絡(luò)的輸入樣本,訓(xùn)練后生成異構(gòu)目標(biāo)圖像,截取的目標(biāo)圖像和訓(xùn)練后生成的目標(biāo)圖像如圖2所示。由圖2(b)可知,生成的圖像不是對(duì)原始輸入圖像的直接復(fù)制,也不是對(duì)輸入圖像的旋轉(zhuǎn)或?qū)Ρ榷取柡投鹊日{(diào)整,生成對(duì)抗網(wǎng)絡(luò)生成的圖像為全新的目標(biāo)圖像,且包含目標(biāo)完整輪廓和細(xì)節(jié)信息,有效地豐富了目標(biāo)圖像特征信息的多樣性。
圖2 水下目標(biāo)圖像生成
生成對(duì)抗網(wǎng)絡(luò)生成的圖像僅為單個(gè)目標(biāo)圖像,需要與背景圖像融合后才能作為有效訓(xùn)練樣本。為了符合實(shí)際目標(biāo)分布規(guī)律,生成目標(biāo)在背景圖像中隨機(jī)分布,且不能覆蓋背景中的原始目標(biāo)。由于生成圖像的寬高已知,只需要計(jì)算出圖像在背景中的中心坐標(biāo)即能確認(rèn)其位置,生成圖像在背景中的中心坐標(biāo)為:
式中,U為生成目標(biāo)與背景目標(biāo)的重疊率,θ為重疊率閾值,L和H為背景圖像寬高,l和h為生成圖像寬高,(x′,y′)為背景圖像像素點(diǎn)坐標(biāo),(xi,yi)為背景中第i個(gè)目標(biāo)的中心坐標(biāo),n為背景中目標(biāo)的個(gè)數(shù),包括已經(jīng)融合到背景中的目標(biāo)。
若目標(biāo)圖像邊界與背景融合的寬度為r,則融合權(quán)重ω表示為:
對(duì)目標(biāo)圖像左邊界融合,融合后的圖像像素值為:
式中,g(x,y)表示融合后圖像像素值,g′(x,y)表示背景圖像像素值,g″(x,y)表示目標(biāo)圖像像素值。同理,對(duì)圖像右邊界、上邊界和下邊界進(jìn)行融合。
原始背景圖像和融合后生成的樣本圖像如圖3 所示,在圖3(b)中,融合后的樣本圖像中包含原始背景目標(biāo)和生成目標(biāo),圖像中的待識(shí)別目標(biāo)數(shù)量增多,且生成的目標(biāo)在圖像中隨機(jī)分布,符合水下目標(biāo)的真實(shí)分布情況,將融合后的圖像作為擴(kuò)充的訓(xùn)練樣本,可以有效地增加待識(shí)別目標(biāo)信息。
圖3 原始背景圖像和融合后圖像
傳統(tǒng)方法通過對(duì)圖像進(jìn)行旋轉(zhuǎn)、飽和度和對(duì)比度調(diào)整后擴(kuò)充的訓(xùn)練樣本集圖像如圖4所示。圖4(b)中,圖像進(jìn)行了180°旋轉(zhuǎn),增加了目標(biāo)在背景圖像中的位置信息;圖4(c)和圖4(d)中,只改變了圖像的對(duì)比度和飽和度,而目標(biāo)的形狀及在圖像中的位置等信息沒有增加。由圖3 和圖4 可知,本文的樣本擴(kuò)充方法區(qū)別于傳統(tǒng)樣本擴(kuò)充方法,利用生成對(duì)抗網(wǎng)絡(luò)生成形狀及輪廓各異的目標(biāo)圖像,并隨機(jī)融合到背景圖像中,可增加訓(xùn)練樣本的豐富性和多樣性。
圖4 傳統(tǒng)圖像調(diào)整方法擴(kuò)充的樣本圖像
水下目標(biāo)的實(shí)時(shí)、準(zhǔn)確檢測(cè)識(shí)別是實(shí)現(xiàn)水下機(jī)器人抓取、捕撈作業(yè)的前提。目前,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)方法主要包括基于候選區(qū)域的算法(R-CNN[19]、Fast R-CNN[20]、Faster R-CNN[21]等)和基于回歸方法的目標(biāo)檢測(cè)算法(LOYO、SSD[22]等)兩類。主流算法中,F(xiàn)aster RCNN 識(shí)別精確度高且對(duì)小目標(biāo)的檢測(cè)效果好,但目標(biāo)檢測(cè)速度慢,不能達(dá)到實(shí)時(shí)檢測(cè)的要求;SSD 算法檢測(cè)速度快,但對(duì)小物體的識(shí)別效果較差;YOLO 算法采取了前兩種算法的部分優(yōu)勢(shì),實(shí)現(xiàn)了目標(biāo)的實(shí)時(shí)檢測(cè),且識(shí)別精度高,對(duì)圖像中的小目標(biāo)仍具有較好的檢測(cè)效果。為實(shí)現(xiàn)水下目標(biāo)的快速檢測(cè)且對(duì)圖像中的密集型小目標(biāo)具有較高的識(shí)別精確度,本文采用YOLO算法進(jìn)行水下目標(biāo)識(shí)別。該算法是一種端到端的目標(biāo)檢測(cè)識(shí)別算法,利用卷積神經(jīng)網(wǎng)絡(luò)同時(shí)預(yù)測(cè)目標(biāo)位置和類別,算法模型結(jié)構(gòu)簡(jiǎn)單,將輸入圖像分成S×S個(gè)網(wǎng)格,每個(gè)網(wǎng)格利用Nb個(gè)初始候選框預(yù)測(cè)可能的目標(biāo)邊界框及Nc個(gè)類別概率,每個(gè)邊界框的信息為(x,y,w,h,p),其中(x,y)為邊界框中心位置坐標(biāo),w和h為邊界框?qū)捄透?,p為置信度,反映預(yù)測(cè)邊界框包含目標(biāo)的概率和邊界框的預(yù)測(cè)精確度,測(cè)試時(shí)每個(gè)邊界框的類相關(guān)置信度pi為:
式中,Pr(O)反映邊界框包含目標(biāo)的概率,Pr(Ci|O)表示在邊界框包含目標(biāo)的條件下為某類目標(biāo)的概率,i=1,2,…,Nc,為預(yù)測(cè)邊界框與Pr(Ci)真實(shí)邊界框的交并比。
YOLO算法借鑒了ResNet的殘差結(jié)構(gòu),解決因網(wǎng)絡(luò)層數(shù)增加后出現(xiàn)的退化問題;通過預(yù)測(cè)邊界框中心點(diǎn)相對(duì)于網(wǎng)格左上角的相對(duì)坐標(biāo)來確定邊界框中心坐標(biāo);為提高對(duì)小目標(biāo)的檢測(cè)準(zhǔn)確率,融合多級(jí)特征圖,在不同尺度的特征圖上進(jìn)行檢測(cè),構(gòu)成YOLOv3[23]網(wǎng)絡(luò)。使用K-means方法對(duì)訓(xùn)練集中目標(biāo)邊框的寬高維度進(jìn)行聚類,確定初始候選框的數(shù)目和尺寸,對(duì)于本文訓(xùn)練數(shù)據(jù)集,不同聚類數(shù)目k對(duì)應(yīng)的目標(biāo)邊框平均交并比如圖5所示。
圖5 K-means目標(biāo)邊框聚類結(jié)果
由圖5可知,目標(biāo)邊框平均交并比隨著聚類數(shù)目的增加而增大,當(dāng)k大于6 時(shí)平均交并比逐漸穩(wěn)定,權(quán)衡模型復(fù)雜度和識(shí)別召回率后選擇k=6,將聚類得到的6個(gè)初始候選框平均分配到3 個(gè)不同尺度的特征圖上進(jìn)行檢測(cè)。每個(gè)網(wǎng)格預(yù)測(cè)2 個(gè)邊界框,每個(gè)邊界框包含5個(gè)參數(shù)信息及4個(gè)類別的概率,因此每個(gè)網(wǎng)格檢測(cè)輸出張量大小為18。為保證目標(biāo)的識(shí)別精確度,同時(shí)滿足實(shí)時(shí)檢測(cè)的要求,本文用于水下目標(biāo)檢測(cè)的YOLO模型調(diào)整輸入圖像大小為480×480,模型最大降采樣倍數(shù)為32,最終不同特征圖的輸出張量分別為15×15×18、30×30×18和60×60×18,檢測(cè)模型結(jié)構(gòu)如圖6所示。
圖6 檢測(cè)網(wǎng)絡(luò)結(jié)構(gòu)圖
為了驗(yàn)證生成對(duì)抗網(wǎng)絡(luò)生成的圖像對(duì)水下目標(biāo)識(shí)別的有效性,設(shè)計(jì)實(shí)驗(yàn)測(cè)試傳統(tǒng)圖像調(diào)整方法和本文樣本生成方法的樣本擴(kuò)充性能及其用于水下目標(biāo)識(shí)別的效果,并對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行顯著性差異分析。
本文實(shí)驗(yàn)基于 Intel?Xeon?Silver 4114CPU 和NVIDA Quadro GP100 硬件條件,生成對(duì)抗網(wǎng)絡(luò)使用Tensorflow架構(gòu),目標(biāo)識(shí)別模型使用Darknet53框架。分別利用圖像調(diào)整方法和樣本生成方法擴(kuò)充原始圖像樣本集后進(jìn)行目標(biāo)識(shí)別模型的訓(xùn)練和測(cè)試。本文原始數(shù)據(jù)樣本為2018 水下機(jī)器人目標(biāo)抓取大賽官方提供的3 151張水下圖像,所有圖像均在真實(shí)海洋環(huán)境下拍攝,圖像質(zhì)量呈現(xiàn)不同類型、不同程度的下降;圖像包含海參、海膽、貝殼和海星四類目標(biāo),所有目標(biāo)在圖像中非均勻分布,部分目標(biāo)出現(xiàn)遮擋和覆蓋??紤]原始樣本中海參、海膽和海星目標(biāo)數(shù)目多,而貝殼目標(biāo)數(shù)量少的特點(diǎn),將原始樣本訓(xùn)練集和驗(yàn)證集圖像中的1 015個(gè)貝殼目標(biāo)截取出來,作為生成對(duì)抗網(wǎng)絡(luò)的輸入,訓(xùn)練后生成1 402張異構(gòu)的貝殼圖像,通過與不同背景融合生成1 000 張有效樣本圖像。實(shí)驗(yàn)的數(shù)據(jù)設(shè)置如表1 所示,實(shí)驗(yàn)1 中隨機(jī)對(duì)原始樣本進(jìn)行旋轉(zhuǎn)、飽和度和對(duì)比度調(diào)整,旋轉(zhuǎn)角度為180°,飽和度的調(diào)整比率為0.75,對(duì)比度的調(diào)整比率為1.5。
表1 實(shí)驗(yàn)數(shù)據(jù)設(shè)置
在模型訓(xùn)練過程中,每迭代一定的次數(shù),動(dòng)態(tài)調(diào)整輸入圖像大小,讓模型可以適應(yīng)不同輸入尺寸,最終同一個(gè)網(wǎng)絡(luò)對(duì)不同輸入維度都能進(jìn)行很好的預(yù)測(cè)。利用測(cè)試集對(duì)訓(xùn)練后的模型進(jìn)行測(cè)試,基于平均精確度(Averge Precision,AP)指標(biāo)比較兩種方法的識(shí)別結(jié)果,并對(duì)幾種YOLO 算法模型的水下目標(biāo)檢測(cè)速度進(jìn)行實(shí)驗(yàn)對(duì)比。
(1)水下目標(biāo)識(shí)別平均精確度
模型使用生成樣本訓(xùn)練后對(duì)幾類目標(biāo)識(shí)別的平均AP(mAP)提升結(jié)果如圖7所示,樣本生成方法在不同迭代次數(shù)下的mAP 均高于傳統(tǒng)圖像調(diào)整方法的mAP,當(dāng)?shù)螖?shù)為4 100 次時(shí),幾類目標(biāo)的平均識(shí)別精確度提升了2.5%。利用圖像調(diào)整方法擴(kuò)充樣本集的情況下,在迭代3 000次后模型達(dá)到最高mAP值,而加入生成樣本訓(xùn)練模型的mAP 繼續(xù)增加。隨著模型繼續(xù)迭代訓(xùn)練,由于訓(xùn)練數(shù)據(jù)集中存在類不平衡問題,模型出現(xiàn)過擬合現(xiàn)象,識(shí)別召回率下降,導(dǎo)致識(shí)別平均精確度降低,而使用生成對(duì)抗網(wǎng)絡(luò)生成貝殼圖像并與背景融合后作為訓(xùn)練樣本,減小了訓(xùn)練集中幾類目標(biāo)的數(shù)量差異,有效提高了水下目標(biāo)識(shí)別精確度。
圖7 識(shí)別精確度提升結(jié)果
兩種方法對(duì)幾類目標(biāo)的識(shí)別精度如圖8 所示。由圖8 可知,兩種方法對(duì)海參、海膽和海星三類目標(biāo)的識(shí)別結(jié)果基本一致,模型對(duì)海膽和海星兩類目標(biāo)的識(shí)別精確度較高,平均精確度在0.8以上。對(duì)于貝殼類別,由于訓(xùn)練圖片中該類目標(biāo)數(shù)目少、圖像質(zhì)量差等因素,模型識(shí)別精確度低;而加入生成樣本訓(xùn)練的模型對(duì)貝殼的識(shí)別精確度提升了7.8%,生成對(duì)抗網(wǎng)絡(luò)生成的貝殼圖像能改善網(wǎng)絡(luò)對(duì)貝殼的識(shí)別效果。
圖8 幾類目標(biāo)識(shí)別平均精確度對(duì)比
為了驗(yàn)證生成樣本的數(shù)量對(duì)目標(biāo)識(shí)別結(jié)果的影響,繼續(xù)增加樣本集中生成樣本的數(shù)量,以4∶1的比例加入訓(xùn)練集和驗(yàn)證集,然后訓(xùn)練目標(biāo)識(shí)別模型,檢測(cè)貝殼目標(biāo)的識(shí)別精確度如表2 所示。當(dāng)生成樣本數(shù)量為1 000張時(shí),貝殼的識(shí)別精確度提升了7.8%,隨著生成樣本數(shù)量繼續(xù)增加,貝殼的檢測(cè)精確度呈下降趨勢(shì)。當(dāng)生成樣本數(shù)量為1 500 張時(shí),生成圖像的數(shù)量多于原始圖像數(shù)量,樣本的豐富性和多樣性受到限制,識(shí)別精確度的提升不明顯,甚至出現(xiàn)過擬合。因此,在不平衡數(shù)據(jù)集中,通過生成對(duì)抗網(wǎng)絡(luò)擴(kuò)充訓(xùn)練樣本的方法可以有效平衡數(shù)據(jù)集,提升目標(biāo)識(shí)別精確度,但過多的生成樣本會(huì)增加冗余的待識(shí)別目標(biāo)信息,導(dǎo)致模型出現(xiàn)過擬合。
表2 不同數(shù)量生成樣本的貝殼檢測(cè)精確度
在目標(biāo)識(shí)別任務(wù)中,圖像集的質(zhì)量是影響目標(biāo)識(shí)別精確度的一個(gè)重要因素,因此,隨機(jī)調(diào)整生成圖像的飽和度和對(duì)比度,改變圖像質(zhì)量,訓(xùn)練網(wǎng)絡(luò)后進(jìn)行測(cè)試,結(jié)果表明,此類方法圖像質(zhì)量的改變對(duì)水下目標(biāo)的識(shí)別效果沒有明顯改善。高質(zhì)量的圖像包含更豐富的目標(biāo)特征信息,對(duì)目標(biāo)的識(shí)別越有利,對(duì)于生成的圖像,其質(zhì)量越接近原始圖像,對(duì)水下目標(biāo)的識(shí)別結(jié)果就越好。由圖2可知,生成的圖像在輪廓和紋理上與原始圖像相近,但部分細(xì)節(jié)信息仍沒有原始圖像清晰,因此,生成質(zhì)量更高的圖像也是下一步的研究工作。
(2)水下目標(biāo)檢測(cè)速度
在目標(biāo)檢測(cè)識(shí)別過程中,YOLOv3算法初始候選框的數(shù)目k、輸入圖像尺寸的大小調(diào)整等都會(huì)對(duì)目標(biāo)檢測(cè)速度產(chǎn)生影響。k值增大,能在一定程度上提高目標(biāo)檢測(cè)的召回率,但會(huì)增加模型的復(fù)雜度;算法檢測(cè)目標(biāo)時(shí)需要重新調(diào)整輸入圖像尺寸的大小,調(diào)整為不同尺寸后檢測(cè)速度不同。為確定初始候選框的數(shù)目和圖像尺寸大小對(duì)水下目標(biāo)檢測(cè)精確度和速度的影響,分別在不同k值和圖像尺寸下進(jìn)行測(cè)試,根據(jù)415 張測(cè)試圖片的平均耗時(shí)計(jì)算出檢測(cè)幀率(Frames Per Second,F(xiàn)PS)。
由于模型將聚類得到的k個(gè)初始候選框平均分配到3個(gè)不同尺度的特征圖上進(jìn)行檢測(cè),因此分別在k值為3、6和9的條件下測(cè)試算法對(duì)水下目標(biāo)的檢測(cè)精確度和檢測(cè)速度,輸入圖像的尺寸調(diào)整為608×608,實(shí)驗(yàn)結(jié)果如表3所示。
表3 不同k 值下水下目標(biāo)檢測(cè)速度
由表3 可知,隨著k值增大,每個(gè)檢測(cè)尺度上的候選框數(shù)目增多,目標(biāo)檢測(cè)召回率增加,檢測(cè)精確度增大,但模型的復(fù)雜度也逐漸增加,檢測(cè)速度下降;當(dāng)k值達(dá)到6 后,檢測(cè)速度降低而檢測(cè)精確度的提升不明顯,與圖2 的結(jié)果一致。為確定輸入圖像尺寸大小對(duì)檢測(cè)精確度和速度的影響,在k為6的情況下,對(duì)4種YOLOv3模型的水下目標(biāo)檢測(cè)速度進(jìn)行測(cè)試,測(cè)試包含4種不同的檢測(cè)圖像尺寸,分別為608×608、544×544、480×480、416×416,測(cè)試結(jié)果如表4所示。
表4 不同輸入圖像尺寸的水下目標(biāo)檢測(cè)速度
由表4 可知,YOLOv3-608 達(dá)到68.4%的識(shí)別精確度,其檢測(cè)速度為13 f/s,隨著檢測(cè)圖像尺寸減小,目標(biāo)識(shí)別精確度隨之降低而檢測(cè)速度增加,YOLOv3-480 和YOLOv3-416檢測(cè)速度均大于24 f/s,滿足實(shí)時(shí)檢測(cè)的要求。綜合目標(biāo)識(shí)別精確度和檢測(cè)速度,YOLOv3-480模型在保證較高識(shí)別精確度的基礎(chǔ)上可以實(shí)現(xiàn)水下目標(biāo)的快速檢測(cè)。
通過Paired t-test檢驗(yàn)兩種方法對(duì)幾類目標(biāo)的識(shí)別結(jié)果之間是否存在顯著性差異,確定在統(tǒng)計(jì)意義下本文樣本生成方法的識(shí)別結(jié)果是否顯著優(yōu)于傳統(tǒng)圖像調(diào)整方法的識(shí)別結(jié)果,即采用生成對(duì)抗網(wǎng)絡(luò)擴(kuò)充樣本的方法能顯著改善目標(biāo)識(shí)別結(jié)果。
Paired t-test 的原假設(shè)為兩種方法的識(shí)別結(jié)果沒有差異,若N為測(cè)試次數(shù),c1i(i=1,2,…,N)為傳統(tǒng)方法不同迭代次數(shù)下的識(shí)別精確度,c2i為本文方法在不同迭代次數(shù)下的識(shí)別精確度,di=c2i-c1i,計(jì)算t統(tǒng)計(jì)量:
在本實(shí)驗(yàn)中,計(jì)算海參、海膽、貝殼和海星的t統(tǒng)計(jì)量分別為th=0.110 8、te=0.659 7、ts=9.787 9、tf=0.166 5,當(dāng)N=13,顯著性水平α=0.05 時(shí),臨界值為2.178 8。對(duì)于海參、海膽和海星三類目標(biāo)原假設(shè)被接受,而貝殼目標(biāo)原假設(shè)被拒絕,即加入生成圖像訓(xùn)練的方法與圖像調(diào)整的樣本擴(kuò)充方法具有顯著的差異,本文基于生成對(duì)抗網(wǎng)絡(luò)的水下目標(biāo)識(shí)別方法能顯著改善目標(biāo)識(shí)別效果。
基于生成對(duì)抗網(wǎng)絡(luò)的水下目標(biāo)識(shí)別方法結(jié)合生成圖像和原始圖像訓(xùn)練目標(biāo)識(shí)別模型,能有效擴(kuò)充訓(xùn)練樣本集,解決小樣本及類不平衡問題,相比于直接利用原始圖像訓(xùn)練模型的方法,提高了目標(biāo)識(shí)別精確度。采用生成對(duì)抗網(wǎng)絡(luò)生成單個(gè)目標(biāo)圖像,調(diào)整大小后隨機(jī)分布到背景圖像中,并通過邊界融合算法使其與背景融合,最終作為目標(biāo)識(shí)別模型的訓(xùn)練樣本,這是一種簡(jiǎn)單實(shí)用的樣本擴(kuò)充與目標(biāo)識(shí)別方法,適用于水下、空中等特殊環(huán)境圖像的目標(biāo)識(shí)別,特別是針對(duì)訓(xùn)練樣本圖像數(shù)量少、質(zhì)量差等情況,能夠有效改善識(shí)別效果。下一步的工作將研究如何生成更高質(zhì)量的圖像,同時(shí),研究如何在水下機(jī)器人嵌入式處理平臺(tái)上實(shí)際使用本文提出的目標(biāo)識(shí)別算法。
致謝感謝國(guó)家自然科學(xué)基金委主辦、大連理工大學(xué)等單位承辦的水下機(jī)器人目標(biāo)抓取大賽提供的水下目標(biāo)真實(shí)圖像數(shù)據(jù),本文在該數(shù)據(jù)的基礎(chǔ)上完成了實(shí)驗(yàn)。也感謝此次大賽,在參加比賽過程中對(duì)水下目標(biāo)識(shí)別與抓取問題的思考,是本文創(chuàng)新與研究思路的出發(fā)點(diǎn)。