?

基于深度學習的復雜場景下車輛識別方法?

2018-09-28 02:30陳敬東王新余
計算機與數字工程 2018年9期
關鍵詞:正則車輛圖像

余 勝 陳敬東 王新余

(武漢數字工程研究所 武漢 430205)

1 引言

隨著我國城市化進程的提速、汽車數量的急劇增長,城市擁堵和停車難等問題也日益嚴重,采用車輛識別方法對城市交通和停車狀況進行動態分析與調控得到了廣泛的關注。目前,國內外學者提出了很多對復雜場景下的目標識別方法,然而在目標圖像背景復雜、尺寸相差大、遮擋嚴重等情況下還存在目標識別率較低、虛警率高、實時性差等問題。

目標識別過程可分為目標檢測階段和目標分類階段。傳統的目標檢測算法主要是基于支持向量機(SVM)算法[1]。為了克服傳統方法過于依賴目標分割的效果,Girshick等提出RCNN模型[2]進行目標檢測,拉開了利用深度學習進行目標檢測的帷幕。針對已經存在的卷積神經網絡算法需要輸入固定的圖像尺寸這一問題,Kaiming He等提出了SPP-net[3],在 Google ImageNet競賽上表現優異。之后,Girshick等進一步提出fast RCNN[4]縮短計算時間,提出 faster RCNN[5]減少重復計算,簡化計算。為了解決實時性檢測這一問題,YOLO(You Only Look Once)和 SSD(Single Shot MultiBox Detector)目標檢測算法相繼問世。YOLO大幅提升了計算速度,同時帶來了定位精度下降的負面效應[6],這一缺陷也被作者在YOLO v2[7]里面改善。而SSD則結合Faster-RCNN的archor機制和YOLO的回歸思想,大幅提升定位精確度[8]。Jifeng Dai等則基于ResNets提出了R-FCN網絡模型,相比Faster R-CNN在計算速度和定位精確度上優化效果明顯。

在分類領域,一般分為三個部分:底層特征提取、圖像表達、分類器。上世紀末,Lecun[10]等則對手寫字體進行分類研究。本世紀初,圖像分類還處于單層特征編碼階段,大多利用編碼從底層特征到中層特征的轉換,完成分類[11~13]。2006 年,深度學習領域泰斗Hinton提出深度玻爾茲曼機的網絡[14],旨在構建多層神經網絡來進行特征學習。2012年,基于深度學習的目標分類在ImageNet Large Scale Visual Recognition Challenge(ILSVRC)2012斬獲第一,遙遙領先第二名。隨后幾年,ILSVRC比賽上排名前十的全部利用深度網絡模型。比較常用的幾種卷積神經網絡模型包括AlexNet[15]、GoogLeNet[16]、VGG[17]。

為了提高目標的檢測率和識別率,YOLO v2利用回歸的方法,可以將分類與檢測同時進行,減少訓練和識別時間。針對復雜場景下的車輛識別需要,本文在YOLO v2網絡模型基礎上,提出了一種基于深度學習的車輛識別方法。該方法通過標注文件解析等方法規范數據集標注文件,確保學習樣本的準確性。通過對樣本的縮放、裁剪、旋轉等操作增加訓練樣本數量,提高算法的泛化能力。通過利用回歸的方法,實現了車輛檢測與識別的同時執行,提高了算法的計算速度。通過一種基于殘差歸一化規則的虛警抑制方法將檢測結果中的野值進行剔除,減少虛警出現概率。實驗表明,提出的車輛識別算法能顯著提高車輛的識別率,減少虛警數量,具有較好的整體性能和實用性。

2 基于深度學習的車輛快速識別方法

2.1 數據預處理方法

數據預處理包括數據的裁剪、標注、批量規范化、數據增強等。

2.1.1 標注文件可視化解析與調整

從攝像頭采集和從網絡爬取的數據需要進行人工標注,以備深度網絡模型訓練的需要。

本文使用LabelImg工具對訓練數據集每張圖片里的車輛進行標注。當一張圖片標注完成之后,軟件會在原圖目錄下生成一個與原圖對應的xml文件,此xml文件記錄了原圖的路徑、標記框的相對位置(以圖像左上為原點,框的左上坐標和右下坐標)、標記框內物體的類別等信息。

