摘 要:智能交通系統(tǒng)可以通過算法預(yù)警、實(shí)時(shí)調(diào)度等方式減少車輛擁堵以及交通事故的發(fā)生率,而實(shí)現(xiàn)各類預(yù)警以及調(diào)度功能的基礎(chǔ)在于對車輛軌跡的檢測準(zhǔn)確,檢測的好壞會(huì)影響到智能交通系統(tǒng)的決策,因此對于采用何種算法來進(jìn)行車輛檢測,要給予足夠的重視度。鑒于此,將梳理基于深度學(xué)習(xí)的車輛檢測算法,將傳統(tǒng)目標(biāo)檢測算法與基于深度學(xué)習(xí)的兩階段、單階段以及基于Transformer的算法進(jìn)行全面的、綜合化的對比。分析這些算法的優(yōu)缺點(diǎn),明確不同算法的適用場合,并指出當(dāng)前存在的挑戰(zhàn),對未來的研究方向給出建議。
關(guān)鍵詞:智能交通系統(tǒng) 車輛檢測 深度學(xué)習(xí) 目標(biāo)檢測算法
隨著國家經(jīng)濟(jì)的持續(xù)發(fā)展,我國機(jī)動(dòng)車的數(shù)量也在不斷增長。根據(jù)公安部發(fā)布數(shù)據(jù)顯示,截至2024年,我國機(jī)動(dòng)車保有量高達(dá)4.53億輛。自2015年以來,機(jī)動(dòng)車新注冊登記量已連續(xù)10年超過3000萬輛[1]。隨之而來的交通事故也居高不下,2023年,我國的交通事故發(fā)生數(shù)為25.47萬起,造成的死亡人數(shù)達(dá)6萬多人,導(dǎo)致的直接經(jīng)濟(jì)損失高達(dá)11.8億元[2]。因此減少交通事故帶來的負(fù)面影響尤為重要。智能交通系統(tǒng)(Intelligent Traffic System,簡稱ITS)對交通事故的減少起到了積極作用,而車輛檢測作為智能交通系統(tǒng)的核心技術(shù),其精度對于自動(dòng)駕駛、交通流量監(jiān)控等領(lǐng)域的可靠性具有直接影響。為此,將綜述基于深度學(xué)習(xí)的車輛檢測算法,首先回顧傳統(tǒng)目標(biāo)檢測算法,接著介紹基于深度學(xué)習(xí)的目標(biāo)檢測算法,并分析其優(yōu)缺點(diǎn),最后對未來的研究方向進(jìn)行合理展望。
1 基于傳統(tǒng)的車輛目標(biāo)檢測算法
在2012年之前,主流的車輛檢測方案是采用目標(biāo)檢測算法進(jìn)行車輛軌跡追蹤,這類算法依賴于計(jì)算機(jī)視覺,通過手工設(shè)計(jì)檢測對象的特征,來識(shí)別圖像中檢測對象的位置和類別。目標(biāo)檢測算法一般由區(qū)域選取、特征提取和特征分類3大步驟組成[3],首先輸入原始圖像,經(jīng)圖像預(yù)處理之后,通過滑動(dòng)窗口遍歷圖像,生成不同尺度的候選區(qū)域,然后使用HOG、SIFT、Haar等特征進(jìn)行特征提取,使用SVM、AdaBoost等分類器判斷候選區(qū)域是否為檢測目標(biāo),最后輸出檢測結(jié)果。
基于傳統(tǒng)的目標(biāo)檢測有以下優(yōu)勢??山忉屝詮?qiáng):基于手工設(shè)計(jì)的特征和分類器具有明確的數(shù)學(xué)定義和物理意義,容易理解和分析,且能夠給出決策的依據(jù)。硬件依賴低:對硬件計(jì)算資源的要求相對較低,在計(jì)算能力有限的設(shè)備上也能運(yùn)行,具有較好的通用性和可移植性。數(shù)據(jù)要求低:相較于深度學(xué)習(xí)算法,傳統(tǒng)算法在小數(shù)據(jù)集上也能取得一定的效果,不需要大量的標(biāo)注數(shù)據(jù)進(jìn)行訓(xùn)練,降低了數(shù)據(jù)收集和標(biāo)注的成本。
然而基于傳統(tǒng)的目標(biāo)檢測算法也有一些致命缺點(diǎn)。計(jì)算效率低:采用滑動(dòng)窗口的方式生成候選區(qū)域,需要對圖像的可能位置和尺度進(jìn)行遍歷,計(jì)算量巨大,導(dǎo)致檢測速度慢,實(shí)時(shí)性較差。特征表達(dá)能力有限:手工設(shè)計(jì)的特征是基于先驗(yàn)知識(shí)和經(jīng)驗(yàn)設(shè)計(jì)的,特征表達(dá)能力有限,無法像深度學(xué)習(xí)的算法一般實(shí)現(xiàn)對多層次、高抽象語義特征的自動(dòng)化學(xué)習(xí),難以捕捉圖像中的復(fù)雜信息和語義特征,對復(fù)雜場景的適應(yīng)性較差。泛化能力弱:針對特定目標(biāo)和場景設(shè)計(jì)的特征和分類器,對于新的目標(biāo)或場景需要重新設(shè)計(jì)特征和調(diào)整參數(shù),缺乏通用性和靈活性,檢測精度低,若目標(biāo)被部分遮擋,特征顯示不全面,算法的特征提取功能就容易失效。因此在多類別缺陷識(shí)別中,傳統(tǒng)算法表現(xiàn)有限,需要人工進(jìn)行圖像灰度化、Gamma校正、濾波去噪、ROI提取等預(yù)處理,否則在復(fù)雜場景下的檢測精度會(huì)表現(xiàn)出較低的現(xiàn)象,無法應(yīng)用于實(shí)際需求。
基于深度學(xué)習(xí)的目標(biāo)檢測算法針對傳統(tǒng)目標(biāo)檢測算法需要對滑動(dòng)窗口進(jìn)行遍歷和手動(dòng)提取特征等缺陷,提出了具有自主學(xué)習(xí)目標(biāo)特征的神經(jīng)網(wǎng)絡(luò)模型,尤其隨著卷積神經(jīng)網(wǎng)絡(luò)(CNN)[4]的發(fā)展,將目標(biāo)檢測的準(zhǔn)確率和實(shí)時(shí)性推上了新的高度。
2 基于深度學(xué)習(xí)的車輛目標(biāo)檢測算法
基于深度學(xué)習(xí)的車輛目標(biāo)檢測本質(zhì)是借助深度神經(jīng)網(wǎng)絡(luò)模型自動(dòng)識(shí)別和定位交通場景中的車輛。常見的基于深度學(xué)習(xí)的車輛目標(biāo)檢測算法可以大致地分為兩階段檢測算法、單階段檢測算法、基于Transformer的目標(biāo)檢測算法三種[5]。相較于傳統(tǒng)的目標(biāo)檢測算法,基于深度學(xué)習(xí)的目標(biāo)檢測算法在準(zhǔn)確率和運(yùn)行效率上更具優(yōu)勢,目前已經(jīng)在自動(dòng)駕駛、交通流量監(jiān)控等領(lǐng)域得到了廣泛應(yīng)用,為相關(guān)行業(yè)的智能化提供了重要支撐。
2.1 兩階段目標(biāo)檢測算法
2.1.1 R-CNN
R-CNN是一種可擴(kuò)展簡單的檢測算法,是卷積神經(jīng)網(wǎng)絡(luò)算法的子類別之一,具有優(yōu)秀的特征提取和分類能力。其采用分階段訓(xùn)練,主要步驟為“區(qū)域生成→特征提取→SVM分類”,首先通過搜索算法從輸入圖像上生成2000個(gè)候選框,將生成的每個(gè)候選框處理成227×227大小的圖像,然后輸入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行提取特征,將得到的4096維特征通過SVM分類器進(jìn)行分類,確定該區(qū)域是否存在目標(biāo)物體,ResNet-50會(huì)采用殘差結(jié)構(gòu)解決深層網(wǎng)絡(luò)的梯度消失問題,以便學(xué)習(xí)到更復(fù)雜的語義特征,比如“駕駛員”的姿態(tài)、“車輛”的輪廓等,因此相比傳統(tǒng)的目標(biāo)檢測算法,R-CNN的場所適應(yīng)能力更強(qiáng),能結(jié)合交通環(huán)境的變化對由此造成的特征缺失進(jìn)行智能識(shí)別和修正,避免因?yàn)樘卣魈崛〔蝗斐傻臋z測精度下降問題。但其需要對所有的2000個(gè)候選框都進(jìn)行特征提取,而候選框之間存在著大量的重復(fù)區(qū)域,使得大量的運(yùn)算也是重復(fù)無效的,最終導(dǎo)致運(yùn)行速度較慢,實(shí)時(shí)性較差。
2.1.2 Fast R-CNN
在R-CNN的原始框架中,因?yàn)楹蜻x框過大,候選區(qū)域的特征提取與分類回歸任務(wù)存在相當(dāng)嚴(yán)重的計(jì)算冗余,因?yàn)镽-CNN的每個(gè)候選區(qū)域需獨(dú)立通過卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行前向傳播,所以處理單張圖像需重復(fù)執(zhí)行數(shù)千次特征提取操作,在多尺度池化操作中會(huì)遭遇梯度傳播受限與內(nèi)存占用過高的問題。Fast R-CNN對此問題采用了ROI Pooling(Region of Interest Pooling)機(jī)制,將多尺度池化簡化為單尺度自適應(yīng)池化,對于輸入特征圖上的每個(gè)候選區(qū)域,ROI Pooling將其劃分為固定數(shù)量的子網(wǎng)格,并對每個(gè)子網(wǎng)格執(zhí)行最大池化操作,輸出統(tǒng)一維度的特征向量,以此在保留SPP層對尺寸變化的適應(yīng)性基礎(chǔ)上,減少池化分支數(shù)量,降低計(jì)算復(fù)雜度。
在任務(wù)整合方面,F(xiàn)ast R-CNN摒棄了R-CNN中分類與回歸分階段訓(xùn)練的范式,轉(zhuǎn)而采用多任務(wù)聯(lián)合學(xué)習(xí)框架,引入SoftMax分類器替代SVM,并將分類損失與邊界框回歸損失統(tǒng)一至同一目標(biāo)函數(shù)中,模型通過全連接層并行輸出類別概率分布p=(p0,p1,...,pK)及各類別的邊界框偏移量tk=(,,,),并定義多任務(wù)損失函數(shù)L=()。其中,為交叉熵分類損失,為Smooth L1回歸損失,為平衡超參數(shù)。如此設(shè)計(jì)是為了消除了特征存儲(chǔ)需求,借助梯度反向傳播實(shí)現(xiàn)分類與回歸參數(shù)的協(xié)同優(yōu)化。
不過,F(xiàn)ast R-CNN的候選區(qū)域生成環(huán)節(jié)沿用Selective Search算法,該算法通過顏色、紋理、尺寸等多層次分割策略生成約2000個(gè)候選框,雖能覆蓋多數(shù)潛在目標(biāo),但其基于CPU的計(jì)算模式與深度學(xué)習(xí)模型的GPU加速架構(gòu)存在兼容性鴻溝。Selective Search處理單張圖像需耗時(shí)約2秒,占據(jù)整體推理時(shí)間的80%以上,成為制約實(shí)時(shí)性的主要瓶頸。并且,候選區(qū)域生成與特征提取階段的割裂導(dǎo)致模型無法通過端到端學(xué)習(xí)優(yōu)化提案質(zhì)量,部分漏檢或冗余框需依賴后處理(如非極大值抑制)進(jìn)行修正,增加計(jì)算開銷。
2.1.3 Faster R-CNN
Faster R-CNN針對Fast R-CNN的不足,將Selective Search替換為RPN(Region Proposal Network)網(wǎng)絡(luò),RPN并非獨(dú)立于主干網(wǎng)絡(luò)存在,而是與特征提取層共享卷積計(jì)算。以VGG16為例,輸入圖像經(jīng)13層卷積后輸出尺寸為原圖1/16的特征圖,如輸入800×600圖像,輸出50×38×512特征圖等等。在此特征圖上,RPN通過滑動(dòng)窗口機(jī)制逐空間位置預(yù)測候選框,每個(gè)滑動(dòng)窗口中心點(diǎn)對應(yīng)原圖上的一組預(yù)定義錨框,其設(shè)計(jì)基于目標(biāo)尺度和長寬比先驗(yàn)。典型配置為3種尺度(1282,2562,5122)與3種長寬比(1∶1,1∶2,2∶1),形成9個(gè)錨框/位置。這種設(shè)計(jì)使得RPN與分類器共享卷積層特征,避免了重復(fù)計(jì)算。基于此,F(xiàn)aster R-CNN得以在一個(gè)網(wǎng)絡(luò)框架內(nèi)完成候選框、特征提取、分類、定位修正等任務(wù),極大地提升了檢測效率,且檢測準(zhǔn)確率達(dá)到了73.2%。不過,F(xiàn)aster R-CNN繼續(xù)使用ROI Pooling,導(dǎo)致特征喪失平移不變性,定位準(zhǔn)確性下降;此外,F(xiàn)aster R-CNN運(yùn)用錨點(diǎn)框?qū)υ瓐D進(jìn)行映射,而錨點(diǎn)框經(jīng)多次下采樣后對應(yīng)原圖區(qū)域較大,導(dǎo)致Faster R-CNN對小目標(biāo)的檢測效果欠佳。
2.2 單階段目標(biāo)檢測算法
2.2.1 YOLO
YOLO是一類高效、實(shí)時(shí)的目標(biāo)檢測算法,已經(jīng)迭代了多個(gè)版本。YOLO將圖片分割為7×7個(gè)網(wǎng)格,每個(gè)網(wǎng)格僅檢測中心位于其內(nèi)部的目標(biāo),預(yù)測2個(gè)尺度的邊界框和類別信息,一次性生成所有圖像區(qū)域包含目標(biāo)的邊界框、置信度和類別概率,最終輸出檢測結(jié)果。其檢測速度可以達(dá)到45幀/秒,滿足了實(shí)時(shí)性要求,但準(zhǔn)確率只有63.4%,且在小目標(biāo)檢測方面效果欠佳。YOLO已迭代了多個(gè)版本,YOLOv2引入Batch Normalization,并使用高分辨率輸入(448×448),提升了收斂性和精度;YOLOv3采用Darknet-53骨干網(wǎng)絡(luò)和多尺度預(yù)測,顯著改善小目標(biāo)檢測;YOLOv4引入數(shù)據(jù)增強(qiáng)技術(shù)并優(yōu)化骨干網(wǎng)絡(luò),提升了魯棒性和運(yùn)行效率;YOLOv5基于PyTorch框架開發(fā),部署靈活且效率高;YOLOv7提出可擴(kuò)展的模型架構(gòu),在速度和精度上表現(xiàn)突出;YOLOv8放棄了基于錨的方法,引入C2f模塊,簡化了模型的同時(shí)提高了效率;YOLOv10提出低延遲解耦頭,引入輕量化骨干網(wǎng)絡(luò),優(yōu)化了推理速度并改善了小目標(biāo)檢測能力。
整體來說,YOLO的單階段架構(gòu)使得其在速度上遠(yuǎn)超兩階段算法,適合進(jìn)行實(shí)時(shí)檢測。但對于小目標(biāo)檢測的效果仍然不理想,且在定位精度上也仍然低于兩階段算法。
2.2.2 SSD
SSD旨在高效檢測小目標(biāo)和多尺度目標(biāo),其借鑒了YOLO的錨框設(shè)計(jì)理念,采用6個(gè)不同尺度的特征圖進(jìn)行檢測任務(wù),從而能夠獲得更豐富的特征信息。盡管專注于小目標(biāo)檢測,但是小目標(biāo)在特征圖中對應(yīng)的區(qū)域較為有限,難以得到充分訓(xùn)練,導(dǎo)致檢測效果依然不理想,達(dá)不到Faster R-CNN的精度。
2.3 基于Transformer的目標(biāo)檢測算法
基于Transformer的目標(biāo)檢測算法通過自注意力機(jī)制捕捉全局上下文信息,顯著提升了檢測精度,使其在復(fù)雜場景、密集目標(biāo)以及小目標(biāo)檢測等任務(wù)中表現(xiàn)出色。下面主要介紹DERT。
DERT提出了一個(gè)創(chuàng)新性思路:將目標(biāo)檢測問題視為集合預(yù)測問題,直接從圖像中輸出目標(biāo)的類別和邊界框。其主要架構(gòu)包括兩個(gè)部分:特征提取器(通常為CNN)和Transformer編碼器-解碼器結(jié)構(gòu)。CNN用來提取特征,Transformer編碼器對圖像特征和位置信息進(jìn)行編碼,將結(jié)果輸入到解碼器中進(jìn)行處理,最后將輸出傳輸?shù)焦潭〝?shù)量的預(yù)測頭中進(jìn)行類別和邊界框的預(yù)測。其優(yōu)勢在于采用端到端設(shè)計(jì),簡化了目標(biāo)檢測流程,且提升了復(fù)雜場景下的檢測精度。但其也存在訓(xùn)練收斂慢、計(jì)算復(fù)雜度高、小目標(biāo)檢測性能較弱等問題。
3 思考與展望
相較于傳統(tǒng)的目標(biāo)檢測方法,基于深度學(xué)習(xí)的車輛目標(biāo)檢測在檢測精度與檢測速度方面均實(shí)現(xiàn)了顯著提升,但仍面臨以下挑戰(zhàn)。(1)深度學(xué)習(xí)的可解釋性不足。在深層次上通常依賴實(shí)驗(yàn)和經(jīng)驗(yàn)推測,中間過程缺少明確的解釋。(2)計(jì)算資源耗費(fèi)大。不管是傳統(tǒng)的深度學(xué)習(xí)目標(biāo)檢測算法(YOLO或RCNN等)還是Transformer對計(jì)算資源的要求都很高。(3)復(fù)雜場景下的小目標(biāo)、多目標(biāo)、密集目標(biāo)檢測困難。簡單場景檢測效果較好,但在多目標(biāo)和密集目標(biāo)場景中容易出現(xiàn)誤檢甚至漏檢的情況。
針對以上問題,文章對目標(biāo)檢測算法未來的發(fā)展方向做出討論:(1)在可解釋性方面,提升模型決策透明度以滿足高可靠性場景需求;(2)開發(fā)適配輕量化及邊緣設(shè)備的模型,優(yōu)化推理速度和功耗;(3)在復(fù)雜場景方面,通過動(dòng)態(tài)多尺度融合、增強(qiáng)訓(xùn)練策略,以及結(jié)合點(diǎn)云、圖像、文本等多模態(tài)數(shù)據(jù),來提升檢測精度和魯棒性。
4 結(jié)語
文章圍繞車輛目標(biāo)檢測算法展開了概述,回顧了傳統(tǒng)目標(biāo)檢測算法,介紹了基于深度學(xué)習(xí)的兩階段、單階段以及基于Transformer的目標(biāo)檢測算法,分析目前基于深度學(xué)習(xí)的車輛目標(biāo)檢測算法存在的問題,以及給出了未來的發(fā)展方向的建議。
基金項(xiàng)目:溫州市基礎(chǔ)性科研項(xiàng)目“基于視覺感知的高速公路交通事故檢測及預(yù)警關(guān)鍵技術(shù)研究”(項(xiàng)目編號(hào):S20220019)。
參考文獻(xiàn):
[1]孔大為.全國機(jī)動(dòng)車保有量達(dá)四點(diǎn)五三億輛[N].人民公安報(bào),2025-01-18(4).
[2]國家統(tǒng)計(jì)局.中國統(tǒng)計(jì)年鑒2024[M].北京:中國統(tǒng)計(jì)出版社,2024.
[3]方文俊,楊燕紅,王昊.自動(dòng)駕駛汽車目標(biāo)檢測算法研究進(jìn)展[J/OL].汽車工程師,1-14[2025-04-30].https://doi.org/10.20104/j.cnki.1674-6546.20240375.
[4]Lecun Y, Boser B, Denker J S, et al. Backpropagation Applied to Handwritten Zip Code Recognition[J].Neural Computation,1989,1(4):541-551.
[5]王寧,智敏.深度學(xué)習(xí)下的單階段通用目標(biāo)檢測算法研究綜述[J/OL].計(jì)算機(jī)科學(xué)與探索.https://link.cnki.net/urlid/11.5602.tp.20250117.2303.004.