康帥,章堅(jiān)武,朱尊杰,童國(guó)鋒
(1.杭州電子科技大學(xué),浙江 杭州 310018;2.紹興供電公司柯橋供電分公司,浙江 紹興 330600)
行人檢測(cè)是近年來(lái)計(jì)算機(jī)視覺(jué)領(lǐng)域的研究熱點(diǎn),同時(shí)也是目標(biāo)檢測(cè)領(lǐng)域中的難點(diǎn)。其目的是識(shí)別和定位圖像中存在的行人,在許多領(lǐng)域中都有廣泛的應(yīng)用[1]。交通安全方面,無(wú)人駕駛汽車(chē)通過(guò)提前檢測(cè)到行人及時(shí)避讓來(lái)避免交通事故的發(fā)生;安防保護(hù)方面,通過(guò)行人檢測(cè)來(lái)防止可疑人員進(jìn)入;公共場(chǎng)所管理方面,通過(guò)行人檢測(cè)統(tǒng)計(jì)人流量數(shù)據(jù),優(yōu)化人力物力等資源的分配[2]。
傳統(tǒng)檢測(cè)方法利用的大部分特征都是通過(guò)手工設(shè)計(jì)的。Viola和 Jones[3]在 2001年采用Haar+AdaBoost的人臉檢測(cè)框架進(jìn)行行人檢測(cè)。Dalal和 Triggs[4]在2005年提出了 HOG+SVM 的框架來(lái)檢測(cè)行人。隨后研究者將局部二值模式特征與方向梯度直方圖(histogram of oriented gradient,HOG)相結(jié)合,采用隨機(jī)森林作分類(lèi),構(gòu)建了能夠處理部分遮擋問(wèn)題的行人檢測(cè)模型[5]。2014年有學(xué)者結(jié)合了積分直方圖、梯度直方圖和Haar-like等的特征,將聚合通道特征[6]用于行人檢測(cè)。雖然上述傳統(tǒng)的檢測(cè)方法對(duì)行人檢測(cè)都有了不同程度的改進(jìn),但是檢測(cè)效果的好壞取決于設(shè)計(jì)者的先驗(yàn)知識(shí),并沒(méi)有很好地利用大數(shù)據(jù)的優(yōu)勢(shì),對(duì)于復(fù)雜場(chǎng)景下行人目標(biāo)多樣性變化的情況算法魯棒性較差。
隨著深度學(xué)習(xí)的發(fā)展,越來(lái)越多的研究者開(kāi)始使用深度學(xué)習(xí)進(jìn)行目標(biāo)檢測(cè)。基于深度學(xué)習(xí)的檢測(cè)方法比傳統(tǒng)方法的檢測(cè)性能更好,可以自主地從訓(xùn)練的數(shù)據(jù)集中學(xué)習(xí)不同層次的特征。該方法主要可以分成兩類(lèi):第一類(lèi)是基于候選區(qū)域的方法,代表性的有2014年提出的基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(R-CNN)[7]目標(biāo)檢測(cè)框架,以及在此基礎(chǔ)上改進(jìn)的快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Fast R-CNN)[8]、更快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster R-CNN)[9]。基于候選區(qū)域的檢測(cè)方法雖然準(zhǔn)確率有所提高,但是檢測(cè)速度慢,很難達(dá)到實(shí)時(shí)性的要求。第二類(lèi)是基于回歸的方法,如YOLO[10]、RetinaNet[11]、SSD[12]等方法,這類(lèi)方法不再使用區(qū)域候選網(wǎng)絡(luò),而將檢測(cè)轉(zhuǎn)化為回歸問(wèn)題,提高了網(wǎng)絡(luò)的檢測(cè)速度,但是沒(méi)有候選區(qū)域方法的檢測(cè)效果好。YOLOv4作為YOLO系列算法中較新的模型,在許多方面進(jìn)行了優(yōu)化,實(shí)現(xiàn)了速度與精度的最佳平衡[13]。為了使YOLOv4算法更適用于特定目標(biāo)的檢測(cè),研究人員往往對(duì)通用的目標(biāo)檢測(cè)算法進(jìn)行改進(jìn)。李彬等[14]針對(duì)航空發(fā)動(dòng)機(jī)部件表面特征不明顯的問(wèn)題,巧妙增加小卷積層來(lái)改進(jìn)YOLOv4算法,提高了網(wǎng)絡(luò)對(duì)部件表面缺陷檢測(cè)的精度。Lee等[15]提出了一種兩階段時(shí)尚服裝檢測(cè)方法(YOLOv4 two-phase detection,YOLOv4-TPD)對(duì)服裝圖像進(jìn)行檢測(cè),效果優(yōu)于原始網(wǎng)絡(luò)模型。Wu等[16]為使采摘機(jī)器人能夠在復(fù)雜背景下快速準(zhǔn)確地檢測(cè)蘋(píng)果,從數(shù)據(jù)增強(qiáng)和YOLOv4骨干網(wǎng)兩方面進(jìn)行改進(jìn),在降低網(wǎng)絡(luò)計(jì)算復(fù)雜度的同時(shí)提高了檢測(cè)性能。Fu等[17]針對(duì)自建海洋目標(biāo)數(shù)據(jù)集檢測(cè)效果差的問(wèn)題,在YOLOv4模型中加入卷積注意力模塊,對(duì)海洋小目標(biāo)、多目標(biāo)有了更好的檢測(cè)效果。本文檢測(cè)的目標(biāo)是行人,主要針對(duì)現(xiàn)實(shí)復(fù)雜視覺(jué)場(chǎng)景中檢測(cè)精度不高、行人漏檢嚴(yán)重的問(wèn)題,對(duì)原始YOLOv4[18]算法做了改進(jìn)。
現(xiàn)實(shí)場(chǎng)景中行人檢測(cè)的難點(diǎn):復(fù)雜的光照情況,過(guò)暗或者過(guò)曝導(dǎo)致無(wú)法檢測(cè)到行人;不同的天氣情況(如暴雨、霧霾等)影響視線,對(duì)檢測(cè)存在干擾;擁擠場(chǎng)景中,行人存在不同程度的遮擋,導(dǎo)致漏檢嚴(yán)重;行人姿態(tài)多變,大小尺寸差別大;圖像模糊、分辨率低等使檢測(cè)不準(zhǔn)確。
為了提高復(fù)雜視覺(jué)場(chǎng)景下行人的檢測(cè)性能,本文采用改進(jìn)的YOLOv4算法進(jìn)行行人檢測(cè)的研究。首先,收集不同復(fù)雜環(huán)境情況下的圖片來(lái)構(gòu)建行人數(shù)據(jù)集(包括復(fù)雜光照、不同天氣、不同程度遮擋、不同視角、低分辨率和模糊圖片等);其次,采用先驗(yàn)框和聚類(lèi)中心的交并比(intersection over union,IOU)作為K-means[19]算法參數(shù),對(duì)不同尺度的錨框重新聚類(lèi),獲得先驗(yàn)框;再次,在原來(lái)的CSPDarkNet53特征提取網(wǎng)絡(luò)中加入混合空洞卷積(hybrid dilated convolution,HDC)[20]模塊,提高行人檢測(cè)的準(zhǔn)確度。同時(shí)提出空間鋸齒空洞卷積(spatial jagged dilated convolution,SJDC)結(jié)構(gòu),代替原算法中的空間金字塔池化(spatial pyramid pooling,SPP)[21]結(jié)構(gòu),降低復(fù)雜視覺(jué)場(chǎng)景下行人檢測(cè)的漏檢率;最后,使用測(cè)試集檢測(cè)本文中兩種不同改進(jìn)后算法的性能,并與參考文獻(xiàn)[14]改進(jìn)的YOLOv4算法、原YOLOv4算法以及常用的YOLOv3[22]算法進(jìn)行對(duì)比。
YOLOv4算法在之前的算法基礎(chǔ)上增加了許多優(yōu)化方法,包括骨干網(wǎng)絡(luò)、激活函數(shù)、損失函數(shù)、網(wǎng)絡(luò)訓(xùn)練、數(shù)據(jù)處理等方面的優(yōu)化。YOLOv4的網(wǎng)絡(luò)結(jié)構(gòu)主要有 3個(gè)部分:骨干網(wǎng)絡(luò)(CSPDarkNet53)、頸部(neck)、頭部(head)[18]。
· YOLOv4骨干網(wǎng)絡(luò)采用的 CSPDarkNet53是 DarkNet53的改進(jìn)版本,不僅解決了梯度消失的問(wèn)題,增強(qiáng)了模型的學(xué)習(xí)能力,還減少了網(wǎng)絡(luò)參數(shù),降低了模型訓(xùn)練的代價(jià)。CSPDarkNet53中使用的激活函數(shù)是Mish激活函數(shù),與傳統(tǒng)的負(fù)值硬零邊界的ReLU相比,Mish函數(shù)使網(wǎng)絡(luò)具有更好的泛化性和準(zhǔn)確性。
· 頸部采用路徑聚合網(wǎng)絡(luò) PANet[23],相比于YOLOv3中的特征金字塔網(wǎng)絡(luò)FPN增加了一個(gè)自底向上的特征金字塔,從主干網(wǎng)絡(luò)的不同層聚合不同的特征,增強(qiáng)網(wǎng)絡(luò)的特征提取能力。同時(shí)引入SPP作為附加模塊,增大了網(wǎng)絡(luò)的感受野,進(jìn)一步將重要的上下文特征信息提取出來(lái)。
· YOLOv4網(wǎng)絡(luò)的頭部還是沿用YOLOv3。損失函數(shù)方面,不再使用YOLOv3的均方誤差(mean square error,MSE)作為回歸框預(yù)測(cè)誤差,而是使用 CIOU(complete intersection over union)誤差,具體如式(1)~式(3):

