于潤(rùn)潤(rùn), 姜曉燕, 朱凱贏, 蔣光好, 周 偉, 吳 益
(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)
移動(dòng)端違章壓線檢測(cè)是指使用移動(dòng)設(shè)備采集車輛行駛視頻數(shù)據(jù),并針對(duì)行駛車輛碾壓實(shí)線的行為進(jìn)行檢測(cè),對(duì)智能交通系統(tǒng)具有重要意義。已有的違章壓線檢測(cè)研究使用的大部分方法為傳統(tǒng)檢測(cè)方法,并且是針對(duì)于固定攝像頭的監(jiān)控區(qū)域。文獻(xiàn)[1]使用一定先驗(yàn)知識(shí)劃定感興趣區(qū),使用邊緣檢測(cè)和Hough變換擬合出車道線,用判斷車道線區(qū)域是否有車輛來(lái)判定是否壓線。文獻(xiàn)[2]使用連續(xù)圖像幀間的灰度平均差計(jì)算得到黃線殘缺信息,并設(shè)置殘缺長(zhǎng)度閾值來(lái)判斷是否有車輛違章壓線。此類方法在不同天氣下會(huì)出現(xiàn)較大誤差。設(shè)備只能安裝在固定位置,監(jiān)督固定區(qū)域,無(wú)法做到行駛車輛的互相監(jiān)督。
文獻(xiàn)[3]使用圖像分割技術(shù)進(jìn)行移動(dòng)端壓線檢測(cè),首先分割出視頻中車輛和車道線,使用前后輪位置估計(jì)判斷車輛姿態(tài),結(jié)合車道線的輪廓,判定是否有壓線行為。此方法由于訓(xùn)練集中沒(méi)有將實(shí)虛線分別標(biāo)注,不能判斷是否為違章壓線;由于需要對(duì)車輛和車道線輪廓進(jìn)行高精度分割,在實(shí)際應(yīng)用中泛化能力不強(qiáng)。由于多分割任務(wù)的使用,運(yùn)行速度慢。
為克服上述問(wèn)題,本文將目標(biāo)檢測(cè)和語(yǔ)義分割方法與傳統(tǒng)方法相結(jié)合,對(duì)模型進(jìn)行模型剪枝[4],在保證精度的情況下減少神經(jīng)網(wǎng)絡(luò)模型的參數(shù),加快系統(tǒng)運(yùn)行速度。使用空間卷積模塊和像素統(tǒng)計(jì)的方法對(duì)存在遮擋下的車道線分割結(jié)果進(jìn)行補(bǔ)全,優(yōu)化車道線分割結(jié)果。提出一種新的基于像素統(tǒng)計(jì)的方法來(lái)區(qū)分車道線中的實(shí)線和虛線。
整個(gè)系統(tǒng)設(shè)計(jì)如圖1所示。1)使用模型剪枝技術(shù)精簡(jiǎn)車輛檢測(cè)網(wǎng)絡(luò),使用空間卷積模塊和基于像素統(tǒng)計(jì)的傳統(tǒng)后處理方法提高車道線分割結(jié)果。2)使用兩種特定感興趣區(qū)域和像素統(tǒng)計(jì)(水平投影)方法區(qū)分車道線實(shí)虛線。
圖1 系統(tǒng)設(shè)計(jì)框圖
基于深度學(xué)習(xí)的車輛目標(biāo)檢測(cè)[5],通常是針對(duì)車輛數(shù)據(jù)的特點(diǎn)對(duì)常用的目標(biāo)檢測(cè)模型進(jìn)行微調(diào),使模型對(duì)車量的檢測(cè)更準(zhǔn)確。目標(biāo)檢測(cè)算法可分為一步法[6,7]和兩步法[8,9]。以YOLOv3[8]為代表的一步法,圖片經(jīng)過(guò)特征提取網(wǎng)絡(luò)將像素空間信息映射到高維特征空間,得到高維空間下的特征信息。進(jìn)行目標(biāo)邊界框的回歸時(shí),使用FPN結(jié)構(gòu),進(jìn)行特征圖的多尺度信息融合,使網(wǎng)絡(luò)可以更好地檢測(cè)小物體。將特征圖劃分為網(wǎng)格區(qū)域,每個(gè)網(wǎng)格會(huì)預(yù)測(cè)3個(gè)邊界框,三張?zhí)卣鲌D所預(yù)測(cè)出的邊界框會(huì)一起進(jìn)行非極大值抑制,得到網(wǎng)絡(luò)最終預(yù)測(cè)結(jié)果。在網(wǎng)絡(luò)計(jì)算時(shí),邊界框會(huì)得到4個(gè)值:tx,ty,tw,th,其中tx,ty并不是邊界框的真實(shí)圖像坐標(biāo),而是相對(duì)于網(wǎng)格頂點(diǎn)cx,cy的相對(duì)偏移量,tw,th是預(yù)設(shè)邊界框?qū)捀遬w,ph的縮放比例。由計(jì)算關(guān)系
bx=σ(tx)+cx,by=σ(ty)+cy,bw=pwetw,bh=pheth
(1)
可得預(yù)測(cè)邊界框的結(jié)果bx,by,bw,bh。bx,by為邊界框的頂點(diǎn)坐標(biāo),bw,bh為邊界框的長(zhǎng)和寬。用車輛數(shù)據(jù)對(duì)預(yù)訓(xùn)練好的YOLOv3模型的參數(shù)進(jìn)行微調(diào),使模型進(jìn)一步學(xué)習(xí)車輛的特征。
YOLOv3網(wǎng)絡(luò)參數(shù)為246.4 MB,運(yùn)行時(shí)需要花費(fèi)大量的時(shí)間,內(nèi)存消耗大,不利于模型在移動(dòng)端的部署。因此,模型需要壓縮剪枝,在保證精度的前提下,輕量化模型。剪枝策略選擇通道剪枝,在訓(xùn)練期間,為了使模型參數(shù)稀疏化,在網(wǎng)絡(luò)的BN(batch normalization)層對(duì)系數(shù)施加L1正則約束。設(shè)定BN層中的縮放因子γ為通道重要性衡量因子,γ越大對(duì)應(yīng)的網(wǎng)絡(luò)通道越重要,在剪枝時(shí)刪除掉γ過(guò)小的通道。在進(jìn)行模型剪枝時(shí),γ添加到目標(biāo)函數(shù)中,剪枝和訓(xùn)練同時(shí)進(jìn)行。
在進(jìn)行模型剪枝時(shí),在損失函數(shù)中加入縮放因子γ,整個(gè)損失函數(shù)為
(2)
第一項(xiàng)是模型預(yù)測(cè)所產(chǎn)生的損失,第二項(xiàng)是剪枝項(xiàng)。其中g(shù)(γ)=|γ|,|·|是L1范數(shù),讓縮放因子進(jìn)行稀疏化。λ系數(shù)權(quán)衡兩項(xiàng)損失,設(shè)置為1×10-5。網(wǎng)絡(luò)剪枝后參數(shù)數(shù)量和γ的閾值有關(guān),在不損失精度的條件下選擇閾值為0.003。模型剪枝前后對(duì)比結(jié)果見(jiàn)表1。
表1 模型剪枝前后對(duì)比結(jié)果
2.2.1 基于空間卷積的車道線分割
在車道線檢測(cè)方面,文獻(xiàn)[10]提出暗通道優(yōu)先和Hough變換的霧天車道線識(shí)別算法。LaneNet[11]使用了U型架構(gòu)和多任務(wù)網(wǎng)絡(luò)設(shè)計(jì),將網(wǎng)絡(luò)作為二分類任務(wù)去分割車道線,使用了聚類損失函數(shù),將不同車道線的像素嵌入到不同的聚類族中。SCNN[12]提出了一種空間卷積層模塊,通過(guò)每個(gè)特征層上特征點(diǎn)間的信息交互,加強(qiáng)空間特征的提取。該方法使用四種卷積核分別對(duì)應(yīng)上、下、左、右四個(gè)特征點(diǎn)的信息交互,但網(wǎng)絡(luò)加深,訓(xùn)練預(yù)測(cè)速度下降,并且多卷積核的累加,有概率丟失重要特征信息,導(dǎo)致車道線分割中細(xì)節(jié)部分效果差。本文創(chuàng)新性地設(shè)計(jì)了更輕量的空間卷積結(jié)構(gòu),不再使用4個(gè)方向的卷積核,而只使用向下和向左的卷積核進(jìn)行特征加強(qiáng)。對(duì)于多個(gè)卷積層疊加導(dǎo)致重要細(xì)節(jié)丟失的問(wèn)題,將輕量空間卷積模塊凝練成為注意力機(jī)制,讓網(wǎng)絡(luò)特征圖使用空間卷積模塊進(jìn)行自校正。結(jié)構(gòu)如圖2。
圖2 輕量空間卷積結(jié)構(gòu)
特征進(jìn)入空間卷積模塊后,H×W×C被分割成為H個(gè)1×W×C的特征層,設(shè)定1×w×C的卷積層,其中滿足w 2.2.2 遮擋下的車道線補(bǔ)全 在車道線被車輛遮擋時(shí),遮擋部位的車道線是無(wú)法被分割出的,而車道線的分割結(jié)果對(duì)壓線檢測(cè)又至關(guān)重要。這里利用視頻信息的連續(xù)特性,進(jìn)行幀間車道線消失補(bǔ)全。當(dāng)網(wǎng)絡(luò)分割出車道線后,首先進(jìn)行高斯濾波器配合Canny算子去邊緣檢測(cè)[13],為了減少誤差率,使用形態(tài)學(xué)膨脹減少車道線分割結(jié)果的斷點(diǎn)。使用基于全局可調(diào)閾值的方法判斷是否有車道線被遮擋,首先使用兩幀的像素值比較后,設(shè)定全局可調(diào)閾值來(lái)判斷是否有丟失掉車道線情況存在,如果有丟失掉車道線發(fā)生就使用沒(méi)有丟失掉車道線時(shí)的車道線檢測(cè)結(jié)果。閾值的設(shè)定使用全局車道線像素點(diǎn)個(gè)數(shù)的2.6 %作為閾值,車道線補(bǔ)全效果如圖3所示。 圖3 車道線補(bǔ)全結(jié)果 融合車輛檢測(cè)圖和車道線分割圖,并進(jìn)行壓線判斷。如果車輛的特定點(diǎn)對(duì)應(yīng)的出現(xiàn)在車道線分割結(jié)果上,就判斷為出現(xiàn)壓線行為。 在判定違章壓線時(shí)為了減小計(jì)算量,設(shè)定壓線車輛左拐、右拐狀態(tài)下的感興趣區(qū)域。并且,為了適用于任何大小的視頻輸入,感興趣區(qū)域的大小設(shè)置成輸入視頻圖片尺寸的一定比例??紤]到車輛的影子對(duì)車道線的影響,將感興趣區(qū)域向下移動(dòng)一定的距離。獲得左拐壓線區(qū)域和/或右拐壓線區(qū)域內(nèi)中圖像的原圖,對(duì)其進(jìn)行灰度化而轉(zhuǎn)換為灰度圖像,并且自適應(yīng)灰度拉伸以適應(yīng)不同天氣和環(huán)境。進(jìn)行二值化,留下車道線。確定壓線幀中的感興趣區(qū)域后,使用水平投影統(tǒng)計(jì)感興趣區(qū)域圖像中車道線像素點(diǎn)個(gè)數(shù),當(dāng)某一行的像素點(diǎn)個(gè)數(shù)大于車道線的寬度閾值時(shí),就認(rèn)為該行存在車道線,否則認(rèn)為該行為不存在車道線的空白區(qū)域。 統(tǒng)計(jì)好感興趣區(qū)域車道線情況后,就可以進(jìn)行實(shí)虛線判斷,如圖4所示,感興趣區(qū)域車道線共有三種圖4(a),(b)是虛線,對(duì)應(yīng)車道線的統(tǒng)計(jì)列表中存在大量非車道線位置。圖4(c)是實(shí)線,對(duì)應(yīng)整個(gè)列表中不存在非車道線位置。 圖4 感興趣區(qū)域內(nèi)車道線類型判斷 通過(guò)車載行車記錄儀采集大量行駛視頻,視頻平均幀率為30幀/s。實(shí)驗(yàn)樣本來(lái)源于2輛車的行車記錄,試驗(yàn)車輛在安全路段進(jìn)行違章壓線得到違章樣本,共21段總計(jì)797 s的視頻,共計(jì)23 910幀圖片,實(shí)驗(yàn)數(shù)據(jù)中包含了典型的行車環(huán)境。例如:晴天狀態(tài)下的壓實(shí)線和虛線;雨天狀態(tài)下的壓實(shí)線和虛線;夜間行駛等。并且為了驗(yàn)證設(shè)計(jì)的實(shí)用性,從網(wǎng)上下載了10段違章壓線的視頻來(lái)擴(kuò)充測(cè)試數(shù)據(jù)集。在GPU為RTX 2080,8G內(nèi)存的Ubuntu16.04操作系統(tǒng)上運(yùn)行。 對(duì)于移動(dòng)端車輛壓線檢測(cè)方法,文獻(xiàn)[3]使用圖像分割技術(shù)進(jìn)行判斷。對(duì)此方法和本文壓線方法進(jìn)行了對(duì)比實(shí)驗(yàn)。針對(duì)于不同天氣、不同的車道線類型有了定量的結(jié)果,具體見(jiàn)表2。 表2 移動(dòng)端車輛壓線檢測(cè)對(duì)比 由于文獻(xiàn)[3]需要較深的分割網(wǎng)絡(luò)精確分割車輛和車道線,所以推斷時(shí)間長(zhǎng);訓(xùn)練數(shù)據(jù)是合成數(shù)據(jù),在遷移到真實(shí)場(chǎng)景時(shí),由于光照對(duì)比和實(shí)際照片細(xì)節(jié)部分模糊的問(wèn)題,導(dǎo)致分割時(shí),車輛和車道線邊緣模糊,檢測(cè)效果下降。本文采用目標(biāo)檢測(cè)和語(yǔ)義分割技術(shù)相結(jié)合的方法,不要求精確的車道線邊緣分割,弱化分割任務(wù)的重要性。配合目標(biāo)檢測(cè)技術(shù),在惡劣天氣下可以較高精度地檢測(cè)出壓線行為。本設(shè)計(jì)提出了實(shí)虛線判別算法,可以在移動(dòng)端檢測(cè)車輛違章壓線。通過(guò)分析檢測(cè)結(jié)果和人工判斷比較,違章壓線的檢測(cè)準(zhǔn)確率達(dá)到了91 %,其中晴天狀態(tài)下違章壓線檢測(cè)準(zhǔn)確率達(dá)到95 %,滿足實(shí)際需求。具體壓線檢測(cè)結(jié)果如圖5所示。 圖5 壓線檢測(cè)結(jié)果 本文提出了一種違章壓線檢測(cè)系統(tǒng),利用深度學(xué)習(xí)算法和傳統(tǒng)算法相結(jié)合,能夠在不同天氣下檢測(cè)車輛違章壓線。利用剪枝的目標(biāo)檢測(cè)算法可以在保證精度的情況下快速檢測(cè)出車輛;輕量級(jí)空間卷積模塊使得車道線分割網(wǎng)絡(luò)能夠提取到更具有結(jié)構(gòu)信息的車道線特征,使用視頻幀間信息去補(bǔ)全被遮擋的車道線,使得車道線分割結(jié)果滿足實(shí)際需求;基于像素統(tǒng)計(jì)(水平投影)的辦法在特定感興趣區(qū)域判斷實(shí)虛線。未來(lái),嘗試將車輛檢測(cè)和車道線分割任務(wù)進(jìn)行整合,可以使得整個(gè)系統(tǒng)更加精簡(jiǎn),能夠在更多的環(huán)境下搭建違章檢測(cè)系統(tǒng),讓車主們進(jìn)行互相監(jiān)督,構(gòu)建一個(gè)更好的交通系統(tǒng)。3 違章壓線判斷模型
3.1 壓線檢測(cè)
3.2 違章檢測(cè)
4 實(shí)驗(yàn)與結(jié)果分析
5 結(jié) 論