王茜,張海仙(四川大學計算機學院,四川 成都 610065)
基于深度神經網絡的汽車車型識別
王茜,張海仙
(四川大學計算機學院,四川成都610065)
深度學習的概念起源于人工神經網絡,是指具有多層結構的神經網絡。深度學習主要從仿生學的角度模仿神經系統的層次結構,低層次表示細節,高層次表示抽象的數據結構特征,通過逐層抽象,高度挖掘數據的本質信息,從而達到學習的目的。
在過去,多層神經網絡面臨著訓練困難的問題,一方面是數據集限制,在不足的數據上進行訓練會導致過擬合;另一方面是網絡復雜性的影響。常用的反向傳播算法(BP)也存在陷入局部最優、梯度彌散等問題。這無疑阻礙了神經網絡的進一步研究。2006年,Hinton提出的貪婪的逐層訓練算法為深度學習取得了突破性的進展[1]。貪婪的逐層訓練算法解決了深度學習在訓練上的難點,并且多層次的神經網絡具有優異的學習能力,得到的特征具有更好的表達能力,從而可以更好地進行可視化和分類。
目前,典型的深度學習的網絡模型有三類,卷積神經網絡(Convolutional Neural Network)模型、受限莫爾茲曼(Restricted Boltzmann Machines)模型以及堆棧式自動編碼機(Stacked Auto-encoder Network)模型。人工神經網絡通過層與層完全連接的方式搭建起來,引入了龐大的參數空間,尤其是在輸入尺寸比較大的情況下,網絡的完全連接給計算機帶來了存儲和計算的沉重負擔。而自然圖像具有一個重要的特性:統計不變性(穩定性)。同一圖像的不同區域具有相同的統計特性,這意味著我們在圖像的部分區域學到的特征可以應用到整個圖像中。卷積神經網絡通過局部連接的方式,共享權值,進而有效地解決完全連接的問題,這也使卷積神經網絡在圖像處理方面具有獨特的優越性。
傳統的車型識別技術包括車輛檢測分割、特征提取與選擇、模式識別等處理。這類技術面臨著諸多難點:如何在復雜背景下分割出完整的目標車輛區域是車型識別的前提和基礎,圖1從各個角度下拍攝的汽車圖片,從上到下依次為SUV、皮卡車、面包車以及小轎車而目標車輛分割的質量直接關系著最后車型分類的結果;如何在汽車的眾多特征中選擇具有代表性的特征,并將其轉化成有效的參數也格外重要;在得到特征參數后,如何正確選擇和設計分類器也直接影響著最后識別的準確率。在本文中,我們的神經網絡采用原始圖像作為網絡的輸入,原始數據通過由卷積層、完全連接層以及Softmax層組成的深度神經網絡進行處理,省去了圖像分割、手工提取特征等步驟。

表1 VGG16網絡配置

表2 AlexNet網絡配置
我們數據集包含運動型多功能車(SUV)、皮卡車、面包車以及小轎車四類,訓練集和測試集分別包含998張和248張圖像。該數據集是從各個角度下拍攝的汽車圖像,圖像大小不統一,背景復雜,目標車輛在整個圖像中所占比例相差較大,這些因素大大增加了車型識別的難度。
為了保持網絡輸入大小一致性,我們將原始圖像調整為統一的256×256×3尺寸。然后,我們計算出所有圖像RGB三個通道的均值,對輸入數據進行0均值標準化處理。在網絡訓練測試時,選取224×224×3的樣本作為輸入。

圖1
本文采用文獻[2]中提出的深度神經網絡VGG16。VGG16網絡在ILVRC 2014(ImageNeLarge-Scale Visu-al Recognition Challenge 2014)挑戰賽中獲得第一名。該網絡主要包含5個堆棧式的卷積神經網絡ConvNet,3個完全連接層以及1個Softmax層,是一個“網絡中的網絡”架構。每個ConvNet由多個卷積層組成,后面緊跟著Max-Pooling層。在卷積和池化之后,經過3層的完全連接,最后一個完全連接層的輸出作為Softmax層的輸入,生成車型分類的結果。該網絡增加了非線性的ReLU層,卷積層和完全連接層的輸出都經過ReLU的處理,這可以大大縮短了網絡訓練的時間。此外,該網絡還使用一種正則化方法Dropout,避免在完全連接層上出現過擬合(Overfitting)的現象。