其中, I OU(a,b)是真實(shí)框和預(yù)測(cè)框的交并比,ρ2(actr,bctr)是真實(shí)框和預(yù)測(cè)框中心點(diǎn)的歐氏距離,d是包含真實(shí)框和預(yù)測(cè)框的最小框的對(duì)角線距離。wgt、w、hgt、h分別是真實(shí)框和預(yù)測(cè)框的寬、高。
對(duì)于網(wǎng)絡(luò)訓(xùn)練的正則化方式,采用Dropblock的方式線性增加特征圖部分區(qū)域清零的比率,效果比傳統(tǒng)的 Dropout更好。對(duì)于數(shù)據(jù)集小、中、大目標(biāo)數(shù)目不均衡的問(wèn)題,YOLOv4引入了Mosaci數(shù)據(jù)增強(qiáng)的方式,這種方式隨機(jī)使用4張圖片進(jìn)行縮放、拼接,極大地豐富了數(shù)據(jù)集。
與原YOLOv4網(wǎng)絡(luò)不同的是,本文在主干網(wǎng)CSPDarkNet53中加入HDC模塊,提高了網(wǎng)絡(luò)的特征提取能力。同時(shí),提出 SJDC結(jié)構(gòu)代替 SPP結(jié)構(gòu),獲取更多的細(xì)節(jié)特征。改進(jìn)后的 YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。

