?

基于改進MMA-Net的車道線檢測算法

2023-10-29 01:46張宇航
計算機仿真 2023年9期
關鍵詞:編碼器車道記憶

江 漫,張 乾,朱 瑜,張宇航

(貴州民族大學數據科學與信息工程學院,貴州 貴陽 550025)

1 引言

隨著智能交通的發展,近年來,智能輔助駕駛技術已成為研究熱點,而車道線檢測是智能輔助駕駛的一項基本任務。目前基于計算機視覺的車道線檢測技術已經廣泛應用于自適應巡航控制系統、盲點監控系統、車道偏離預警系統等智能輔助駕駛系統[1]。準確識別車道線的位置能為車輛安全行駛提供重要信息,因此,研究車道線檢測具有重要的現實價值。

在實際場景中,受天氣環境、光照條件變化、道路復雜性、車道線磨損程度、路面陰影、來往車輛對車道線的遮擋等影響,車道線檢測面臨著諸多的挑戰。此外,由于車道線形狀細長,占圖像面積較小,也給檢測帶來了一定的困難。

隨著深度學習的發展,近年來,通過對大規模真實數據進行標注和訓練,車道線檢測取得了重大進展[2-6]。與傳統的基于車道線的顏色、邊緣等特征信息的方法[7-9]相比,深度學習網絡大大提高了車道線檢測的性能。

然而,現有的大多數深度學習方法都是對圖像級數據進行車道線檢測,忽略了視頻幀前后的順序信息。視頻中的連續幀可以利用時間連貫性來解決圖像模糊、遮擋、車道線磨損等問題,基于此,MMA-Net[10]將車道線檢測從圖像級擴展到了視頻級,采集了一個新的視頻車道線檢測數據集VIL-100,并提出了一個多層記憶聚合網絡(MMA-Net)進行視頻實例車道線分割,該方法在VIL-100數據集上的性能優于目前最先進的車道線檢測方法,故本文將其作為基礎網絡,提出改進的MMA-Net算法。

2 相關工作

從如何定義車道檢測任務的角度,可以將基于深度學習的車道線檢測方法分為四類:①基于分類的方法,其通常結合先驗信息來確定車道線位置,如DeepLane[2]通過在網絡中加入一些與位置相關的先驗知識,克服了圖像分類無法直接獲得車道線位置的缺點,利用深度神經網絡直接估計車道線位置?;诜诸惖能嚨谰€檢測方法網絡結構較簡單,但應用場景有限,且后處理的計算復雜度較高。②基于目標檢測的方法,其利用坐標回歸檢測車道線的邊界框位置,如VPGNet[11]使用改進的消失點定位方法,提出了一個端到端的多任務網絡,能夠在多雨和低照明的惡劣天氣條件下識別車道線,但需要進行點采樣、聚類和車道線回歸等復雜的后處理操作;文獻[12]提出了一種基于時空深度學習的車道線檢測方法,利用時間和空間約束縮小搜索區域范圍,能夠準確檢測車道線邊界,但其數據流和網絡結架構復雜,且當初始假設不滿足時,預處理不能提供有效的結果。③基于建模的方法,其采用數學模型對車道線進行建模,通過求解模型參數擬合車道線。文獻[13]采用分段直線模型來擬合彎道車道線,利用啟發式搜索算法在感興趣區域(ROI)中搜索車道邊界線,將檢測到的車道線擬合為連續平滑的曲線,可以很好地逼近彎道,但該方法只適用于小曲率車道線,對大曲率車道線的檢測效果不夠精確。文獻[14]采用雙曲線模型擬合車道線,使兩條雙曲線收斂于同一點,有效地克服了直線和拋物線模型在直道與彎道連接處不連續的問題,但其在惡劣天氣或存在其它車輛干擾的情況下檢測效果較差。每種數學模型各有其優缺點,通常無法只通過一種模型就完美地擬合出車道線。④基于圖像分割的方法,其將車道線和背景像素標記為不同的類,檢測結果采用像素級分類的形式,與傳統方法相比檢測效果較理想,且通過端到端的學習魯棒性更好。文獻[3]提出一種改進分割網絡(segmentation network,SegNet)算法,采用卷積與池化提取車道線特征,利用連通域約束實現了對二值化圖像車道線的準確分割,但其結構復雜,實時性較差。LaneNet[4]是一種基于實例分割的車道線檢測方法,有兩個解碼器,一個用于分割,一個用于嵌入,LaneNet可以在訓練階段而非后處理階段對每條車道線進行聚類。CNN-LSTM[15]是一種將CNN和RNN相結合的混合深度網絡結構,在編碼器和解碼器之間增加了兩層LSTM,融合了時域信息,該方法在車輛遮擋、陰影、惡劣的天氣條件下也能取得較好的性能,但將CNN和LSTM結合需要較大的計算量。

