冉險(xiǎn)生,蘇山杰,陳俊豪,張之云
重慶交通大學(xué) 機(jī)電與車輛工程學(xué)院,重慶 400074
目標(biāo)檢測(cè)作為計(jì)算機(jī)視覺領(lǐng)域的一項(xiàng)基礎(chǔ)任務(wù),在各個(gè)領(lǐng)域都有廣泛應(yīng)用,如自動(dòng)駕駛、軍事偵察、行人檢測(cè)、視覺機(jī)器人等。近年來,計(jì)算機(jī)視覺領(lǐng)域相關(guān)技術(shù)取得了突破性的創(chuàng)新,隨著自動(dòng)駕駛汽車出現(xiàn)及道路測(cè)試實(shí)驗(yàn)不斷深入,道路場(chǎng)景下的目標(biāo)檢測(cè)技術(shù)也日益重要,并對(duì)自動(dòng)駕駛技術(shù)環(huán)境感知模塊起著決定性的作用。
隨著深度學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)的快速發(fā)展,主流的深度學(xué)習(xí)檢測(cè)算法分為兩類:基于錨框和不基于錨框的檢測(cè)算法[1-2],其中基于錨框的檢測(cè)算法檢測(cè)精度高,但網(wǎng)絡(luò)結(jié)構(gòu)較為復(fù)雜,模型計(jì)算對(duì)硬件設(shè)備有著更嚴(yán)格的要求,難以滿足自動(dòng)駕駛技術(shù)環(huán)境感知模塊實(shí)時(shí)性檢測(cè)的要求;而不基于錨框的檢測(cè)算法雖然在精度上不及前者,但在實(shí)時(shí)性方面更有優(yōu)勢(shì)。研究學(xué)者針對(duì)復(fù)雜道路場(chǎng)景下的目標(biāo)檢測(cè)做了大量研究,研究發(fā)現(xiàn)通用目標(biāo)檢測(cè)中[3]圖像質(zhì)量較高,環(huán)境因素影響較小,算法能充分提取特征信息,較好地定位并識(shí)別出目標(biāo),而復(fù)雜道路場(chǎng)景下[4]目標(biāo)尺度變化大,目標(biāo)多而雜,且由于成像距離、行車視角變化快和光線,目標(biāo)之間遮擋嚴(yán)重,多以小尺度目標(biāo)形式存在,容易出現(xiàn)漏檢和誤檢,進(jìn)一步降低算法檢測(cè)精度。
因此如何提升復(fù)雜道路場(chǎng)景目標(biāo)檢測(cè)算法的檢測(cè)性能,降低遮擋目標(biāo)、小尺度目標(biāo)漏檢率和誤檢率是近年來的研究重點(diǎn)。為解決道路場(chǎng)景中實(shí)時(shí)性檢測(cè)問題,文獻(xiàn)[5]提出了一種動(dòng)態(tài)閾值方法刪除錯(cuò)誤的候選框,采用高斯衰減函數(shù)過濾重疊的候選框。文獻(xiàn)[6]以RetinaNet 為基礎(chǔ)框架,設(shè)計(jì)了基于不同擴(kuò)張率組合的殘差卷積分支模塊,提高了各類目標(biāo)的檢測(cè)精度。文獻(xiàn)[7]改進(jìn)了YOLOV4-Tiny 算法,提高了街道場(chǎng)景中小目標(biāo)的識(shí)別能力,并在極端天氣具有一定的魯棒性。除此之外國內(nèi)外研究者針對(duì)不同道路場(chǎng)景采用了不同的改進(jìn)策略[8-10],但現(xiàn)階段復(fù)雜道路場(chǎng)景下的目標(biāo)檢測(cè)仍然面臨較大挑戰(zhàn),在檢測(cè)精度和實(shí)時(shí)性方面存在一定的進(jìn)步空間。2020—2021 年,YOLOv5 及YOLOX 相繼問世,以極高的檢測(cè)速度成為了實(shí)時(shí)檢測(cè)和移動(dòng)端部署的首要選擇,但以上兩種算法難以對(duì)復(fù)雜道路場(chǎng)景下的密集遮擋目標(biāo)、小尺度目標(biāo)進(jìn)行有效檢測(cè)。
為了解決密集遮擋目標(biāo),小尺度目標(biāo)檢測(cè)效果差的問題,國內(nèi)外的研究學(xué)者主要從anchor 優(yōu)化、增加感受野、引入注意力機(jī)制、改進(jìn)損失函數(shù)、增強(qiáng)特征提取、改變特征融合方式、改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)等方面進(jìn)行大量探索實(shí)驗(yàn)。針對(duì)小尺度目標(biāo)特征信息在傳遞過程中容易丟失的問題,Lin 等人[11]首先提出了FPN(feature pyramid networks)結(jié)構(gòu)將含有更多語義信息的深層特征與含有更多細(xì)節(jié)信息的淺層特征進(jìn)一步融合,較好提升了檢測(cè)效果,近年來研究學(xué)者進(jìn)一步優(yōu)化了FPN結(jié)構(gòu)[12-17],對(duì)檢測(cè)性能均有不同程度的提升。Yu 等人[18]創(chuàng)造性地提出空洞卷積擴(kuò)大感受野,進(jìn)一步提升模型對(duì)小尺度目標(biāo)的識(shí)別精度,同時(shí)研究學(xué)者通過實(shí)驗(yàn)證明空洞卷積的有效性,并提出了改進(jìn)方法[19-23]。Liu等人[24]提出自適應(yīng)空間特征融合的方法,允許網(wǎng)絡(luò)能夠直接學(xué)習(xí)如何在空間上過濾其他層次的特征,只保留有用的信息用于組合。近些年來研究學(xué)者更加關(guān)注注意力機(jī)制對(duì)目標(biāo)檢測(cè)性能的影響,提出了有效改進(jìn)方法[25-32]。通過對(duì)數(shù)據(jù)集的分析,在損失函數(shù)的改進(jìn)上更多采用EIOU[33]和Focal Loss[34]來提升小尺度目標(biāo)的檢測(cè)效果。因此如何提升復(fù)雜道路場(chǎng)景小尺度目標(biāo)檢測(cè)算法的精度、實(shí)時(shí)性和魯棒性是本文的主要研究目標(biāo)。
目前YOLOv5 及YOLOX 算法擁有較好的檢測(cè)性能,其中YOLOv5-s 和YOLOX-s 屬于輕量級(jí)的檢測(cè)算法,是嵌入到移動(dòng)部署設(shè)備的首要選擇,但兩類算法對(duì)遮擋目標(biāo),小尺度目標(biāo)的檢測(cè)仍有提升的空間。本文以YOLOv5-s 檢測(cè)算法為基礎(chǔ)框架,針對(duì)目前復(fù)雜道路場(chǎng)景中密集遮擋目標(biāo)檢測(cè)、小尺度目標(biāo)檢測(cè)漏檢率較高、檢測(cè)精度偏低的問題進(jìn)行改進(jìn)。具體改進(jìn)如下:為了減緩相鄰尺度特征融合時(shí)對(duì)模型產(chǎn)生的負(fù)面影響,借鑒了特征融合因子的思想,改進(jìn)了融合因子計(jì)算方式,增加特征融合后有效樣本,提升中小尺度目標(biāo)的學(xué)習(xí)能力;為了提升復(fù)雜道路場(chǎng)景下的中小尺度目標(biāo)的檢測(cè)精度,進(jìn)一步有效利用淺層特征層提取的特征信息,增加了一層淺層檢測(cè)層;針對(duì)復(fù)雜道路場(chǎng)景下尺度變化大的車輛行人目標(biāo)特征信息提取不充分的問題,借鑒RFB(receptive field block)網(wǎng)絡(luò)結(jié)構(gòu)的思想,構(gòu)建自適應(yīng)感受野融合模塊,允許模型訓(xùn)練時(shí)自動(dòng)選擇合適的感受野特征;為了提升算法對(duì)遮擋程度高,密集小尺度目標(biāo)的檢測(cè)能力,損失函數(shù)引用Quality Focal Loss進(jìn)行優(yōu)化,并融入CA注意力機(jī)制,改變模型關(guān)注的重點(diǎn),增強(qiáng)算法的特征提取能力。
YOLOv5 算法是目前YOLO 系列最新版本檢測(cè)算法,YOLOv5主要結(jié)構(gòu)如圖1所示,模型由輸入端(Input)、主干網(wǎng)絡(luò)(Backbone)、多尺度特征融合網(wǎng)絡(luò)(Neck)、檢測(cè)網(wǎng)絡(luò)(YOLOHead)等四部分組成。輸入端的創(chuàng)新點(diǎn)主要是采用mosaic 圖像增強(qiáng),增加自適應(yīng)錨框計(jì)算等。主干網(wǎng)絡(luò)包含C3 結(jié)構(gòu),空間金字塔池化SPPF 結(jié)構(gòu),主干網(wǎng)絡(luò)主要對(duì)輸入端數(shù)據(jù)增強(qiáng)的圖像進(jìn)行特征信息的有效提取,同時(shí)最大程度減少信息下采樣時(shí)的丟失,實(shí)現(xiàn)不同尺度信息的有效融合。多尺度特征融合網(wǎng)絡(luò)主要采用FPN+PAN結(jié)構(gòu),經(jīng)過Backbone的待識(shí)別圖像在淺層具有更多的定位信息,在深層具有更多的語義信息,采用FPN 結(jié)構(gòu)把含有更多語義信息的特征傳給淺層,增強(qiáng)每個(gè)尺度上的語義信息,達(dá)到更好的檢測(cè)效果;PAN 結(jié)構(gòu)實(shí)現(xiàn)了從淺層把含有更多定位信息特征傳遞給高層,增強(qiáng)每個(gè)尺度上的定位信息,改善了多尺度目標(biāo)檢測(cè)的性能。檢測(cè)網(wǎng)絡(luò)采用GIoU損失函數(shù)計(jì)算邊界錨框的損失值,并在后處理過程中采用加權(quán)NMS,篩選密集重合的多個(gè)錨框。
YOLOv5-s 算法Neck 網(wǎng)絡(luò)采用PAFPN 雙向特征金字塔結(jié)構(gòu)并加上橫向連接結(jié)構(gòu)實(shí)現(xiàn)不同尺度特征的融合,其中FPN 結(jié)構(gòu)本質(zhì)上是進(jìn)行多任務(wù)學(xué)習(xí),得到待檢測(cè)目標(biāo)的具有更多定位信息的淺層特征和具有更多語義信息的深層特征,在理想的情況下,不同的特征層只專注于其對(duì)應(yīng)的不同尺度目標(biāo)的檢測(cè)。而在實(shí)際情況下,目標(biāo)檢測(cè)過程中會(huì)有以下問題:不同尺度的特征層在監(jiān)督學(xué)習(xí)中總會(huì)受到其他層的影響(損失傳遞),其中相鄰兩個(gè)特征層之間的影響較為嚴(yán)重,其次是YOLOv5-s算法在表面上可以覆蓋多個(gè)尺度的檢測(cè),但在相鄰層之間往往存在部分尺度的目標(biāo)在兩個(gè)相鄰特征圖中均有較大的響應(yīng),而網(wǎng)絡(luò)自動(dòng)學(xué)習(xí)時(shí)只是根據(jù)響應(yīng)值粗暴地判別到某一層進(jìn)行識(shí)別,導(dǎo)致檢測(cè)效果較差和網(wǎng)絡(luò)收斂效果不好。應(yīng)用于小尺度的遮擋車輛、行人的目標(biāo)檢測(cè)中,除了淺層特征圖上含有小尺度目標(biāo)有效特征信息,深層特征圖上也可能存在對(duì)檢測(cè)結(jié)果有影響的特征信息,也是需要學(xué)習(xí)的。由于待檢測(cè)的目標(biāo)尺度較小,特征信息的提取難度大,淺層網(wǎng)絡(luò)學(xué)習(xí)到的特征信息有限,深層網(wǎng)絡(luò)學(xué)習(xí)到的特征信息不足以對(duì)淺層網(wǎng)絡(luò)進(jìn)行輔助,從而影響小尺度目標(biāo)的檢測(cè)效果。
由以上分析得知,每一層學(xué)習(xí)到的信息都有著至關(guān)重要的作用,深淺層的特征信息對(duì)不同尺度的待檢測(cè)目標(biāo)的貢獻(xiàn)程度不同,同時(shí)特征信息流動(dòng)中對(duì)其他層的影響有弊有利。為了減緩特征融合對(duì)模型帶來負(fù)面的影響,提出了一種改進(jìn)的相鄰尺度特征融合策略。主要考慮到同一個(gè)有效樣本在不同尺度的特征圖有不同的響應(yīng),按照1∶1比例的融合策略并不能達(dá)到最優(yōu)的融合效果,容易造成信息丟失,導(dǎo)致FPN 結(jié)構(gòu)中某些層的訓(xùn)練樣本相較于其他層會(huì)減少很多,故需要改變深層特征參與淺層特征學(xué)習(xí)的程度,過濾掉相鄰層傳遞過程中的無效樣本,保證深層特征圖上存在更多的有效樣本進(jìn)行學(xué)習(xí),進(jìn)而指導(dǎo)淺層的學(xué)習(xí),提升不同尺寸目標(biāo)的檢測(cè)效果。FPN的特征融合過程的表達(dá)式為:
其中,Ci和Pi+1分別表示在進(jìn)行特征融合前后第i層的特征圖,flateral表示在FPN 橫向連接中的1×1 卷積操作,fupsample表示用來調(diào)整分辨率的2 倍上采樣的操作,fconv表示特征處理的卷積操作,表示第i+1 層特征圖向第i層特征圖傳遞時(shí)應(yīng)相乘的特征融合因子。文獻(xiàn)[8]提出的特征融合因子是經(jīng)過統(tǒng)計(jì)的方式得到,分別統(tǒng)計(jì)每層對(duì)應(yīng)的目標(biāo)數(shù)量,公式表達(dá)式為:
文獻(xiàn)[9]提出了使用注意力模塊計(jì)算融合因子的方式,本文融合BAM[35]注意力機(jī)制的思想,改進(jìn)了相鄰尺度特征有效融合模塊,如圖2 所示,計(jì)算出特征融合因子,用來減緩特征融合過程中的負(fù)面影響,公式表達(dá)式如下:

