摘 要:針對計算量冗余和精度低的問題,提出一種改進的YOLOv5行人檢測模型。系統(tǒng)采用Ghost卷積結合Transformer自注意力機制,結合雙向金字塔結構以及EIoU損失函數(shù),將INRIA行人檢測數(shù)據(jù)集按照7∶2∶1的比例分配訓練集、驗證集和測試集,采用SGD優(yōu)化器對模型進行300個Epochs的訓練,并利用訓練好的權重模型對測試集進行檢測,結果表明:改進模型檢測的平均精度值增加了1.5%,且計算量顯著降低。
關鍵詞:行人檢測;YOLOv5模型;Ghost卷積;雙向金字塔結構
中圖分類號:TP391.4 文獻標識碼:A 文章編號:2096-4706(2025)02-0033-06
Research on Pedestrian Detection System Based on YOLOv5
JIAO Tianwen, TIAN Xiuyun
(School of Electronics and Information Engineering, Guangdong Ocean University, Zhanjiang 524088, China)
Abstract: Aiming at problems of the amount of calculation with redundancy and low accuracy, an improved YOLOv5 pedestrian detection model is proposed. This system uses Ghost convolution to combine with the Transformer Self-Attention Mechanism, then combines with the BiFPN structure and EIoU loss function. The INRIA pedestrian detection data set is divided into the training set, the validation set, and the test set according to the ratio of 7∶2∶1. The SGD optimizer is used to train the model for 300 Epochs, and the trained weight model is used to test the test set. The results show that the average accuracy of the improved model detection is increased by 1.5%, and the amount of calculation is significantly reduced.
Keywords: pedestrian detection; YOLOv5 model; Ghost convolution; BiFPN
DOI:10.19850/j.cnki.2096-4706.2025.02.006
收稿日期:2024-06-11
基金項目:2022年廣東海洋大學校級課程-數(shù)學物理方法(010301112202)
0 引 言
近些年來,在計算機視覺研究領域中人體運動分析處于研究的熱點,其研究應用范圍可涵蓋人機互動、視頻監(jiān)控、智慧交通等熱點問題。該領域內技術研究給這些熱點問題提供了極大的幫助。例如通過人臉識別和人體行為預測等方式,可判斷目標的運動過程以及是否對安全造成威脅,其可以運用至銀行、機場等環(huán)境復雜,對安全性需求較高且較為敏感的場合,對于監(jiān)測目標的不良舉措可以提前預知識別并通報。行人檢測[1]屬于計算機視覺領域內人體運動分析的分支的一部分,又或者說,可以稱為人體運動分析系統(tǒng)的預處理的部分。早期研究并未受到大量關注,然而隨著行人檢測過程中出現(xiàn)的背景模糊化,人體姿態(tài)多樣化以及重疊、小目標檢測等問題的浮現(xiàn),使得該研究領域的難度逐漸升高且對于行人檢測目標的需求逐漸升級,這使得行人檢測這一話題在研究中越來越受到廣泛關注。此外,對于當代智慧城市、輔助駕駛等熱門研究應用場景的出現(xiàn),使得行人檢測的實用性增強,可以極大地簡化生活中所遇到的問題。
目前,行人檢測算法可分為傳統(tǒng)行人檢測算法以及基于深度學習的行人檢測算法,前者主要有HOG+SVM算法[2]、AdaBoost算法等,如AdaBoost算法[3]是由Viola等人利用Haar特征和級聯(lián)分類器結合實現(xiàn)的行人檢測系統(tǒng),可應用于智能監(jiān)控中進行實時監(jiān)測。后者是近些年隨著深度學習不斷發(fā)展后與其結合的產物,并在市場上占據(jù)主流?;谏疃葘W習的行人檢測算法如R-CNN、Fast-CNN、SSD、YOLO算法等都是現(xiàn)階段較為流行的行人檢測算法。其中,YOLO算法為該類型算法中的一種單階段算法,其主要思想是對邊界框進行分類與回歸,采用卷積神經網絡實現(xiàn)端到端的目標檢測功能,并確定被測目標分類概率和位置信息的算法。
1 YOLOv5結構
YOLOv5行人檢測算法[4]是YOLO系列算法的第五代版本,對比上一代其融合一些改進思路,并考慮到網絡結構的寬度與深度的不同需求,提供了5種不同尺度的模型,即n、s、l、m、x這5個模型,兼顧模型檢測精度和檢測速率需求,本文選取YOLOv5s模型作為行人檢測算法,如圖1所示。
由圖1可知,YOLOv5網絡結構可分為輸入端(Input)、主干網絡(Backbone)、頸部網絡(Neck)和輸出端(Head)4個部分。輸入端主要完成圖像預處理的工作,其中完成的主要工作有Mosaic數(shù)據(jù)增強、自適應錨框計算和自適應圖片縮放。主干網絡主要由Conv、C3和SPPF這3個模塊組成,其中,Conv模塊主要由常規(guī)卷積模塊、正則化模塊和激活函數(shù)組成,激活函數(shù)采用Sigmond加權線性組合函數(shù),即SiLU激活函數(shù)。C3模塊借鑒了ResNet的殘差結構,通過分支卷積后選擇性堆疊在進行疊加實現(xiàn)特征融合的方式,實現(xiàn)有限度的容量下提高檢測效率。SPPF即為原模塊SPP[5](Spatial Pyramid Pooling)的改進版本,借鑒空間金字塔的思想,實現(xiàn)局部特征與全局特征融合,此外采用多個池化核級聯(lián)方法提升特征圖表達能力和運行速度。頸部網絡所完成的工作為特征融合,采用FPN(Feature Pyramid Networks)+PAN(Path Aggregation Networks)的結構,前者完成將深層特征圖的語義信息傳遞至淺層特征圖,后者將淺層特征圖的位置信息傳遞給深層特征圖,即完成自上而下和自下而上的特征交互交融的操作。實現(xiàn)多尺度融合以及特征表達的豐富程度提高的目的。輸出端由3個不同尺度的檢測層組成,對融合特征進行分類與預測,并采用CIoU損失函數(shù)和非極大值抑制操作獲取最優(yōu)目標檢測框,即完成目標檢測的末尾工作。
2 改進YOLOv5算法
為了提高檢測精度以及達到模型輕量化目的,在原模型基礎上做了部分改進。主干網絡結構采用Ghost卷積層替代原有卷積層,并對模型中ResNet的網絡結構結合Transformer結構,即實現(xiàn)模型輕量化高效和提高特征捕捉效果的功能。頸部網絡結構結合雙向加權金字塔結構,通過改變堆疊方式提高特征融合效率。對于檢測端將原CIoU損失函數(shù)替換成EIoU以避免目標框回歸時存在的不精確的問題。
2.1 主干網絡改進
深度卷積神經網絡結構一般都是由大量的卷積組成,其所造成的問題則是計算成本的增加,一般的卷積過程中由于濾波器和通道數(shù)量較為龐大,導致運算量極大,這是使得模型冗余的一大要素。相比之下,Ghost卷積模塊減少了不必要的計算冗余。
如圖2所示,Ghost卷積[6]采用分步卷積,并采用減少通道數(shù)并降低和深度分離卷積的方式降低運算量。
設特征圖輸出通道數(shù)為n、h和w分別為輸出的高度和寬度,k×k為卷積濾波器的內核大小,c為濾波器通道數(shù)量,則相對比而言,Ghost卷積可降低比率為:
(1)
其中,s為Ghost卷積變換次數(shù),d為第二步卷積線性計算的卷積核大小,從式(1)可見Ghost卷積可大量簡化原卷積運算量,提高計算效率。
Transformer模型[7]最早運用于自然語言處理,直至2020年,ViT模型首次將其引入計算機視覺領域才使得該模型同卷積結構結合,由于其模型的高解釋性和長距離學習等優(yōu)點使其在計算機視覺領域占據(jù)一席之地,并具有大量的可研究空間。本文對于主干網絡C3模塊采用Transformer結構與其結合。
如圖3所示,Transformer結構對于原結構下做部分改進,對于C3模塊所采用的將模塊中間卷積層替換成多注意力機制體,而其他部分保持不變,可使模型完成多組輸入數(shù)據(jù)的匯入,結合自注意力機制體提高原模型深入挖掘特征的能力,即實現(xiàn)遠特征獲取,使原模型特征豐富。
2.2 頸部網絡改進
頸部網絡主要結構為FPN+PAN結構,采用上下間交互傳遞特征并促進其融合的方式完成特征融合的工作。然而,對于這種結構體仍存在一些問題需要解決,首先,F(xiàn)PN信息流傳遞時通常是單向傳輸,因為其由下至上的方式導致粗糙特征圖內必然存在細節(jié)信息的丟失。此外,PAN結構較為簡單且缺少原始學習信息,這樣會使得訓練學習發(fā)生偏差。
如圖4所示,BiFPN結構[8-9]在原FPN+PAN結構下做了些許改動,去掉了只有一個輸入和輸出匯入的結點,并增加額外一條路徑直接與PAN部分,這樣使得PAN可直接獲得原始學習特征,進而降低特征融合偏差。而對于粗特征的丟失這一部分,BiFPN網絡采用雙向連接解決這個問題,采用雙向連接,允許不同尺度間特征傳遞,這樣使得特征盡可能利用最大化。
2.3 輸出端改進
輸出端損失函數(shù)的作用是度量神經網絡預測信息和標簽間差距,其呈現(xiàn)形式為負反饋形式,即數(shù)值越小則預測框與指標差距越小。YOLOv5模型采用的原損失函數(shù)形式為CIoU損失函數(shù),計算式如下:
(2)
(3)
(4)
在上式中,LIoU為IoU損失函數(shù)值,其體現(xiàn)CIoU損失函數(shù)基于IoU損失函數(shù)后改進部分。ρ為兩框間的中心距,c為兩框最小包圍矩形的對角線長度。IoU為交并比,即為兩框間交集與并集的比值。w1和h1、wp和hp分別為預測框和指標的寬度與高度值。v即為寬高比相似度,α影響因子,其取值不同關系到寬高比相似度在損失函數(shù)中的控制,一般取0.5。
增加了寬高比這一參考量的涉入使其回歸速度加快,然而寬高比反映縱橫比差異,并不能寬高位置和置信度間的真實關系,進而導致收斂緩慢和回歸不精確的問題。對于上述情況,需要重新考慮損失函數(shù)的合適選擇,且能正確反應損失函數(shù)與寬高比間問題。因此,后期選擇EIoU損失函數(shù)替代原損失函數(shù)。EIoU損失函數(shù)[10]在原損失函數(shù)基礎上將縱橫比拆開分別計算,其考慮了寬度和高度間真實的差異。該損失函數(shù)將損失值分解為交并比損失、寬高損失和距離損失。計算式公式如下:
(5)
式中,LIoU、Ldis、Lasp分別為不同損失函數(shù)考慮范疇的變量,即交并比損失、寬高損失和距離損失。ρ2(b,bgt)為預測框與標簽框內中心點間歐幾里得距離。ρ2(w,w gt)和ρ2(h,hgt)則為預測框和指標的寬高比例值,Cw和Ch分別為預測框和標簽間最小外接矩形的寬和高。即EIoU損失函數(shù)直接對寬和高分開求出損失值,避免寬高之間相互制衡的問題發(fā)生,也可保證預測框的回歸精確并加快收斂速度的目的。
3 實驗結果與分析
3.1 實驗環(huán)境
實驗環(huán)境操作系統(tǒng)為Windows 11,64位系統(tǒng),顯卡為GPU NVIDIA GeForce RTX 3050 Ti,CPU為AMD Ryzen 5 5600H with Radeon Graphics CPU@3.30 GHz處理器,編程環(huán)境為Python 3.12,深度學習框架為PyCharm,在PyTorch 2.2.0、CUDA 12.2、CUDNN 8.9.4上訓練。
3.2 實驗數(shù)據(jù)集
使用的數(shù)據(jù)集為INRIA行人檢測數(shù)據(jù)集,涉及場景較為廣泛,圖像間行人數(shù)量不等,數(shù)據(jù)集內含902張含行人目標的圖像。按照7∶2∶1的比例分配訓練集、驗證集和測試集,即訓練集照片632張,驗證集照片180張,測試集照片90張。為彌補訓練原始數(shù)據(jù)量的不足,在圖像預處理部分采用Mosaic數(shù)據(jù)增強方式,即4張照片剪裁后拼接組成。這樣豐富訓練數(shù)據(jù)集多樣性,也提高模型的泛化能力。
實驗圖像尺寸為640×640,迭代次數(shù)為300次,訓練批次設置個數(shù)為8。初始學習率設置為0.01,學習率動量設置為0.937,采用SGD優(yōu)化器對模型進行訓練。
3.3 實驗評價指標
使用參數(shù)量(Parameters)、召回率(Recall)、平均精度值(mean Average Precision)和浮點計算量(giga floating-point operations)來衡量模型性能指標,其計算公式如下:
(6)
(7)
(8)
其中,TP(True Positive)為算法和標注中均標記出的物體,F(xiàn)P(False Positive)為算法未能識別出但標注中已標記的物體,F(xiàn)N(False Negative)為算法和標注中均沒有標記的物體,P為精度,R為召回率,AP為平均精度。
3.4 實驗結果分析
為分析YOLOv5原模型的改進點對模型性能的影響差異,本次使用控制變量法,保證數(shù)據(jù)集和實驗環(huán)境不變,實驗結果如表1所示。
從表1可以看出,相對于原模型,改進模型召回率保持不變,且平均精度值增加了1.5%。且浮點計算量大幅度減少,雖然模型性能仍然存在些不足,但大體上看出一定量的優(yōu)越性,這符合改進模型的預期目標。
圖5為實驗過程中評價指標隨訓練迭代次數(shù)變化的趨勢,可以看出改良算法具有較高的優(yōu)越性。
3.5 結果展示
檢測結果如圖6所示。
4 結 論
本文介紹了基于YOLOv5的行人檢測方法,較于原模型達到提高精度和輕量化模型的目的,做出了相對應的改進措施,主干網絡采用Ghost卷積和Transformer結構融合,頸部網絡采用BiFPN結構替代原FPN+PAN結構,輸出端損失函數(shù)選擇用EIoU損失函數(shù)替代CIoU損失函數(shù)。并采用INRIA行人檢測數(shù)據(jù)集進行實驗。結果表明,改進后模型較于原模型精確度提升1.5%,且模型呈現(xiàn)明顯輕量化結果。后續(xù)工作將會嘗試增加模型魯棒性和抗干擾能力,能夠將其適應多種環(huán)境檢測,此外,嘗試解決小目標檢測問題使模型檢測范圍擴大。
參考文獻:
[1] 蘇松志,李紹滋,陳淑媛,等.行人檢測技術綜述 [J].電子學報,2012,40(4):814-820.
[2] DALAL N,TRIGGS B. Histograms of Oriented Gradients for Human Detection [C]//2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05).San Diego:IEEE,2005,1:886-893.
[3] VIOLA P,JONES M. Rapid Object Detection Using a Boosted Cascade of Simple Features [C]//Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR 2001).Kauai:IEEE,2001:I-I.
[4] REDMON J,DIVVALA S,GIRSHICK R,et al. You Only Look Once: Unified, Real-Time Object Detection [C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Las Vegas:IEEE,2016:779-788.
[5] HE K M,ZHANG X Y,REN S Q,et al. Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2015,37(9):1904-1916.
[6] HAN K,WANG Y H,TIAN Q,et al. GhostNet: More Features From Cheap Operations [C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Seattle:IEEE,2020,1577-1586.
[7] 彭斌,白靜,李文靜,等.面向圖像分類的視覺Transformer研究進展 [J].計算機科學與探索,2024,18(2):320-344.
[8] TAN M X,PANG R,LE Q V. EfficientDet: Scalable and Efficient Object Detection [C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Seattle:IEEE,2020:10778-10787.
[9] YU C S,SHIN Y.SAR Ship Detection Based On Improved YOLOv5 and BiFPN [J].ICT Express,2024,10(1):28-33.
[10] ZHANG Y F,REN W Q,ZHANG Z,et al. Focal and Efficient IOU Loss for Accurate Bounding Box Regression [J].Neurocomputing,2022,506:146-157.
作者簡介:焦天文(2001—),男,漢族,廣東珠海人,本科,研究方向:嵌入式、AI算法;通信作者:田秀云(1974—),女,漢族,廣東湛江人,講師,碩士,研究方向:軟件算法、光電檢測。