本文相關的MMA-Net[10]算法屬于基于圖像分割的方法,其采用4層CNN作為編碼器提取車道線的局部和全局記憶特征,并利用局部全局記憶聚合模塊(Local and Global Memory Aggregation Module,LGMA)對多層的局部和全局記憶特征進行聚合,來增強目標幀的特征,最后通過解碼器預測車道線實例分割結果。針對MMA-Net算法存在的準確率低和漏檢率高的問題,本文對MMA-Net算法進行改進:

1)由于CNN只能提取空間特征,沒有考慮到長時記憶特征,將MMA-Net的編碼器由CNN替換為GRU,以獲取長時記憶信息。

2)將MMA-Net原本的對稱結構改為編碼多解碼少的非對稱網絡結構,將編碼器層數從4層增加到6層,以提取車道線的深層特征,更好地獲取其細長形狀結構。

3)采用兩階段訓練方法,用4層循環神經網絡(Recurrent Neural Network,RNN)作為特征提取主干進行預訓練,獲取視頻幀序列的記憶信息。

在視頻級數據集VIL-100上進行驗證,并與11個先進的車道線檢測方法進行了比較,結果表明,改進MMA-Net算法以最高的檢測精度和和最快的檢測速度顯著勝于其它方法。

3 改進MMA-Net算法

改進MMA-Net的網絡結構如圖1所示。首先,將視頻序列中的有序歷史幀作為局部記憶,將打亂順序后的歷史幀作為全局記憶,采用6層GRU網絡作為編碼器提取局部和全局記憶特征,然后利用 LGMA模塊中的注意力機制對多層的局部和全局記憶特征進行聚合,最后采用3個Refine模塊[16]作為解碼器來預測目標幀的車道線實例分割結果。

3.1 GRU編碼器

由于卷積神經網絡(CNN)只能提取空間特征,而門控循環單元(GRU)具有記憶功能,能夠提取時間特征,考慮到視頻歷史幀的車道線記憶信息對于檢測當前幀的車道線位置具有一定作用,將MMA-Net中的CNN替換為GRU,其利用更新門和重置門選擇性地遺忘過去不重要的信息并記憶重要的信息。

較于原始MMA-Net的CNN編碼器,改進的GRU編碼器具有更強的長距離(long-range)特征捕獲能力,可以獲取視頻幀序列的長時記憶信息,增強每個目標視頻幀的低級和高級特征,更好地用于視頻實例車道線檢測。而且,GRU網絡在保留長時序列信息的同時還減少了梯度消失問題,有效地提高了模型的檢測精度,同時減少了網絡運行時間。

3.2 非對稱網絡結構

MMA-Net的網絡結構主要由編碼器和解碼器組成,編碼器采用4層CNN網絡對輸入圖像進行下采樣,提取車道線特征,而解碼器由3層Refine網絡和1層卷積層還原圖像大小,得到車道線分割結果。改進的MMA-Net將原本的對稱結構改為編碼多解碼少的非對稱網絡結構,為提取車道線的深層特征,將編碼器層數從4層增加到6層,增大感受野的同時,可以獲得不同尺度的圖像特征,這樣更好地獲取了車道線的細長形狀,極大地提高了網絡的檢測精度。