圖2 相鄰尺度特征有效融合模塊(AFEF)Fig.2 Adjacent scale feature effective fusion module(AFEF)

圖3 空間與通道注意力模塊結(jié)構(gòu)圖Fig.3 Structure diagram of spatial and channel attention module
空間注意力模塊主要功能為對(duì)傳遞中的深層與淺層的空間信息進(jìn)行對(duì)比,分析相鄰特征圖含有信息值的差異,用來確定深層傳入淺層的無效樣本并過濾。Ms模塊公式如下:
其中,σ表示Sigmoid 激活函數(shù),f1×1表示可壓縮通道數(shù)的1×1 卷積,f3×3表示卷積核為3×3 的擴(kuò)張卷積,可共享參數(shù)信息,f5×5表示卷積核為5×5 的卷積操作,Softmax′表示乘積出特征圖不同維度(行和列)Softmax運(yùn)算后的值。
特征圖的每一個(gè)通道都攜帶著大量信息,通道注意力模塊更加集中關(guān)注特征圖中有意義的內(nèi)容,配合空間注意力模塊,從通道層面更好地處理特征信息,減少無意義的特征融合通道,達(dá)到更優(yōu)異的性能。Mc模塊公式如下:
其中,GAP表示全局平均池化操作,MLP表示帶有一個(gè)隱藏層的多層感知器,是由全連接層和Relu激活函數(shù)共同組成,先將通道數(shù)壓縮為原來通道數(shù)的1/r倍,再擴(kuò)張為原來的通道數(shù),經(jīng)過Relu 函數(shù)得到激活后的結(jié)果,r值在實(shí)驗(yàn)中取為16,表示Sigmoid 激活函數(shù)。
在復(fù)雜的道路場(chǎng)景中,上下文信息對(duì)車輛行人等目標(biāo)的檢測(cè)中起著不可或缺的作用,能夠精確地識(shí)別和定位出待檢測(cè)的車輛行人目標(biāo),尤其在遮擋場(chǎng)景中,上下文信息的有效利用能夠較好提高遮擋目標(biāo)的識(shí)別效果。YOLOv5-s算法中,SPPF空間金字塔池化模塊能極大地增加感受野,分離出最顯著的上下文特征,進(jìn)行多重感受野融合。針對(duì)遮擋嚴(yán)重的車輛、行人目標(biāo),由于尺度較小,會(huì)引入過多的背景信息,干擾目標(biāo)關(guān)鍵特征的表達(dá)能力,導(dǎo)致特征信息提取不充分,故引入RFB-s網(wǎng)絡(luò)結(jié)構(gòu)并改進(jìn),有效增大感受野區(qū)域使其自適應(yīng)融合,改進(jìn)前后結(jié)構(gòu)如圖4所示。

