文獻(xiàn)標(biāo)識(shí)碼:A
DOI: 10.19358/j.issn.2096-5133.2018.07.013
中文引用格式:李歲纏,陳鋒.一種基于LSTM的視頻車輛檢測(cè)算法[J].信息技術(shù)與網(wǎng)絡(luò)安全,2018,37(7):54-57.
0 引言
近年來(lái),基于視頻的車輛檢測(cè)在自動(dòng)駕駛和交通視頻監(jiān)控領(lǐng)域得到了廣泛的應(yīng)用。另一方面,基于深度學(xué)習(xí)的靜態(tài)圖像目標(biāo)檢測(cè)也取得了重要的進(jìn)展和突破?;谏疃葘W(xué)習(xí)的圖像目標(biāo)檢測(cè)算法可以分為兩類:基于單階段的算法[1-3]和兩階段的算法[4-6]。相比于兩階段算法,單階段算法具有更快的處理速度,因此更適合實(shí)時(shí)的應(yīng)用,比如視頻車輛檢測(cè)。但是,將這些基于靜態(tài)圖像的目標(biāo)檢測(cè)算法直接應(yīng)用于視頻目標(biāo)檢測(cè),即將視頻幀進(jìn)行獨(dú)立的處理時(shí),并不能取得好的檢測(cè)結(jié)果。因?yàn)獒槍?duì)視頻進(jìn)行目標(biāo)檢測(cè)時(shí),總會(huì)遇到運(yùn)動(dòng)模糊、視頻失焦等問(wèn)題,而基于靜態(tài)圖像的目標(biāo)檢測(cè)算法容易受這些問(wèn)題的影響,得到比較差的檢測(cè)結(jié)果。
視頻中通常包含著目標(biāo)的時(shí)間維度的信息,這些信息對(duì)視頻目標(biāo)檢測(cè)具有非常重要的作用,而基于靜態(tài)圖像目標(biāo)的檢測(cè)算法忽略了這些信息。如果能夠有效利用視頻包含的時(shí)間維度的信息,則可以有效解決運(yùn)動(dòng)模糊與視頻失焦等問(wèn)題。比如,如果當(dāng)前視頻幀中的目標(biāo)出現(xiàn)模糊,那么就可以利用其鄰近幀的目標(biāo)信息幫助對(duì)當(dāng)前幀的檢測(cè)。因此,如何提取目標(biāo)運(yùn)動(dòng)信息則是最關(guān)鍵的。最近,循環(huán)神經(jīng)網(wǎng)絡(luò)LSTM[7]由于其強(qiáng)大的記憶能力以及可以有效克服訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí)出現(xiàn)的梯度消失問(wèn)題的優(yōu)點(diǎn),被大量應(yīng)用于解決時(shí)間序列問(wèn)題,比如機(jī)器翻譯[8],并且取得了比較好的效果。
本文提出一種基于LSTM的單階段視頻車輛檢測(cè)算法,稱為M-DETNet。該算法將視頻看做一系列視頻幀的時(shí)間序列,通過(guò)LSTM去提取視頻中目標(biāo)的時(shí)間維度信息。該模型可以直接進(jìn)行端到端的訓(xùn)練,不需要進(jìn)行多階段的訓(xùn)練方式[4-5]。利用DETRAC車輛檢測(cè)數(shù)據(jù)集[9]訓(xùn)練該算法并進(jìn)行驗(yàn)證和測(cè)試,實(shí)驗(yàn)結(jié)果表明該算法可以有效提升視頻車輛檢測(cè)的準(zhǔn)確率。同時(shí),將M-DETNet與其他典型的目標(biāo)檢測(cè)算法進(jìn)行了對(duì)比,實(shí)驗(yàn)結(jié)果表明M-DETNet 具有更好的檢測(cè)準(zhǔn)確率。
1 LSTM網(wǎng)絡(luò)
LSTM(Long Short-Term Memory)[7]屬于循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN),其最大特點(diǎn)是引入了門控單元(Gated Unit)和記憶單元(Memory Cell)。LSTM網(wǎng)絡(luò)單元如圖1所示。
LSTM循環(huán)網(wǎng)絡(luò)除了外部的RNN循環(huán)外,其內(nèi)部也有自循環(huán)單元,即記憶單元。由圖1可以看出,LSTM具有3個(gè)門控單元,分別是輸入門g、忘記門f和輸出門q。門控單元和記憶單元s的更新公式如下:
其中, x(t)是當(dāng)前網(wǎng)絡(luò)輸入向量,h(t)是當(dāng)前隱藏層向量,b是偏置向量,U、W是權(quán)重向量,⊙表示逐元素相乘。
將普通RNN神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元替換為L(zhǎng)STM單元,則構(gòu)成了LSTM網(wǎng)絡(luò)。
2 M-DETNet
本文提出的模型M-DETNet如圖2所示。從圖2可以看出,M-DETNet由3個(gè)子模塊組成,分別為ConvNet模塊、LSTMNet模塊和FCNet模塊。設(shè)算法輸入視頻幀個(gè)數(shù)為K。ConvNet模塊首先對(duì)K個(gè)視頻幀分別處理,提取空間特征;空間特征作為L(zhǎng)STMNet的輸入,得到時(shí)間維度的特征信息;FCNet預(yù)測(cè)輸出最終的結(jié)果。
2.1 ConvNet模塊
DarkNet-19[2]是一個(gè)應(yīng)用廣泛的分類卷積神經(jīng)網(wǎng)絡(luò),其包含有19個(gè)卷積層和5個(gè)池化層;相比于其他被廣泛應(yīng)用的卷積網(wǎng)絡(luò),如VGG-16[10], DarkNet-19的特點(diǎn)是需要學(xué)習(xí)的參數(shù)更少,并且執(zhí)行速度也更快。使用ImageNet數(shù)據(jù)集[11]訓(xùn)練DarkNet-19,可以達(dá)到72.9%的top-1準(zhǔn)確率和93.3%的top-5準(zhǔn)確率。本文使用經(jīng)過(guò)在ImageNet上預(yù)訓(xùn)練的DarkNet-19網(wǎng)絡(luò),并去掉最后一個(gè)卷積層,作為空間特征提取主干網(wǎng)絡(luò),稱為ConvNet。ConvNet對(duì)K個(gè)輸入視頻幀分別處理,提取豐富的空間特征。
2.2 LSTMNet模塊
LSTM模塊的主要作用是接收ConvNet產(chǎn)生的空間特征作為輸入,得到連續(xù)幀之間包含的時(shí)間維度的特征信息。由圖2可以看到該模塊由兩層雙向LSTM網(wǎng)絡(luò)組成,使用雙向LSTM的原因是便于使用當(dāng)前幀對(duì)應(yīng)的前序幀和后序幀的信息。普通的LSTM網(wǎng)絡(luò)的輸入通常為向量,而本文模型的LSTM網(wǎng)絡(luò)的輸入為特征圖。
2.3 FCNet模塊4
普通的卷積分類網(wǎng)絡(luò)使用全連接網(wǎng)絡(luò)預(yù)測(cè)輸出,而本文模型的FCNet由全卷積網(wǎng)絡(luò)組成,即使用全卷積網(wǎng)絡(luò)產(chǎn)生最后的輸出,包括車輛的類別概率和矩形框的坐標(biāo)。FCNet由3個(gè)卷積層組成,前兩個(gè)卷積層包含1 024個(gè)特征圖,卷積核的大小為3×3;最后一個(gè)卷積層的卷積核大小為1×1。
仿照YOLO[2],網(wǎng)絡(luò)不直接預(yù)測(cè)輸出包含有車輛的真實(shí)矩形框的坐標(biāo),而是預(yù)測(cè)真實(shí)矩形框相對(duì)于參考矩形框的偏移值,并參數(shù)化如下:
其中,(cx,cy)為參考矩形框所在特征圖單元(cell)的坐標(biāo);(pw,ph)為參考矩形框的寬和高;σ(·)為激活函數(shù),取值范圍為[0,1];(bx,by,bw,bh,bc) 是最終的結(jié)果。
2.4 訓(xùn)練方法
使用帶動(dòng)量項(xiàng)(momentum)的隨機(jī)梯度下降(Stochastic Gradient Descent,SGD)優(yōu)化方法訓(xùn)練本文模型,動(dòng)量項(xiàng)設(shè)置為0.9,訓(xùn)練循環(huán)總次數(shù)(epoch)設(shè)置為80次。對(duì)于學(xué)習(xí)率,前60次循環(huán)時(shí)設(shè)置為0.001,之后將學(xué)習(xí)率降低為0.000 1。同時(shí),為了增強(qiáng)模型的泛化能力,本文也做了數(shù)據(jù)增廣,包括隨機(jī)的裁剪和水平翻轉(zhuǎn)。訓(xùn)練的batch大小設(shè)置為32。
由于內(nèi)存的限制,在訓(xùn)練時(shí)選擇3個(gè)視頻幀作為網(wǎng)絡(luò)的輸入,即K=3。在相對(duì)于當(dāng)前幀的偏移為[-10,10]的范圍內(nèi),隨機(jī)選擇前序幀和后序幀。對(duì)于第一幀和最后一幀,簡(jiǎn)單地重復(fù)當(dāng)前幀代表其前序幀或后序幀。
3 實(shí)驗(yàn)及分析
使用DETRAC車輛檢測(cè)數(shù)據(jù)集[9]驗(yàn)證本文模型。該數(shù)據(jù)集包含有4種天氣場(chǎng)景(晴天、陰天、雨天和夜晚)下的視頻數(shù)據(jù),總計(jì)有14萬(wàn)視頻幀,包含的車輛總計(jì)為8 250輛。為了驗(yàn)證模型的有效性,設(shè)置了兩組實(shí)驗(yàn)。第一組實(shí)驗(yàn)在驗(yàn)證集上比較了本文模型與YOLO[2],以說(shuō)明本文提出的LSTM模塊的有效性;第二組實(shí)驗(yàn)在測(cè)試集上將本文模型與其他典型的方法進(jìn)行了比較。
3.1 M-DETNet的有效性驗(yàn)證
如果本文模型去除LSTM模塊,則網(wǎng)絡(luò)結(jié)構(gòu)與YOLO[2]的結(jié)構(gòu)基本一致。為了驗(yàn)證本文模型中LSTM模塊的有效性,在驗(yàn)證集上對(duì)比了本文模型和YOLO。實(shí)驗(yàn)結(jié)果如表1所示。
由表1可知,本文模型不管在4種天氣場(chǎng)景下的性能,還是平均性能均優(yōu)于YOLO。同時(shí),在雨天和夜晚兩種場(chǎng)景下,本文算法性能相對(duì)于YOLO具有更大的提升,從數(shù)據(jù)集中可發(fā)現(xiàn)在雨天和夜晚,視頻幀更容易出現(xiàn)視頻模糊等問(wèn)題。這些結(jié)果表明本文提出的LSTM模塊具有獲取時(shí)間維度特征的能力,能夠提升車輛檢測(cè)的準(zhǔn)確率。
3.2 M-DETNet與其他典型算法的比較
將M-DETNet與其他典型的算法在測(cè)試集上進(jìn)行了比較,實(shí)驗(yàn)結(jié)果如表2所示。由表2可知,相比于其他算法,本文模型在測(cè)試集上的平均準(zhǔn)確率最高,達(dá)到了52.28%;本文模型在不同難易程度下均具有更好的檢測(cè)準(zhǔn)確率。同時(shí)還可發(fā)現(xiàn),在夜晚和雨天,本文算法相對(duì)于其他算法的準(zhǔn)確率提升比在晴天和陰天的提升更大。
在檢測(cè)速度方面,本文算法在GPU(1080Ti)上的檢測(cè)速度可以達(dá)到29 f/s,相比其他算法有很大的優(yōu)勢(shì)。
4 結(jié)論
本文提出一種基于LSTM的視頻車輛檢測(cè)算法,該算法通過(guò)LSTM模塊提取視頻幀序列中包含目標(biāo)的時(shí)間維度的信息,這些信息可以有助于克服視頻模糊等問(wèn)題,進(jìn)而提升檢測(cè)準(zhǔn)確率。將本文模型與其他典型的算法進(jìn)行了比較,實(shí)驗(yàn)結(jié)果表明本文模型不僅具有更好的檢測(cè)準(zhǔn)確率,而且有更快的檢測(cè)速度。為了更好地對(duì)模型進(jìn)行測(cè)試,未來(lái)工作將在實(shí)際的應(yīng)用中對(duì)模型進(jìn)行測(cè)試和驗(yàn)證。
參考文獻(xiàn)
[1] REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once:unified, real-time object detection[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 779-788.
[2] REDMON J, FARHADI A. YOLO9000: better, faster, stronger[J]. arXiv preprint, 2016, 1612.
[3] LIU W, ANGUELOV D, ERHAN D, et al. SSD: Single shot multibox detector[C]//European Conference on Computer Vision. Springer, Cham, 2016: 21-37.
[4] GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2014: 580-587.
[5] GIRSHICK R.Fast R-CNN[J].arXiv preprint arXiv:1504.08083, 2015.
[6] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149.
[7] HOCHREITER S, SCHMIDHUBER J. LSTM can solve hard long time lag problems[C]//Advances in Neural Information Processing Systems, 1997: 473-479.
[8] SUTSKEVER I, VINYALS O, LE Q V. Sequence to sequence learning with neural networks[C]//Advances in Neural Information Processing Systems, 2014: 3104-3112.
[9] WEN L, DU D, CAI Z, et al. UA-DETRAC: a new benchmark and protocol for multi-object detection and tracking[J]. arXiv preprint arXiv:1511.04136, 2015.
[10] SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[J]. arXiv preprint arXiv:1409.1556, 2014.
[11] DENG J, DONG W, SOCHER R, et al. ImageNet: a large-scale hierarchical image database[C]//IEEE Conference on Computer Vision and Pattern Recognition, 2009. IEEE, 2009: 248-255.
[12] FELZENSZWALB P F, GIRSHICK R B, MCALLESTER D, et al. Object detection with discriminatively trained part-based models[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2010, 32(9): 1627-1645.
[13] DOLLáR P, APPEL R, BELONGIE S, et al. Fast feature pyramids for object detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2014, 36(8): 1532-1545.
(收稿日期:2018-03-28)
作者簡(jiǎn)介:
李歲纏(1991-),通信作者,男,碩士,主要研究方向:模式識(shí)別,深度學(xué)習(xí)。E-mail:lsc1230@mail.ustc.edu.cn。
陳鋒(1966-),男,博士,副教授,主要研究方向:智能交通,人工智能。