陳宏彩, 程 煜,張常有
(1.河北省科學院應用數學研究所,河北石家莊 050081; 2.河北省信息安全認證工程技術研究中心,河北石家莊 050081; 3.中國科學院軟件研究所并行軟件與計算科學實驗室,北京 100190)
基于卷積神經網絡的轎車車型精細識別方法
陳宏彩1,2, 程 煜1,2,張常有3
(1.河北省科學院應用數學研究所,河北石家莊 050081; 2.河北省信息安全認證工程技術研究中心,河北石家莊 050081; 3.中國科學院軟件研究所并行軟件與計算科學實驗室,北京 100190)
在復雜交通場景中,公安和交管部門對車型識別的實時性和精度提出了更高要求。針對當前假牌、套牌、無牌車輛處理占用大量警力、檢索效率低下、非智能化等一系列問題,提出了一種基于GoogleNet深度卷積神經網絡的車型精細識別方法,設計了合理的卷積神經網絡濾波器大小和數目,優選了激活函數和車型識別分類器,構建了一個新的卷積神經網絡轎車車型精細識別模型框架。實驗結果表明,在車型精細識別測試中,所提出模型的識別率達到了97%,較原始GoogleNet模型有較大提升,而且,新模型有效地減少了訓練參數的數量,降低了模型的存儲空間。車型精細識別技術可應用于智能交通管理領域,具有重要的理論研究價值與實踐意義。
計算機神經網絡;車型識別;卷積神經網絡;精細識別;深度學習
中國機動車保有量的穩步增長,特別是私人汽車的迅猛增長,導致城市交通超負荷運轉。車輛被盜、汽車超速、超載、闖紅燈以及駕駛汽車犯罪等事件與日俱增。日益嚴重的交通問題給社會和人們的生活帶來了很大的隱患。交通卡口電子警察的快速發展在很大程度上解決了大部分涉車事件。然而,面對海量視頻圖像,執法部門在處理假牌、套牌、無牌等車輛案件時,仍然無法在短時間內找到相關車輛及線索。傳統的車型識別系統主要按照車輛的大中小對車型進行粗分類,因此,建立車輛精細識別系統在智能交通管理領域顯得尤為迫切。
車型識別是智能交通管理系統中的一項關鍵技術。雖然已有研究機構在此上投入了不少人力、物力,但是,由于車輛外觀復雜多樣,同一品牌不同車系、不同年款的車在外觀上又很相近,再加上車輛容易受到背景、光照、視角等因素的影響,所以在實際應用中一直難以找到穩定、有效的視覺特征以準確識別不同車型。
近年來,基于深度學習的相關理論和應用發展迅猛,與傳統依賴先驗知識的特征提取算法不同,深度神經網絡可在訓練數據驅動下自適應地構建特征描述,具有更高的靈活性和普適性[1]。卷積神經網絡(convolutional neural network, CNN)是深度學習的一項重要技術[2],已在圖像識別[3]、語音識別[4]、物體檢測[5]等領域取得卓越成績。1994年BOTTOU 等[6]將CNNs 用于手寫數字識別取得了很好的效果。2012 年,KRIZHEVSKY等[7]利用深層的卷積神經網絡在圖像識別數據集ImageNet 上取得最好成績。2014年FAN等[8]利用pyramid CNNs方法在人臉識別公共數據LFW上取得第1名的成績。
傳統圖像識別方法主要依賴人工設計特征,當前常用的人工提取特征方法有 SIFT[9-10],LBP[11],HOG[12]等。通常,這些特征針對特定問題有效,而且運算量大、常常需要圖像預處理工作。而CNNs方法直接輸入原始圖像,在訓練數據的驅動下通過自主學習獲取特征描述, 簡化特征模型的同時提高運算效率[1]。另外,CNNs對平移、縮放等仿射形變具有良好的抵抗能力[1],能有效克服車輛外觀多變帶來的困難。為此,利用卷積神經網絡設計相應的車型特征提取算法,并結合Softmax分類器構建車型分類器,對網絡結構進行優化調整。實驗結果顯示,該系統能顯著提高車型識別的準確率,同時保持了較高的特征提取速度。
卷積神經網絡模擬生物神經網絡,其權值共享網絡結構可產生生物視覺中的局部感受野效應,降低網絡模型復雜度、減少權值數量的同時對平移、比例縮放、傾斜等視覺形變均具有高度的抵抗能力[1]。一個基本的卷積神經網絡結構可以分為特征提取層、特征映射層以及特征池化層[13],通過不同層次結構的合理構建可以形成一個卷積神經網絡。
1) 特征提取層 給定一張大小為r×c的圖像I,利用一個大小為w×w可訓練的過濾器組K,對其進行卷積操作,s為步長, 輸出Y,大小為((r-w)/s+1)×((c-w)/s+1)。
式中:*表示卷積運算;xi是輸入圖像;kij是卷積核參數;bi是偏值。
2) 特征映射層 考慮到數據處理的復雜性,通常利用一個非線性函數作用于過濾器層,得到特征圖f:
式中,激活函數σ反映的是神經元的輸入與輸出之間的映射關系[6]。
3) 特征池化層 理論上,圖像經過卷積操作之后得到的特征可以直接作用于分類器。然而,一幅圖像經過卷積操作后的特征維度都很高,如果直接使用,在訓練分過程中容易出現過擬合現象。為了避免此類現象的發生,常常在卷積層后面對卷積特征進行下采樣(也稱為池化)。經過池化后的圖像特征維數會極大地降低。
卷積神經網絡是一種全監督的深度學習模型[14],在訓練樣本之前需要對樣本做標簽,也要初始化權重。CNN網絡訓練部分包含以下兩階段。
1)正向傳播階段:將訓練樣本輸入CNN網絡得到實際輸出;
2)反向傳播階段[15]:計算實際輸出與理想輸出間的誤差,通過反向傳播算法逐層傳播誤差,并更新各層權值。