圖4 RFB-s模塊改進(jìn)前后結(jié)構(gòu)Fig.4 Structure of RFB-s module before and after improvement
RFB-s模塊結(jié)構(gòu)首先對(duì)輸入的特征圖進(jìn)行1×1卷積操作縮減通道數(shù),降低模型的計(jì)算量;然后降維的特征圖分別經(jīng)過4個(gè)感受野的分支獲取對(duì)應(yīng)特征信息,使用非對(duì)稱卷積減少參數(shù)量,使用擴(kuò)張率分別為1、3、5的3×3空洞卷積增大特征圖感受野;其次對(duì)每個(gè)感受野分支進(jìn)行拼接和1×1 卷積操作,融合得到的特征圖;最后通過ShortCut 的方式有效緩解網(wǎng)絡(luò)梯度傳播過程中損失值發(fā)生爆炸和消失的問題,加快訓(xùn)練速度,并融合原特征和多尺度感受野融合特征。
改進(jìn)的RFB-s 模塊,稱作為IRFB-s,整體上依然采用多分支空洞卷積的結(jié)構(gòu)進(jìn)一步增加感受野,把3×3卷積換為1×3、3×1 非對(duì)稱卷積,減少參數(shù)量和計(jì)算量;增加感受野分支,得到更寬、更多的感受野組合;引入ASFF網(wǎng)絡(luò)[24]的思想,自適應(yīng)融合每個(gè)感受野分支得到的特征圖,網(wǎng)絡(luò)在學(xué)習(xí)過程中根據(jù)不同尺度目標(biāo)選擇最佳的感受野融合方式,有效避免了感受野過大時(shí)無關(guān)背景信息對(duì)有效信息的干擾,能較好完成特征的提取,有效學(xué)習(xí)上下文信息,改善尺度變化大及遮擋場(chǎng)景下的車輛、行人目標(biāo)檢測(cè)。
復(fù)雜道路場(chǎng)景存在大量的尺度變化大及遮擋的待檢測(cè)目標(biāo),模型在進(jìn)行特征提取時(shí)會(huì)混入大量的背景及非檢測(cè)目標(biāo)的無效特征信息,會(huì)對(duì)有效目標(biāo)的信息提取造成負(fù)面的影響,因此模型需要過濾掉這些無效信息,將更多注意力放在有效目標(biāo)上。國內(nèi)外研究人員提出注意力機(jī)制來關(guān)注更加重要的特征,排除無效的信息的干擾,給模型性能帶來一定的提升。本文借鑒并引入CA(coordinate attention)注意力模塊[32],該模塊提供了一種新穎的編碼特征圖通道信息的方式,分別沿著兩個(gè)空間方向聚合特征,有效地將空間坐標(biāo)信息整合到生成的注意圖中,使得輕量級(jí)網(wǎng)絡(luò)獲得更多區(qū)域的有效信息。CA注意力模塊結(jié)構(gòu)如圖5所示。