表3 VGG16、AlexNet以及KNN分類結果
而另外一個網絡Alexnet[3],該網絡相比于VGG簡單,該網絡主要由5個卷積層,3個完全連接層和Softmax層組成,部分卷積層后緊跟著Max-Pooling層。該網絡同樣應用了非線性的ReLU層,重疊池化(Overlapping Pooling)的方式在某種程度上降低了過擬合的幾率。
我們的深度神經網絡VGG16和AlexNet搭建在Caffe框架,運行在GeForce GTX TITAN X GPU工作站,運算效率很高。單一的網絡訓練只需要2個小時,測試一張圖片僅需要大約0.2秒。除了使用網絡進行訓練和測試外,我們還采用了經典的分類算法KNN[4]對車型進行分類,表2為我們的實驗結果。從表中可以看出,VGG16網絡對汽車車型分類有最好的表現,準確率高達97.6%,其次為AlexNet網絡,為93.0%,而傳統的KNN算法對于背景復雜的圖片,分類能力最弱,僅有50.4%。圖2為VGG16網絡錯誤分類的個別圖像,從圖中可以看出,面包車是完全正確分類的。錯誤分類的三個SUV車型中,第一個是因為車型結構太類似皮卡車,第二個是由于車的顏色由兩部分組成,而紅色部分剛好與皮卡車車型雷同,第三個的背景混入了其他車,這對分類結果也造成了一定影響。對于圖像中僅包含車頭的車型識別,其本身也存在一定難度,不同車型可能從正面角度觀看的差異性不大,人也可能做出錯誤判斷。
本文主要采用深度學習方法,結合先進的深度學習框架Caffe和強大計算能力的GPU,對四類汽車進行車型識別。實驗結果顯示,VGG16網絡的準確率最高,而傳統的經典分類算法準確率只有VGG16的一半左右。由此可見,深度神經網絡具有強大的學習能力,在圖像分類問題上具有強大的優勢。在今后的工作中,我們會嘗試調整深度神經網絡的結構,將其應用到更多類型的圖像分類問題中去。

圖2 VGG16預測錯誤樣本
[1]Hinton G E,Osindero S,Teh Y W.A Fast Learning Algorithm For Deep Belief Nets[J].Neural Computation,2006,18(7):1527-1554.
[2]Krizhevsky A,Sutskever I,Hinton G E.ImageNet Classification with Deep Convolutional Neural Networks[J].Advances in Neural Information Processing Systems,2012,25:2012.
[3]Simonyan K,Zisserman A,Simonyan K,et al.Very Deep Convolutional Networks for Large-Scale Image Recognition[J].Eprint Arxiv,2014.
[4]K.P Soman,Shyam Diwakar,V.Ajay.Insight into Data Mining Theory and Practice.China Machine Press.
Deep Learning;Vehicle Recognition;Convolutional Neural Network
The Depth of Vehicle Recognition Based on Neural Network
WANG Qian,ZHANG Hai-xian
(College of Computer Science,Sichuan University,Sichuan 610065)
1007-1423(2015)35-0061-04
10.3969/j.issn.1007-1423.2015.35.013
王茜(1990-),女,四川眉山人,在讀碩士研究生,研究方向為機器智能
張海仙(1980-),女,河南鄧州人,博士研究生,副教授、研究方向為機器智能,Email:zhanghaixian@scu.edu.cn
2015-11-12
2015-12-10
研究基于深度學習的車型自動識別技術,運用深度神經網絡對在各個角度下拍攝的具有復雜背景的汽車圖像進行網絡訓練,從而達到車輛車型的自動識別的目的。采用先進的深度學習框架Caffe和具有強大計算能力的GPU,使用深度神經網絡VGG16和AlexNet,分別對汽車圖像進行網絡訓練與測試,并通過與傳統的分類算法,K最近鄰進行對比研究。實驗顯示,VGG16網絡模型準確率高達97.58%,在汽車車型識別問題上具有很大優勢。
深度學習;車型識別;卷積神經網絡
四川省科技計劃項目(No.2014GZ0005-5)
Studies the recognition of vehicle types based on deep learning methods.Deep neural network is trained to classify automobile images which are shot from different angles with complex background.Uses the cutting-edge Deep Learning architecture,Caffe and a powerful computational platform,GPU.VGG16 network and AlexNet network are trained and tested for this task respectively.Moreover,applies the classical algorithm,K-Nearest Neighbor for comparison.The result suggests that VGG16 network outperform other methods by a big margin with the accuracy of 97.58%.