收稿日期:2023-04-05
基金項目:江蘇省大學(xué)生創(chuàng)新創(chuàng)業(yè)項目(202211463065Y)
DOI:10.19850/j.cnki.2096-4706.2023.21.032
摘" 要:文章基于卷積神經(jīng)網(wǎng)絡(luò)的車道線檢測方法,提出了一種優(yōu)化的車道檢測方案,利用殘差網(wǎng)絡(luò)與簡化的Transformer優(yōu)化神經(jīng)網(wǎng)絡(luò),首先將Transformer模型用作編碼器或解碼器,學(xué)習(xí)輸入序列之間的關(guān)系,提高神經(jīng)網(wǎng)絡(luò)的性能,然后在編碼器中增加殘差層,用以更好地處理邊緣與相似信息并提取低分辨率特征,最后設(shè)計一個主干架構(gòu)用于整合優(yōu)化內(nèi)容并對優(yōu)化后的模型進(jìn)行訓(xùn)練。實驗結(jié)果表明,優(yōu)化后的模型在TuSimple驗證集中的預(yù)測一致性超過了90%,并對多種干擾狀況表現(xiàn)出良好的適應(yīng)性。
關(guān)鍵詞:殘差網(wǎng)絡(luò);神經(jīng)網(wǎng)絡(luò);車道檢測
中圖分類號:TP391.4;TP18" 文獻(xiàn)標(biāo)識碼:A" 文章編號:2096-4706(2023)21-0140-05
Lane Detection Method Based on Improved Convolutional Neural Network Model
REN Yulu, WANG Dadian, QI Zhixuan
(School of Computer Engineering, Jiangsu University of Technology, Changzhou" 213001, China)
Abstract: This paper proposes an optimized lane detection scheme based on convolutional neural networks, which utilizes residual networks and simplified Transformers to optimize the neural network. Firstly, the Transformer model is used as an encoder or decoder to learn the relationships between input sequences and improve the performance of the neural network. Then, a residual layer is added to the encoder to better process edge and similar information and extract low resolution features. Finally, design a backbone architecture to integrate optimized content and train the optimized model. The experimental results show that the predicted consistency of the optimized model in the TuSimple validation set exceeds 90% and exhibits good adaptability to various interference situations.
Keywords: residual network; neural network; lane detection
0" 引" 言
日益嚴(yán)峻的交通安全狀況,促使著一系列輔助駕駛系統(tǒng)的研發(fā)與落地,越來越多的輔助設(shè)備被用于交通工具上[1,2]。如今的輔助駕駛系統(tǒng)安全級別不斷提高[3],且智能程度較高,能夠?qū)崿F(xiàn)較多復(fù)雜的功能甚至能進(jìn)行一定程度的自主決策。而在這些智能背后則離不開一項更基礎(chǔ)的功能,那就是車道線檢測[4]。其中視頻傳感器在交通應(yīng)用中變得尤為重要,主要是因為它們的響應(yīng)速度快,易于安裝,操作和維護(hù)以及監(jiān)控大范圍區(qū)域的能力[5]。
車道線檢測同時也是計算機(jī)視覺領(lǐng)域中的一個重要任務(wù),利用神經(jīng)網(wǎng)絡(luò)來實現(xiàn)車道線檢測可以得到較好的效果。目前主流的車道線檢測流程大致可以分為:數(shù)據(jù)采集與預(yù)處理、構(gòu)建神經(jīng)網(wǎng)絡(luò)、訓(xùn)練模型、測試模型、優(yōu)化模型、部署模型。一般來說都是先分割車道線,再做聚合(segment clustering),再做曲線擬合[6]。現(xiàn)有檢測算法在實際車道環(huán)境的應(yīng)用中存在著較為明顯的問題,光照環(huán)境的變化容易干擾算法檢測效果[7],車道線檢測模型單一不具有普適性。在此基礎(chǔ)上,也有人將RGB圖像轉(zhuǎn)化成灰度圖像,對圖像進(jìn)行了平滑濾波[8]。這些方法雖然有用,但效率較低,且做車道線分割時忽略全局上下文信息。生成式對抗網(wǎng)絡(luò)的對抗訓(xùn)練和多目標(biāo)語義分割,利用快速連接和梯度圖來有效學(xué)習(xí)車道線特征[9]。本文提出了一種端到端方法,該方法可以直接輸出車道形狀模型的參數(shù),使用通過Transformer構(gòu)建的網(wǎng)絡(luò)來學(xué)習(xí)更豐富的結(jié)構(gòu)和上下文[10]。Transformer使用自我注意機(jī)制對非局部交互進(jìn)行建模,以捕獲細(xì)長的結(jié)構(gòu)和全局上下文。相比循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),Transformer因其并行運(yùn)算可以避免遞歸,從而減少由于長期依賴而導(dǎo)致的性能下降[11]。車道形狀模型是基于道路結(jié)構(gòu)和攝像頭姿勢制定的,可為網(wǎng)絡(luò)輸出的參數(shù)提供物理解釋[12]。
現(xiàn)代汽車的車載計算機(jī)除了要擔(dān)負(fù)基本的車輛控制任務(wù),還要處理各類影音娛樂應(yīng)用[13],用于輔助駕駛的計算資源自然是越少越好。在圖像上選取幾個合適的處理區(qū)域,通過對每個處理區(qū)域進(jìn)行適當(dāng)?shù)念A(yù)處理、邊緣檢測和霍夫變換等過程來提取車道描述特征[14]。經(jīng)過優(yōu)化的車道線檢測模型可以減少計算資源的使用,例如可以減少網(wǎng)絡(luò)層數(shù)、參數(shù)量等,提高模型的運(yùn)行效率、降低成本和能耗。更重要的是高效的車道線檢測模型可以更好地適應(yīng)不同的駕駛場景和道路情況,例如不同天氣、不同光照、不同路況等,提高模型的泛化能力和適應(yīng)性,減少對駕駛員的干擾和誤判。
1" 方法介紹
神經(jīng)網(wǎng)絡(luò)很強(qiáng)大的地方在于完美的擬合能力,可以逼近任何復(fù)雜的函數(shù),而且神經(jīng)網(wǎng)絡(luò)的維度可以達(dá)到無窮維,這樣其對數(shù)據(jù)的擬合能力是相當(dāng)強(qiáng)大的,并采用一種貝葉斯多傳感器圖像融合方法來解決我們的邊界檢測問題。該方法利用可變形的模板模型來全局描述感興趣的邊界[15]。往往已有的傳統(tǒng)的機(jī)器學(xué)習(xí)方法,在某一定程度上屬于神經(jīng)網(wǎng)絡(luò)的特例。例如SVM、Logistic regression等均可以由神經(jīng)網(wǎng)絡(luò)來完成。在虛擬環(huán)境下利用神經(jīng)網(wǎng)絡(luò)可視化方法分析車道偏離的原因,然后在方法上將方向盤轉(zhuǎn)角序列作為神經(jīng)網(wǎng)絡(luò)輸入[16]?;谏疃葘W(xué)習(xí)的車道線檢測,通過構(gòu)建多隱層的學(xué)習(xí)模型和訓(xùn)練海量數(shù)據(jù),能學(xué)習(xí)到更多車道線特征,從而最終提升檢測的準(zhǔn)確性[17]。選擇Res Net網(wǎng)絡(luò)作為基礎(chǔ)網(wǎng)絡(luò),優(yōu)化全局特征車道線檢測算法[18],LANA可以在大量變化的道路圖像集合下很好地檢測車道標(biāo)記[19]。
1.1" 車道形狀模型
采用改進(jìn)的Sobel算子[14]進(jìn)行邊緣檢測,將車道形狀的先驗?zāi)P投x為道路上的一個多項式。通常,立方曲線用于近似平坦地面上的單車道線:
(1)
其中k、m、n、b為實數(shù)參數(shù),k ≠ 0。(X、Z)為地平面上的點(diǎn)。當(dāng)光軸平行于地面時,從道路投影到圖像平面上的曲線為:
(2)
其中,k′、m′、n′、b′為參數(shù)、相機(jī)內(nèi)在參數(shù)和外在參數(shù)的組合,(u,v)為圖像平面上的一個像素。對于光軸與地面的角為Φ的傾斜相機(jī),從未標(biāo)題圖像平面轉(zhuǎn)換到傾斜圖像平面的曲線為:
(3)
這里f為以像素為單位的焦距,(u′,v′)為相應(yīng)的音距轉(zhuǎn)換的位置。當(dāng)Φ = 0時,曲線函數(shù)為等式(3)將被簡化為等式(2)。
曲線重新參數(shù)化。通過將參數(shù)與螺距角Φ相結(jié)合,傾斜相機(jī)平面中的曲線的形式為:
(4)
在這里,這兩個常數(shù)項n′和b′′′沒有積分,因為它們包含不同的物理參數(shù)。
除此之外,還引入了垂直的開始和結(jié)束偏移量α,β來參數(shù)化每個車道線。這兩個參數(shù)為描述車道線的上、下界提供了必要的定位信息。在真實的道路條件下,車道通常具有全球一致的形狀。因此,近似的弧從左到右車道有一個相等的曲率,因此k″、f″、m″、n′將為所有車道共享。因此,第t條車道的輸出被重新參數(shù)化為:
(5)
其中t ∈ {1,…,T},T為圖像中的車道數(shù)。每個車道只在偏差項和上下邊界上有所不同。
1.2" 匈牙利擬合損失
首先我們利用線圖譜來反映特征點(diǎn)周圍灰度的變化[20],對特征點(diǎn)周圍的鄰域點(diǎn)進(jìn)行分層,并對每層中的點(diǎn)構(gòu)造線圖,通過線圖譜獲取特征點(diǎn)的譜特征。然后利用自適應(yīng)二值化檢測車道,保留更多的車道線信息,降低了車道線的漏檢率,適用于復(fù)雜真實場景下的車道線檢測研究[21]。最后,利用匈牙利算法求解匹配問題,輸出匹配結(jié)果。采用匈牙利算法有效地解決了匹配問題。然后利用匹配結(jié)果對車道特定的回歸損失進(jìn)行優(yōu)化。
我們的方法預(yù)測了一個固定的N條曲線,其中N條曲線被設(shè)置為大于一個典型數(shù)據(jù)集的圖像中的最大車道數(shù)。讓我們用" 來表示預(yù)測的曲線,其中ci ∈ {0,1}(0:非車道,1:車道)。地面真實車道標(biāo)記由序列" 表示,其中r依次索引R范圍和 > 范圍內(nèi)的樣本點(diǎn)。由于預(yù)測曲線的數(shù)量N大于地面真實車道的數(shù)量,我們認(rèn)為地面真實車道也是一組大小為N的車道,填充了非車道 。通過搜索一個最優(yōu)內(nèi)射函數(shù)z:L→H,i.e.我們將曲線集和地面真實車道標(biāo)記集之間的二部匹配表示為一個代價最小化問題,即z(i)為分配給擬合地面真實車道i的曲線指數(shù):
(6)
其中,d度量給定在第i個地面真實車道和指數(shù)為z(i)的預(yù)測曲線之間的特定排列z的匹配代價。根據(jù)之前的工作,這個問題可以通過匈牙利算法有效地解決。
對于指數(shù)z(i)的預(yù)測, 類的概率定義為 ,擬合車道序列定義為 ,其中Ri是第i條車道的長度, 使用等式(4)計算基于預(yù)測的一組參數(shù)gi。那么匹配成本d的形式為:
(7)
其中,Π(·)為指標(biāo)函數(shù),ω1、ω2和ω3為調(diào)整匹配項的效果,L1為常用的平均絕對誤差。我們使用[6]之后的概率而不是對數(shù)概率,因為這使得分類項可以與曲線擬合項通約,回歸損失?;貧w損失計算在上一步中匹配的所有對的誤差,其形式為:
(8)
1.3" 優(yōu)化的神經(jīng)網(wǎng)絡(luò)架構(gòu)
如圖1所示的體系結(jié)構(gòu)由一個主干網(wǎng)、一個簡化的Transformer網(wǎng)絡(luò)、幾個用于參數(shù)預(yù)測的前饋網(wǎng)絡(luò)(FFNs)和匈牙利損耗組成。Transformer模型是一種強(qiáng)大的語言模型,可以學(xué)習(xí)到輸入序列之間的關(guān)系。視覺Transformer (Vision Transformer)在圖像識別領(lǐng)域取得突破性進(jìn)展,其自我注意力機(jī)制(self-attention mechanism)能夠提取不同像素塊的判別性標(biāo)記信息進(jìn)而提升圖像分類精度[20]。例如,可以將Transformer模型用作編碼器或解碼器,以提高神經(jīng)網(wǎng)絡(luò)的性能。給定一個輸入圖像I,主干提取一個低分辨率特征,然后通過折疊空間維度將其平坦為一個序列S。S和位置嵌入Ep輸入變壓器,編碼器輸出表示序列Se。接下來,解碼器首先關(guān)注一個初始查詢序列Sq和一個學(xué)習(xí)到的位置嵌入ELL,該位置嵌入ELL隱式的學(xué)習(xí)位置差異,然后計算與Se和Ep的交互以關(guān)注相關(guān)特征。最后,幾個FFN直接預(yù)測了所提出的輸出參數(shù)。
主干是基于一個簡化的ResNet18構(gòu)建的。在編碼器中增加的殘差層能更好地處理邊緣信息與相似信息,提取到更多的特征信息[22]。原來的ResNet18有4個塊和16倍的降采樣特征。每個區(qū)塊的輸出通道為“64、128、256、512”。在這里,我們減少的ResNet18將輸出通道切割為“16、32、64、128”,以避免過擬合,并將降采樣系數(shù)設(shè)置為8,以減少車道結(jié)構(gòu)細(xì)節(jié)的損失。使用輸入圖像I作為輸入,主干提取一個低分辨率特征,該特征編碼大小為H×W×C的車道的高級空間表示。接下來,為了構(gòu)造一個序列作為編碼器的輸入,我們將空間維度上的特征變平,得到一個大小為H×W×C的序列S,其中H、W為序列的長度,C為通道數(shù)。
編碼器,該編碼器有兩個按順序鏈接的標(biāo)準(zhǔn)層。它們都由一個自注意模塊和一個前饋層組成,如圖2所示。給定抽象空間表示的序列S,利用基于絕對位置的正弦嵌入Ep對位置信息進(jìn)行編碼,以避免排列等變。Ep具有與S相同的大小。編碼器執(zhí)行等式的縮放點(diǎn)積注意:
(9)
其中,Q、K、V為通過每個輸入行的線性變換得到的查詢、鍵和值序列,A為測量非局部交互以捕獲細(xì)長結(jié)構(gòu)和全局上下文的注意圖,O為自我注意的輸出。通過FFN、層歸一化的殘差連接和另一個相同的編碼器層,得到了具有H×W×C形狀的編碼器Se的輸出序列[21]。解碼器也有兩個標(biāo)準(zhǔn)層。和編碼器一樣,每一層都插入另一個注意模塊,期望編碼器的輸出,使其能夠自我注意規(guī)范線性注意添加和規(guī)范線性自我注意添加和規(guī)范對包含空間信息的特征進(jìn)行注意,以與最相關(guān)的特征元素相關(guān)聯(lián)[23]。面對轉(zhuǎn)換任務(wù),原始變壓器將地面真實序列移到一個位置作為解碼器的輸入,使其同時并行輸出序列中的每個元素。在我們的任務(wù)中,我們只將輸入Sq設(shè)置為一個空的N×C矩陣,并一次直接解碼所有曲線參數(shù)。此外,我們還引入了一個大小為N×C的學(xué)習(xí)車道嵌入ELL,作為隱式學(xué)習(xí)全局車道信息的位置嵌入。注意機(jī)制采用相同的公式等式9來工作和具有N×C形狀的解碼序列Sd按編碼器中的順序得到。在訓(xùn)練時,在每個解碼層后進(jìn)行中間監(jiān)督。
用于預(yù)測曲線參數(shù)的FFN。預(yù)測模塊使用三個部分生成預(yù)測曲線H集。一個單一的線性操作直接投影Sd到N×2,然后一個軟層在最后一個維度操作它,以得到預(yù)測的標(biāo)簽(背景或車道)ci,i ∈ {1,…,N}。同時,一個具有ReLU激活和隱藏維度C的3層感知器將Sd投射到N×4中,其中維度4代表四組車道特定參數(shù)。另一個3層感知器首先將一個特征投射到N×4中,然后在第一個維度上進(jìn)行平均,從而得到四個共享的參數(shù)。利用Transformer模型、匈牙利算法以及resnet可以優(yōu)化神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和表現(xiàn)。這些方法可以相互結(jié)合,以構(gòu)建更強(qiáng)大的神經(jīng)網(wǎng)絡(luò)。
2" 實驗驗證
2.1" 車道偏離識別
利用單個車載彩色攝像頭以及慣性和速度信息來估計主機(jī)車相對于其所遵循的車道的位置,以及前方車道的寬度和曲率[24],使用一對擬合車道邊緣的雙曲線,使用霍夫變換提取這些車道[25],如圖2所示,系統(tǒng)會實時描繪出車道線并檢測汽車當(dāng)前的位置。
當(dāng)車輛有偏離當(dāng)前車道的趨勢,或者車輛已經(jīng)壓到車道線,系統(tǒng)會在畫面下方顯示出偏離車道的圖標(biāo),并由控制器發(fā)出壓線警報信號,使得駕駛員及時得知,為駕駛者提供更多的反應(yīng)時間。而如果駕駛者打開轉(zhuǎn)向燈,正常進(jìn)行變線行駛,那么車道偏離預(yù)警系統(tǒng)就不會做出任何提示。
在TuSimple數(shù)據(jù)集中,靠近地平線的單車道線使用的點(diǎn)比靠近相機(jī)的點(diǎn)少得多,為了這個問題,形狀的一致性要求模型在區(qū)域上適合相同的曲率。我們對TuSimple驗證集上的編碼器大小和預(yù)測數(shù)量的定量評估(%),如表1、圖3、圖4所示。
2.2" 實驗結(jié)果分析
TuSimple車道檢測數(shù)據(jù)集被廣泛用于評估車道檢測模型[16,12],我們模型也采用了該數(shù)據(jù)集來測試效果。TuSimple數(shù)據(jù)集包含6 408張圖像,這些圖像是由高分辨率(720×1 280)前視攝像頭記錄的視頻剪輯的最后一幀,拍攝于美國各種交通和天氣條件下的高速公路白天,結(jié)果如表2所示。這些圖像均已進(jìn)行了注釋。
3" 結(jié)" 論
本文提出的基于優(yōu)化的神經(jīng)網(wǎng)絡(luò)的車道線檢測方案,能夠較為有效地解決效率與精確度的問題。車道線檢測輔助任務(wù)不是在訓(xùn)練中同步完成,而是作為獨(dú)立任務(wù),避免了大量的人工標(biāo)注,省時節(jié)力。和CNN+LSTM方法相比,本方法結(jié)構(gòu)簡單,訓(xùn)練和測試迭代速度快,且測試效果較優(yōu)。目前本方法能在開放道路的車道保持上有著較好的效果,但仍存在部分問題需要進(jìn)一步研究,比如在檢測道路邊界或車道標(biāo)線時必須面臨的問題——陰影的存在,在路面上產(chǎn)生偽影,從而改變其紋理,道路上存在其他車輛,部分遮擋了道路的能見度。
參考文獻(xiàn):
[1] 王世孚,羅惠鐸,黃婷,等.汽車輔助駕駛系統(tǒng)設(shè)計研究 [J].現(xiàn)代信息科技,2020,4(18):13-16.
[2] 儲亞婷.車道線偏離系統(tǒng)和換道輔助系統(tǒng)的發(fā)展研究 [J].河北農(nóng)機(jī),2018(4):61.
[3] MORADI A,VAGNONI E. A multi-level perspective analysis of urban mobility system dynamics:What are the future transition pathways? [J].Technological Forecasting amp; Social Change,2018,126:231-243.
[4] JUNG H,MIN J,KIM J. An efficient lane detection algorithm for lane departure detection [J].Intelligent Vehicles Symposium,2013:976-981.
[5] LI S L,HWANSIK Y. Sensor Fusion-Based Vehicle Detection and Tracking Using a Single Camera and Radar at a Traffic Intersection [J].Sensors,2023,23(10):4888.
[6] 向思佳,曾凱.基于空間特征增強(qiáng)的車道線檢測算法 [J].通信技術(shù),2022,55(7):865-870.
[7] 謝紅韜.基于異構(gòu)嵌入式平臺的輔助駕駛車道線及車輛檢測方法研究實現(xiàn) [D].成都:西南交通大學(xué),2017.
[8] 呂厚權(quán),高建華,王登鵬,等.用于輔助車輛駕駛的車道線檢測技術(shù)研究 [J].汽車工藝師,2022(8):56-59.
[9] ZHANG Y C,LU Z Q,MA D D,et al. Ripple-GAN:Lane Line Detection With Ripple Lane Line Detection Network and Wasserstein GAN [J].IEEE transactions on intelligent transportation systems,2021,22(3):1532-1542.
[10] 符凌俊.基于深度學(xué)習(xí)的車道線檢測與車道保持控制研究 [D].重慶:重慶理工大學(xué),2022.
[11] 安小松,宋竹平,梁千月,等.基于CNN-Transformer的視覺缺陷柑橘分選方法 [J].華中農(nóng)業(yè)大學(xué)學(xué)報,2022,41(4):158-169.
[12] OR G,BOAZ B. Real-Time Stereo-Based Ocean Surface Mapping for Robotic Floating Platforms:Concept and Methodology [J].Sensors,2023,23(8):3857.
[13] YUAN Y,SHEN F,XU D J. Multipath modeling and mitigation by using sparse estimation in global navigation satellite system-challenged urban vehicular environments [J/OL].International Journal of Advanced Robotic Systems,2020,17(5)[2023-03-06].https://journals.sagepub.com/doi/10.1177/1729881420968696.
[14] 張翀,范新南.基于直線模型的車道線實時檢測方法 [J].計算機(jī)工程與設(shè)計,2012,33(1):295-299.
[15] MA B,LAKSHMANAN S,HERO A O. Simultaneous detection of lane and pavement boundaries using model-based multi-sensor fusion [J].IEEE Transactions on Intelligent Transportation Systems,2000,1(3):135-147.
[16] 閆春香,陳林昱,王玉龍,等.輔助車道線檢測的端到端自動駕駛 [J].汽車實用技術(shù),2020(7):38-41.
[17] 時小虎,吳佳琦,吳春國,等.基于殘差網(wǎng)絡(luò)的彎道增強(qiáng)車道線檢測方法 [J].吉林大學(xué)學(xué)報:工學(xué)版,2023,53(2):584-592.
[18] 郭龍.自動駕駛車道線檢測和路徑規(guī)劃研究 [D].南昌:華東交通大學(xué),2021.
[19] GE Z K,MA C,F(xiàn)U Z M,et al. End-to-end lane detection with convolution and transformer [J].Multimed Tools and Applications,2023,82(19):29607–29627.
[20] 朱明,梁棟,范益政,等.基于譜特征的圖像匹配算法 [J].華南理工大學(xué)學(xué)報:自然科學(xué)版,2015,43(9):60-66.
[21] 孫宇飛.高級輔助駕駛中的車道線檢測研究 [D].北京:北京交通大學(xué),2018.
[22] 鄭河榮,程思思,王文華,等.一種基于殘差結(jié)構(gòu)的車道線檢測方法 [J].浙江工業(yè)大學(xué)學(xué)報,2022,50(4):365-371.
[23] HOU Y N,MA Z,LIU C X,et al. Learning Lightweight Lane Detection CNNs by Self Attention Distillation [J/OL].arXiv:1908.00821 [cs.CV] 821.[2023-03-06].https://arxiv.org/abs/1908.00821.
[24] CHEN Y Z. Road geometry estimation using vehicle trails:a linear mixed model approach [J].Journal of Intelligent Transportation Systems,2023,27(1):127-144.
[25] MALMIR S,SHALCHIAN M. Design and FPGA Implementation of Dual-Stage Lane Detection,Based on Hough Transform and Localized Stripe Features [J].Microprocessors and Microsystems,2019,64:12-22.
作者簡介:任禹潞(2003—),女,漢族,江蘇江陰人,本科在讀,研究方向:機(jī)器視覺、汽車智能化;王大殿(1997—),男,漢族,江蘇濱海人,本科在讀,研究方向:機(jī)器視覺、汽車智能化;齊智暄(2004—),男,漢族,江蘇南京人,本科在讀,研究方向:機(jī)器視覺、汽車智能化、計算機(jī)網(wǎng)絡(luò)。