傳統的圖像識別中常使用人工手動設計特征,這在識別同一物體的不同特征時可能效果顯著,但對于不同物體識別時效果并不太理想。卷積神經網絡可將原始數據直接作為輸入,避免了傳統識別算法中的數據預處理過程。本文提出基于卷積神經網絡的車型精細識別模型,如圖1所示。
CNN模型訓練過程包括構建CNN網絡和訓練CNN網絡。
本文采用的基礎網絡結構是22層的GoogleNet網絡[16]。第1層為網絡的輸入I,因為CNN網絡能夠自動處理并提取圖像特征,將具有單個車輛的原始圖像直接作為網絡模型的輸入。網絡的中間結構包括卷積層和下采樣層。
首先,分析卷積神經網絡結構中卷積核規模對網絡模型精度的影響。如果設置的卷積核數量較多,那么提取的車輛圖像特征也多。但是,卷積核數量并不是越多越好。設置過多的卷積核數量,一方面提取的特征可能會有重疊,延長訓練和計算時間;另一方面,在訓練網絡模型時,很可能產生過擬合現象[17]。如果設置卷積核個數為64個,可以算得僅一層網絡就需要內存4.19 MB,若卷積神經網絡深度為7層,前向傳播就需要30 MB左右,加上反向傳播則需要60 MB,處理一張圖像需要內存為60 MB,若設定批處理的圖像個數為50,則需要3 GB內存,所以卷積核個數的設定要結合所使用的計算機硬件設施。在本文中,筆者探索了幾種不同的卷積核配置對模型識別精度的影響。由于卷積核數量較多,僅列出模型前幾層和后幾層卷積核數目,實驗結果如表1所示。根據測試情況,在車型識別模型中,選擇表1中的第3個卷積核數目設置方案。

表1 不同卷積核數量在CAR-240數據庫上的訓練結果
在卷積神經網絡結構中,不僅卷積核個數對識別精度有影響,而且卷積核大小的設置也很關鍵。理論上,卷積核越小,提取的特征越精細。但是,實際采集的圖像可能會受到不同程度的噪聲污染,如果卷積核設置過小,容易提取到一些雜亂無章的信息。通過實驗驗證,本文車型識別模型中卷積核大小設置為3×3,5×5,7×7。圖2是第1個卷積層濾波器的權重可視圖。從圖2中可以看出,車輛圖像經過卷積濾波后能夠提取目標的邊緣、角點等底層信息。
在網絡的輸出層中,用于訓練的車型圖片經過標注后有240類,標注的號碼從0到239,每一號碼與具體的車輛型號是一一對應的。因此,最后基于深度卷積神經網絡的模型輸出節點為240。
在卷積神經網絡結構中,激活函數對模型的收斂性影響很大。設置合理的激活函數不僅可以提高目標識別的精度,而且也會加快網絡模型訓練的收斂速度。常用的激活函數有Sigmoid[18],Tanh[19],ReLU(Rectified Linear Units)[20-21]等。傳統神經網絡中常使用Sigmoid和Tanh作為激活函數。然而,這兩種函數的輸出不具備稀疏性[18],而且在2010年GLOROT 等[22]發現Sigmoid函數在訓練過程中會聚集在0區域,導致訓練過程比較長。激活函數ReLU是線性的、非飽和的,對于隨機梯度下降的收斂有巨大的加速作用[7],而且只需要一個閾值就可以得到激活值,其函數圖像如圖3所示,函數表達式為


