楊 帆,吳韶波
(北京信息科技大學(xué) 信息與通信工程學(xué)院,北京 100101)
近年來,智能駕駛越來越受到廣大消費者的青睞,該技術(shù)控制車輛在無人類干預(yù)的情況下安全地完成駕駛?cè)蝿?wù)。車輛目標(biāo)檢測就是其中的重要一環(huán):利用傳感器采集的信息檢測周圍車輛和智能駕駛車輛的相對位置。隨著深度學(xué)習(xí)算法的發(fā)展,通用目標(biāo)檢測技術(shù)也逐漸發(fā)展成熟。但對于智能駕駛場景而言,通用目標(biāo)檢測技術(shù)存在實時性差、易受天氣和光照等變化的影響等缺點,需要做進一步的改善才能滿足需求。深度學(xué)習(xí)中的SSD(Single Shot MutiBox Detectior, SSD)算法[1]采用卷積層替代全連接層,實現(xiàn)了特征提取和定位,克服了由于車輛數(shù)據(jù)集問題帶來的各種困難,具有一定的泛化能力。該算法較傳統(tǒng)目標(biāo)檢測算法計算效率更高,在性能上有了極大提升,然而仍存在下列缺陷:
(1)在現(xiàn)實交通環(huán)境中,車輛較為集中,普遍存在遮擋問題,檢測結(jié)果仍有所欠缺;
(2)由于交通場景視野較遠(yuǎn),存在許多尺寸較小的目標(biāo),且交通場景環(huán)境多變,容易出現(xiàn)誤檢、漏檢等現(xiàn)象[2]。
針對以上問題,還需要在SSD算法的基礎(chǔ)上做進一步優(yōu)化,才能使模型在更加復(fù)雜的場景下提高判斷和檢測能力,減少誤判和漏檢等現(xiàn)象。
SSD網(wǎng)絡(luò)架構(gòu)是由VGG16[3]和大小不同的卷積層組成,由于一張圖片中可能會有多個目標(biāo)需要檢測,所以之前的全連接層(FC6和FC7)便體現(xiàn)出很大的局限性。考慮到卷積層提取特征的作用,產(chǎn)生了用卷積層替代全連接層的想法,相應(yīng)的最后做預(yù)測時也需要使用卷積層。SSD架構(gòu)如圖1所示。

圖1 SSD架構(gòu)
最初的輸入數(shù)據(jù)為300×300×3的可見光圖像,經(jīng)過VGG16基礎(chǔ)特征提取層后,依次使用不同的卷積層Conv6、Conv7、Conv8_2、Conv9_2、Conv10_2進行處理。因為不同層的特征圖(feature map)對應(yīng)到原圖上的感受野存在差異,所以在不同層上生成的默認(rèn)框(default box)大小不同,可以檢測到不同大小的車輛目標(biāo)。每個檢測層后接上2路3×3卷積用做分類與回歸,之后運用NMS(非極大值抑制)選擇出置信度最大的候選框作為最終的檢測結(jié)果。
SSD網(wǎng)絡(luò)模型中共使用了6個不同尺度的特征,相應(yīng)分別產(chǎn)生了6個不同形狀的anchor,底層的特征圖尺度較大,點也較密集,適合使用較小的anchor檢測小目標(biāo);高層的特征圖尺度較小,點也比較稀疏,適合使用較大的anchor檢測大目標(biāo)。假設(shè)用m個特征圖進行預(yù)測,那么對于每個特征圖而言,其anchor尺度的計算方式如下:


SSD算法的匹配策略:首先給每個anchor分配一個真實標(biāo)簽,通過anchor與Groundtruth box比較計算最佳重疊。IOU大于閾值0.5,則該anchor為正樣本,反之為負(fù)樣本。實際上,每張圖片中負(fù)樣本的數(shù)量遠(yuǎn)多于正樣本,為避免負(fù)樣本主導(dǎo)整個loss,按照預(yù)設(shè)正負(fù)樣本比例1∶3挑選出一定數(shù)量的負(fù)樣本,即對負(fù)樣本按照loss從大到小排序,只選擇前n個loss較大的負(fù)樣本進行梯度更新[5]。SSD對正負(fù)樣本比例進行了一定控制,能夠提高訓(xùn)練結(jié)果的穩(wěn)定性和優(yōu)化速度。總體目標(biāo)損失函數(shù)是置信損失(conf)和位置損失(loc)的加權(quán)和:

式中:N為匹配的anchor的數(shù)量(正負(fù)樣本的數(shù)量之和);c為置信度;置信損失是Softmax對多類別的損失;l為預(yù)測框;g為真實框;位置損失是l和g之間的smoothL1損失,α為兩者的權(quán)重。


SSD選用的位置損失函數(shù)smoothL1計算方式如下:

SSD用了6個不同尺寸的特征圖進行預(yù)測,每層都會先得到默認(rèn)框的尺寸,然后再在默認(rèn)邊界框的基礎(chǔ)上添加不同的長寬比得到不同的anchor,如圖2所示。anchor的設(shè)置通常會有幾個像素偏移中心位置,未與感受野對齊。大目標(biāo)對于這樣的現(xiàn)象不會太敏感,IOU變化不會太大(IOU計算方法見式(7));而小目標(biāo)不同,尤其當(dāng)感受野不夠大時,anchor甚至?xí)瞥龈惺芤皡^(qū)域,影響最終的檢測性能。


圖2 8×8和4×4特征圖
為了使小目標(biāo)的檢測效果更好,充分利用最底層的特征圖,將各特征層對應(yīng)的anchor種類數(shù)[6]由之前的[4,6,6,6,4,4]提升至 [6,6,6,6,4,4]。SSD模型中 anchor的數(shù)量計算方式為:各層的像素點數(shù)×各層anchor的類別數(shù),由之前的8 732增加到11 620。
增加底層特征圖anchor的類別數(shù)能夠更好地捕捉到一些易被漏檢的小目標(biāo),提升模型對車輛檢測的整體準(zhǔn)確率。
考慮到特殊場景下,如夜晚或大霧天氣時,單憑可見光圖像進行訓(xùn)練具有一定的局限性,而紅外熱成像不受光源的影響,特別是光線不足的情況下依然可以有效成像,因此本實驗利用紅外熱成像的特點[7],在可見光的基礎(chǔ)上引入紅外熱像圖。紅外熱像圖的特點如下:
(1)包含移動物體的溫度信息;
(2)不受周圍環(huán)境的影響,例如強光、霧霾等;
(3)對比度低,有利于關(guān)鍵特征的提取。
綜合以上特點,將對紅外熱像圖提取的特征與對可見光圖像提取的特征進行融合,經(jīng)過分類和回歸計算出最終檢測結(jié)果。兩組圖像數(shù)據(jù)可視化如圖3所示。

圖3 兩組圖像數(shù)據(jù)可視化
本實驗數(shù)據(jù)集選取了城市道路、普通公路、高速公路和鄉(xiāng)村道路多個場景,分別進行下采樣、標(biāo)注及數(shù)據(jù)增強等操作。車輛數(shù)據(jù)來源于實景拍攝,普遍存在車輛之間相互重疊、遮擋的現(xiàn)象,檢測難度較大。數(shù)據(jù)集處理流程如圖4所示。

