李軼杰
現代交通管理系統影響著當代人出行的方方面面。其中,車輛目標識別作為交管系統的核心要素,其研究具有重要且深遠意義。針對現有交通問題,研究了幾種典型的由卷積神經網絡作為骨架構建的目標識別算法,分析這幾種算法的優缺點。對公交站牌監控中不同的交通狀況進行分析統計,從而更加高效地解決交通管理方面存在的問題。
截至2021年12月27日,中國機動車保有量已經突破3.93億輛,其中汽車保有量突破了3億輛。城市道路交通所承擔的壓力與日俱增。一個城市的交管系統直接決定了當地交通是否方便人們出行及管理部門應對違法違規現象的處理速度,因此智能交通管理系統已成為當前中國交通領域的熱點話題,車輛目標檢測算法的研究與創新迫在眉睫。
車輛目標檢測算法可以應用在道路交通的多個方面,比如通過應用在交通路口的監控攝像頭,可以根據當前車輛的擁堵情況,實時將數據上傳到各類地圖中,以供駕駛員選擇最優路段行進。應用在停車場中,通過對停車場整體的停車狀況進行分析,緩解停車位不足造成擁堵的問題。應用在智能公交站牌上,可以通過頂部的攝像頭,根據不同編號的公交車的特殊標志進行識別并及時地向乘客播報即將到達的公交車的編號,以及對在公交站牌附近違規停車,占用公交車道的機動車,識別其車型與車牌號,進行相應的證據獲取和處罰。
由此可見,車輛目標檢測算法的應用可以有效緩解交通問題,提高人們出行的便利性,減少違規停車的發生率。本文對比了傳統的目標檢測算法和基于卷積神經網絡的目標檢測算法,為尋找更加適合的目標檢測算法進行了研究。
目標檢測算法本質上是將圖片中的前景與背景進行劃分后,對需要的目標根據不同的外觀特征進行識別的算法。對于車輛的目標檢測而言,即在所需要識別的場景中,針對行人或是車輛的不同外觀特征以及車牌號,準確的完成識別任務,從而實現路口車輛數目統計,特定車輛目標跟蹤,以及違規車輛的監測等一系列任務。
(一)傳統目標檢測算法
傳統的目標檢測算法,實質上就是通過不同尺寸的滑動窗口在圖片上進行平移滑動,從中獲取不同視野的候選區域,然后提取候選區域相關的視覺特征,最后通過傳統機器學習中的分類器進行分類判斷。
在交通監控系統中使用傳統目標檢測算法作為檢測器,可以實現對于車輛目標檢測的基本需求。首先將路面,建筑以及車輛進行前景與背景的區分,隨后針對所檢測到的車輛進行較為細化的劃分。但是道路上的車輛存在不同程度的遮擋,而且在不同的天氣狀況下,也會對監控畫面造成影響,干擾檢測效果。同時,因為基于滑動窗口的區域選擇策略沒有針對性,時間復雜度高,檢測速度相對較慢。因此,該類算法雖然非常經典,但并不完全適用于車輛目標檢測。
(二)基于卷積神經網絡的目標檢測算法
傳統的目標檢測算法檢測速度較慢,人為設計的特征提取模板不夠全面且難以處理遮擋,基于深度學習的目標檢測算法性能要優于傳統目標檢測算法,其主要采用的是卷積神經網絡作為特征提取網絡。卷積神經網絡通過隨機初始化的卷積核,在目標圖像上不斷地平移,以此獲取相應的特征圖。而其卷積核因為在反向傳播過程中不斷地進行調整,從而獲取具有顯著特征的特征圖。通過卷積神經網絡可以提取到更加深層次、語義化的特征。因此,基于卷積神經網絡的目標檢測算法在出現后,便被廣泛應用在目標識別任務當中。
1.基于one-stage的目標檢測算法
目標檢測可以歸納為兩個主要的任務,其一是獲取目標相較于整張圖像中的位置,可以看作是回歸任務,其二是判斷物體的類別,可以看作是分類任務。onestage目標檢測算法,即一階段目標檢測算法。該類算法是直接對于需要進行目標識別的圖片進行預測和分類。經典的one-stage目標識別算法有YOLO系列,SSD以及DetectNet,相較于two-stage算法,不需要對大量的候選框進行篩選,而是直接產生物體的類別概率和位置坐標值,經過單次檢測即可直接得到最終的檢測結果,其運行速度會快很多。
當圖片中需要進行識別的目標只有一個時,只需要進行特征提取并進行分類即可得出所需識別的物體的位置與類別。但當識別的任務是多個物體時,需要對圖片使用網格(grid)進行劃分,為bounding box提供一定的候選區域,其作用是為了限制某個目標的bounding box偏移,防止其移動到其他需要識別的對象的網格中,影響識別的效果。目標識別算法只需要針對當前候選區域的目標框內的物體進行分類,無須關注目標框外的信息,就可以得到較為精確的分類。模型的損失函數也將由位置損失與分類損失共同構成。
2.基于two-stage的目標檢測算法
Two-stage目標檢測算法,即兩階段目標檢測算法。其主要是將識別過程分成兩步驟,首先獲取需要識別的物體的大致位置,然后對物體進行分類和位置的回歸,最終得出分類結果和所在位置的坐標。經典的算法有:R-CNN,SPP-net,Fast R-CNN以及Faster R-CNN。該類算法的核心步驟即:1.訓練RPN網絡,通過NMS以獲得存在物體的大致區域 2.訓練目標區域檢測網絡以獲取對于物體的精確位置以及相應的類別。
Faster R-CNN流程如圖所示。
首先將監控像頭獲取的視頻分幀轉換成所需要的圖片,經過預處理后,送入主干網絡中。然后通過卷積提取到相應的深層特征圖,將特征圖送入RPN網絡,經過滑動窗口,獲得相應的包含物體的候選框,此時的候選框起到的作用是將前景和背景區分開。然后將所獲得的候選框映射到特征圖中,進入roi_pooling層,進行位置回歸和修正。在得到較為準確的候選目標對應特征圖上的一部分區域的特征后,會經過全連接層來進一步對候選區域的特征進行表示。最終通過分類和回歸的分支操作,分別完成對于候選目標類別的判斷和精確位置的確定。
對于主干網絡來說,首選CNN網絡,該網絡隨著網絡深度的提升,能夠獲取更加復雜且深層次的圖片特征。面對一些需要提取較為深度特征的情況,存在兩種解決策略,第一種是增大網絡的寬度,比如GoogleNet,優點是可以有效增加神經元個數,提升模型的復雜度的同時提高學習能力,缺點是學習能力過強容易導致過擬合現象的發生。另一種解決策略是加深網絡的深度,比如ResNet,深層次的網絡可以有效加強其對于非線性特征的泛化表達能力,增強其魯棒性。但深層次的網絡規模會導致計算量增大,同時會導致梯度消失和梯度離散等問題。因此在網絡深度較大的時候會同時采用殘差結構來保證網絡學習特征的能力。

