朱東濤 ,陳杰 ,楊星 ,邵慧 ,李釗
(1.安徽建筑大學(xué) 電子與信息工程學(xué)院,安徽 合肥 230601;2.電子工程學(xué)院,安徽 合肥 230037;3.脈沖功率激光技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230037)
交通標(biāo)志識(shí)別是先進(jìn)駕駛輔助系統(tǒng)(Advanced Driver Assistance Systems,ADAS)的主要任務(wù)之一,是自動(dòng)駕駛汽車不可或缺的一部分[1]。交通標(biāo)志重要特征之一在于設(shè)計(jì)的簡(jiǎn)單性,便于人眼識(shí)別。首先,交通標(biāo)志形狀設(shè)計(jì)簡(jiǎn)單,如三角形、圓形、矩形或多邊形;其次,顏色構(gòu)成簡(jiǎn)單,由紅、綠、黑、白、黃組成;最后,其含義基本上是從象形符號(hào)中提取的。盡管標(biāo)志設(shè)計(jì)對(duì)于駕駛員來(lái)說(shuō)是清晰和有差別的,但在交通標(biāo)志識(shí)別系統(tǒng)實(shí)際應(yīng)用中存在著一些挑戰(zhàn),例如陰影、距離、天氣條件及標(biāo)志的褪色等因素。
識(shí)別目標(biāo)常用的方法是提取每一個(gè)目標(biāo)某些特征,然后進(jìn)行模型訓(xùn)練,并根據(jù)這些特征進(jìn)行分類。特征提取常用方法有HOG[2]、SIFT[3]和Fisher vector[4]等,均能實(shí)現(xiàn)圖像空間的正確分類。在大規(guī)模的目標(biāo)識(shí)別過(guò)程中,這些方法可能會(huì)造成目標(biāo)非線性分離。因此,需要非線性模型如支持向量機(jī)[5]、隨機(jī)森林[6]和神經(jīng)網(wǎng)絡(luò)[7]學(xué)習(xí)非線性決策空間。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)是一種學(xué)習(xí)提取這些特征的非線性函數(shù)。Redmon[8]等人提出了YOLO網(wǎng)絡(luò)模型,能實(shí)時(shí)的分類9000多種目標(biāo),但是網(wǎng)絡(luò)的精度不夠高,訓(xùn)練模型比較麻煩。He[9]等人設(shè)計(jì)出一種在ImageNet數(shù)據(jù)集上超出了人類的表現(xiàn)的卷積模型。但上述網(wǎng)絡(luò)的計(jì)算效率不高,且在硬件上實(shí)現(xiàn)需要大量的乘法運(yùn)算。ADAS具有有限的計(jì)算能力且必須執(zhí)行各種任務(wù),交通標(biāo)志識(shí)別消耗盡可能少的處理時(shí)間以便立即釋放處理單元是至關(guān)重要的。
針對(duì)上述問(wèn)題,我們提出了新的卷積神經(jīng)網(wǎng)絡(luò)模型,采用躍層的方法,提取圖像中底層的局部信息和高層的全局信息,同時(shí)為了精細(xì)識(shí)別交通標(biāo)志,采用不同尺度的雙通路作為輸入,并設(shè)計(jì)對(duì)應(yīng)尺寸的卷積核進(jìn)行運(yùn)算,增強(qiáng)魯棒性并減少下采樣對(duì)圖像的影響。雙通路輸入模型獲取豐富的特征,增強(qiáng)了卷積神經(jīng)網(wǎng)絡(luò)的非線性表達(dá)能力。利用這些特征分別訓(xùn)練網(wǎng)絡(luò)分類器,自適應(yīng)地調(diào)整不同躍層卷積網(wǎng)絡(luò)在分類器中的權(quán)重,共同構(gòu)建該卷積神經(jīng)網(wǎng)絡(luò)模型輸出,完成交通標(biāo)志的識(shí)別。大量的實(shí)驗(yàn)表明本文算法在識(shí)別任務(wù)中識(shí)別率和魯棒性優(yōu)于經(jīng)典算法。
兩種尺度的雙通路躍層卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),如圖1所示。其中C1、C3、C1'、C3'為卷積層,S2、S4、S2'、S4'為池化層[10],fc1、fc2為全連接層。
圖1 雙通路躍層卷積神經(jīng)網(wǎng)絡(luò)模型
由圖1可知,通道一中池化層S2的連接方式不同與傳統(tǒng)方式。一方面,S2得到的特征圖(feature map)轉(zhuǎn)換成特征向量;另一方面,將S2的特征圖繼續(xù)進(jìn)行卷積運(yùn)算得到卷積層C3。最終將特征圖轉(zhuǎn)換成特征向量,并作為分類器的輸入。使用兩種不同尺寸的雙通路輸入,卷積和池化操作兩通路并行處理,在全連接層兩通路合并。大尺度的輸入卷積后得到特征圖更具有全局特性,而小尺寸則獲得局部特征的特征圖。不同的尺度的卷積核,得到更為豐富的特征圖,這些特征圖為圖片提供了較高的辨別率,分類效果明顯優(yōu)于單一尺度的。
在訓(xùn)練過(guò)程中,首先將訓(xùn)練樣本隨機(jī)分為幾批,每批含有相同數(shù)量的樣本。本文批量大小選擇為128,使用隨機(jī)梯度下降訓(xùn)練CNN,對(duì)于每次迭代,分批發(fā)送到網(wǎng)絡(luò)進(jìn)行訓(xùn)練。直至達(dá)到最大迭代次數(shù),訓(xùn)練過(guò)程才結(jié)束。
在測(cè)試過(guò)程中,將測(cè)試樣本發(fā)送到訓(xùn)練好的網(wǎng)絡(luò)中,并在輸出向量中找到最大值來(lái)獲得預(yù)測(cè)標(biāo)簽。訓(xùn)練和測(cè)試過(guò)程如圖2所示。
圖2 雙通路躍層卷積神經(jīng)網(wǎng)絡(luò)算法流程圖
在訓(xùn)練之前,用不同的隨機(jī)數(shù)對(duì)所有的權(quán)值進(jìn)行初始化。為保證權(quán)值不能過(guò)大而進(jìn)入飽和狀態(tài),進(jìn)而導(dǎo)致訓(xùn)練的失敗,選取較小隨機(jī)數(shù)。
2.2.1 訓(xùn)練的步驟
第一階段,前向傳播階段:
1)在交通標(biāo)志數(shù)據(jù)集中選取訓(xùn)練集輸入網(wǎng)絡(luò)。
2)通過(guò)前向算法計(jì)算實(shí)際輸出類別。
第二階段,反向傳播階段:
1)計(jì)算輸出層誤差,即將前面已計(jì)算的實(shí)際類別與真實(shí)的交通標(biāo)志對(duì)比,求誤差。
2)反向誤差傳播,計(jì)算每一層誤差。
3)使用代價(jià)函數(shù),調(diào)整權(quán)矩陣。
2.2.2 訓(xùn)練的具體公式推導(dǎo)
1)輸入訓(xùn)練樣本的集合;
2)對(duì)每一個(gè)訓(xùn)練樣本x:設(shè)置對(duì)應(yīng)激活ax,l,并執(zhí)行下面的步驟;
前向傳播:對(duì)每個(gè)l=2,3,…,L計(jì)算zx,l=wlax,l-1+bl和ax,l=σ (zx,l),其中σ (·)為激活函數(shù)。
輸出誤差δx,L:計(jì)算向量δx,L= aC。 σ'(zL),其中。表示Hadamard乘積,即按元素的乘積;aC表示偏導(dǎo)數(shù)C/aLj。
反向傳播誤差:對(duì)每個(gè)l=L-1,L-2,…2計(jì)算
3)梯度下降:對(duì)每個(gè)l=L-1,L-2,…2根據(jù)更新權(quán)重和偏置。
wl→wl-更新權(quán)重和偏置,其中α為學(xué)習(xí)率,m為小批量的數(shù)據(jù)大小,上式為深度學(xué)習(xí)的必要條件。
4)特征融合:F(n)=an·X+(1-an)Y,其中X、Y分別為通路一和通路二的特征,an表示交通標(biāo)志的權(quán)重系數(shù)。
本文所用的計(jì)算機(jī)配置為CPU Intel(R)Core(TM)i5-3230 2.60 GHz,Ubuntu 14.04操作系統(tǒng),顯卡為NVIDIA GEFORCE GT650M,顯存2 GB,GPU并行加速計(jì)算,內(nèi)存8G,硬盤(pán)為7200 r/s。
圖3 GTSRB數(shù)據(jù)集一些例子
實(shí)驗(yàn)采用德國(guó)交通標(biāo)志數(shù)據(jù)集(GTSRB)評(píng)估本文方法。該數(shù)據(jù)集包含復(fù)雜的場(chǎng)景39209個(gè)訓(xùn)練和12630個(gè)測(cè)試圖片以及交通標(biāo)志的真實(shí)邊界框和真實(shí)標(biāo)簽。圖片的尺寸從15×15到250×250大小不等,如圖3所示。圖片由駕駛時(shí)安裝在汽車上的相機(jī)拍攝,捕獲的交通標(biāo)志圖像包含各種具有挑戰(zhàn)性的問(wèn)題,包括由于汽車運(yùn)動(dòng)引起的模糊效應(yīng),傾斜,由于不同的天氣條件導(dǎo)致的亮度變化,圖像中的交通標(biāo)志的非常小的尺寸和遮擋。由于本文使用的卷積神經(jīng)網(wǎng)絡(luò),通路一將圖片大小調(diào)整為32×32,通路二裁去邊緣,保留交通標(biāo)志的內(nèi)部指示信息,大小調(diào)整為24×24。
3.2.1 參數(shù)設(shè)置
該網(wǎng)絡(luò)包括2個(gè)卷積層和2個(gè)池化層,是一種輕量級(jí)的網(wǎng)絡(luò),卷積核的大小為5×5,池化層大小為2×2。激活函數(shù)是修正線性單元(rectified linear unit,ReLU)。在卷積層后加入局部響應(yīng)歸一化層(LocalResponseNormalization,LRN),采用隨機(jī)梯度下降法來(lái)訓(xùn)練網(wǎng)絡(luò)。
表1 躍層卷積神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置
其中,ks表示卷積核的尺寸,nm表示特征圖的數(shù)量,ss表示移動(dòng)的步長(zhǎng),flatten將數(shù)據(jù)向量扁平化,Concat表示數(shù)據(jù)連接起來(lái),nn表示全連接層的輸出的數(shù)量。
3.2.2 實(shí)驗(yàn)結(jié)果與分析
躍層卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練如圖4所示,每一次迭代結(jié)束,記錄測(cè)試網(wǎng)絡(luò)的代價(jià)函數(shù)和精度,其中圖4(a)表示GTRSB訓(xùn)練集和測(cè)試集的代價(jià)函數(shù)值,圖4(b)為訓(xùn)練集和測(cè)試集的精度,可見(jiàn)它們?cè)?0次迭代后接近收斂。在飽和狀態(tài)時(shí)訓(xùn)練集明顯要優(yōu)于測(cè)試集,我們可以增加訓(xùn)練集數(shù)量減少這種差距。對(duì)比傳統(tǒng)的CNN[11][12],本文訓(xùn)練網(wǎng)絡(luò)的收斂迭代次數(shù)少,識(shí)別精度更高,這是由于在全連接層匯集低層特征圖和高層特征圖,分類特征較傳統(tǒng)的網(wǎng)絡(luò)豐富許多,因此網(wǎng)絡(luò)表現(xiàn)更為優(yōu)秀。
圖4 躍層卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練測(cè)試曲線
3.3.1 參數(shù)設(shè)置
雙通路躍層卷積神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置如表2。
表2 雙通路躍層卷積神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置
3.3.2 實(shí)驗(yàn)結(jié)果與分析
由圖5可見(jiàn)采用雙通路的躍層卷積神經(jīng)網(wǎng)絡(luò)(DCLS-CNN)識(shí)別精度明顯要比單通路LS-CNN高。由表1與表2可知,網(wǎng)絡(luò)的卷積核數(shù)并沒(méi)有增加,而對(duì)通路二的截取交通標(biāo)志核心區(qū)域,輸入尺寸變小。雙通路輸入提升了算法的魯棒性,將通路一和通路二的特征圖融合起來(lái)進(jìn)行交通標(biāo)志分類,此時(shí)全連接層具有更為有用的特征信息。算法的核心信息進(jìn)一步的增強(qiáng),且計(jì)算量并未增加,故算法的識(shí)別效果要優(yōu)于單通路的LS-CNN。
圖5 單雙通道躍層卷積神經(jīng)網(wǎng)絡(luò)測(cè)試精度曲線
各類算法對(duì)比結(jié)果如表3所示,Cires,An[13]等人提出Committee of CNNs算法精度高,但訓(xùn)練時(shí)間長(zhǎng),需要進(jìn)行大量的預(yù)處理;人工方法[14][15]盡管訓(xùn)練時(shí)間短,但識(shí)別率并不高。本文提出的算法解決了識(shí)別率低,訓(xùn)練時(shí)間長(zhǎng)等問(wèn)題,操作簡(jiǎn)單并且能快速收斂,為了進(jìn)一步提升算法的識(shí)別率,可采取對(duì)圖片的預(yù)處理,增強(qiáng)圖片的清晰度。
表3 各類算法對(duì)交通標(biāo)志的識(shí)別結(jié)果
本文提出了基于雙通路躍層特征融合卷積神經(jīng)網(wǎng)絡(luò)的算法,針對(duì)傳統(tǒng)神經(jīng)網(wǎng)絡(luò)對(duì)復(fù)雜背景識(shí)別不高的問(wèn)題,利用雙通路輸入不同尺度圖像增加局部不變信息,利用躍層把高層特征圖與底層特征圖融合在一起獲得特征不變性的同時(shí)保留交通標(biāo)志的細(xì)節(jié)信息。實(shí)驗(yàn)表明,本文對(duì)GTSRB數(shù)據(jù)集進(jìn)行識(shí)別,具有較高的識(shí)別率和魯棒性。其準(zhǔn)確率明顯優(yōu)于單一躍層卷積神經(jīng)網(wǎng)絡(luò)和人工特征提取的方法。本文的不足之處,沒(méi)有給出與其它算法精確的時(shí)間比較,這是由于實(shí)驗(yàn)平臺(tái)的限制,但是根據(jù)算法時(shí)間復(fù)雜度能反映問(wèn)題。今后的工作,進(jìn)一步改進(jìn)網(wǎng)絡(luò)的結(jié)構(gòu),進(jìn)一步減少網(wǎng)絡(luò)的計(jì)算量。同時(shí)調(diào)整網(wǎng)絡(luò)的超參數(shù),可以得出更為滿意的實(shí)驗(yàn)結(jié)果。
[1]Hamed H.A,Elnaz J.H,Domenec P.A practical approach for detection and classification of traffic signs using Convolutional Neural Networks[J].Robotics and Auton0mous Systems 2016(84):97-112.
[2]Greenhalgh J,Mirmehdi M.Real-time detection and recognition of road traffic signs[J].IEEE TransactionsonIntelligentTransportation Systems,2012,13(4):1498-1506.
[3]Liu C,Yuen J,Torralba A.Sift flow:Dense correspondence across scenes and its applications[J].IEEE transactions on pattern analysis and machine intelligence,2011,33(5):978-994.
[4]Sánchez J,Perronnin F,Mensink T,et al.Image classification with the fisher vector:Theory and practice [J].International journal of computer vision,2013,105(3):222-245.
[5]Shalev-Shwartz S,Singer Y,Srebro N,et al.Pegasos:Primal estimated sub-gradient solver for svm[J].Mathematical programming,2011,127(1):3-30.
[6]A.Ellahyani,M.E.Ansari,I.E.Jaafari.Traffic sign detection and recognition based on random forests [J].Applied soft Computing 2016,46(9):805-815.
[7]Y.Tan,P.Tang,Y.Zhou,W.Luo,Y.Kang,G.Li.Photograph aesthetical evaluation and classification with deep convolutional neural networks [J].Neurocomputing 2017,228(3):165-175.
[8]RedmonJ,FarhadiA.YOLO9000:Better,faster,stronger[EB/OL].[2070-09-20].https://arxiv.org/abs/1612.08242.
[9]He K,Zhang X,Ren S,et al.Delving deep into rectifiers: Surpassing human-level performance on imagenet classification[C].Proceedings of the IEEE international conference on computer vision.2015:1026-1034.
[10]Scherer D,Müller A,Behnke S.Evaluation of pooling operations in convolutional architectures for object recognition[C].International conference on artificial neural networks.2010:92-101.
[11]王曉斌,黃金杰,劉文舉.基于優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的交通標(biāo)志識(shí)別[J].計(jì)算機(jī)應(yīng)用2017,37(2):530-534.
[12]譚幀剛.基于多分辨率卷積網(wǎng)絡(luò)的交通標(biāo)志檢測(cè)與識(shí)別[D].大連:大連理工大學(xué),2015.
[13]Cires,An D,Meier U,Masci J,et al.Multi-column deep neural network for traffic sign classification[J].Neural Networks,2012(32):333-338.
[14]Zaklouta F, Stanciulescu B. Real-time traffic-sign recognition using tree classifiers[J].IEEE Transactions on Intelligent Transportation Systems,2012,13(4):1507-1514.
[15]Gonzalez-Reyna S E,Avina-Cervantes J G,Ledesma-Orozco S E,et al.Traffic Sign Recognition Based on Linear Discriminant Analysis[C].MICAI 2013(2):185-193.
[16]Sermanet P,LeCun Y.Traffic sign recognition with multi-scale convolutional networks [C].Neural Networks (IJCNN),The 2011 International Joint Conference on.IEEE,2011:2809-2813.