圖5 CA注意力模塊編碼過程Fig.5 CA attention module encoding process
復(fù)雜道路場(chǎng)景模型能更好地檢測(cè)出目標(biāo)并進(jìn)行定位,損失函數(shù)的作用是不可或缺的,損失函數(shù)主要由三部分組成:定位損失、置信度損失和分類損失,公式描述如下:
在不同的檢測(cè)場(chǎng)景中定位損失函數(shù)有著不同的功效,為了提高復(fù)雜道路場(chǎng)景中遮擋目標(biāo)和中小尺度目標(biāo)的檢測(cè)效果,模型采用EIOU Loss來計(jì)算目標(biāo)框的定位損失,一般采用交叉熵?fù)p失函數(shù)(BCEclsloss)和Focal Loss函數(shù)計(jì)算置信度損失,本次實(shí)驗(yàn)采用Focal Loss函數(shù),將分類損失的交叉熵?fù)p失函數(shù)更改為Quality Focal Loss損失函數(shù)[36],Quality Focal Loss損失函數(shù)定義為:
其中,σ表示預(yù)測(cè),y為0~1的質(zhì)量標(biāo)簽,|y-σ|β(β≥0)為縮放因子,表示距離絕對(duì)值的冪次函數(shù),超參數(shù)β用于控制降權(quán)的速率,在文獻(xiàn)[36]實(shí)驗(yàn)中,取β=2 為最優(yōu),本次實(shí)驗(yàn)也取β=2。在復(fù)雜的道路場(chǎng)景下,待檢測(cè)目標(biāo)多以遮擋,小尺度密集分布出現(xiàn),這造成候選框的重疊程度增加,當(dāng)原始模型的分類損失函數(shù)進(jìn)行NMS 后處理時(shí),更容易抑制錯(cuò)誤,降低了一部分定位精度,而Quality Focal Loss 的引入能在一定程度上彌補(bǔ)之前模型的不足,提升復(fù)雜道路場(chǎng)景下遮擋目標(biāo)、密集小尺度目標(biāo)的檢測(cè)精度。
原始YOLOv5-s 算法采用20×20、40×40、80×80 三個(gè)尺度實(shí)現(xiàn)對(duì)大、中、小尺度目標(biāo)的檢測(cè)。復(fù)雜道路場(chǎng)景下存在大量小尺度目標(biāo),密集遮擋目標(biāo),而這些目標(biāo)特征信息大多存在于網(wǎng)絡(luò)更淺層,因此需要增大網(wǎng)絡(luò)的檢測(cè)尺度范圍,檢測(cè)出更小尺度目標(biāo),提高模型的檢測(cè)性能,故增加了一層160×160 尺度的淺層檢測(cè)層,充分利用淺層的特征信息,提高小尺度目標(biāo)的檢測(cè)效果。但改進(jìn)后模型復(fù)雜度增加,故考慮減少20×20的深層檢測(cè)層,通過實(shí)驗(yàn)發(fā)現(xiàn),減少深層特征層后,對(duì)大尺度目標(biāo)的特征信息提取不足,導(dǎo)致卡車、公交車及部分汽車等大尺度目標(biāo)的檢測(cè)精度大幅度降低,影響了算法模型整體的檢測(cè)精度。經(jīng)過對(duì)比分析,增加160×160淺層檢測(cè)層后,相對(duì)于模型復(fù)雜度的增加,模型的檢測(cè)精度的提升更能接受,而在此基礎(chǔ)上減少20×20 深層特征層后,大尺度目標(biāo)檢測(cè)精度降低,從而影響了模型整體檢測(cè)精度。故本次實(shí)驗(yàn)保留20×20的深層檢測(cè)層,只增加160×160的淺層檢測(cè)層,改進(jìn)后網(wǎng)絡(luò)的整體結(jié)構(gòu)如圖6所示。