針對道路上車輛識別的情況來看,很多卷積神經網絡是運行在終端的。也就是說不能忽視目前計算機運算能力有限的前提條件,無休止的增大網絡的寬度和深度。而應該在設計網絡的同時,考慮其深度,寬度和其實際性能的平衡。
3.特征融合方式
在目標檢測的過程中,大部分使用的是以卷積神經網絡為骨架的特征提取網絡。網絡層數越淺,計算量相對較少,相對來說,能夠較好保留圖片中物體的輪廓信息,但是能提取到的深層語義和信息就越少。網絡層數越深,可以更好地獲取深層的特征,但是因為卷積層數過多,所需的參數就越多,因此為了減少參數量,通常使用池化操作來減少參數。池化后的特征圖,保留了關鍵特征,但是卻消除了一些小物體的信息。
如果在交通監控中,僅僅使用經過多次卷積池化得到的特征圖來作為車輛目標識別的對象,當卷積池化的次數較多時,會影響離攝像頭較遠處車輛的識別效果。當卷積池化次數較少時,面對車輛外觀區別不大的情況,會影響對不同車輛的區分效果。
因此我們需要將低層特征和深層特征進行融合,以此達到最好的特征提取效果。
(1)雙線性插值法
圖像在進行池化操作后,其尺寸通常會發生變化,如果想融合特征,就需要將不同尺寸的圖像進行合并。如果是將大尺寸圖像進行縮放,所得到的像素值一般不是整數,圖像嚴重失真,如果是將小尺寸圖像放大,小圖像的像素點到大圖像中不是滿射,失去細節紋理。而雙線性插值法充分利用了原圖上四個真實存在的像素值來共同決定目標圖中的一個像素值,所取得的效果要優于最近鄰插值法。
(2)FPN網絡
FPN網絡,即特征金字塔。在其出現之前,深度學習僅僅采用特征提取網絡的最高層所提取的特征作為送入下一層網絡的輸入。而FPN在前人的基礎上提出自上而下的特征提取體系結構,通過調節不同尺寸特征圖的大小,有效融合不同尺度特征圖所提取到的特征信息,完成特征融合。以此實現對于大目標和小目標的更加有效的檢測。
在進行車輛目標檢測的過程中,攝像頭經常會面臨著較差可視角度以及遠距離的車輛目標檢測的情況。因此,實現圖片的深層語義信息和淺層的外觀信息的有效融合,可以提高對于圖像或視頻中車輛的識別效果。
在對車輛目標檢測的任務中,主要采用的是卷積神經網絡作為骨架的一階段或是二階段目標檢測算法,對于小目標車輛的檢測,采用特征融合的方式,加強所需要提取的物體的信息。本文介紹了傳統目標檢測算法,基于卷積神經網絡的one-stage目標識別算法,two-stage目標識別算法及提高識別效果的特征融合方法。
在智能交通監控攝像頭下進行車輛目標檢測任務中,由于傳統的目標識別算法使用滑動窗口的方式獲取相應的目標對象,需要在整張圖像上進行滑動搜索,檢測的速度會遜于使用基于卷積神經網絡的目標識別算法,因此采用基于卷積神經網絡的目標識別算法。采用one-stage目標檢測算法,可以在更短的時間內獲取所有出現的目標對象,但是相對精度較低,使用two-stage目標檢測算法,可以實現較高精度的目標檢測效果,但是時間慢于one-stage檢測算法。因此需要進行進一步研究在不同的情境下相對更優的算法。同時,基于卷積神經網絡的特征提取網絡,雖然相較于傳統算法,可以獲得更加深層次的語義信息,但是仍然存在著卷積核相較于整張圖像中較小的范圍從而導致忽視了整張圖的關聯信息,以及龐大的參數量仍然影響在實際應用中的檢測速度的問題。因此更加理想的組合模型勢必需要廣大研究者們的推進與探索,從而針對特定問題設計魯棒性更強的車輛目標檢測算法。
作者單位:北方工業大學