圖1 改進(jìn)后的YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)
YOLOv4特征提取網(wǎng)絡(luò)在檢測(cè)時(shí),淺層的網(wǎng)絡(luò)特征為模型提供目標(biāo)的位置信息,深層的網(wǎng)絡(luò)特征為模型提供語(yǔ)義信息。淺層特征包含更多的位置信息,但感受野較深層特征更小一些。傳統(tǒng)的網(wǎng)絡(luò)中一般采用池化來(lái)增加感受野。但是采用池化的方式存在一個(gè)很大的缺點(diǎn):在增加感受野的同時(shí),往往會(huì)降低特征圖的分辨率。
為了更好地提升模型的檢測(cè)能力,引入了空洞卷積(dilated convolution,DC)[24],通過(guò)空洞卷積來(lái)增大淺層特征圖的感受野,捕獲更多尺度的上下文信息。空洞卷積與普通卷積的不同點(diǎn)在于卷積核中填充了0。根據(jù)空洞率的不同,填充0的個(gè)數(shù)也不同,感受野也不同,從而獲得更多不同尺度的特征信息。空洞卷積的感受野與卷積核的計(jì)算方法為:

其中,xn是空洞卷積的卷積核大小,xk是原卷積核大小,Dr為空洞率。

其中,ym為第m層每個(gè)點(diǎn)的感受野,ym-1是第m-1層每個(gè)點(diǎn)的感受野,xm是第m層卷積的卷積核大小,si是第i層卷積的步長(zhǎng)。
因?yàn)榭斩淳矸e有著類(lèi)似棋盤(pán)的計(jì)算方式,單加入一個(gè)尺度的空洞卷積會(huì)使局部的信息丟失,并且遠(yuǎn)距離得到的信息之間沒(méi)有關(guān)聯(lián)性,如圖2所示。因此本文在CSPDarkNet53中引入HDC模塊,將不同空洞率的空洞卷積進(jìn)行融合。在不增加訓(xùn)練參數(shù)以及損失特征圖分辨率的前提下,增大特征層的感受野,使特征提取網(wǎng)絡(luò)能夠獲得更豐富的特征信息,增強(qiáng)對(duì)行人目標(biāo)的檢測(cè)效果。本文設(shè)計(jì)的HDC模塊如圖3所示。

