朱世懂,姜麗芬,孫華志,馬春梅
(天津師范大學(xué)計(jì)算機(jī)與信息工程學(xué)院,天津300387)
隨著我國經(jīng)濟(jì)不斷發(fā)展,車輛不斷增多,給交通管理帶來了巨大的挑戰(zhàn).在現(xiàn)實(shí)的交通管理過程中,車輛檢測技術(shù)發(fā)揮著重要的作用,其在高速公路收費(fèi)站、城市道路管理、城市交叉路口和停車場中都得到了廣泛的應(yīng)用,為車輛管理提供了基礎(chǔ)支持[1].
近年來,隨著計(jì)算機(jī)和圖像處理技術(shù)的不斷發(fā)展,機(jī)器視覺檢測方法已經(jīng)取代傳統(tǒng)方法成為現(xiàn)代智能交通系統(tǒng)的一個(gè)重要組成部分[2].如何設(shè)計(jì)高效的車輛檢測算法,提高檢測準(zhǔn)確率是目前人們最關(guān)注的問題.早期的機(jī)器視覺檢測方法,主要利用車輛相對于靜態(tài)背景都是運(yùn)動(dòng)的這一特性,如,幀間差分法[3]利用視頻中相鄰幀之間的關(guān)系來判斷車輛的位置從而進(jìn)行檢測,背景差分法[4]將待檢測圖像與背景圖像相減判斷對應(yīng)像素是否為車輛,還有基于光流法的車輛檢測方法[5]等,而這些方法對于場景光照、運(yùn)動(dòng)速度等外在因素的變化有一定的要求,因此準(zhǔn)確率和魯棒性不高.
隨著機(jī)器學(xué)習(xí)的不斷發(fā)展與應(yīng)用,以機(jī)器學(xué)習(xí)理論為基礎(chǔ)的檢測算法成為當(dāng)前車輛檢測領(lǐng)域研究的熱點(diǎn),當(dāng)前比較成熟的車輛檢測方法主要基于車輛特征結(jié)合分類器的模式,如,基于梯度方向直方圖特征和支持向量機(jī)的車輛檢測方法[6],使用Adaboost結(jié)合Haar-like特征進(jìn)行車輛檢測的方法[7]等,但這類方法對于復(fù)雜背景下的車輛檢測效率不高.卷積神經(jīng)網(wǎng)絡(luò)在車輛檢測方面的精度很高[8],但是需要的網(wǎng)絡(luò)層數(shù)較多,復(fù)雜度較高,訓(xùn)練時(shí)間較長,并不適用于現(xiàn)階段的車輛檢測任務(wù).文獻(xiàn)[9]提出了一個(gè)通過PCA技術(shù)組成的簡單的深度學(xué)習(xí)網(wǎng)絡(luò):PCANet,有研究表明它對于手寫數(shù)字識(shí)別以及人臉識(shí)別[10]都有良好的效果,但其要求圖像質(zhì)量較高,圖像中的噪聲必須很小,當(dāng)目標(biāo)物體周圍的背景過多時(shí),其提取特征的效果不是很好.
針對單支PCANet的局限性,本文嘗試使用2條PCA數(shù)據(jù)變換流,建立并行網(wǎng)絡(luò)提取車輛輪廓特征和紋理特征,用2種車輛數(shù)據(jù)集訓(xùn)練網(wǎng)絡(luò),經(jīng)過融合實(shí)現(xiàn)并行網(wǎng)絡(luò)的同步學(xué)習(xí),進(jìn)而對車輛進(jìn)行檢測.
車輛檢測任務(wù)是根據(jù)輸入的圖像信息,提取各區(qū)域的圖像特征,通過分類來判斷圖像是否為車輛.
本文的車輛檢測模型結(jié)構(gòu)如圖1所示,主要用2個(gè)PCANet對車輛圖像進(jìn)行特征提取,將得到的特征進(jìn)行加權(quán)融合,訓(xùn)練一個(gè)SVM分類器,用于車輛圖像的分類.
圖1 基于PCANet的車輛檢測模型結(jié)構(gòu)Fig.1 PCANet-based vehicle detection model
選取車輛圖片構(gòu)成原圖像數(shù)據(jù)集,使用卷積神經(jīng)網(wǎng)絡(luò)提取的輪廓圖片作為輪廓數(shù)據(jù)集,分別對特征提取網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到2個(gè)特征提取器.對實(shí)際場景進(jìn)行檢測時(shí),使用多尺度選擇框,實(shí)現(xiàn)對圖像中不同大小的車輛進(jìn)行檢測.
特征提取網(wǎng)絡(luò)使用兩階段的PCANet架構(gòu),網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示.
圖2 特征提取網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Network structure of feature extraction
假設(shè)有N張像素大小為m×n的車輛圖片樣本{Xi}Ni=1,對圖像進(jìn)行塊采樣,假設(shè)采樣塊大小為k1×k2,第 i張圖片的所有采樣向量為 xi,1,xi,2,…,xi,mn∈Rk1k2,其中xi,j表示圖像Xi的第j個(gè)采樣向量.然后對每個(gè)向量進(jìn)行去均值化,即每個(gè)采樣向量減去向量的平均值,得到表示去均值化后的向量.為所有輸入的車輛圖像構(gòu)造相同的矩陣并把它們結(jié)合在一起,得到
在第一階段,使用X作為輸入來學(xué)習(xí)L1個(gè)PCA濾波器,得到 W1l,l=1,2,…,L1,然后讀取車輛圖像矩陣 Ii,i=1,2,…,N,用得到的濾波器對圖像進(jìn)行卷積運(yùn)算
其中:“*”表示二維卷積;W1l為第一階段的濾波器;Ili為第i張圖像第l個(gè)濾波器的輸出.
在第二階段,重復(fù)和第一階段相同的過程,對第一階段的輸出向量進(jìn)行去均值化等操作,進(jìn)而得到第二階段的 L2個(gè)濾波器 W2k,k=1,2,…,L2,使用第一階段的輸出Ili作為第二階段的輸入,對于每個(gè)輸入Ili,將有L2個(gè)輸出,將Ili與W2k做卷積運(yùn)算
Oli為第i張圖像對應(yīng)于第一階段的第l個(gè)輸出的第二階段的輸出,其中包含了L2個(gè)卷積結(jié)果,第二階段每張圖像輸出總數(shù)為L1L2,然后對這些輸出進(jìn)行二值化,H()是一個(gè) Heaviside函數(shù),將每個(gè)像素值置為正數(shù)或零,然后將每個(gè)二進(jìn)制值編碼為(0,2L2-1)之間的十進(jìn)制數(shù),最后,將每一個(gè)輸入Ili得到的L2個(gè)輸出合并為一個(gè)矩陣
最終每張圖像得到L1個(gè)輸出Tli,將每個(gè)Tli按照重疊分塊模式分為B塊,統(tǒng)計(jì)每個(gè)塊的直方圖信息,然后將各個(gè)塊的直方圖特征進(jìn)行級(jí)聯(lián),最終得到每張圖片的特征向量fi,即圖像的特征表示
采用2類數(shù)據(jù)集作為輸入分別訓(xùn)練2個(gè)特征提取器,這2類數(shù)據(jù)集分別為車輛圖片構(gòu)成的數(shù)據(jù)集和用卷積神經(jīng)網(wǎng)絡(luò)提取的車輛輪廓的數(shù)據(jù)集,圖像數(shù)據(jù)經(jīng)過PCANet網(wǎng)絡(luò)處理后會(huì)得到2類圖像特征,為了降低復(fù)雜度,更有效地訓(xùn)練SVM分類器,將其進(jìn)行融合,融合公式為
其中:fli為第i張圖片的第l個(gè)特征,n為特征提取器個(gè)數(shù),F(xiàn)i為融合后的圖像特征.
在用實(shí)際場景圖像進(jìn)行車輛檢測時(shí),由于拍攝角度問題,車輛圖像的大小可能不一致,如果定義同一種尺寸大小的選擇區(qū)域可能會(huì)丟失車輛信息,出現(xiàn)漏檢或多輛車在同一檢測框中的現(xiàn)象,因此本文選擇不同尺寸的檢測框,對實(shí)際場景圖進(jìn)行檢測,再將檢測結(jié)果合并.
合并檢測框的方法是,每個(gè)檢測框都有一個(gè)中心點(diǎn),計(jì)算任意2個(gè)檢測框中心點(diǎn)的距離,如果距離小于某一閾值,那么就將其合并為一個(gè)檢測框.距離約束公式為:
其中:(xi,yi)、(xj,yj)為任意2個(gè)檢測框的中心點(diǎn)坐標(biāo),α為距離閾值.
在特征融合之后需要判斷這些特征的類別,也就是對圖像進(jìn)行分類,本文使用SVM(支持向量機(jī))[11]分類器來分類,SVM是一種機(jī)器學(xué)習(xí)算法,可以進(jìn)行數(shù)據(jù)分析和模式識(shí)別,也可以用于分類和回歸分析,SVM分類器通過一個(gè)非線性映射將作為學(xué)習(xí)樣本的特征向量映射到一個(gè)高維的特征空間中,在這個(gè)空間中構(gòu)造最優(yōu)分類面,從而將提取的圖像特征進(jìn)行正確的分類.本文選取徑向基函數(shù)將車輛特征屬性在低維空間的非線性問題映射成高維特征空間的線性問題,徑向基函數(shù)為
然后在新空間中求解最優(yōu)分類面,通過最大化分類間隔找出最優(yōu)分類超平面,最終轉(zhuǎn)化為二次最優(yōu)規(guī)劃問題,進(jìn)行圖像分類.
本文使用公開的VehicleID數(shù)據(jù)庫[12],從中抽取8 000張車輛圖片作為正樣本集,8 000張背景圖片作為負(fù)樣本集,并將圖像的大小歸一化為64×64,對其進(jìn)行標(biāo)注,作為原圖像數(shù)據(jù)集.部分正負(fù)樣本見圖3.
由于PCANet對噪聲較大的車輛圖像訓(xùn)練效果較差,因此設(shè)計(jì)了一個(gè)3層的簡單卷積神經(jīng)網(wǎng)絡(luò),經(jīng)過訓(xùn)練,對正、負(fù)樣本進(jìn)行輪廓提取,形成輪廓圖像數(shù)據(jù)集,部分輪廓圖像見圖4.
圖3 正負(fù)樣本Fig.3 Positive and negative samples
圖4 樣本輪廓Fig.4 Outline of samples
從原圖像數(shù)據(jù)集中隨機(jī)抽取80%的正負(fù)樣本作為原圖像訓(xùn)練集D1,剩余20%作為測試集T,從輪廓圖像數(shù)據(jù)集中隨機(jī)抽取80%的正負(fù)樣本作為輪廓圖像訓(xùn)練集D2.
用數(shù)據(jù)集D1和數(shù)據(jù)集D2分別訓(xùn)練并行的PCANet,得到2個(gè)特征輸出,將這2個(gè)特征融合后輸入到SVM中,訓(xùn)練SVM分類器.用測試集T對模型進(jìn)行測試,實(shí)驗(yàn)了不同濾波器尺寸對實(shí)驗(yàn)測試集準(zhǔn)確率的影響,準(zhǔn)確率為檢測到的車輛圖片占測試集圖片總數(shù)量的比例.根據(jù)文獻(xiàn)[9]中網(wǎng)絡(luò)的初始設(shè)置得出經(jīng)驗(yàn),將2階段的濾波器個(gè)數(shù)預(yù)先定為8,可以在未知實(shí)驗(yàn)結(jié)果的情況下保證最小誤差.濾波器尺寸從1×1依次變化到9×9,實(shí)驗(yàn)結(jié)果見圖5.結(jié)果顯示濾波器尺寸大小為3×3時(shí)準(zhǔn)確率最高,這是因?yàn)楫?dāng)濾波器尺寸足夠小時(shí),對車輛特征的提取也就更加精確.
將濾波器尺寸固定為3×3,由于濾波器數(shù)量太少會(huì)增大計(jì)算復(fù)雜度,降低效率,所以設(shè)濾波器數(shù)量最小值為4,因?yàn)闉V波器尺寸為3×3,根據(jù)主成分分析原理,濾波器數(shù)量最多為9,因此對濾波器數(shù)量從[4,4]到[9,9]進(jìn)行了實(shí)驗(yàn),結(jié)果見圖 6.實(shí)驗(yàn)結(jié)果顯示當(dāng)濾波器數(shù)量為[8,7]時(shí)測試準(zhǔn)確率最高,這是因?yàn)殡S著濾波器數(shù)量的增加,提取的車輛特征維度增高,對車輛的識(shí)別也就更加精確.
圖5 不同濾波器尺寸準(zhǔn)確率Fig.5 Accuracy of different sizes of filter
圖6 不同濾波器數(shù)量準(zhǔn)確率Fig.6 Accuracy of different numbers of filter
實(shí)驗(yàn)得到的網(wǎng)絡(luò)最優(yōu)參數(shù)為濾波器尺寸3×3,濾波器數(shù)量[8,7],使用本文算法對2個(gè)公開的車輛數(shù)據(jù)集進(jìn)行了測試,分別為Stanford-Cars[13]和PKU-VD[14],Stanford-Cars數(shù)據(jù)集覆蓋多種規(guī)格(如轎車、轎跑車、敞篷車、兩廂車和貨車等)的車輛,實(shí)驗(yàn)選取了其中3 000張車輛圖片作為測試集,PKU-VD數(shù)據(jù)集中共有221 519輛車(共約140萬張圖像),實(shí)驗(yàn)選取了其中3 000張車輛圖片作為測試集.實(shí)驗(yàn)結(jié)果見表1,使用分類常用指標(biāo)精確度P(precision)和召回率R(recall)對算法進(jìn)行評(píng)估,結(jié)果表明本文算法具有良好的分類效果.
精確度P的計(jì)算公式為:
其中:TP為檢測到的車輛實(shí)際為車輛的圖片數(shù)量,F(xiàn)P為檢測出的車輛實(shí)際為非車輛的圖片數(shù)量.召回率R的計(jì)算公式為:
其中FN為檢測到的非車輛實(shí)際為車輛的圖片數(shù)量.
表1 不同數(shù)據(jù)集測試結(jié)果Tab.1 Test results for different datasets
使用上述最優(yōu)網(wǎng)絡(luò)參數(shù)將單一PCA網(wǎng)絡(luò)和并行PCA網(wǎng)絡(luò)進(jìn)行比較,實(shí)驗(yàn)結(jié)果見圖7,以圖片數(shù)量作為因變量,由圖7可見,并行網(wǎng)絡(luò)結(jié)構(gòu)對于車輛的識(shí)別準(zhǔn)確率明顯優(yōu)于單一網(wǎng)絡(luò).
圖7 單、并行網(wǎng)絡(luò)架構(gòu)對比實(shí)驗(yàn)準(zhǔn)確率Fig.7 Accuracies of comparison experiments between single and parallel network architectures
為了驗(yàn)證本文方法的有效性,將其與傳統(tǒng)機(jī)器學(xué)習(xí)方法進(jìn)行了對比,重現(xiàn)了3種基于傳統(tǒng)機(jī)器學(xué)習(xí)的車輛檢測方法,分別是基于PCA+LDA+SVM的車輛檢測方法[15],利用SVM分類器對車輛的Haar特征進(jìn)行分類的車輛檢測方法[16],利用Adaboost實(shí)現(xiàn)的在線車輛檢測算法[17].對實(shí)際場景圖中的車輛進(jìn)行檢測,共檢測3 000張圖片.由于訓(xùn)練圖片大小為[64,64],因此將滑動(dòng)窗口大小與圖片大小成比例的設(shè)置為[128,128]、[64,64]、[32,32]、[16,16],對應(yīng)滑動(dòng)步長設(shè)置為[64,32,16,8],這樣有助于和車輛圖像進(jìn)行匹配,減少計(jì)算量.將多尺度檢測框合并閾值α從1依次遞增到10,實(shí)驗(yàn)得出閾值α的最優(yōu)值為4.最終得到車輛識(shí)別的統(tǒng)計(jì)結(jié)果見表2,其中DR(detection rate)為算法的車輛檢測率,即檢測到實(shí)際場景圖中車輛的數(shù)量與圖中車輛總數(shù)的比值,F(xiàn)DR(false drop rate)為車輛誤檢率,即檢測到錯(cuò)誤車輛的數(shù)量與檢測出的車輛總數(shù)的比值.由表2可見,本文的并行交叉PCANet車輛檢測算法在檢測率方面優(yōu)于前2種傳統(tǒng)方法,相比于第3種優(yōu)勢不明顯,但是在誤檢率方面要明顯優(yōu)于第3種方法,綜合比較本文方法更加適合復(fù)雜場景下的車輛檢測任務(wù).
表2 車輛檢測方法對比實(shí)驗(yàn)結(jié)果Tab.2 Experimental results of vehicle detection methods
本文提出并行交叉PCANet進(jìn)行特征提取和支持向量機(jī)分類的車輛檢測方法,用2條簡單深度學(xué)習(xí)網(wǎng)絡(luò)PCANet,以并行方式對車輛進(jìn)行特征提取,提高了算法的學(xué)習(xí)能力,訓(xùn)練支持向量機(jī)分類器具有更好的分類能力,可有效對車輛進(jìn)行檢測.實(shí)驗(yàn)結(jié)果表明,本文的車輛檢測方法在復(fù)雜場景下的檢測率和誤檢率優(yōu)于傳統(tǒng)方法,具有較好的應(yīng)用前景.但是該算法在部分遮擋較為嚴(yán)重的場景下的車輛定位還不夠精確,因此在本文工作的基礎(chǔ)上還應(yīng)改進(jìn)算法對遮擋車輛的檢測效果.
天津師范大學(xué)學(xué)報(bào)(自然科學(xué)版)2018年5期