標注過程中若發現圖像中車輛太?。ㄖ徽紟讉€像素),可以選擇不標注此類圖像,也不將其加入訓練數據集。

微軟COCO公共數據集包括圖像(JPEG或JPG)和標注文件(json),無法直觀觀察標注框包圍車輛的實際情況。因此,本文編寫腳本對公共數據集的標注文件進行可視化解析,對漏標、誤標等情況進行重新標注,提升訓練數據集的質量。

2.1.2 數據增強

數據增強是在每輪訓練前將圖片進行一定范圍內的隨機旋轉、隨機曝光度設定、隨機飽和度設定等工作。

數據集增強是一種只對訓練集做預處理的方式,它是減少計算機視覺模型泛化誤差的一種好方法。在測試時可以將同一輸入的許多不同版本傳給模型(例如,在稍微不同的位置處裁剪的相同圖像),并且在模型的不同實例上決定模型的輸出;也可以被理解為集成方法,有助于減少泛化誤差。將傳感器采集的特定應用場景圖片加入訓練集和驗證集,能增強此場景目標識別效果。

2.2 深度學習模型的正則化

深度學習任務中一個核心問題是設計一個不僅在訓練數據上表現好而且在新的輸入上泛化好的算法。正則化可以有效減少算法在訓練數據集和新的輸入之間的預測誤差,即減少泛化誤差而不僅是訓練誤差。

正則化技術在深度學習出現之前已經比較成熟。在線性回歸、邏輯回歸等線性模型中,可以使用簡單、直接、有效的正則化策略。

許多正則化方法通過對目標函數J添加一個參數范數懲罰項Ω(θ),限制模型(如神經網絡、線性回歸或邏輯回歸)的學習能力。將正則化后的目標函數記為?:其中,α∈[0,∞)是權衡范數懲罰項Ω和標注目標函數J相對貢獻的超參數。將α設為0表示沒有正則化;α越大,對應正則化懲罰越大。

根據參數范數懲罰項Ω(θ)的不同,可以分為不同的正則化方法。常用的是L2參數正則化和L1參數正則化。深度學習模型中常用二者對神經網絡的操作層(如卷積層、分類層)進行正則化,約束模型復雜度。將正則項加入目標函數,通過整體目標函數的誤差反向傳播,達到正則項影響和指導網絡訓練的目的。

L2參數正則化通過向目標函數添加一個正則項:

使權重更加接近原點。其中λ控制正則項大小,較大的取值將較大程度約束模型復雜度表示權值向量W中各個元素的平方和。L1參數正則化的正則項為

需注意,L1參數正則化除了同L2正則化一樣能約束參數量級外,L1正則化還能起到使參數更稀疏的作用。稀疏化可起到選擇重要參數或者特征維度的作用,同時起到去除噪聲的效果。

此外,L2參數正則化和L1參數正則化可以聯合使用,形如:

這也被稱為“Elastic網絡正則化”。

2.3 基于YOLO模型的物體識別方法

YOLO將物體檢測作為回歸問題求解,基于一個單獨的端到端網絡,完成從原始圖像的輸入到物體位置和類別的輸出。

YOLO網絡訓練和檢測均是在一個單獨網絡中進行。YOLO v2采用了新網絡,使用常用的3*3卷積核,在每一次池化操作后把通道數翻倍。借鑒了network in network的思想,網絡使用了全局平均池化(global average pooling)做預測,把1*1的卷積核置于3*3的卷積核之間,用來壓縮特征。YOLO v2包含19個卷積層、5個最大值池化層。網絡最后一層是13*13,相對原來7*7的網絡來講,細粒度的處理目標已經加倍了,再加上上一層26*26的特征共同決策,這兩層的貢獻等價于SSD網絡的4層以上,但計算量其實并沒有增加多少。

為了讓YOLOv2適應不同尺度下的檢測任務,Joseph Redmon等人嘗試通過不同分辨率圖片的訓練來提高網絡的適應性[7]。網絡只用到了卷積層和池化層,可以進行動態調整(檢測任意大小圖片)。

2.4 虛警抑制方法