圖2 空洞率為2的空洞卷積

圖3 HDC模塊
當(dāng)空洞系數(shù)為Dr時(shí),即在卷積核中加入(Dr-1)個(gè)空洞。特征圖輸入空洞卷積模塊中,采用3×3的卷積核,當(dāng)Dr=2時(shí),感受野變?yōu)?×7。再進(jìn)行Dr=3的空洞卷積將感受野變?yōu)?9×19。不同層的特征進(jìn)行直接融合,以獲得更加廣泛的圖像特征,增強(qiáng)特征提取網(wǎng)絡(luò)對(duì)于行人目標(biāo)的特征提取能力。改進(jìn)后的骨干網(wǎng)如圖4所示。

圖4 引入HDC后的骨干網(wǎng)結(jié)構(gòu)
YOLOv4中從主干網(wǎng) CSPDarkNet53輸出的特征層經(jīng)過(guò)3次卷積后進(jìn)入SPP結(jié)構(gòu)。在SPP結(jié)構(gòu)中利用4個(gè)不同尺度的最大池化1×1、5×5、9×9、13×13進(jìn)行處理,增加感受野,分離出顯著的上下文特征。但是這樣會(huì)損失掉一些細(xì)節(jié)特征信息,使模型的漏檢率過(guò)高,漏檢的行人目標(biāo)過(guò)多。SPP的結(jié)構(gòu)如圖5所示。

圖5 SPP的結(jié)構(gòu)
本文提出SJDC結(jié)構(gòu)代替SPP結(jié)構(gòu),在保持特征圖大小不變的情況下,使網(wǎng)絡(luò)能獲得更多的特征信息提高目標(biāo)檢測(cè)的效果。SJDC網(wǎng)絡(luò)的設(shè)計(jì)思想類(lèi)似SPP,區(qū)別在于SJDC將輸入的特征層分為4路,其中3個(gè)分別進(jìn)行系數(shù)為2、5、7的鋸齒狀的空洞卷積變換,獲得不同尺度的特征信息。
同時(shí)采用Mish作為激活函數(shù),表達(dá)式見(jiàn)式(6),這種自正則的非單調(diào)性平滑的激活函數(shù)可以使模型得到更好的準(zhǔn)確性和泛化性。

考慮到如果直接將得到的多尺度信息進(jìn)行融合會(huì)有許多重復(fù)的特征信息,增大了計(jì)算的成本,因此本文提出的 SJDC結(jié)構(gòu)在信息融合之前進(jìn)行了一個(gè)冗余信息剔除的操作,剔除后進(jìn)行融合得到特征的提取結(jié)果。這種網(wǎng)絡(luò)結(jié)構(gòu)的變化有效地降低了網(wǎng)絡(luò)的漏檢率,使復(fù)雜視覺(jué)場(chǎng)景下漏檢的行人人數(shù)大大減少。SJDC結(jié)構(gòu)如圖6所示。

圖6 SJDC結(jié)構(gòu)
考慮到初始的先驗(yàn)框是在VOC數(shù)據(jù)集的標(biāo)注框上聚類(lèi)得到的,該數(shù)據(jù)集的物體種類(lèi)有20種,而且物體長(zhǎng)與寬的比例差別很大,與本文使用的行人數(shù)據(jù)集中的實(shí)際邊界框存在很大的差別。如果直接使用YOLOv4的先驗(yàn)框會(huì)造成很大的漏檢率。因此,本文采用K-means聚類(lèi)算法重新對(duì)訓(xùn)練集中標(biāo)注的行人尺寸進(jìn)行聚類(lèi)分析,獲取最優(yōu)的聚類(lèi)結(jié)果。本文自建的數(shù)據(jù)集中行人的尺寸大小差距大,使用框與框中心點(diǎn)的歐氏距離作為候選框和真實(shí)框之間的誤差會(huì)影響大尺寸標(biāo)簽的聚類(lèi)結(jié)果,所以采用先驗(yàn)框和聚類(lèi)中心的交并比IOU作為K-means聚類(lèi)的參數(shù),反映真實(shí)框和候選框之間的差距。計(jì)算聚類(lèi)距離的公式如下:

