劉楊
摘要 隨著城市車流量和車輛載重日益增加,對城市橋梁的安全性和耐久性產(chǎn)生較大的影響。文章概述了基于YOLOv4和DeepSORT算法框架下進行二次開發(fā),按照車輛的類型和軸數(shù)對車輛進行分類,建立橋梁交通場景中車輛的多目標識別和追蹤算法,實現(xiàn)對車輛的分類和車輛運行時空軌跡的提取。具體包括車輛的類型、車速、車道等信息,同時在該算法框架下嵌入hyperlpr第三方庫,實現(xiàn)車牌信息的提取,從而提取完整的車輛運動信息。將上述算法功能集合在一個軟件上,進行可視化界面的操作與交互。
關鍵詞 機器視覺;YOLOv4;DeepSORT;車流量信息;軟件開發(fā)
中圖分類號 U495 文獻標識碼 A 文章編號 2096-8949(2022)07-0079-03
0 引言
據(jù)統(tǒng)計我國已建成橋梁約100萬座,隨著交通量的增加和車載水平的提高,橋梁結構性能持續(xù)劣化[1]。近年來,人工智能技術的不斷發(fā)展,機器視覺的一些成果在傳統(tǒng)的圖像處理領域得到了廣泛應用[2]。基于YOLO[3]等智能算法框架能完整地提取出車輛運行的時空信息,甚至可以提取車輛的車牌信息等。該文基于機器視覺搭建智能算法對橋梁交通場景中的車輛信息進行捕捉定位,提取車輛行動的時空軌跡,進而得到車輛的車牌、車道、車速等信息,形成完整的車流量,為研究橋梁的結構分析與預測,評估橋梁結構安全性打下基礎[4]。
1 目標識別追蹤算法
以某高架橋交通監(jiān)控設備為基礎,對YOLO和DeepSORT算法框架進行二次開發(fā)[5],實現(xiàn)對橋面上的交通量提取,具體包括:車輛類型、車速、車輛位置、車道位置的識別。算法流程如圖1所示。
1.1 車輛類型分類
目前對于車輛分類全球沒有統(tǒng)一的標準,因此不同國家、不同行業(yè)部門有自己建立的標準。該文按照車輛的形狀、軸數(shù)等車輛的特征來實現(xiàn)車輛的分類。將車輛按照軸重和軸距劃分為8類,依次為Sedan car、Mini bus、bus、2A truck、3A truck、4A truck、5A truck、 6A truck。將車輛目標進行車輛標定,保存成VOC格式,將目標從選擇框中截取出來形成訓練樣本。最終數(shù)據(jù)集將車輛分為八類,如圖2所示。
1.2 車輛類型識別
車輛目標識別采用YOLOv4模型框架進行二次開發(fā),相較于在工業(yè)中應用最廣的YOLOv3,無論精度還是檢測速度都有很大提升。在COCO數(shù)據(jù)集上,可達43.5%AP,速度高達65FPS。為提高識別精度將8類車輛合并到4類,為Sedan car、Mini bus、bus、truck。取1 100個樣本照片進行標簽數(shù)據(jù)集標定,進行15 000輪權重訓練。
1.3 車輛追蹤
采用目標跟蹤算法框架DeepSort,建立了適用于城市橋梁車輛追蹤的算法。DeepSort模型將匈牙利算法、遞歸的卡爾曼濾波和逐幀的數(shù)據(jù)關聯(lián)的單假設結合起來,匈牙利算法主要是實現(xiàn)當前幀圖像目標與下一幀圖像目標的匹配功能,卡爾曼濾波可以基于目標前一時刻的位置,來預測當前時刻的位置。具體框架可以拆分為軌跡處理和狀態(tài)估計、目標指派、級聯(lián)匹配、深度特征描述器四個方面,從而實現(xiàn)較為穩(wěn)定的多目標追蹤效果。
2 車輛信息識別
2.1 車牌識別
由于借助python語言基于YOLOv4框架進行二次開發(fā)。因此,在車牌識別功能上采用基于深度學習的高性能中文車牌識別開源項目HyperLPR集成的第三方庫,同時還支持Linux、Android、iOS、Windows等各主流平臺。其檢測的車牌種類有單行藍牌、單行黃牌、新能源車牌、白色警用車牌、使館車牌、港澳車牌、教練車牌[6]。
具體的檢測流程為:
(1)使用opencv的HAAR Cascade檢測車牌大致位置。
(2)Extend檢測到的大致位置的矩形區(qū)域。
(3)使用類似于MSER的方式的多級二值化和RANSAC擬合車牌的上下邊界。
(4)使用CNN Regression回歸車牌左右邊界。
(5)使用基于紋理場的算法進行車牌校正傾斜。
(6)使用CNN滑動窗切割字符。
(7)使用CNN識別字符。
2.2 車輛計數(shù)
如圖3所示,當檢測車輛進入檢測框中進行追蹤,到離開檢測框后,停止追蹤,并將其計入車輛總數(shù)。
2.3 車道識別
目前針對車道識別的智能算法的普適性不高,該文針對不同場景通過確定各個車道像素范圍,如圖4所示,將場景分成六個部分。YOLOv4識別的車輛檢測框中心(u,v),投影到下檢測邊界框上,并對車道范圍進行判定。
2.4 車速識別
當檢測目標車輛出現(xiàn)在檢測框的邊界線L1和L2時,始末幀數(shù)分別為Ai和Aj,記錄視頻的幀頻率為FPS,即檢測車輛在檢測框中經(jīng)歷的實際時間為,檢測框的邊界線L1和L2之間對應的實際距離為L,故便可以檢測出車輛行駛的速度v:
(1)
3 軟件開發(fā)——車流量識別可視化界面
將上述基于YOLOv4和DeepSORT算法框架下進行二次開發(fā),建立橋梁交通場景中車輛的多目標識別和追蹤算法,實現(xiàn)對車輛的分類和車輛運行時空軌跡的提取,進而提取車輛的類型、車速、車道、車牌等信息[7],將提取完整的車輛運動信息集合在一個軟件開發(fā)平臺。其中,軟件中各部分的作用如下:
按鈕“選擇文件”:將監(jiān)控視頻導入“文件導入框”;
按鈕“識別”:將視頻流載入算法框架中進行交通流識別;
按鈕組合“車輛類型-車道-車速-三者綜合信息”:待視頻流處理后,可選擇車流量整體或部分信息在結果輸出框進行查看;
按鈕“結構分析”:進入結構分析模塊界面;
“結果輸出框”:根據(jù)按鈕組合“車輛類型-車道-車速-三者綜合信息”的選擇,展示車流量整體或部分信息;
“文件導入框”:展示監(jiān)控視頻信息窗口;
“結果展示框”:將車輛位置、類型等信息進行可視化。
4 結語
該文引入深度學習算法,搭建機器視覺的框架,針對橋梁中的交通場景的特點,通過對車輛信息進行分類訓練,從而實現(xiàn)對車流量的時空信息實時提取,為后期的車輛與橋梁的動態(tài)響應信號之間的耦合關系打下基礎。具體創(chuàng)新點如下:
(1)車輛目標識別采用YOLOv4模型框架進行二次開發(fā),建立細分卡車的車輛數(shù)據(jù)庫;基于計算機視覺方法建立車輛類型、車道、車速等車輛特性識別算法;項目基于錫寧路高架視頻出現(xiàn)的車輛信息進行歸納匯總將車型分成了4類,依次是 Sedan car、Mini bus、bus、truck。
(2)基于YOLOv4和DeepSORT算法框架下進行二次開發(fā)的目標識別和追蹤算法實現(xiàn)了車輛的車道識別、車速識別、車輛計數(shù)等功能。
(3)將上述搭建的智能算法集成在開發(fā)的軟件平臺,方便交互和使用。
參考文獻
[1]中華人民共和國交通運輸部. 2021年10月份公路貨物運輸量 [J]. https://xxgkmotgovcn/2020/jigou/zhghs/202111/t20211124_3627840html, 2021.10.
[2]劉賀, 臧晶. 基于機器視覺的公路流量統(tǒng)計技術研究 [J]. 科技創(chuàng)新導報, 2020(3): 2.
[3]MA X, JI K, XIONG B, et al. Light-YOLOv4: An Edge-Device Oriented Target Detection Method for Remote Sensing Images [J]. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, 2021(99): 1.
[4]馬越, 楊健, 王達磊. 杭州灣跨海大橋車輛荷載研究 [J]. 上海公路, 2019(4): 28-31+3.
[5]李永上, 馬榮貴, 張美月. 改進YOLOv5s+DeepSORT的監(jiān)控視頻車流量統(tǒng)計[J]. 計算機工程與應用, 2022(5): 271-279.
[6]肖登敏, 張帆, 李睿, 等. 一種基于機器視覺的移動式汽車警示牌[J]. 電子世界, 2020(3): 96-98.
[7]趙小明, 王新新. 一種基于機器視覺的視頻交通流檢測系統(tǒng)[J]. 信息與電子工程, 2011(2): 258-263.