圖6 改進(jìn)后模型結(jié)構(gòu)Fig.6 Improved model structure
在深度學(xué)習(xí)領(lǐng)域中,針對(duì)復(fù)雜道路場(chǎng)景下的目標(biāo)檢測(cè),大規(guī)模的數(shù)據(jù)集能有效檢驗(yàn)算法的性能。實(shí)驗(yàn)選用VOC數(shù)據(jù)集、BDD100K數(shù)據(jù)集[37]、Udacity數(shù)據(jù)集[38]及自制數(shù)據(jù)集進(jìn)行對(duì)比實(shí)驗(yàn)和消融實(shí)驗(yàn)。
自制數(shù)據(jù)集:為了切合國內(nèi)復(fù)雜道路場(chǎng)景下車輛行人目標(biāo)檢測(cè),自制了一個(gè)真實(shí)道路場(chǎng)景數(shù)據(jù)集,使用車載行車記錄儀,在重慶主城區(qū)域采集了不同場(chǎng)景的行車視頻38 段,包含不同的天氣條件,不同道路場(chǎng)景,不同時(shí)間段。采集的視頻按每4 s截取一張圖像的方式制作成數(shù)據(jù)集,圖像分辨率為1 280×720,共3 427張圖片,從中選取2 721 張圖片作為訓(xùn)練集,其余圖片作為驗(yàn)證集。自建數(shù)據(jù)集主要對(duì)交通參與者進(jìn)行檢測(cè),如小車(car),摩托車(motor),卡車(truck),公交車(bus),行人(person),命名為CQTransport。
在本文實(shí)驗(yàn)中,實(shí)驗(yàn)平臺(tái)操作環(huán)境為Windows10,GPU 為Nvidia Tesla V100 PCIE,顯存為32 GB,實(shí)驗(yàn)仿真采用的深度學(xué)習(xí)框架為Pytorch,版本為1.8.0,編程語言為Python 3.9,CUDA10.1。YOLOv5-s的基本訓(xùn)練參數(shù)見文獻(xiàn)[39],Batch Size 參數(shù)根據(jù)輸入圖像分辨率進(jìn)行調(diào)整,在不溢出顯卡極限情況下,使用較大Batch Size來獲得更好的訓(xùn)練效果。訓(xùn)練輪數(shù)(Epoch)根據(jù)數(shù)據(jù)集圖像量調(diào)整,所有改進(jìn)模型在同一數(shù)據(jù)集均采用相同設(shè)置(不一定為最優(yōu)設(shè)置),進(jìn)行對(duì)比實(shí)驗(yàn)分析。
實(shí)驗(yàn)利用準(zhǔn)確率P(precision)、召回率R(recall)、平均精度均值(mean average precision,mAP)以及幀率(frames per second,F(xiàn)PS)對(duì)模型進(jìn)行定量評(píng)價(jià)。前三個(gè)參數(shù)是用來評(píng)價(jià)模型精度性能的指標(biāo),通常來說值越高,模型的檢測(cè)效果越符合實(shí)際檢測(cè)目標(biāo),模型性能也越好。準(zhǔn)確率(P)和召回率(R)的計(jì)算公式如下:
TP 表示圖像正樣本中被正確預(yù)測(cè)為正樣本的數(shù)量,F(xiàn)N表示圖像正樣本被預(yù)測(cè)為負(fù)樣本的數(shù)量,F(xiàn)P表示圖像負(fù)樣本被錯(cuò)誤預(yù)測(cè)為正樣本的數(shù)量。FPS 是衡量模型檢測(cè)速度性能的指標(biāo),表示模型每秒能處理圖像的數(shù)量,值越大網(wǎng)絡(luò)模型處理圖像的速度越快,本文使用FPS來評(píng)估模型實(shí)時(shí)性性能。
實(shí)驗(yàn)主要采用BDD100K數(shù)據(jù)集、Udacity數(shù)據(jù)集及CQTransport 數(shù)據(jù)集對(duì)改進(jìn)的模型進(jìn)行訓(xùn)練和測(cè)試,并建立多組對(duì)比實(shí)驗(yàn)和消融實(shí)驗(yàn)。
注意力模塊融入到模型哪個(gè)位置能起到提升性能的作用始終沒有固定的理論,為了驗(yàn)證注意力模塊融入位置的有效性,本次實(shí)驗(yàn)在主干網(wǎng)絡(luò)和頸部網(wǎng)絡(luò)及頭部網(wǎng)絡(luò)分別加入CA注意力模塊,分別表示YOLOv5-s-A、YOLOv5-s-B、YOLOv5-s-C,在VOC 數(shù)據(jù)集上對(duì)比實(shí)驗(yàn),訓(xùn)練迭代次數(shù)400次,實(shí)驗(yàn)后在測(cè)試集上性能如表1所示。從結(jié)果分析,首先注意力模塊在VOC 數(shù)據(jù)集上并不能有效提升模型檢測(cè)性能,其次頸部融入注意力模塊后性能優(yōu)于其他位置。主要原因有以下3點(diǎn):VOC數(shù)據(jù)集中圖像多以中、大尺度目標(biāo)為主,原始算法已經(jīng)能有效擬合出數(shù)據(jù)集中的目標(biāo)并有效識(shí)別,而注意力模塊加入便有些多余;對(duì)尺度變化大,遮擋程度高的待檢測(cè)目標(biāo)注意力模塊可能更有效果;數(shù)據(jù)集中圖像數(shù)量不夠大,原始模型已經(jīng)處于過擬合的狀態(tài),注意力模塊的加入進(jìn)一步加劇這個(gè)問題,導(dǎo)致模型性能沒有提升或性能下降。