其中,box為樣本的先驗(yàn)框,center為行人類(lèi)的聚類(lèi)中心[25]。經(jīng)過(guò)實(shí)驗(yàn),得到本文改進(jìn)的YOLOv4算法候選框的初始大小為[11 29, 16 47, 24 62, 31 97, 52 119, 66 204, 109 249, 184 316, 309 381]。將寬和高歸一化到 0~1,得到聚類(lèi)結(jié)果如圖7所示。

圖7 聚類(lèi)結(jié)果分布
目前目標(biāo)檢測(cè)常用的是 VOC2007和VOC2012[26]數(shù)據(jù)集,其中包含20個(gè)類(lèi)別,從中挑選出包含行人目標(biāo)的圖片。為了更符合真實(shí)復(fù)雜場(chǎng)景,從 USC Pedestrian Detection Test Set、Caltech Pedestrian Detection Benchmark[27]以及 CUHK Occusion Pedstrian[28]3個(gè)公開(kāi)行人數(shù)據(jù)集中挑選出部分圖片加入本實(shí)驗(yàn)數(shù)據(jù)集中進(jìn)行擴(kuò)充。USC Pedestrian Detection Test Set行人數(shù)據(jù)庫(kù)包括各種視角的行人、行人之間相互遮擋以及無(wú)相互遮擋的情況。Caltech Pedestrian Detection Benchmark行人數(shù)據(jù)庫(kù)是車(chē)載攝像頭視角下的數(shù)據(jù)集,不僅存在不同狀況的光照變化,同時(shí)行人之間也有不同程度的遮擋。CUHK Occusion Pedstrian數(shù)據(jù)集可用于擁擠場(chǎng)景中的行人目標(biāo)檢測(cè)。對(duì)數(shù)據(jù)集進(jìn)行篩選,構(gòu)建出本實(shí)驗(yàn)所需的行人數(shù)據(jù)集,共5 329張。由于公開(kāi)數(shù)據(jù)集中的標(biāo)注存在漏標(biāo)和標(biāo)注不符合預(yù)期的情況,因此,使用labelimge工具對(duì)數(shù)據(jù)集重新進(jìn)行標(biāo)注獲得新的行人數(shù)據(jù)集。
本文所選的數(shù)據(jù)集中考慮了視角、遮擋、光照,但是并沒(méi)有將復(fù)雜的天氣因素考慮進(jìn)去,如霧霾、暴雨等,這些因素也會(huì)影響模型的檢測(cè)效果。為了更好地適應(yīng)真實(shí)場(chǎng)景,本文從數(shù)據(jù)集中隨機(jī)挑選出500張圖片進(jìn)行加霧、500張圖片進(jìn)行加雨實(shí)現(xiàn)數(shù)據(jù)增強(qiáng)。圖8(a)、圖8(c)是未處理的圖片,圖8(b)是加霧處理后的圖片,圖8(d)是加雨處理后的圖片。將處理過(guò)后的圖片加入數(shù)據(jù)集中形成包含6 329張行人圖片的新數(shù)據(jù)集。行人數(shù)據(jù)集中各種情況分布如圖9所示。將該數(shù)據(jù)集以8:2的比例劃分,其中訓(xùn)練集包括5 063張圖片,測(cè)試集包括1 266張圖片。

圖8 加霧加雨處理圖片對(duì)比

圖9 自建行人數(shù)據(jù)集中復(fù)雜視覺(jué)場(chǎng)景分布情況
本文在Ubuntu16.04操作系統(tǒng)進(jìn)行實(shí)驗(yàn),計(jì)算機(jī)內(nèi)存為24 GB、顯卡為T(mén)AITAN,采取從頭開(kāi)始訓(xùn)練的方式。每個(gè)網(wǎng)絡(luò)訓(xùn)練 150 epochs,輸入分辨率為608 dpi×608 dpi,根據(jù)網(wǎng)絡(luò)參數(shù)和GPU內(nèi)存大小調(diào)整batch_size為8。為防止過(guò)擬合,采用余弦退火衰減來(lái)實(shí)現(xiàn)訓(xùn)練過(guò)程中學(xué)習(xí)率的變化。將原始的學(xué)習(xí)率設(shè)置為0.000 1,學(xué)習(xí)率的最高值設(shè)為0.001,當(dāng)學(xué)習(xí)率線性增長(zhǎng)到最高值后保持一段時(shí)間不變,然后將模擬余弦函數(shù)的下降趨勢(shì)進(jìn)行衰減。余弦退火的衰減式如式(8):