如圖1所示,為檢測目標幀的車道線,將目標幀按順序排列的前5幀圖像{Ot-5,Ot-4,Ot-3,Ot-2,Ot-1}作為局部記憶,在打亂順序后的歷史幀中抽取5幀{St-5,St-4,St-3,St-2,St-1}作為全局記憶,輸入編碼器。然后,將每個視頻幀傳遞給一個由6層GRU組成的編碼器,獲得局部記憶特征{Lt-5,Lt-4,Lt-3,Lt-2,Lt-1}和全局記憶特征{Gt-5,Gt-4,Gt-3,Gt-2,Gt-1}。

3.3 LGMA和MR模塊

目前大部分記憶網絡都是對有序的視頻幀進行特征提取,提取的特征很大程度上依賴于時間信息,而LGMA模塊利用從5幀打亂順序的視頻幀中提取的全局記憶特征{Gt-5,Gt-4,Gt-3,Gt-2,Gt-1}來去除時間信息,增強車道線檢測的全局語義信息。而且,由于不同視頻幀對車道線檢測的貢獻程度不同,故LGMA模塊利用注意機制來為每個局部記憶特征和全局記憶特征分配不同的權重,以幫助當前幀識別背景像素。

(1)

(2)

其中fatt(·)表示注意力運算,這里使用點乘運算。

3.4 解碼器

網絡的解碼器利用MR模塊的輸出特征來預測目標視頻幀的車道線檢測結果。首先,通過一個卷積層和一個殘差塊(residual block)[17]將MR模塊的輸出特征壓縮為256通道;然后,使用3個細化塊(refinement block)[16]逐步融合編碼器提取的特征;最后,通過一個卷積層和一個softmax層生成目標視頻幀的車道線實例分割結果。

4 實驗與分析

4.1 數據集

實驗使用公開車道線檢測視頻數據集VIL-100,共10000幀圖片,含100個視頻,每個視頻有100幀。包含10種道路場景:正常、擁擠、彎道、磨損道路、陰影、道路標線、眩光、霧霾、夜晚、十字路口,大小為640×368~1920×1080像素。將數據集按8:2的比例劃分為訓練集和測試集,訓練集和測試集都包含這10種場景,以保證不同的方法在該數據集上可以進行公平比較。部分數據示例如圖2所示。

圖2 數據集示例

4.2 實驗平臺

實驗環境配置為:Windows10×64操作系統,Intel(R) Core(TM) i9-10900K CPU @ 3.70GHz 3.70 GHz處理器,NVIDIA GeForce RTX 3080 Ti顯卡,64GB內存,實驗采用Python 3.8編程語言,深度學習框架為PyTorch。

4.3 評價指標

算法評價指標采用準確率(Accuracy),誤檢率(False positives,FP)和漏檢率(False negatives,FN)。一般來說,Accuracy越高,FP和FN越小,車道線檢測效果越好。準確率的計算方式如下

(3)

其中,表示預測正確的車道線數量,表示總的車道線數量。誤檢率和漏檢率的計算公式:

(4)

(5)

其中,Fpred表示預測錯誤的車道線數量,Npred表示預測的車道線總數量,Mpred為沒有預測到但真實存在的車道線數量,Ngt為標簽中的車道線總數量[18]。

4.4 兩階段訓練

在預訓練階段,使用4層RNN作為編碼器初始化特征提取主干(backbone),RNN的記憶功能有助于獲取連續視頻幀序列中車道線的長時記憶信息,更準確地預測車道線位置。原始MMA-Net的CNN編碼器只能用于靜態輸出,而RNN可以用于描述時間上連續狀態的輸出,其獲取的歷史幀車道線記憶信息可輔助檢測當前幀的車道線位置。

在正式訓練階段,利用預訓練階段得到的最優權重進行訓練,使用6層GRU作為編碼器,用隨機梯度下降(SGD)優化器對網絡進行優化,輸入圖像大小為240×427像素,學習率為10-3,學習動量為0.9,權重衰減為10-6,批量大小為1,迭代輪次(epoch)為60次。

4.5 算法性能對比

