王怡雯 王學(xué)軍 穆應(yīng)晨
(石家莊鐵道大學(xué) 信息科學(xué)與技術(shù)學(xué)院,河北 石家莊 050043)
城市道路交通在人們的出行方式中占據(jù)極大的比重,雖然一定程度上便利了人們的生活,但是很多時(shí)段交通擁堵,行人與車輛之間不能很好地相互避讓,導(dǎo)致事故頻發(fā),夜間環(huán)境尤其應(yīng)該成為交通狀況的關(guān)注重點(diǎn),但夜間成像效果差導(dǎo)致目標(biāo)檢測研究難度較大?;谝陨蠁栴},亟需一個(gè)夜間交通狀態(tài)智能感知系統(tǒng)來統(tǒng)計(jì)感知交通路況,而這一技術(shù)的核心即為道路車輛行人檢測跟蹤[1]。
近些年基于深度學(xué)習(xí)的目標(biāo)檢測算法因其強(qiáng)大的泛化能力和學(xué)習(xí)能力而被廣泛應(yīng)用[2],但大多數(shù)研究是基于可見光采集的數(shù)據(jù)集,而本文重點(diǎn)針對的是基于紅外光下圖像的目標(biāo)檢測研究,將研究重點(diǎn)著眼于受光照強(qiáng)度影響小且在夜晚同樣可達(dá)到較好成像效果的紅外圖像,一定程度上彌補(bǔ)了夜間道路交通監(jiān)控的短板。
本文針對紅外道路場景的目標(biāo)檢測實(shí)驗(yàn)中小目標(biāo)特征缺失以及網(wǎng)絡(luò)參數(shù)量龐大等問題,使用YOLO v4 為基礎(chǔ)的目標(biāo)檢測模型進(jìn)行實(shí)驗(yàn),使用k-means 聚類算法獲得針對本文紅外數(shù)據(jù)集的先驗(yàn)框值,加入SENet 模塊為特征通道施加注意力機(jī)制提升網(wǎng)絡(luò)的特征描述能力,在PANet 中使用深度可分離卷積代替普通卷積結(jié)構(gòu)進(jìn)一步減少網(wǎng)絡(luò)參數(shù)量。
YOLO v4 算法是在YOLO 系列先前版本的目標(biāo)檢測算法的基礎(chǔ)上優(yōu)化而來[3],網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。YOLO v4 采用CSPDarknet53 作為主干特征提取網(wǎng)絡(luò),該網(wǎng)絡(luò)在Darknet53 的基礎(chǔ)上加入CSP 結(jié)構(gòu),將原來殘差塊的堆疊拆分成一條主干路徑與殘差路徑,該結(jié)構(gòu)實(shí)現(xiàn)了跨階段的特征融合,在達(dá)到減少計(jì)算量的目的的同時(shí)仍可以保持較好的檢測準(zhǔn)確率。激活函數(shù)由LeakyReLU 修改成了Mish 函數(shù),計(jì)算公式如式(1)。
圖1 YOLO v4 網(wǎng)絡(luò)結(jié)構(gòu)圖
SPP 和PANet 特征預(yù)測網(wǎng)絡(luò)在FPN 基礎(chǔ)上加深了多尺度優(yōu)化,將高層特征的信息與低層特征融合形成新的特征層,提高小目標(biāo)的檢測效果,最后通過不同尺度的特征層進(jìn)行特征預(yù)測。
本文的研究對象為行人與車輛,存在目標(biāo)較小或遮擋等情況,可能會(huì)存在一些誤檢漏檢的可能。同時(shí)紅外圖像與可見光圖像相比具有分辨率差、對比度低、信噪比低、視覺效果模糊等特點(diǎn)[4],且數(shù)據(jù)集數(shù)量較少,這些都是針對實(shí)際應(yīng)用需要考慮的具體問題。
由于YOLOv4 算法初始先驗(yàn)框的大小是根據(jù)coco 數(shù)據(jù)集得到的,因此本文利用k-means 聚類算法進(jìn)行計(jì)算與統(tǒng)計(jì),重新得到針對本文FLIR 紅外數(shù)據(jù)集的先驗(yàn)框數(shù)值,這樣的預(yù)先處理可以使得模型參數(shù)更加貼近本實(shí)驗(yàn)數(shù)據(jù)集,降低損失同時(shí)提高檢測準(zhǔn)確率,如表1 所示為處理結(jié)果。
表1 coco 數(shù)據(jù)集與本文數(shù)據(jù)集先驗(yàn)框值對比
SENet[5]主要通過學(xué)習(xí)的方式來自動(dòng)獲取每個(gè)特征通道的重要程度,即為特征通道分配不同的權(quán)重,重點(diǎn)突出對當(dāng)前檢測任務(wù)有用的特征并抑制無效特征,從而提升特征處理的效率。SEblock 不是一個(gè)完整的網(wǎng)絡(luò),而是一個(gè)可以靈活嵌入到其他分類或檢測網(wǎng)絡(luò)模型中的結(jié)構(gòu),圖2 為其嵌入到殘差網(wǎng)絡(luò)中的結(jié)構(gòu)示意圖。
圖2 SENet 嵌入殘差網(wǎng)絡(luò)示意圖
首先利用全局平均池化(Global pooling)對輸入特征圖進(jìn)行處理,再經(jīng)過兩個(gè)Fully Connected(FC)層先降低特征圖的維度再升高維度,最后經(jīng)過sigmoid 激活函數(shù)處理后可以得到相應(yīng)的權(quán)重,利用權(quán)重在對應(yīng)位置與原輸入特征圖相乘得到輸出,即此處可以對不同重要程度的特征圖進(jìn)行相應(yīng)的處理。本文設(shè)計(jì)將SENet 嵌入到CSPDarknet53 的殘差網(wǎng)絡(luò)中。
在以上改進(jìn)的基礎(chǔ)上為了進(jìn)一步使網(wǎng)絡(luò)輕量化,實(shí)驗(yàn)借鑒MobileNet 的思路,采用深度可分離卷積結(jié)構(gòu)塊代替PANet 中普通3×3 卷積結(jié)構(gòu),得到的參數(shù)量對比如表2 所示。
表2 算法參數(shù)量對比
深度可分離卷積的處理步驟(以輸入7 x 7 x 3、輸出5 x 5 x 128 為例)如圖3 所示。
圖3 深度可分離卷積示意圖(輸入7x7x3、輸出5x5x128)
(1)利用3 個(gè)大小為3 x 3 x 1 的卷積核在輸入為7 x 7 x 3 的圖像上進(jìn)行卷積操作,每個(gè)卷積核僅對輸入層的1 個(gè)通道做卷積,因此卷積處理后得到的映射數(shù)量為3 個(gè),大小為5 x 5 x 1,將這些映射進(jìn)行堆疊得到一個(gè)5 x 5 x 3 的圖像,因此第一步最終得出的輸出圖像大小為5 x 5 x 3。
(2)擴(kuò)大深度,將5 x 5 x 3 的圖像作為輸入圖像。當(dāng)使用一個(gè)大小為1x1x3 的卷積核對5 x 5 x 3 的輸入圖像進(jìn)行1x1卷積處理時(shí)會(huì)得到一個(gè)大小為5 x 5 x 1 的映射,將該操作重復(fù)128 次后將所有得到的映射進(jìn)行堆疊即可得到期望輸出的5 x 5 x 128 的層。
本文實(shí)驗(yàn)硬件環(huán)境為Ubuntu16.04 系統(tǒng),GPU 為NVIDIA TESLA K40m,軟件環(huán)境為CUDA10.0、CUDNN7.4.1、Anaconda3,使用深度學(xué)習(xí)框架Pytorch1.2.0。
為盡量還原夜間道路的真實(shí)場景,實(shí)驗(yàn)數(shù)據(jù)集選取真實(shí)道路的紅外圖像作為訓(xùn)練和測試的樣本。本文采用的紅外數(shù)據(jù)集為FLIR 紅外數(shù)據(jù)集,運(yùn)用LabelImg 可視化圖像標(biāo)注工具對數(shù)據(jù)集中的行人和車輛進(jìn)行標(biāo)注,共標(biāo)記2000 張道路紅外圖像,其中90%的圖像作為訓(xùn)練樣本,10%的圖像用于測試。在實(shí)驗(yàn)中本文還對數(shù)據(jù)集采用隨機(jī)角度的旋轉(zhuǎn)、裁剪、鏡像等方式擴(kuò)增數(shù)據(jù)集容量,并采用了Mosic 數(shù)據(jù)增強(qiáng),提升模型的泛化能力,見圖4。
圖4 數(shù)據(jù)集樣圖
針對改進(jìn)算法,本文設(shè)計(jì)實(shí)驗(yàn)與YOLO 系列其他算法進(jìn)行對比,選擇準(zhǔn)確率與召回率作為模型評價(jià)指標(biāo),計(jì)算公式如式(2)(3)所示,其中TP 代表模型將目標(biāo)正確檢測并分類為對應(yīng)類別的數(shù)目,F(xiàn)P 代表模型誤檢的目標(biāo)數(shù),F(xiàn)N 代表模型漏檢的目標(biāo)數(shù)。道路檢測效果如圖5。
圖5 道路車輛行人檢測結(jié)果
在FLIR 數(shù)據(jù)集上分別使用YOLOv3、YOLOv4 以及本文算法SE-YOLOv4-lite 進(jìn)行實(shí)驗(yàn),得到的測試結(jié)果對比如表3 所示。改進(jìn)后的算法在召回率、準(zhǔn)確率以及map 指標(biāo)上均有一定的提升,損失函數(shù)如圖6。同時(shí)經(jīng)過測試,SE-YOLOv4-lite 算法在本實(shí)驗(yàn)環(huán)境中FPS 可達(dá)12.67,比原始YOLOv4 算法提升約27.5%。
表3 算法測試結(jié)果對比
圖6 loss 曲線
本文基于 YOLOv4 的算法提出一種改進(jìn)算法SE-YOLOv4-lite,旨在解決紅外場景下的車輛行人的檢測與識(shí)別問題。SE-YOLOv4-lite 設(shè)計(jì)在主干網(wǎng)絡(luò)的殘差結(jié)構(gòu)中加入SENet 模塊,提升網(wǎng)絡(luò)的特征描述能力,使用深度可分離卷積結(jié)構(gòu)塊代替PANet 中的普通3×3 卷積減少網(wǎng)絡(luò)參數(shù)。實(shí)驗(yàn)結(jié)果表明,本文模型較YOLO v4 在準(zhǔn)確率等方面都有了一定的提升。同時(shí)本文中SE-YOLOv4-lite 算法仍有改進(jìn)的空間,在現(xiàn)有實(shí)驗(yàn)結(jié)果的基礎(chǔ)上如何進(jìn)一步提升檢測精度并適用于更豐富的場景是接下來亟待解決的問題。