摘 要:【目的】近年來,各地政府和社會組織不斷加大對騎行安全的宣傳和教育力度。面對龐大的騎行者數(shù)量,僅靠人力已無法滿足交通監(jiān)管需求。因此,為了增強騎行者的安全意識、減少交通事故的發(fā)生,提出了一種用于識別日常騎行頭盔佩戴狀態(tài)的方法。【方法】本研究所識別的對象是騎行頭盔和雙輪車,所用到的數(shù)據(jù)集均為騎行者圖像,用于識別騎行頭盔佩戴狀態(tài)的數(shù)據(jù)集共有1 100張圖片,將該數(shù)據(jù)集按照8∶1∶1的比例進行劃分。在Jetson Xavier NX平臺上,運用Darknet框架下的YOLOv4算法對數(shù)據(jù)集進行模型的訓練和優(yōu)化,從而實現(xiàn)在不同光照強度的復雜場景下,對騎行者是否佩戴頭盔情況的準確識別?!窘Y果】該方法的平均精確率能達到80%,并具有較低的漏檢概率、虛警概率,取得了良好的應用效果?!窘Y論】該方法能在日常生活環(huán)境中對騎行頭盔實現(xiàn)有效識別,可用于智能交通監(jiān)控、城市管理等領域,有利于提升交通安全水平、降低交通事故發(fā)生率。
關鍵詞:交通監(jiān)管;Jetson Xavier NX;YOLOv4算法;騎行頭盔
中圖分類號:TP277" " "文獻標志碼:A" " 文章編號:1003-5168(2024)24-0016-07
DOI:10.19968/j.cnki.hnkj.1003-5168.2024.24.004
Research on Recognizing the Wearing Condition of Cycling Helmet Based on YOLOv4
Abstract: [Purposes] In recent years, governments and social organizations around the world have been increasing their efforts to promote and educate cycling safety.And in the face of the huge number of cyclists, manpower alone can no longer meet the demand for traffic supervision.Therefore, to improve the safety awareness of cyclists and reduce the occurrence of traffic accidents, a method for identifying the status of the daily cycling helmet wearing is proposed. [Methods] The recognition objects targeted in this study are cycling helmets and two-wheeled vehicles, and the datasets used are all images of cyclists, and the dataset used for recognizing the wearing condition of riding helmets has a total of 1,100 images, which is divided into a ratio of 8:1:1. Then the YOLOv4 algorithm under the Darknet framework is used on the Jetson Xavier NX platform to train and optimize the model of the dataset, which achieves the accurate recognition of whether the cyclist wears a helmet or not under the complex scenes with different light intensities.[Findings] The method can achieve a good realization with an average accuracy rate of 80% as well as a low probability of missed detection and 1 alarms. [Conclusions] The method can realize effective identification of cycling helmets in daily life environment, and can be used in intelligent traffic monitoring, urban management and other fields, which is conducive to improving the level of traffic safety and reducing the incidence of traffic accidents.
Keywords: traffic regulation; Jetson Xavier NX; YOLOv4 algorithm;cycling helmet
0 引言
近年來,隨著各地政府和社會組織不斷加大對騎行安全的宣傳和教育力度,人們對騎行安全的重視程度不斷提高。騎行時佩戴頭盔是基本的安全措施之一,是保護騎行者安全的第一道防線,在事故中能有效保護騎行者頭部免受傷害,騎行者佩戴頭盔的狀態(tài)將直接影響騎行者生命安全,具有不可替代的重要性。本研究利用先進的計算機視覺和深度學習技術,將Jetson Xavier NX平臺與YOLOv4目標檢測算法相結合,經(jīng)過分析USB攝像頭捕捉到的實時視頻流,對騎行者佩戴頭盔的狀態(tài)進行識別,及時發(fā)現(xiàn)和警告未佩戴頭盔的行為,以此降低騎行交通事故發(fā)生的風險,保護騎行者生命安全,從而提高騎行的安全性和交通管理水平,推動圖像識別技術在交通安全領域中的應用和發(fā)展。
1 平臺及識別算法
1.1 Jetson Xavier NX平臺
Jetson Xavier NX作為一款高性能的嵌入式人工智能計算平臺,具有高性能的GPU和深度學習加速器,能支持復雜的圖像處理和深度學習算法,是基于YOLOv4的騎行頭盔佩戴狀態(tài)識別研究的理想硬件基礎?;贘etson Xavier NX平臺的應用范圍較廣,包括但不限于智能監(jiān)控、自動駕駛、工業(yè)視覺、智能機器人、醫(yī)療影像診斷和智能零售等,且適用于各種視覺感知和處理任務。本研究設計的系統(tǒng)通過Jetson Xavier NX平臺來完成對騎行者頭部區(qū)域實時圖像的處理和分析,從而準確判斷出騎行者是否佩戴頭盔。此外,基于Jetson Xavier NX平臺的騎行頭盔目標識別技術還具有智能化和自動化特點,能完成對較多數(shù)量騎行者頭盔佩戴狀態(tài)的迅速識別,為交通管理部門和騎行活動組織者提供了便捷的管理工具。
英偉達的Jetson系列是在全世界內(nèi)被廣泛應用的嵌入式計算平臺,尤其在深度學習領域中,Jetson具有不可替代的優(yōu)勢。其中,具有高性價比特征的Jetson Xavier NX也是Jetson系列的產(chǎn)品之一,其是基于NVIDIA Xavier架構的嵌入式人工智能計算平臺[1],具有強大的計算性能和豐富的深度學習加速功能,適用于各種視覺感知和處理任務,包括目標檢測、圖像分類、語義分割等。Jetson Xavier NX開發(fā)板的規(guī)格參數(shù)見表1。
Jetson Xavier NX板是外形較小的模組系統(tǒng),所有零件均集成在一個外形較小的板子上,其在性能和功率方面具有非常突出的優(yōu)勢,還配有一組輸入輸出接口[2],可為邊緣提供性能高達21TOPS的加速AI計算,非常適合在大小和功率方面受限的系統(tǒng)。Jetson Xavier NX板還搭載了NVIDIA的Volta架構GPU,并配備了384個CUDA核心、48個Tensor核心和2個NVDLA引擎,能并行運行較為復雜的算法神經(jīng)網(wǎng)絡,既能處理從多個傳感器傳輸過來的數(shù)據(jù),還能支持復雜的深度學習模型的訓練和推理,進而滿足完整AI系統(tǒng)的需求,包括YOLOv4這樣被廣泛研究和使用的高效目標檢測算法。此外,Jetson Xavier NX板具有多個攝像頭接口、HDMI、USB、以太網(wǎng)等輸入輸出接口,便于連接各種傳感器和外設,實現(xiàn)在多種應用場景中的圖像識別任務。Jetson Xavier NX板實物圖如圖1、圖2所示。
本研究使用USB工業(yè)攝像頭完成對視頻的輸入,其攝像頭和USB在Jetson Xavier NX下拍攝圖像分別如圖3、圖4所示。
1.2 YOLOv4識別算法
本研究選擇YOLOv4作為檢測騎行頭盔佩戴狀態(tài)的識別算法。YOLOv4是被廣泛應用于目標檢測領域內(nèi)的先進算法,具有快速、準確的優(yōu)點,在應用方面表現(xiàn)出高效性。在具有高性能的嵌入式AI計算平臺Jetson Xavier NX上部署YOLOv4算法,能實現(xiàn)高效的實時目標檢測,為騎行安全提供可靠的保障。
1.2.1 YOLO算法發(fā)展歷程。YOLO算法的核心是將原本的目標檢測轉換成為一個回歸問題,將輸入圖像當作輸入,只需要一個神經(jīng)網(wǎng)絡,就能得到待測目標位置及其所屬的類別[3]。2016年,首次提出單階段的目標檢測網(wǎng)絡YOLOv1,使實時檢測的要求更容易被研究者實現(xiàn),且其檢測速度非???,基本上能實現(xiàn)實時檢測的目的。2017年,在YOLOv1算法的基礎上提出了YOLOv2算法,進一步提升算法的檢測精度和識別速度。2018年,提出了YOLOv3,首次使用殘差模型 Darknet-53,實現(xiàn)多尺度檢測。2020年,在YOLOv3目標檢測算法架構的基礎上提出了YOLOv4算法,并結合以前算法的優(yōu)勢,將不同的算法加以組合,進行優(yōu)化改進,最終在保證檢測速度的同時,能有一個好的檢測精度,提高模型的準確性和泛化能力[4]。此外,YOLOv4算法還采用一系列優(yōu)化策略,包括Backbone網(wǎng)絡的改進、特征金字塔網(wǎng)絡(FPN)的引入、跨階段連接和多尺度訓練等,使得YOLOv4算法在復雜場景中也能實現(xiàn)準確的目標檢測。應用YOLOv4算法來完成騎行頭盔檢測任務,能有效提高檢測的精確度和魯棒性[5]。
1.2.2 YOLOv4算法的結構。YOLOv4目標檢測算法的網(wǎng)絡結構包括輸入端、主干網(wǎng)絡、頸部網(wǎng)絡、頭部網(wǎng)絡。輸入端用于輸入圖像數(shù)據(jù),圖像數(shù)據(jù)由此開始被算法進行數(shù)據(jù)增強、訓練等操作;主干網(wǎng)絡(Backbone)用于特征提取,能在典型的大型數(shù)據(jù)集上完成預訓練的卷積神經(jīng)網(wǎng)絡,如Darknet53;頸部網(wǎng)絡(Neck)位于整個算法網(wǎng)絡結構的中間部位,能增加一些用于收集不同階段中特征圖的網(wǎng)絡層,從而加強特征提取網(wǎng)絡;頭部網(wǎng)絡[6]主要對目標的種類和位置進行預測。YOLOv4算法的網(wǎng)絡框架如圖5所示。
由圖5可知,YOLOv4還包含五個基本組件,即CBM、CBL、Res unit、CSPX、SPP。其中,CBM是YOLOv4網(wǎng)絡結構中的最小組件,由Conv、Bn及Mish激活函數(shù)組成;CBL由Conv、Bn及Leaky_relu激活函數(shù)組成;Res unit是在多個CBM組件的基礎上,參考Resnet網(wǎng)絡中的殘差結構組成的,其層層相加能使網(wǎng)絡構建變得更深;CSPX是由三個卷積層、X個Res unint殘差組件模塊、多個CBM組件通過Concate和一個CBM組件組成的;SPP采用最大池化的方式,有利于算法對目標檢測進行多尺度融合[7]。
YOLOv4算法采用的是一種單階段的檢測方式,將目標檢測任務統(tǒng)一分為一個端到端的神經(jīng)網(wǎng)絡模型。這種設計使YOLOv4算法能在單個前向傳播進程中并行完成目標位置的確定和類別的劃分,大大提高檢測的速度和效率。在識別騎行頭盔佩戴狀態(tài)時,實時性至關重要,而YOLOv4能滿足對騎行頭盔佩戴狀態(tài)進行實時識別的需求。此外,YOLOv4算法還具有很強的通用性和靈活性,適用不同類型的目標識別檢測任務。通過調整網(wǎng)絡結構和參數(shù)設置,能很容易地將YOLOv4應用于其他類別的目標檢測,如行人檢測、車輛檢測等,這種通用性使得本研究的成果具有更廣泛的應用前景。
2 實現(xiàn)步驟
為了實現(xiàn)本研究的目標,先要制作用于騎行頭盔識別訓練的數(shù)據(jù)集。首先,獲取一定數(shù)量含有戴頭盔和未戴頭盔兩種情況的圖片,本研究共選取1 100張圖片用來制作騎行頭盔數(shù)據(jù)集。其次,將數(shù)據(jù)集移植到Jetson Xavier NX平臺中進行目標識別訓練,從而得到能精確識別騎行頭盔的模型。最后,利用這個模型對實時視頻中的騎行頭盔進行識別,能在系統(tǒng)窗口中能顯示騎行頭盔的位置和邊界框信息?;赮OLOv4的騎行頭盔佩戴狀態(tài)識別系統(tǒng)的實現(xiàn)步驟如圖6所示。
2.1 騎行頭盔數(shù)據(jù)集制作
首先,要收集包含不同場景、不同光照條件及不同頭盔佩戴狀態(tài)的圖像數(shù)據(jù)集,本研究從網(wǎng)絡開源數(shù)據(jù)集中選取質量較好的1 100張圖片作為訓練集,并利用開源標注工具Labelimg對這些圖片中的頭盔佩戴情況進行目標標注,并生成對應的標簽文件,分為已佩戴頭盔、未佩戴頭盔及雙輪車這三類。在打標簽過程中,識別框標注的準確性對模型訓練成功與否起到至關重要的作用,也在極大程度上影響模型的測試評估。其次,將這1 100張圖片和對應的標簽文件按照8∶1∶1的比例劃分為用于訓練、驗證及測試的數(shù)據(jù)集。最后,將制作好的數(shù)據(jù)集及一些必要的YOLOv4算法配置文件導入到Jetson Xavier NX平臺內(nèi)的Darknet框架中,開始模型訓練。
2.2 模型優(yōu)化訓練及應用
模型訓練是整個目標識別檢測系統(tǒng)設計中最重要的步驟之一。首先,在訓練過程中,使用在大規(guī)模圖像數(shù)據(jù)集上預訓練后的模型參數(shù)來初始化YOLOv4網(wǎng)絡,以加速訓練過程,并提高模型的收斂速度和性能。其次,選用名為yolov4.conv.137的YOLOv4預訓練模型,結合該預訓練模型和自建的騎行頭盔數(shù)據(jù)集進行遷移學習訓練,即在特定數(shù)據(jù)集上進行微調,使模型能更好地適應特定的識別任務。最后,在系統(tǒng)終端輸入模型訓練代碼,經(jīng)過一段時間的訓練后得到具備識別騎行頭盔特征的YOLOv4模型[8]。騎行頭盔佩戴狀態(tài)識別網(wǎng)絡訓練流程如圖7所示。
模型訓練完成后進入測試階段,能直觀地檢測訓練模型在圖像識別中的實際效果。將圖像識別代碼輸入系統(tǒng)終端后,系統(tǒng)會從攝像頭獲取實時視頻,并對其進行實時的圖像識別。當檢測到相應類別的目標后,會生成對應類別的標識框,終端也會實時反饋相關識別信息。然而,識別結果并不絕對準確。因此,要不斷地通過篩選高質量的訓練圖像及調試相關訓練參數(shù)來提高模型的性能和圖像識別的準確率。
3 實現(xiàn)效果
3.1 模型性能
本研究對圖像識別模型的訓練較為簡練,便于操作。先進入Jetson Xavier NX平臺的系統(tǒng)終端,輸入并運行一行包含有數(shù)據(jù)集路徑信息的Darknet模型訓練代碼,即可開始模型的優(yōu)化訓練,最后生成用于評估模型性能的圖片,包含模型訓練過程的loss損失曲線、mAP%平均精確度變化曲線,并實時顯示loss值及剩余的訓練時間,有利于操作者觀察整個模型訓練過程中的細節(jié),從而掌握整個騎行頭盔佩戴狀態(tài)識別模型訓練過程中的相關特征信息。其中,loss參數(shù)用于衡量模型在訓練過程中的性能表現(xiàn),是通過計算模型預測得到的標識框位置和識別類型等數(shù)據(jù)與實際情況下的標簽數(shù)據(jù)之間的差異而得到的;mAP參數(shù)是一種用于評估目標檢測模型性能的指標,綜合考慮了模型在不同類別上的精確度,是目標檢測任務中的重要評價指標之一。
訓練模型過程中各類參數(shù)的變化情況如圖8所示。該模型是在最大迭代次數(shù)為6 000次、數(shù)據(jù)集圖片數(shù)量為1 100張的基礎上訓練得到的,該模型的loss損失值降到了3.427 5,mAP%平均精確度均值為80%,訓練效果良好。
準確率是衡量算法在識別目標時所取得的正確率[9]。在訓練模型后,得到的平均精確率的均值(mAP)為80%,這表明本研究設計的騎行頭盔佩戴狀態(tài)識別系統(tǒng)在頭盔識別任務有著相當高的準確性,這也意味著該系統(tǒng)在對騎行頭盔進行識別時具有很高的精確度,系統(tǒng)能準確地判別出騎行者的頭盔佩戴情況,并實時發(fā)出警告或采取措施來保障騎行者的生命安全。此外,較高的mAP值還能反映出系統(tǒng)在識別騎行頭盔佩戴狀態(tài)方面的穩(wěn)健性和魯棒性,在不同場景、光照條件下,系統(tǒng)都能保持高水平的識別性能,這對應對實際騎行環(huán)境中的各種挑戰(zhàn)至關重要。
3.2 系統(tǒng)的戶外識別效果
基于YOLOv4的騎行頭盔佩戴狀態(tài)識別系統(tǒng)在戶外對騎行頭盔佩戴狀態(tài)的識別效果如圖9至圖12所示。系統(tǒng)對圖中騎行者頭部已戴頭盔、頭部未戴頭盔、雙輪車均能實現(xiàn)有效識別顯示。由此可知,在正常的天氣環(huán)境中,本研究設計的系統(tǒng)對騎行者頭盔佩戴狀態(tài)的識別效果較好,不管是在人數(shù)較少的情況下,還是人數(shù)較多的情況下,漏檢概率和虛警概率都很低,且在具有較強迷惑性的背景下也能保持較高的識別準確度,能對騎行頭盔佩戴情況進行準確識別判斷。
騎行過程中可能會面臨各種復雜的環(huán)境,如不同天氣條件、光線強度變化等。所以,本研究分別在陽光、樹蔭及陰天這三種環(huán)境下對騎行頭盔佩戴狀態(tài)進行測試識別,每種環(huán)境均分為了包含4個左右的騎行頭盔和包含10個左右的騎行頭盔兩類,每一類均有20張用于識別的圖片,實現(xiàn)效果見表2。通過對比可知,不同天氣條件及光線強度在一定程度上能影響識別效果,會導致漏檢概率升高,且識別效果隨著識別對象個數(shù)的增加而呈遞減趨勢,即漏檢概率隨著識別對象個數(shù)的增加而增加。然而,相比于漏檢概率,不同環(huán)境中的系統(tǒng)虛警概率變化浮動很小,且受天氣條件和光照強度的影響較小,導致虛檢的主要原因是行人干擾,其次是一些非常類似于頭盔的物品易導致虛檢發(fā)生。此外,通過觀察識別結果圖片可知,漏檢才是影響識別效果的主要因素,虛檢個數(shù)比漏檢個數(shù)要少得多。
本研究設計的基于YOLOv4的騎行頭盔佩戴狀態(tài)識別系統(tǒng)在光照條件差、背景模糊、目標受遮擋等情況下容易出現(xiàn)漏檢和虛檢,但總體上平均準確率為80%。由此可知,本研究設計的基于YOLOv4的騎行頭盔佩戴狀態(tài)識別系統(tǒng)對不同場景和光照條件的適應能力較強。
4 結語
本研究驗證了在Jetson Xavier NX平臺上運行YOLOv4目標檢測算法的可行性。通過充分利用該平臺的高性能計算能力,成功地在實時視頻流中完成了對騎行頭盔佩戴情況的高效檢測,為該技術應用于嵌入式系統(tǒng)和移動設備奠定了堅實的基礎。本研究詳細分析了該系統(tǒng)在不同場景和光照條件下的系統(tǒng)性能,通過實地測試,發(fā)現(xiàn)系統(tǒng)在各種實際環(huán)境中均表現(xiàn)出色,平均精確度為80%,具有出色的魯棒性和適應性,這為在城市或鄉(xiāng)村、白天或夜晚等多變條件下實現(xiàn)可靠的騎行頭盔檢測提供了可靠的技術支持。
綜上所述,本研究為基于Jetson Xavier NX開發(fā)板的YOLOv4騎行頭盔檢測提供了強有力的實證支持,為實際應用和未來研究提供了有益的參考和啟示。
參考文獻:
[1]KORTLI Y,GABSI S,VOON" L,et al. Deep embedded hybrid CNN-LSTM network for lane detection on NVIDIA Jetson Xavier NX[J]. Knowledge-Based Systems,2022,240:107941.
[2]LOONE C M.Smart camera series features nvidia jetson xavier nx som[J].Vision Systems Design,2021,26(4):52-52.
[3]單志勇,張鐘月.基于改進Faster R-CNN算法的行人檢測[J].現(xiàn)代計算機,2021,27(23):124-128.
[4]宣勇,韓超,沙文瀚.改進的TinyYOLOv4算法及其在行人檢測中的應用[J].激光與光電子學進展,2022,59(12):256-263.
[5]余晨晨.改進的YOLOv4頭盔佩戴目標檢測研究[J].沈陽工程學院學報(自然科學版),2024,20(1):75-81.
[6]張海軍,董麗.基于局部交叉時空信息與卷積神經(jīng)網(wǎng)絡的視頻人群計數(shù)方法:CN202210004146.8[P].2022-04-15.
[7]羅天,柴真琦,李漢秋.人流量檢測及口罩佩戴檢測在樓宇節(jié)能與安防中的應用[J].科技風,2021(24):103-105,123.
[8]常青,韓文,王清華等.改進YOLO輕量化網(wǎng)絡的行人檢測算法[J].光學技術,2022,48(1):80-85.
[9]姚沖,鄧在輝.基于Jetson,Nano和改進YOLOv7算法的安全帽佩戴目標檢測技術分析[J].電子技術,2024,53(1):304-307.