其中,λmax和λmin表示學(xué)習(xí)率的最大值和最小值,Tcur表示當(dāng)前執(zhí)行了多少 epoch,Ti表示模型訓(xùn)練的總epoch數(shù)目。
本文采用對(duì)數(shù)平均漏檢率(log-average miss rate,LAMR)、平均精度 A Pperson( average precision)對(duì)目標(biāo)檢測(cè)網(wǎng)絡(luò)進(jìn)行比較。
(1)對(duì)數(shù)平均漏檢率LAMR

LAMR可以表明數(shù)據(jù)集中測(cè)試集的漏檢情況。LAMR越大,漏檢行人數(shù)量越多,LAMR越小,漏檢行人數(shù)量越少。
(2)平均精度 A Pperson

用 A Pperson來(lái)表示行人類(lèi)檢測(cè)的平均精度。N( TP)person表示正確檢測(cè)出行人的數(shù)量,N(Object)person表示該圖片中實(shí)際的行人數(shù)量,N(Images)person表示測(cè)試圖片中含有的行人數(shù)量。APperson越大,模型的誤檢和漏檢就越少。
5.2.1 HDC-YOLOv4
針對(duì)復(fù)雜視覺(jué)場(chǎng)景下,行人檢測(cè)中模型檢測(cè)出的目標(biāo)準(zhǔn)確度不高的問(wèn)題,本文在骨干網(wǎng)中加入HDC網(wǎng)絡(luò)提高目標(biāo)置信度。使用一階目標(biāo)檢測(cè)領(lǐng)域常用的網(wǎng)絡(luò)YOLOv3、YOLOv4原網(wǎng)絡(luò)與本文加入HDC之后的YOLOv4進(jìn)行對(duì)比。分別設(shè)置閾值IOU為0.5、0.6、0.7、0.8,得到相應(yīng)的 A Pperson值,見(jiàn)表1。相比于原來(lái)的YOLOv4模型,改進(jìn)HDC-YOLOv4在閾值為0.5、0.6、0.7、0.8時(shí), A Pperson值分別提高了2.07%、2.50%、2.98%、2.44%。在不同閾值的情況下,相比YOLOv3以及原來(lái)的網(wǎng)絡(luò)都有了提高。主要原因是加入 HDC后更有利于行人特征的提取,能夠提高該算法對(duì)復(fù)雜場(chǎng)景下行人特征的識(shí)別度。

表1 3種網(wǎng)絡(luò)模型在不同閾值下的APperson對(duì)比
為驗(yàn)證其有效性,將IOU設(shè)置為0.5,從測(cè)試集中選取2個(gè)特殊情況下的圖片進(jìn)行測(cè)試,圖10和圖11是3個(gè)檢測(cè)網(wǎng)絡(luò)的對(duì)比。商場(chǎng)服裝店前的模糊圖片檢測(cè)效果對(duì)比如圖10所示,圖片比較模糊且行人與店內(nèi)懸掛的衣服有很大的相似性,導(dǎo)致YOLOv3和YOLOv4都產(chǎn)生了誤檢,本文改進(jìn)的 HDC-YOLOv4在復(fù)雜環(huán)境下精確地檢測(cè)出了右側(cè)的2個(gè)行人,并且置信度較高。雨天圖片過(guò)暗檢測(cè)效果對(duì)比如圖11所示,圖片光照過(guò)暗并且做了模擬下雨的圖像增強(qiáng)操作,對(duì)視線產(chǎn)生了干擾,行人幾乎與背景融為一體很難被識(shí)別檢測(cè)到,YOLOv3和YOLOv4均無(wú)法檢測(cè)出該復(fù)雜場(chǎng)景下的行人,改進(jìn)的HDC-YOLOv4檢測(cè)出了1個(gè)行人,但距離較遠(yuǎn)、目標(biāo)更小、更模糊的也未能檢測(cè)出。因此,本文改進(jìn)的算法仍然有提升的空間。總體看來(lái),在一些特殊復(fù)雜場(chǎng)景下,加入HDC的YOLOv4網(wǎng)絡(luò)對(duì)行人檢測(cè)的準(zhǔn)確度都有很大的提高。

圖10 服裝店前的模糊圖片檢測(cè)效果對(duì)比