表1 VOC數(shù)據(jù)集注意力模塊融入模型位置實(shí)驗(yàn)Table 1 Experiments on integration of attention module into model position of VOC dataset
為了驗(yàn)證其他注意力方法融入頸部網(wǎng)絡(luò)后是否能提升模型性能,建立了多組對(duì)比實(shí)驗(yàn),由于原始模型迭代200 輪后出現(xiàn)了過擬合現(xiàn)象,本次實(shí)驗(yàn)主要選取前200個(gè)周期進(jìn)行對(duì)比分析,表2為測(cè)試集性能結(jié)果。

表2 注意力模塊對(duì)比實(shí)驗(yàn)Table 2 Comparative experiments of attention modules
根據(jù)實(shí)驗(yàn)結(jié)果,訓(xùn)練周期內(nèi)融入各類注意力方法沒有達(dá)到提升模型性能的效果,繼續(xù)增大訓(xùn)練輪數(shù)后,模型存在提升的空間。所有實(shí)驗(yàn)的注意力方法中,在頸部網(wǎng)絡(luò)C3 結(jié)構(gòu)融入注意力機(jī)制,能起到降低參數(shù)量的作用,同時(shí)mAP值表現(xiàn)更優(yōu)異。由于在VOC 數(shù)據(jù)集中注意力機(jī)制并未有效提升模型檢測(cè)性能,本文后續(xù)工作將在BDD100K數(shù)據(jù)集上進(jìn)一步驗(yàn)證CA注意力機(jī)制的有效性。
為了更好地驗(yàn)證改進(jìn)策略的可行性,探究不同改進(jìn)策略對(duì)模型性能的影響,在原始網(wǎng)絡(luò)結(jié)構(gòu)融入改進(jìn)方法,并在BDD100K數(shù)據(jù)集及自制數(shù)據(jù)集CQTransport上進(jìn)行消融實(shí)驗(yàn)。不同的改進(jìn)方式使模型結(jié)構(gòu)發(fā)生變化,參數(shù)量和計(jì)算量也在不斷改變,從而各方面的評(píng)價(jià)指標(biāo)均受到影響,具體消融實(shí)驗(yàn)結(jié)果如表3、表4 所示。“√”表示模型融入該方法,“×”表示未融入該方法,從表中實(shí)驗(yàn)結(jié)果得知提出的改進(jìn)策略在兩個(gè)數(shù)據(jù)集上都能不同程度地提升模型性能,其中在自制數(shù)據(jù)集CQTransport上精度提升效果較為明顯。通過消融實(shí)驗(yàn),再次驗(yàn)證了改進(jìn)方法的可行性,改進(jìn)模型在不影響實(shí)時(shí)性檢測(cè)的同時(shí)有著更高的檢測(cè)精度,能更好地進(jìn)行復(fù)雜道路場(chǎng)景下的目標(biāo)檢測(cè)。