從ReLU函數圖(圖3)可以看出,當輸入值小于0時,輸出值等于0,使用這樣的激活函數會帶來網絡的稀疏性。而當網絡層的輸入值大于0時,輸出值保持原值。這樣在訓練網絡模型時會加快其收斂速度。ReLU函數的導函數如式(4)所示:
當輸入值大于0時,ReLU的導數輸出值為1。而輸入值小于0時,輸出結果為0。在網絡模型反向傳播數據時,這個激活函數能夠避免梯度消失的問題。綜合ReLU激活函數的特點,選擇ReLU函數作為車型識別網絡模型的激活函數。
在卷積神經網絡應用于車型圖像分類任務時,在神經網絡最后一層全連接層后接一個Softmax分類器用于計算車輛屬于哪個具體車型的概率,計算公式為


為了驗證算法的有效性,首先構建一個用于精細車型識別的圖像數據庫。以交通卡中的車輛圖像為識別對象。為確保實驗的準確和可靠性,采用ImageNet[19]標注方式,自建了一個可供車輛識別研究及應用的標準數據庫,該數據庫包含240類不同品牌、車系、年款的小轎車車型圖像,共采集不同尺度、光照、角度的車輛圖片58 265張,本文將此車輛庫命名為CAR-240。每類車型樣本數量在幾十到幾百張不等。由于每張圖片的大小不一,為了滿足卷積神經網絡的輸入要求,在本文實驗中將車型圖像大小歸一化為256×256。在每種車型樣本中,隨機選取本車型樣本數量的75%作為訓練樣本,其余的作為測試樣本。部分車型圖片見圖4,圖4左側列出了幾款車輛的具體品牌、車系、年款,右側是每款車型的樣本圖。

車型識別實驗測試是在裝有一塊NVIDIA-K20c GPU的計算機上完成的。以樣本車型中的奧迪A8車型為例(如圖5 a)所示),經過卷積神經網絡特征提取后的第1層卷積特征如圖5 b)所示。從提取的車輛特征圖可以看出,經過第1層的卷積層特征提取,車輛的邊緣輪廓清晰地被呈現出來。
模型訓練過程中采用隨機梯度下降法,設置初始化的學習率等于0.01,每進行10 000次迭代將學習率下降,采用步進衰減策略,衰減因子設置為0.000 5,沖量值等于0.9。車型識別模型的訓練結果如圖6所示,最終得到平均驗證準確率為97.8%。
隨機選取測試樣本集中的幾類車型,其中包括同一品牌、車系下不同年代的車型,每類車型選取500張,測試車型精細識別率情況。表2給出了原始GoogleNet模型和本文提出的車型識別模型在車型識別中的對比結果。實驗結果表明,本文建立的卷積神經網絡模型在車型精細識別上取得了較好的效果,車型精細識別正確率平均在97%,較原始GoogleNet模型提升2.3%。通過對本文方法識別錯誤樣本進行分析得知,即便是被識別錯誤的車型,也是被識別為同一品牌下的不同車系或是同一車系的不同年款。這些被識別錯誤的車輛其外觀都十分相似,通常僅在車輛的某些部件上有細微差別。

表2 部分不同車型識別的實驗結果