圖11 雨天圖片過(guò)暗檢測(cè)效果對(duì)比
5.2.2 SJDC-YOLOv4
除了檢測(cè)準(zhǔn)確度不高的問(wèn)題以外,復(fù)雜視覺(jué)場(chǎng)景下行人檢測(cè)還存在嚴(yán)重的漏檢問(wèn)題,本文提出SJDC結(jié)構(gòu)代替SPP結(jié)構(gòu)來(lái)解決行人的漏檢問(wèn)題。在本文制作的數(shù)據(jù)集上使用 YOLOv3、YOLOv4和改進(jìn)SJDC-YOLOv4模型進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果見(jiàn)表2。結(jié)果表明,對(duì)于復(fù)雜情況下的行人檢測(cè),加入SJDC結(jié)構(gòu)改進(jìn)后的SJDC-YOLOv4比YOLOv3、YOLOv4兩個(gè)模型的LAMR都低,相比于YOLOv4原來(lái)網(wǎng)絡(luò)LAMR降低了9.7%,行人目標(biāo)的漏檢情況有了很大的改善。

表2 3種網(wǎng)絡(luò)在性能檢測(cè)漏檢情況上的對(duì)比
從數(shù)據(jù)集中分別選取行人存在嚴(yán)重遮擋和光照嚴(yán)重不足的特殊場(chǎng)景的圖片,分別采用YOLOv3、YOLOv4和SJDC-YOLOv4模型進(jìn)行檢測(cè),結(jié)果如圖12和圖13所示。圖12中行人之間存在嚴(yán)重遮擋并且服裝非常相似,存在“雙重錯(cuò)覺(jué)”效應(yīng),容易產(chǎn)生漏檢。YOLOv3只檢測(cè)到了8人(漏檢4人),YOLOv4檢測(cè)到了9人(漏檢3人),SJDC-YOLOv4幾乎全部檢測(cè)出來(lái)(漏檢1人)。從右邊數(shù)第2、4、6個(gè)行人由于衣服顏色與遮擋者的完全一樣,只露出很小部分的頭部,YOLOv3和 YOLOv4對(duì)這種情況存在嚴(yán)重的漏檢,改進(jìn)SJDC-YOLOv4檢測(cè)出了其中的2人。光照不足情況檢測(cè)效果對(duì)比如圖13所示,圖13中右側(cè)的陰影區(qū)中光線較暗,存在建筑物的遮擋,其中一個(gè)行人距離較遠(yuǎn),尺寸很小并且?guī)缀跖c背景融為一體很難被檢測(cè)到。YOLOv3只檢測(cè)到最左邊的行人,YOLOv4檢測(cè)到了 2個(gè)行人。SJDC-YOLOv4不僅能夠檢測(cè)到距離較近的兩人,而且還檢測(cè)到了圖中與背景幾乎融為一體的小尺寸行人。從圖13中的結(jié)果可以看出,SJDC-YOLOv4在復(fù)雜情況下,能夠有效減少網(wǎng)絡(luò)的漏檢情況。

圖12 行人重疊遮擋檢測(cè)效果對(duì)比

圖13 光照不足情況檢測(cè)效果對(duì)比
5.2.3 改進(jìn)的YOLOv4算法與其他算法比較
本文針對(duì)復(fù)雜視覺(jué)場(chǎng)景下行人檢測(cè)的準(zhǔn)確度不高、漏檢嚴(yán)重2個(gè)問(wèn)題進(jìn)行改進(jìn),在YOLOv4主干網(wǎng) CSPDarkNet53中加入 DHC,以及提出SJDC結(jié)構(gòu)來(lái)代替SPP提升模型的檢測(cè)性能。將本文改進(jìn)的檢測(cè)模型與原YOLOv4模型、參考文獻(xiàn)[14]改進(jìn)的YOLOv4模型以及其他典型的一階檢測(cè)模型YOLOv3網(wǎng)絡(luò)進(jìn)行對(duì)比,使用自建行人數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),具體結(jié)果見(jiàn)表3。從測(cè)試集中選取行人存在嚴(yán)重遮擋的圖片并模擬霧霾天氣進(jìn)行加霧處理,將處理后的圖片分別采用 YOLOv3、YOLOv4、參考文獻(xiàn)[14]改進(jìn)的 YOLOv4模型以及本文改進(jìn)后的YOLOv4模型進(jìn)行檢測(cè),結(jié)果如圖14~圖15所示。

圖14 霧霾天氣行人嚴(yán)重重疊檢測(cè)效果對(duì)比