表3 BDD100K數(shù)據(jù)集檢測(cè)結(jié)果Table 3 Detection results of BDD100K dataset

表4 CQTransport數(shù)據(jù)集檢測(cè)結(jié)果Table 4 Detection results of CQTransport dataset
為了進(jìn)一步說明改進(jìn)算法對(duì)數(shù)據(jù)集中各類目標(biāo)提升程度,選取BDD100K 數(shù)據(jù)集對(duì)目標(biāo)進(jìn)行定量和定性分析。其中BDD100K 數(shù)據(jù)集除公交車和卡車外,各類目標(biāo)均已中、小尺度目標(biāo)為主,不同改進(jìn)算法對(duì)各類目標(biāo)的平均精度如表5所示。

表5 改進(jìn)模型對(duì)各類目標(biāo)的平均精度Table 5 Average accuracy of improved model for various targets
通過對(duì)表3、表5數(shù)據(jù)對(duì)比分析可以得出,復(fù)雜道路場(chǎng)景中遮擋目標(biāo)、小目標(biāo)居多,訓(xùn)練時(shí)原圖像中的這些目標(biāo)(主要是交通燈和交通標(biāo)識(shí))經(jīng)過尺寸縮放和特征提取后丟失了大量關(guān)鍵信息,是造成模型在復(fù)雜道路場(chǎng)景下檢測(cè)性能不佳的主要原因,其中引入IRFB-S 模塊和AFEF模塊對(duì)道路場(chǎng)景中交通標(biāo)識(shí),交通燈等目標(biāo)的檢測(cè)精度提升較大,但犧牲了一定的檢測(cè)實(shí)時(shí)性;融入CA注意力模塊和QFL損失函數(shù)在沒有任何損耗的前提下分別提升了0.3%、0.2%;采用4 個(gè)檢測(cè)分支能夠大幅度提升道路場(chǎng)景中的小目標(biāo)檢測(cè)精度,但增加了模型的復(fù)雜度。
為驗(yàn)證改進(jìn)模型在復(fù)雜的道路場(chǎng)景下的檢測(cè)魯棒性和泛化性,選取含有大量遮擋、陰影等因素的Udacity數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)驗(yàn)證,經(jīng)過300 輪訓(xùn)練后,模型趨于穩(wěn)定,在驗(yàn)證集上得到訓(xùn)練結(jié)果如表6所示。

表6 改進(jìn)模型魯棒性實(shí)驗(yàn)結(jié)果Table 6 Experimental results of improved model robustness
為進(jìn)一步驗(yàn)證改進(jìn)的算法能否能泛化到基本目標(biāo)檢測(cè)場(chǎng)景中,去掉BDD100K 數(shù)據(jù)集中對(duì)檢測(cè)影響較大的小目標(biāo),采用BDD100K 數(shù)據(jù)集(6 類)和VOC 數(shù)據(jù)集進(jìn)行驗(yàn)證,經(jīng)過300 輪訓(xùn)練后模型趨于穩(wěn)定,驗(yàn)證結(jié)果如表7、表8所示。

表7 BDD100K數(shù)據(jù)集實(shí)驗(yàn)結(jié)果Table 7 Experimental results of BDD100K dataset