對于車輛重疊率高、被遮擋嚴重等復雜場景下的車輛圖像,已有車輛識別算法虛警率較高。為了有效抑制虛警,提出了一種基于殘差歸一化規則的虛警抑制方法。此方法通過減少識別結果中的野值來優化訓練樣本的有效性,從而減少識別虛警率,增加識別精度。

在數據處理領域中野值叫異常值,野值的產生往往是在錄取、傳輸的過程中(不包括零件故障),由于受到干擾等原因所產生的一些不合理或者具有粗大誤差的數據,或者說是探測數據集合中嚴重偏離大部分數據所呈現趨勢的小部分數據點(大約包含1%-2%)。野值對高精度數據處理工作有著十分不利的影響。在數據十分重要的深度學習領域,它對改進處理結果的精度、提高處理質量有著相當的重要性。野值檢測被廣泛應用于模式識別,知識發現和數據挖掘中,具體的問題如視頻監控,計算機入侵檢測,特定輻射源確認等。傳統分類方法能有效進行野值檢測,但是控制虛警概率始終是一個不可避免的難題。本文利用基于殘差歸一化的方法,在深度學習訓練過程中,隨機選擇部分樣本,計算得到多個歸一化殘差值,然后將這些值的平均與野值門限進行比較,由此判斷出待考查模式是否為野值。

2.4.1 殘差歸一化

從訓練樣本集中Xtr中隨機選擇樣本,2,…,k,則待考察模式η的殘差歸一化計算過程如式(5)。

野值門限值會影響虛警率的大小,此處僅分析待考查模式為正常模式的情形??紤]噪聲的情況之后,K個隨機樣本表示為 xi=x0+εi,i=1,2,…,K,待考察模式為 η=xk=x0+εk,k>K,其中 x0是模式的理論值,模式噪聲εi滿足標準差為0,方差為σ2I的正態分布,其中σ2為噪聲方差。

式(5)在忽略容差ε,并不考慮隨機選擇訓練樣本對判別η是否為野值的影響,則正常模式xk的歸一化殘差變為

其中

2.4.2 基于野值檢測的虛警剔除

訓練樣本集為 Xtr={xi,i=1,2,…,n},其中樣本的維度為N,協方差矩陣為C。設所需的虛警概率為Pf,計算歸一化殘差值時選擇的訓練樣本數為K≤n,重復計算NR值的次數為B,容差ε中的γ因子固定為0.001。本文的野值檢測方法敘述如下:

1)對協方差矩陣C進行酉特征值分解,得到酉轉換矩陣A;將其使用在訓練樣本和η上,使得樣本中的噪聲被白化。

2)計算野值門限h,公示如下

其中,Pf為虛警概率,Q為標準高斯分布的右尾概率。

3)對于待考查模式ηi,在 Xtr中隨機選擇K個訓練樣本{xi,i=1,2,…,K},根據式(7)計算模式的歸一化殘差值ri。

4)如果K=n則得到待考查模式的歸一化殘差值為rˉi=ri;否則步驟3)重復 B次,得到 B個歸一

表1 SSD300與YOLO v2在公共數據集上的平均精度均值(mAP)和幀率

6)重復3)~5)直到所有待考察 ηi被考查。

7)剔除被判斷為野值的樣本。

3 實驗與分析

為了驗證提出算法的有效性,基于COCO數據集和PCAR數據集,對不同深度學習網絡模型識別性能進行了綜合分析和比較。

3.1 COCO實驗

COCO數據集是一個由微軟維護的圖像數據集,可進行對象識別、圖像分割和圖片中字幕識別等機器視覺任務的數據集,包括:超過30萬幅圖像、超過200萬個實例、80多類對象等。本文僅使用數據集中的一部分,數據集分為兩個部分,其中含有車的訓練圖片有8283張,含車的測試圖片有4048張,圖片分辨率低于640*640。

本文進行了三組對比實驗,實驗中分別使用YOLO、SSD和改進了的算法在COCO數據集上進行訓練,并利用COCO測試集進行測試。

圖1 YOLO、SSD和改進算法測試COCO數據