圖15 模糊圖片下行人尺寸差距大且存在遮擋情況檢測(cè)效果對(duì)比
通過(guò)表3可知,在自建的行人數(shù)據(jù)集包含多種復(fù)雜環(huán)境的情況下,改進(jìn)后的YOLOv4模型比原 YOLOv4模型的 APperson的值高了 7.20%,LAMR降低了13.69%。與參考文獻(xiàn)[14]中改進(jìn)的YOLOv4算法比較APperson提高了6.08%,LAMR降低了10.64%。說(shuō)明本文的改進(jìn)措施可以有效地提高模型對(duì)復(fù)雜視覺(jué)場(chǎng)景下行人的檢測(cè)性能。

表3 4種網(wǎng)絡(luò)在復(fù)雜視覺(jué)場(chǎng)景下的行人檢測(cè)效果對(duì)比
在圖14中,首先,加霧處理對(duì)行人檢測(cè)造成了一定的困難;其次,圖片中的行人存在非常嚴(yán)重的遮擋,這種場(chǎng)景下很容易檢測(cè)不準(zhǔn)確,產(chǎn)生漏檢。從圖14可看出,本文改進(jìn)后的YOLOv4在檢測(cè)的準(zhǔn)確度和漏檢情況上的表現(xiàn)都明顯優(yōu)于其他3個(gè)網(wǎng)絡(luò)。圖15中行人尺寸大小差距大,遠(yuǎn)距離的行人目標(biāo)尺寸小且非常模糊,同時(shí)被前面的行人遮擋,在該場(chǎng)景下,改進(jìn)后的YOLOv4檢測(cè)出了全部的行人,并且準(zhǔn)確度較高。YOLOv3網(wǎng)絡(luò)存在漏檢,YOLOv4原網(wǎng)絡(luò)和參考文獻(xiàn)[14]中改進(jìn)的YOLOv4網(wǎng)絡(luò)雖然檢測(cè)到了全部的行人,但是檢測(cè)出的行人置信度沒(méi)有改進(jìn)后的YOLOv4高。
為驗(yàn)證改進(jìn)后的網(wǎng)絡(luò)對(duì)非復(fù)雜視覺(jué)場(chǎng)景的行人檢測(cè)是否有效,本文另外選取了2 000張非復(fù)雜場(chǎng)景下的行人圖片制作成數(shù)據(jù)集,并在YOLOv3、YOLOv4、參考文獻(xiàn)[14]改進(jìn)的YOLOv4模型以及本文改進(jìn)后的YOLOv4模型上重新訓(xùn)練并進(jìn)行實(shí)驗(yàn)對(duì)比,結(jié)果見(jiàn)表4。

表4 4種網(wǎng)絡(luò)在非復(fù)雜視覺(jué)場(chǎng)景下的行人檢測(cè)效果對(duì)比
由表4可知,在非復(fù)雜視覺(jué)場(chǎng)景下,本文改進(jìn)的YOLOv4檢測(cè)效果仍比其他3個(gè)網(wǎng)絡(luò)好,但是相較于復(fù)雜視覺(jué)場(chǎng)景下 APperson的提升和LAMR的降低沒(méi)有那么明顯,也更加說(shuō)明了本文改進(jìn)的網(wǎng)絡(luò)對(duì)復(fù)雜視覺(jué)場(chǎng)景行人檢測(cè)的有效性。
本文提出了一種基于改進(jìn)YOLOv4算法的復(fù)雜視覺(jué)場(chǎng)景行人檢測(cè)方法。使用先驗(yàn)框和聚類(lèi)中心的交并比作為K-means算法參數(shù)對(duì)行人數(shù)據(jù)進(jìn)行聚類(lèi)得到先驗(yàn)框,在主干網(wǎng)CSPDarkNet53中加入HDC結(jié)構(gòu),提高網(wǎng)絡(luò)對(duì)復(fù)雜視覺(jué)環(huán)境下行人特征的提取能力,增加模型檢測(cè)的準(zhǔn)確度。同時(shí),提出 SJDC網(wǎng)絡(luò)模塊,用來(lái)代替SPP結(jié)構(gòu),獲取更多的細(xì)節(jié)特征信息,降低模型漏檢率。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的方法在復(fù)雜環(huán)境下具有較好的檢測(cè)效果,行人的平均精度APperson達(dá)到了90.08%,LAMR相比原網(wǎng)絡(luò)降低了 13.69%,F(xiàn)PS為 25.84 f/s。改進(jìn)后的YOLOv4網(wǎng)絡(luò)在滿足實(shí)時(shí)條件的情況下,檢測(cè)準(zhǔn)確度有所提高,漏檢率大幅降低。