表8 VOC數(shù)據(jù)集實(shí)驗(yàn)結(jié)果Table 8 Experimental results of VOC dataset
由表6~表8數(shù)據(jù)分析可知,由于改進(jìn)算法主要針對(duì)復(fù)雜道路場(chǎng)景的遮擋目標(biāo)、小尺度目標(biāo)進(jìn)行改進(jìn),雖然能泛化到基本的檢測(cè)場(chǎng)景中,但檢測(cè)性能提升并不是很大。相比YOLOv5-s算法,在不同的復(fù)雜道路場(chǎng)景數(shù)據(jù)集上,改進(jìn)策略都能有效提升模型的檢測(cè)精度,證明了改進(jìn)模型具有較強(qiáng)的魯棒性和泛化性。
為了進(jìn)一步證明改進(jìn)的YOLOv5-s算法的優(yōu)越性,將現(xiàn)階段性能表現(xiàn)較好的Faster R-CNN、Cascade R-CNN、SSD、CenterNet、YOLOv3、FCOS、YOLOv4、YOLOv5-s、YOLOv5-m等9種算法與改進(jìn)的算法在BDD100K數(shù)據(jù)集(10-Class)上進(jìn)行實(shí)驗(yàn)對(duì)比,以檢測(cè)精度和速度作為評(píng)價(jià)的指標(biāo),對(duì)比實(shí)驗(yàn)結(jié)果如表9所示。

表9 不同算法在BDD100K數(shù)據(jù)集性能對(duì)比Table 9 Performance comparison of different algorithms in BDD100K dataset
對(duì)比表7不同算法模型在BDD100K數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果,改進(jìn)的YOLOv5算法相較于其他主流模型有著更高的檢測(cè)精度及檢測(cè)速度,相較于YOLOv5-s、YOLOv5-m算法,雖然檢測(cè)速度不及它們,卻擁有更高的檢測(cè)精度。在不影響模型實(shí)時(shí)檢測(cè)性能的前提下,整體表現(xiàn)較為突出,較好實(shí)現(xiàn)了復(fù)雜道路場(chǎng)景下的目標(biāo)檢測(cè),也證明了改進(jìn)的YOLOv5算法的優(yōu)越性,具有實(shí)際的應(yīng)用價(jià)值。
為了更加直觀地評(píng)價(jià)改進(jìn)算法的優(yōu)越性,在BDD100K數(shù)據(jù)集和CQTransport數(shù)據(jù)集展示出模型改進(jìn)前后的可視化結(jié)果,如圖7所示。

圖7 不同數(shù)據(jù)集可視化結(jié)果Fig.7 Visualization results of different datasets
通過對(duì)兩組可視化結(jié)果對(duì)比分析后,不難發(fā)現(xiàn),復(fù)雜道路場(chǎng)景下待檢測(cè)目標(biāo)存在大量遮擋,且目標(biāo)尺度較小,原始YOLOv5s 算法容易出現(xiàn)誤檢、漏檢的問題,另外光線的變暗提升了算法的檢測(cè)難度,而本文改進(jìn)的YOLOv5s算法能夠更好地識(shí)別出復(fù)雜道路場(chǎng)景下的遮擋目標(biāo)及小尺度目標(biāo),解決誤檢和漏檢的問題,進(jìn)而提升算法整體的檢測(cè)精度。
針對(duì)復(fù)雜道路場(chǎng)景下密集遮擋目標(biāo)和小尺度目標(biāo)檢測(cè)精度低,易出現(xiàn)誤檢和漏檢的問題,提出了一種基于自適應(yīng)特征融合的復(fù)雜道路場(chǎng)景目標(biāo)檢測(cè)算法。以YOLOv5s 算法為基礎(chǔ)框架,首先引入特征融合因子改進(jìn)相鄰尺度融合策略,增加各層有效樣本,提升中小尺度目標(biāo)的學(xué)習(xí)能力;其次提出了一種改進(jìn)的感受野模塊,根據(jù)不同尺度目標(biāo)自動(dòng)選取合適的感受野,提取更多的目標(biāo)特征信息;然后增加一層更小目標(biāo)的檢測(cè)層,進(jìn)一步提取小尺度目標(biāo)的特征信息;最后引入CA注意力機(jī)制及Quality Focal Loss 損失函數(shù),提升模型對(duì)密集遮擋目標(biāo),小尺度目標(biāo)的檢測(cè)精度。基于多個(gè)數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果表明,所提方法在保持算法檢測(cè)速度的同時(shí)獲得了更高精度,能在一定程度解決遮擋目標(biāo),小尺度目標(biāo)誤檢和漏檢的問題,相比其他主流目標(biāo)檢測(cè)模型,本文改進(jìn)算法有更高的檢測(cè)精度和檢測(cè)速度,更適用于復(fù)雜道路場(chǎng)景的目標(biāo)檢測(cè)。在未來的研究工作將進(jìn)一步保持或提升模型的檢測(cè)精度的同時(shí),對(duì)模型進(jìn)行輕量化改進(jìn),便于進(jìn)行移動(dòng)端的部署。