圖4 數(shù)據(jù)集處理流程
在本實驗訓(xùn)練過程中,大量使用了數(shù)據(jù)增強的方法進行水平翻轉(zhuǎn)、縮放、隨機裁剪,并調(diào)整亮度、對比度、飽和度和色調(diào)等。經(jīng)過數(shù)據(jù)增強,對于不同大小、不同尺度的物體均有較好的檢測性能,有效提升了SSD模型的魯棒性[8];數(shù)據(jù)增強對待測目標(biāo)進行變形后,有助于豐富數(shù)據(jù),防止模型過擬合,提高泛化性。
本文在自己制作的數(shù)據(jù)集上對網(wǎng)絡(luò)進行訓(xùn)練,車輛檢測網(wǎng)絡(luò)基于SSD算法,訓(xùn)練環(huán)境為Tensor flow,對特征層anchor數(shù)量進行調(diào)整,學(xué)習(xí)率設(shè)置為0.000 1,weight decay為0.000 04,momentum為0.9,batch為32,正負(fù)樣本比例為1∶3。將車輛檢測實驗的系統(tǒng)流程總結(jié)如下:
(1)配置文件和環(huán)境變量;
(2)制作數(shù)據(jù)集,對2路數(shù)據(jù)進行預(yù)處理,如批量修改圖片名稱、下采樣、校準(zhǔn)對齊及對數(shù)據(jù)集標(biāo)簽進行標(biāo)注等;
(3)修改腳本,訓(xùn)練可見光數(shù)據(jù)得到模型1;
(4)重新設(shè)計網(wǎng)絡(luò)結(jié)構(gòu),加入紅外熱像圖,融合可見光數(shù)據(jù)和紅外熱像圖數(shù)據(jù)經(jīng)過卷積層提取的特征,訓(xùn)練得到模型2;
(5)將預(yù)測圖片分別輸入訓(xùn)練好的模型1和模型2,輸出檢測結(jié)果。
本文使用典型評價指標(biāo)—平均精度均值(mean Average Precision, mAP)對車輛檢測模型的精度進行衡量,mAP是各類別平均精度(Average Precision, AP)的均值。平均精度結(jié)合精確率(Precision)和召回率(Recall),可以評估模型在某一類別上的好壞,精確率和召回率計算方法分別見式(8)、式(9)所示:

式中:TP為IOU>0.5的預(yù)測框的數(shù)量;FP為IOU≤0.5的預(yù)測框或是檢測到同一個ground truth的多余檢測框的數(shù)量;FN為未檢測到ground truth的預(yù)測框的數(shù)量。
實際上,AP為Precision和Recall構(gòu)成的曲線下的面積,mAP即各類別AP的平均值,如有n個類,則mAP用式(10)表示:

本實驗中,模型1的mAP計算為76.5%,引入紅外熱像圖模型2的mAP計算為79.3%,提高了2.8%,最終的車輛檢測效果如圖5所示。

圖5 車輛目標(biāo)檢測效果
通過以上結(jié)果可看出,本文實驗較好地完成了車輛檢測的任務(wù),anchor在卷積層上數(shù)量的改進,以及在普通數(shù)據(jù)集基礎(chǔ)上增加紅外熱像圖,都有效提高了目標(biāo)檢測的精確率。這是因為光線不足時,網(wǎng)絡(luò)難以從可見光數(shù)據(jù)中提取足夠的特征,而紅外熱像圖的加入更有利于昏暗環(huán)境下目標(biāo)特征提取。但本文的實驗環(huán)境不一定是最佳的,還需要進一步完善。
本文基于SSD模型在采集的可見光和紅外熱像圖兩路數(shù)據(jù)集上進行車輛目標(biāo)檢測,該方法使用全卷積網(wǎng)絡(luò)進行特征提取、回歸和分類,具有一定的魯棒性。首先,在SSD模型的基礎(chǔ)上對anchor進行改進,有效降低了小目標(biāo)漏檢的概率。然后,增加紅外熱像圖數(shù)據(jù)集進行特征補充,不僅提高了小目標(biāo)檢測的準(zhǔn)確率,更有利于夜晚等特殊環(huán)境下的大目標(biāo)檢測。從實驗結(jié)果可以得出結(jié)論,該模型的檢測效果還有提升空間,今后的工作方向為進一步改進模型性能,提高車輛目標(biāo)檢測的精確度。