車 型GoogleNet模型識別率/%本文方法識別率/%奧迪_A6L_201194.296.4奧迪_A4L_201595.297.7寶馬_5系97.499.8標致_20795.697.7大眾_POLO_201395.697.7車 型GoogleNet模型識別率/%本文方法識別率/%尼桑_逍客97.399.8豐田_凱美瑞_200695.898.4馬自達_6_2011-201589.091.6長城_哈佛H6_201194.296.4平均識別率94.797.0
針對現有車型識別方法中無法對車輛品牌、車系、年款等綜合信息進行精細識別的問題,建立了一種新的卷積神經網絡結構的車型精細識別模型。新模型建立在基礎模型GoogleNet框架之上,設計了一個適度規模大小的網絡結構,通過實驗測試選取了最佳的濾波器大小和數目,分析并優選了用于車型識別的激活函數和分類器,最終構建了一個適用于轎車車型精細化識別的新的卷積神經網絡模型。實驗結果表明,建立的車型識別模型在車型精細化識別測試中識別率達到了97%,與經典的卷積神經網絡模型GoogleNet方法相比,不僅在識別效果上有所提高,而且訓練參數大幅度減少,訓練所需的時間更短。該方法能夠準確識別車輛品牌、車系和年款,可幫助車管所、交管部門實現假牌車、套牌車的自動檢測,準確率高,實時性強。但是,目前公開的車型數據庫信息較少,車輛更新速度比較快,而手工標注車型的成本較大,導致該方法在實際應用中存在一定的局限性。因此無監督或半監督的車型識別方法將是今后的一個研究方向。
/
[1] 鄧柳, 汪子杰. 基于深度卷積神經網絡的車型識別研究[J]. 計算機應用研究, 2016, 33(3): 930-932.
DENG Liu, WANG Zijie. Deep convolution neural networks for vehicle classification[J]. Application Research of Computers, 2016, 33(3):930-932.
[2] 李彥冬, 郝宗波, 雷航. 卷積神經網絡研究綜述[J]. 計算機應用,2016,36(9): 2508-2515.
LI Yandong, HAO Zongbo, LEI Hang. Survey of convolutional neural network[J]. Journal of Computer Applications, 2016, 36(9): 2508-2515.
[3] SIMONYAN K,ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[C]//ICLR.[S.l.]:[s.n.],2015:1-14.
[4] HAN K, WANG D L. Neural network based pitch tracking in very noisy speech[J]. IEEE/ACM Transactions on Audio, Speech and Language Processing(TASLP), 2014, 22(12): 2158-2168.
[5] 劉洪公,王學軍,李冰瑩,等. 基于卷積神經網絡的橋梁裂縫檢測與識別[J]. 河北科技大學學報,2016, 37(5): 485-490.
LIU Honggong, WANG Xuejun, LI Bingying, et al. Detection and recognition of bridge crack based on convolutional neural network[J]. Journal of Hebei University of Science and Technology, 2016, 37(5): 485-490.
[6] BOTTOU L, CORTES C, DENKER J S, et al. Comparison of classifier methods: A case study in handwritten digit recognition[C]//Proceedings of the 12th IAPR International. [S.l.]: IEEE Press, 1994: 77-82.
[7] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[C]//Proceedings of the 25th International Conference on Neural Information Processing Systems. [S.l.]:[s.n.],2012: 1097-1105.
[8] FAN Haoqiang, CAO Zhimin, JIANG Yuning, et al. Learning deep face representation[EB/OL]. https://arxiv.org/pdf/1403.2802.pdf,2014-03-12.
[9] GE Fengxiang, SHI Yishu, SUN Bo, et al. Sparse representation based classification by using PCA-SIFT descriptors[C]// 2014 4th IEEE International Conference on Information Science and Technology(ICIST). Shenzhen: IEEE, 2014: 429-432.
[10] 馮玉朋, 曾慶喜, 馬杉, 等. 無人駕駛車輛基于角點和斑點的特征提取算法[J]. 河北科技大學學報, 2017, 38(3): 237-243.
FENG Yupeng, ZENG Qingxi, MA Shan, et al. A feature extraction algorithm based on corner and spots in self-driving vehicles[J]. Journal of Hebei University of Science and Technology, 2017, 38(3): 237-243.
[11] RANJAN R, PATEL V M, CHELLAPPA R. A deep pyramid deformable part model for face detection[C]// 2015 IEEE 7th Internati-onal Conference on Biometrics Theory, Applications and Systems (BTAS). Arlington: IEEE, 2015: 1-8.
[12] DELORME A, MULLEN T, KOTHE C, et al. EEGLAB, SIFT, NFT, BCILAB, and ERICA: New tools for advanced EEG processing[J]. Computational Intelligence and Neuroscience, 2011, 2011:1-12.
[13] 周飛燕, 金林鵬, 董軍. 卷積神經網絡研究綜述[J]. 計算機學報, 2017, 40(6): 1229-1251.
ZHOU Feiyan, JIN Linpeng, DONG Jun. Review of convolutional neural network[J]. Chinese Journal of Computers, 2017, 40(6): 1229-1251.
[14] 何克磊, 史穎歡, 高陽,等. 一種基于原型學習的多示例卷積神經網絡[J]. 計算機學報, 2017, 40(6):1265-1274.
HE Kelei, SHI Yinghuan, GAO Yang, et al. A prototype learning based multi-instance convolutional neural network[J].Chinese Journal of Computers, 2017, 40(6): 1265-1274.
[15] RAZAVIAN A S, AZIZPOUR H, SULLIVAN J, et al. CNN features off-the-shelf: An astounding baseline for recognition[C]// Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. Washington DC: IEEE Computer Society, 2014:512-519.
[16] SZEGEDY C, LIU W, JIA Y Q, et al. Going deeper with convolutions[C]// IEEE Conference on Computer Vision and Pattern Recognition(CVPR). Boston: IEEE, 2016:1-9.
[17] ZBONTAR J, LECUN Y. Stereo matching by training a convolutional neural network to compare image patches[J]. Journal of Machine Learning Research,2016, 17:1-32.
[18] AGOSTINELLI F, HOFFMAN M D, SADOWSKI P J, et al. Learning Activation Functions to Improve Deep Neural Networks[EB/OL]. https://arxiv.org/pdf/1412.6830.pdf,2015-12-21.
[19] RUSSAKOVSKY O, DENG J, SU H, et al. ImageNet large scale visual recognition challenge[J]. International Journal of Computer Vision, 2015, 115(3): 211-252.
[20] WANG Jinjun, YU Kai,LV Fengjun, et al. Locality-constrained linear coding for image classification[C]// IEEE Conference on Computer Vision and Pattern Recognition. San Francisco: IEEE, 2010: 3360-3367.
[21] DAHL G E, SAINATH T N, HINTON G E. Improving deep neural networks for LVCSR using rectified linear units and dropout[C]// 2013 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Vancouver: IEEE, 2013: 8609-8613.
[22] GLOROT X, BENGIO Y. Understanding the difficulty of training deep feedforward neural networks[J]. Proceedings of Machine Learning Research, 2010, 9:249-256.
Fine-grained vehicle type recognition based on deep convolution neural networks
CHEN Hongcai1,2, CHENG Yu1,2, ZHANG Changyou3
(1.Hebei Academy of Sciences Institute of Applied Mathematics, Shijiazhuang, Hebei 050081, China; 2. Hebei Authentication Technology Engineering Research Center, Shijiazhuang, Hebei 050081, China; 3. State Key Laboratory of Computing Science, The Chinese Academy of Sciences, Beijing 100190, China)
Public security and traffic department put forward higher requirements for real-time performance and accuracy of vehicle type recognition in complex traffic scenes. Aiming at the problems of great plice forces occupation, low retrieval efficiency, and lacking of intelligence for dealing with false license, fake plate vehicles and vehicles without plates, this paper proposes a vehicle type fine-grained recognition method based GoogleNet deep convolution neural networks. The filter size and numbers of convolution neural network are designed, the activation function and vehicle type classifier are optimally selected, and a new network framework is constructed for vehicle type fine-grained recognition. The experimental results show that the proposed method has 97% accuracy for vehicle type fine-grained recognition and has greater improvement than the original GoogleNet model. Moreover, the new model effectively reduces the number of training parameters, and saves computer memory. Fine-grained vehicle type recognition can be used in intelligent traffic management area, and has important theoretical research value and practical significance.
computer neural network; vehicle recognition; convolution neural networks; fine-grained recognition; deep learning
1008-1542(2017)06-0564-06
10.7535/hbkd.2017yx06009
TP183
A
2017-08-28;
2017-10-14;責任編輯:陳書欣
國家自然科學基金(61379048,61672508);河北省重點研發計劃項目(17395602D);河北省三三三人才工程項目(2016022577-7)
陳宏彩(1981—),女,河北灤南人,助理研究員,主要從事模式識別及機器視覺方面的研究。
E-mail:chenhc88@163.com
陳宏彩,程 煜,張常有.基于卷積神經網絡的轎車車型精細識別方法[J].河北科技大學學報,2017,38(6):564-569.
CHEN Hongcai,CHENG Yu,ZHANG Changyou.Fine-grained vehicle type recognition based on deep convolution neural networks[J].Journal of Hebei University of Science and Technology,2017,38(6):564-569.