圖3給出了改進MMA-Net算法車道線檢測的部分可視化結果,從左到右4列分別為輸入圖像、真實標簽、改進MMA-Net預測結果和原始MMA-Net預測結果??梢钥闯?改進MMA-Net算法在多種場景下都能準確地檢測出車道線,同時檢測結果更加接近真實標簽,對原始MMA-Net中的漏檢(如第1行)、預測車道線模糊(如第2行)等現象都有較大的改進。

圖3 改進MMA-Net和MMA-Net的視覺對比

表1給出了改進MMA-Net算法與其它11個車道線檢測算法在VIL-100數據集上的檢測結果量化性能對比,其中LaneNet[4]、SCNN[5]、ENet-SAD[19]、UFSA[20]和LSTR[6]是圖像級的車道線檢測方法,而GAM[21]、RVOS[22]、STM[23]、AFB-URR[24]、TVOS[25]和MMA-Net[10]是視頻級的車道線檢測方法??梢钥闯?改進MMA-Net算法的準確率(Accuracy)最高,達到97.2%,同時誤檢率(FP)和漏檢率(FN)最低,分別為7.6%和4.4%,都遠遠勝于其它算法。與原始的MMA-Net相比,準確率提升了6.2%,誤檢率降低了3.5%,漏檢率降低了6.1%,性能顯著提高了。

表1 各方法量化性能比較

4.6 消融實驗

4.6.1 編碼器模型

為了研究編碼器模型對車道線檢測結果的影響,對不同的編碼器模型進行實驗,在控制網絡層數為4層的前提下,分別將CNN、RNN、LSTM、GRU作為編碼器進行訓練,結果見表2??梢钥吹?這四種編碼器中GRU的準確率(Accuracy)最高,為91.9%,而RNN的誤檢率(FP)和漏檢率(FN)最低,分別為10.8%和10.3%,LSTM的檢測速度則最快,達到18.277幀/每秒(fps)。本文使用RNN編碼器進行預訓練,再用得到的最優權重對GRU編碼器進行正式訓練,有效地綜合了各網絡的優勢,訓練結果顯示各個性能都有顯著提升,準確率達到了94.7%,誤檢率降為9.9%,漏檢率降為6.1%,同時檢測速度也提高到18.391 fps??梢姴捎肦NN進行預訓練,再用GRU作為編碼器的檢測效果最好。

表2 編碼器模型的定量評估

4.6.2 編碼器層數

為了研究編碼器層數取多少時車道線檢測效果最佳,采用RNN預訓練,GRU作為編碼器,對不同層數的編碼器進行實驗。從表3可以看出,隨著層數的增加,準確率呈現先上升后下降的趨勢,在6層時達到最高,為97.2%;而誤檢率和漏檢率則相反,呈現先下降后上升的趨勢,同樣在6層時達到最低,分別為7.6%和4.4%;而檢測速度也是在6層時達到最快,為18.571 fps,較原始MMA-Net的4層CNN編碼器(17.928 fps)提高了0.643 fps。這驗證了選擇編碼器層數為6層是最佳的,可達到最高的檢測精度和最快的檢測速度。

表3 編碼器層數的定量評估

5 結論

本文提出了一種改進MMA-Net算法的車道線檢測方法,將MMA-Net的編碼器由CNN替換為GRU,增加長時記憶信息,同時將編碼器層數增加到6層,形成編碼多解碼少的非對稱網絡結構,更好地獲取車道線的細長形狀。采用兩階段訓練方法在VIL-100數據集上進行訓練與測試,實驗結果表明,改進MMA-Net算法的準確率和檢測速度都明顯高于原始MMA-Net,且遠勝于其它車道線檢測方法。下一步將在其它數據集上進行實驗,對模型的泛化能力進一步深入研究。

猜你喜歡
編碼器車道記憶
北斗+手機實現車道級導航應用
避免跟車闖紅燈的地面車道線
淺談MTC車道改造
基于FPGA的同步機軸角編碼器
記憶中的他們
基于PRBS檢測的8B/IOB編碼器設計
兒時的記憶(四)
兒時的記憶(四)
記憶翻新
JESD204B接口協議中的8B10B編碼器設計
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合