周華英
摘要 車輛識別是智能交通系統中的核心技術,基于深度學習的車輛識別作為機器學習領域一個新的研究方向,其目標在于通過模擬人類大腦的分層表達結構,建立用于數據分析學習的神經網絡,從原始數據中提取出由淺層到深層逐層抽象的特征表達,來提升分類精度或預測準確性,通過收集實時交通流數據判斷道路的交通運行狀態并智能識別交通事故的發生,為道路的運營管理提供寶貴的輔助決策信息。
關鍵詞 深度學習 ?智能交通 車輛識別
人工智能(Artificial Intelligence),英文縮寫為AI。它是研究、開發用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。人工智能研究的一個主要目標是使機器能夠勝任一些通常需要人類智能才能完成的復雜工作。人工智能通過數據分析與學習,找到相對固定模板,然后通過套用模板進行“創作”和演出。本文中深度學習是機器學習的一個子領域,是人工神經網絡的另一個名字。
深度學習是指多層的人工神經網絡和訓練它的方法。一層神經網絡會把大量矩陣數字作為輸入,通過非線性激活方法取權重,再產生另一個數據集合作為輸出。這就像生物神經大腦的工作機理一樣,通過合適的矩陣數量,多層組織鏈接一起,形成神經網絡“大腦”進行精準復雜的處理,就像人們識別物體標注圖片一樣。車輛識別是智能交通系統中的核心技術,其任務是確定目標車輛屬于哪一種類別.根據區分車輛屬性的不同,車輛識別又可以細分為車色識別、車型識別、車標識別、車牌識別等。車輛識別有重要的現實意義,可以應用到不同場景。
本系統通過深度學習技術實現圖片識別,可以采集車牌、車型、位置、轄區等關鍵信息,并對信息進行傳輸、存儲和分析,實現常規管理工作。通過深度神經網絡定義檢測、識別、分類等模型,基于交通行業內的圖像大數據進行迭代訓練,生成業內專用AI模型,實現車牌、車型等多項屬性的自動識別。
1深度學習框架Keras
本文實驗環境使用深度學習框架Keras 2.2.5,由純python編寫的基于theano/tensorflow的深度學習框架。Keras自動處理核心任務并生成輸出,支持卷積神經網絡CNN和遞歸神經網絡RNN,可以在CPU和GPU上無縫運行。本文實驗使用Python 3.6版本編寫,采用GPU訓練方式,在CUDA-capable GPU上編譯運行,可以提高訓練速度,需要安裝CUDA和GPU加速庫,使用CUDA 10.0版本,cuDNN 7.6.5版本。Keras使用的依賴包主要有:numpy、scipy、pyyaml、HDF5, h5py、TensorFlow_gpu-2.0.0作為后端。
使用Keras搭建神經網絡,主要有以下幾步:選擇模型、構建網絡層,編譯、訓練、預測。Keras提供高級神經網絡 API,支持快速的實驗。能夠以最小的時間把想法轉換為實驗結果,是做好研究的關鍵。
2車輛數據標注及模型訓練
數據標注就是幫助機器去學習去認知數據中的特征。確立一個算法模型需要使用大量標注好的數據去訓練機器讓機器去學習其中的特征以達到“智能”的目的。比如本文要讓機器學習識別車輛,我們直接給機器一個車輛的圖片它是無法識別的,必須對車輛圖片進行標注打上標簽注明“這是一個車輛,什么車型,什么品牌,什么顏色,什么車牌”等特征信息,當機器獲得大量打上標簽的車輛圖片進行學習之后,再給機器一個車輛的圖片,機器就能知道這是一個車輛了,什么型號,什么顏色,什么車牌等。
本文參考CIFAR-10公開數據集進行實驗,通過數據標記助手軟件對數據集車輛圖片進行標記,形成實驗所需車輛數據集,驗證不同卷積神經網絡的分類能力,確定最優車型分類網絡,在公開數據集CompCars進行車輛識別實驗。
3基于深度學習識別模型
本文實驗采用inception-v4深度學習網絡結構,相比AlexNet、VGG等網絡結構都是通過增大網絡的深度(層數)來獲得更好的訓練效果,同時又會帶來很多負作用,比如overfit、梯度消失、梯度爆炸等。inception使用1x1的卷積來進行升降維和在多個尺寸上同時進行卷積再聚合的方法來提升訓練結果,能更高效的利用計算資源,在相同的計算量下能提取到更多的特征,從而提升訓練結果。
4模型優化及實驗結果
本實驗數據集包含20000張車輛圖像,大小為210MB。首先創建數據集,使用12000張車輛圖片進行模型訓練,4000張測試圖像和4000張驗證圖像。
本次實驗模型訓練數據集中包含常見的10種車輛品牌,包括:奧迪_A4、福特_福克斯、別克_君越、大眾_寶來、大眾_朗逸、大眾_桑塔納、豐田_凱美瑞、豐田_卡羅拉、日產_軒逸、日產_天籟。6種車身顏色,包括:白色、黑色、灰色、黃色、紅色、綠色,共12000張車輛圖片,
本實驗通過將訓練后的模型引入車輛識別驗證程序,驗證4000張圖像的目標檢測,實驗中為減小深層卷積神經網絡的計算開銷,對網絡模型參數進行優化,基于實驗確定了模型最優參數,從而以較少的網絡層數獲得較高的車輛識別精度,優化后的卷積神經網絡的車輛識別速度提升52.4%,識別精度提升33.1%。
結束語
隨著技術的發展,越來越多的深度學習開源框架展現在我們面前,使用這些框架訓練得到的模型可以直接高效地部署到交通和安防等應用領域中,促進物聯網技術的發展,不斷提高國家信息化水平。
參考文獻
[1]葉亞光.基于卷積神經網絡的車輛識別設計與實現[J].電腦知識與技術,2019,15(169-170).
[2]蔡英鳳,王海,陳龍,等.采用視覺顯著性和深度卷積網絡的魯棒視覺車輛識別算法[J].清華大學學報:自然科學版,2015,36(3):333-336.
[3]李琳輝,倫智梅,連靜,等.基于卷積神經網絡的道路車輛檢測方法[J].吉林大學學報:工學版,2017,47(2):385-391.
【課題項目】本文系2018年度煙臺汽車工程職業學院科技類課題立項項目“基于AI深度學習的車輛識別智能管理系統”的研究成果(課題編號:2018YTQK06)