圖1給出了三種算法訓練COCO數據集后,分別測試同一張圖片(取自COCO測試集)的直觀效果,其中(a)、(b)、(c)、(d)分別表示原圖、YOLO算法識別結果、SSD算法識別結果和改進網絡識別結果。從圖1(b)、(c)、(d)中可以看出YOLO模型和SSD模型都存在虛警,其中(b)圖中最大的框表明YOLO模型將多輛車和背景識別為一輛車,(c)圖中有三個框是錯誤地將公路、花壇、摩托車識別為車;而改進的算法一定程度上避免了將其它目標或背景誤識別為車,表明改進算法之后,一般場景下車輛識別準確率變高了,有效去除了虛警。

3.2 PCAR數據集實驗

PCAR數據集沿用COCO數據集中含車的部分,并加入特定場景采集的圖像作為補充。PCAR數據集分為兩個部分,訓練集和驗證集。其中訓練集圖片包括8283張來自COCO數據集的圖片及其標注和作者采集并標注的特定場景的圖片;測試集包括4048張來自COCO數據集的圖片和作者采集并標注的特定場景的圖片。來自COCO的圖片分辨率不超過640*640,本實驗采集的圖像分辨率為1280*720和1920*1080。

本文進行了三組對比實驗,實驗中分別使用YOLO訓練COCO數據集、YOLO訓練PCAR數據集和改進的算法訓練PCAR數據集,然后PCAR測試集進行測試。

圖2給出了三種算法訓練后,分別測試同一張圖片(取自PCAR測試集)的直觀效果,其中(a)為原圖,(b)、(c)、(d)分別為YOLO訓練COCO數據集、YOLO訓練PCAR數據集和改進網絡訓練PCAR數據集之后識別一張PCAR測試集里面的圖片的結果。從圖(b)中可以看出YOLO網絡訓練COCO數據集來識別特定場景下PCAR測試集效果不理想,當使用YOLO訓練PCAR數據集之后,識別車輛個數上升,但是存在虛警,在使用改進算法訓練PCAR數據集之后,基本消除虛警。

表2給出了幾種算法在不同訓練集和不同測試集上的mAP(mean average precision)。當YOLO、SSD和改進算法都選擇相同的訓練集和驗證集時,改進的算法mAP值好于YOLO和SSD算法。觀察YOLO算法和改進算法在PCAR數據集上面的表現可以發現,PCAR數據集mAP值比COCO數據集低不少,而改進的算法依然比YOLO算法表現得好。

通過上述分析,可以得出以下3個結論:1)改進算法減少了YOLO及SSD在車輛識別過程中的虛警概率,這是因為虛警抑制模塊減少了物體錯誤識別的概率。2)COCO數據集和PCAR數據集下,改進算法的mAP值都高于YOLO算法,說明虛警抑制模塊的魯棒性較強,可以增強模型的識別精度。3)訓練集加入復雜場景數據并使用數據增強之后,對復雜場景的車輛識別效果明顯變好。

圖2 YOLO、改進算法測試PCAR數據

表2 對比YOLO、SSD和改進算法的mAP

4 結語

為了提高復雜場景下的車輛識別率,本文提出了一種基于深度學習的復雜場景下車輛識別方法。針對公開的COCO數據訓練集存在目標漏標、誤標等問題,采用標注文件可視化解析方法,直觀觀察圖像目標標注結果,對其中的漏標、誤標等目標進行重新標注。在訓練過程中對訓練圖像進行旋轉、縮放、改變光照變化和曝光度等方法增加訓練樣本數量,提高車輛識別算法的泛化能力。對于檢測出的車輛虛警目標,利用基于殘差歸一化規則的虛警抑制方法進行剔除。本文提出的算法對COCO數據集測試時,算法平均精度均值(Mean Average Precision,mAP)為79.2,比YOLO算法提高了0.6;對PCAR數據集測試時,算法mAP值為63.7,比YOLO算法提高了1.4,實驗結果充分證明了本文提出算法的有效性。

猜你喜歡
正則車輛圖像
基于生成對抗網絡的CT圖像生成
淺析p-V圖像中的兩個疑難問題
π-正則半群的全π-正則子半群格
Virtually正則模
巧用圖像中的點、線、面解題
帶低正則外力項的分數次阻尼波方程的長時間行為
車輛
任意半環上正則元的廣義逆
冬天路滑 遠離車輛
提高車輛響應的轉向輔助控制系統
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合