何 薇,陳宇拓
(中南林業(yè)科技大學 計算機與信息工程學院,湖南 長沙 410004)
景區(qū)中的行人高密度、小目標、易遮擋的特點尤為顯著,行人檢測作為計算機視覺領域的一個重要分支,對景區(qū)的安全管理有著重要的現(xiàn)實意義。目前基于深度學習的行人檢測算法在準確度和檢測速度方面都有明顯提升,但很多算法只是在單維度方面不斷深究,引入多種復雜模塊來提升檢測精度,很難兼顧算法模型復雜度以及檢測速度,同時在行人遮擋、行人小目標檢測等方面仍存在諸多挑戰(zhàn)。
針對行人檢測的現(xiàn)狀,目前主流的行人檢測算法主要分為兩類:單階段(One-stage)檢測算法[1]和兩階段(Two-stage)檢測算法[2]。One-stage檢測算法包括SSD[3]、YOLO[4]算法等。Huang等[5]提出一種基于改進的YOLOv5的微小物體檢測算法,將提取特征劃分為四種特征分類,以增強原始輸入圖像的特征。郭磊等[6]將通道注意力和空間注意力結合的CBAM[7]注意力模塊引入YOLOv5網(wǎng)絡中,并利用圖像增強算法對圖片進行預處理后進行迭代訓練,提高算法模型的魯棒性。此類算法主要通過回歸預測出目標邊界框,能夠以較高的速度和精度完成檢測。
Two-stage檢測算法包括Faster-RCNN[8]、Mask-RCNN[9]算法等。音松等[10]基于Mask R-CNN網(wǎng)絡的Mack分支中增加了CFPN模塊和CA[11]注意力模塊,降低了遮擋對于行人檢測精度的影響。此類算法發(fā)展較早,在檢測精度方面有一定優(yōu)勢,但是整個過程計算量大、檢測速度慢,很難滿足實時性需求。由于景區(qū)行人檢測的應用需要兼顧檢測速度和精度,因此,基于One-stage檢測算法中最新的YOLOv5算法模型,該文提出了YOLOv5-GSPE(GhostConv &SPPF &PrFPN &EIoU)綜合改進算法模型,主要解決如下幾個方面問題:
(1)將GhostConv[12]和改進后的SPPF模塊集成到主干網(wǎng)絡中,降低模型復雜度,增強提取的目標特征信息,降低行人遮擋及小目標的漏檢率。
(2)針對YOLOv5模型特征金字塔網(wǎng)絡FPN[13]結構忽略原始輸入特征融合的缺點,提出一種增強的特征金字塔網(wǎng)絡PrFPN結構,提升模型的檢測精度。
(3)基于YOLOv5模型中GIoU損失函數(shù)在預測框位于真實框內(nèi)部情況下不準確定位的問題,采用EIoU[14]損失函數(shù)代替GIoU,并引入正態(tài)分布對EIoU損失函數(shù)進行優(yōu)化計算,提升邊界框的回歸精度,進而改善遮擋及小目標行人檢測效果。
Redmon J等[15]提出了One-stage檢測算法YOLO,目前YOLO系列算法已更新至YOLOv5,YOLOv5有多種版本:YOLOv5s、YOLOv5l、YOLOv5m、YOLOv5x等。其中YOLOv5s是最小的算法模型,考慮到檢測類別的單一性,該文基于YOLOv5s算法模型提出YOLOv5-GSPE算法模型,其網(wǎng)絡結構如圖1所示。
圖1 YOLOv5-GSPE網(wǎng)絡結構
在主干網(wǎng)絡中使用GhostConv取代Conv作為卷積層,降低算法模型的復雜度,提高模型檢測速度;將SPPF模塊(見圖1中標注為①的區(qū)域)中max pooling操作改為空洞卷積(Dilated Conv),減少行人特征信息的丟失。提出一種增強的特征金字塔網(wǎng)絡PrFPN結構(見圖1中標注為②的區(qū)域),豐富多尺度特征融合。
YOLOv5-GSPE算法模型主要包括對主干網(wǎng)絡中的卷積層、SPPF模塊、特征金字塔網(wǎng)絡以及損失函數(shù)等。
2.1.1 卷積層優(yōu)化
YOLOv5主干網(wǎng)絡卷積層為常規(guī)卷積Conv,使用各個通道中的特征圖與多個卷積核進行運算。假設Input端輸入尺寸為w*s的圖像,Output端輸出尺寸為w'*s'的圖像;c和n分別是Input端和Output端的通道數(shù),則Conv的計算總量Q1如公式(1)所示。
Q1=w*h*c*n*w'*h'
(1)
GhostNet[12]提出的GhostConv將卷積流程主要分為常規(guī)卷積和Ghost卷積,如圖2所示。
圖2 GhostConv流程示意圖
常規(guī)卷積計算總量Q2見公式(2)。假設s(s>1)為Ym*w‘*h’通道產(chǎn)生的總映射數(shù),其中包含1次恒等變換(Identity)將Ym*w‘*h’映射成本征特征圖,以及s-1次單位映射運算Φij操作生成Ghost特征圖。Ghost特征圖與本征特征圖連接成n個通道的輸出特征圖,其計算總量Q3見公式(2)。
(2)
d*d為單位映射運算Φij操作的平均卷積核大小,與w*h具有相似大小,c為Input端輸入特征圖通道數(shù),遠大于s,即c>>s,因此,GhostConv的計算總量為Q2+Q3,通過公式(3)能近似計算出Conv的計算總量Q1是GhostConv計算總量的s倍,由s>1可知GhostConv具有更小的計算量。
(3)
綜上所述,GhostConv相比Conv減少了卷積過程的計算量,進而表明卷積過程中參數(shù)量的減少。因此,將GhostConv代替主干網(wǎng)絡中的Conv能夠有效降低算法模型復雜度。
2.1.2 SPPF模塊的改進
YOLOv5主干網(wǎng)絡中SPPF模塊如圖3(a),通過串行max pooling操作集合不同感受野的特征進行連接,雖然一定程度上增強了主干網(wǎng)絡的感受野,但max pooling操作不可避免地造成一定的特征信息丟失。因此,改進的SPPF模塊使用空洞卷積來代替max pooling操作,如圖3(b)。
(a)SPPF模塊 (b)改進的SPPF模塊
空洞卷積和池化操作都可以增強感受野,但池化操作增大感受野的同時不可避免地造成特征信息丟失??斩淳矸e可以盡量保留內(nèi)部數(shù)據(jù)結構和避免下采樣,增大感受野的同時不改變圖像輸出特征圖的分辨率,減少了特征信息丟失。通過控制不同的卷積核參數(shù)來設置空洞卷積速率,可以靈活地替換三個串行max pooling操作,豐富主干網(wǎng)絡提取的特征。改進的SPPF模塊降低行人特征信息丟失,進而增強主干網(wǎng)絡的特征提取,降低遮擋及小目標行人的漏檢率。
YOLOv5算法模型中特征金字塔網(wǎng)絡為PANet結構,PANet結構中同層相鄰連接方式導致輸出特征圖忽略了原始輸入特征的融合。如圖4所示,該文基于BiFPN[16]的啟發(fā),提出了增強的特征金字塔網(wǎng)絡PrFPN結構,在輸出特征圖(上采樣特征圖,如N3、N4、N5)中分別利用了同層的原始輸入特征圖(如C3、C4、C5)的特征融合,如圖中虛線所示。
PrFPN結構基每層的輸出特征圖將上采樣特征圖、下采樣特征圖(如B3、B4、B5)和原始輸入特征圖進行特征融合,豐富了特征融合多樣性,更好地利用原始輸出特征信息,增強小目標特征敏感度,提升算法模型檢測精度。
YOLOv5算法模型采用GIoU損失函數(shù),主要通過預測框A與真實框B的最小閉包區(qū)來計算損失函數(shù)值,當預測框位于真實框內(nèi)部時,即A∩B=B,就無法精確定位效果最佳的預測框。
針對以上問題,該文選擇了更為出色的EIoU損失函數(shù)(LEIoU),將預測框與真實框的重疊區(qū)、長寬比以及中心點距離三個參數(shù)都融合到計算中,如式(4)所示。
(4)
其中,r為A與B中心點之間的歐氏距離,A與B之間的長寬之差分別為h和w,A與B最小閉合區(qū)為C,其高度為Ch,寬度為Cw,對角線距離為c。LEIoU融合多參數(shù)能夠更加精確地計算損失函數(shù)值,但式(4)中的損失函數(shù)LEIoU是隨著定位損失(IoU)線性變化的,不利于模型訓練。因此,引入正太分布函數(shù)對LEIoU進行新的定義,用LEIoU-N表示,見公式(5)。
(5)
其中,μ=-0.6,σ2=0.2,C=0.03為調整常數(shù)。
如圖5所示,LEIoU都隨著IoU的不斷增大線性下降,但LEIoU-N隨著IoU的梯度增大加速減小。IoU在逐步增大的過程中波動對LEIoU-N影響是逐步減少的,表明LEIoU-N比LEIoU的穩(wěn)定性更好,更具合理性。
圖5 LEIoU與LEIoU-N對比示意圖
實驗環(huán)境如下:操作系統(tǒng)為Windows 11,CPU為AMD Ryzen 7 4800H 2.9 GHz,運行內(nèi)存為16 GB。算法模型基于Pytorch深度學習框架,編程語言為Python。
該文使用了兩種公開的數(shù)據(jù)集進行訓練及測試,一種是數(shù)據(jù)建模和分析競賽平臺Kaggle(https://www.kaggle.com/)網(wǎng)站公開的行人檢測數(shù)據(jù)集Pedestrian,其中訓練集944張、驗證集160張和測試集235張。另一種是生物識別與安全技術研究中心(http://www.cbsr.ia.ac.cn/)公開的密集行人基準數(shù)據(jù)集WiderPerson,其中訓練集8 000張、驗證集1 000張和測試集4 382張。兩種實驗數(shù)據(jù)集包含了不同姿態(tài)、相互遮擋以及多種場景下的行人,有效提升了行人檢測的魯棒性。
兩個算法模型對比300輪迭代訓練中的變化明顯的前50輪迭代的平均精度(mAP)及Loss值下降曲線,如圖6所示,其中橫坐標為訓練的迭代輪次(epochs),縱坐標為每輪迭代的mAP?;赑edestrian數(shù)據(jù)集的實驗中,YOLOv5-GSPE算法模型的Loss值下降曲線及mAP上升曲線在收斂穩(wěn)定性上優(yōu)勢明顯?;赪iderPerson數(shù)據(jù)集的實驗中,兩個算法模型的Loss值下降曲線及mAP上升曲線收斂都較為穩(wěn)定。綜合來看,兩種數(shù)據(jù)集在到達穩(wěn)定迭代輪次后,YOLOv5-GSPE算法模型在mAP上優(yōu)于YOLOv5s算法模型。
圖6 兩種數(shù)據(jù)集實驗的mAP及Loss值下降曲線
在300輪迭代中,Pedestrian數(shù)據(jù)集實驗的最高mAP達到了95.87%,相比YOLOv5s算法模型的91.82%提升了4.05百分點。WiderPerson數(shù)據(jù)集實驗的最高mAP達到了77.46%,相比YOLOv5s算法模型的74.18%提升了3.28百分點。由公式(1)和(2)采用YOLOv5和YOLOv5-GSPE算法模型計算得到的總參數(shù)量分別為7 012 822和6 135 420,其復雜度降低12.51%。
將YOLOv5-GSPE算法模型與目前主流標準版本的目標檢測模型進行對比實驗,在召回率(Recall)、mAP和推理時間(Time)三個方面進行對比,Pedestrian數(shù)據(jù)集實驗對比結果如表1所示,WiderPerson數(shù)據(jù)集實驗對比結果如表2所示。
表1 Pedestrian數(shù)據(jù)集模型對比實驗結果
表2 WiderPerson數(shù)據(jù)集模型對比實驗結果
綜上所述,通過表1和表2的對比結果可以看出, YOLOv5-GSPE算法模型在檢測速度和精度方面, 較目前幾個主流目標檢測算法模型有一定優(yōu)勢。
消融實驗是針對YOLOv5-GSPE算法模型中每個改進合理性驗證實驗,主要有GhostConv卷積層、SPPF模塊、特征金字塔網(wǎng)絡PrFPN結構和損失函數(shù)EIoU四個改進。首先對各個改進進行獨立的精度實驗評估分析,如圖7所示。
圖7 各模塊精度評估對比曲線
如圖7所示,GhostConv代替Conv作為主干網(wǎng)絡卷積層可以有效降低模型的復雜度及計算量,但對mAP的收斂穩(wěn)定性造成影響。改進的SPPF模塊能夠一定程度上提升模型mAP,降低特征信息丟失可以提高模型檢測效果,額外的開銷導致mAP曲線收斂速度變慢。特征金字塔網(wǎng)絡PANet結構改進能夠大幅度提升模型mAP,增強mAP曲線穩(wěn)定性。優(yōu)化后的EIoU損失函數(shù)代替GIoU損失函數(shù),能夠小幅度提升mAP?;赑edestrian數(shù)據(jù)集下訓練和推理,實驗結果如表3所示。
表3 消融實驗結果
如表3所示,模型1基于YOLOv5s模型進行改進,檢測精度有所下降。模型2在模型1基礎上優(yōu)化SPPF模塊,提升了模型精度,少量的開銷影響推理速度。模型3基于模型2提出的改進PrFPN結構,可以大幅度提升模型平均精度。YOLOv5-GSPE算法模型在模型3基礎上引入優(yōu)化后的EIoU損失函數(shù),進一步提升模型檢測精度。
(1)Pedestrian數(shù)據(jù)集的檢測效果分析。
如圖8所示,YOLOv5-GSPE算法模型更為豐富的特征提取帶來行人目標特征符合度下降,進而使得錨框置信度相比YOLOv5s算法模型稍有下降。由圖8(a)可以看出,YOLOv5-GSPE算法模型能夠對圖中遠近大小成像行人信息實現(xiàn)準確檢測,對于遮擋目標也能保證一定的檢測精度,而YOLOv5s算法模型(圖8(b))對于較遠成像的小目標的行人漏檢率較高,如圖8(c)與(d)局部放大圖對比所示。
(2)WiderPerson數(shù)據(jù)集檢測效果分析。
圖9為對場景二中遮擋行人檢測效果對比,由圖9(a)可以看出,YOLOv5-GSPE算法模型對擁擠遮擋的行人相比YOLOv5s算法模型的檢測效果更好,但遮擋行人的特征并不完整,容易導致算法模型重復錨框,如圖9(b)所示,其漏檢區(qū)域從圖9(c)和(d)局部放大圖可以清晰對比。
圖9 WiderPerson數(shù)據(jù)集檢測效果對比
綜上所述,YOLOv5-GSPE算法模型相比YOLOv5s算法模型的檢測效果更好,尤其對小目標行人以及遮擋行人的漏檢率更低。
針對景區(qū)場景下的行人表現(xiàn)特征,目前的行人檢測算法在景區(qū)場景下應用存在小目標及遮擋行人漏檢率高、模型復雜度高、計算量大等問題。該文提出YOLOv5-GSPE算法模型,通過GhostConv和改進的SPPF模塊優(yōu)化主干網(wǎng)絡;提出增強的特征金字塔網(wǎng)絡PrFPN結構,在輸出特征圖中加入了原始輸入特征的融合;用優(yōu)化后的EIoU損失函數(shù)代替GIoU損失函數(shù),提升邊界框的回歸精度。
實驗結果表明,YOLOv5-GSPE算法模型在均衡檢測精度和速度的情況下更具綜合優(yōu)勢,同時大幅度地減少了模型復雜度,對小目標行人和遮擋行人檢測漏檢率有明顯改善,為景區(qū)的行人智能檢測應用提供一種有效途徑。但算法模型中特征提取明顯增強,使其在非擁擠場景下的應用中對目標背景的抗干擾度下降。