











摘" 要: 對車道線實現準確檢測是自動駕駛中的關鍵技術。針對現有的車道線檢測方法對復雜工況下的車道線檢測精度不足的問題,提出一個面向復雜場景下的車道線檢測模型。基于LaneNet網絡設計一種雙分支分割網絡,利用網絡模型中的損失函數使圖像像素點占比提高,實現網絡參數的優化。通過編碼器與解碼器結構對車道線采樣,實現語義分割與車道線像素點嵌入分割;并通過自適應DBSCAN聚類算法實現對鄰域半徑和最小樣本個數兩個參數的自主選擇,引入H?Net網絡中的圖像逆透視變換與車道線擬合實現檢測。最后,利用圖森數據集對所設計模型進行驗證。結果表明,所提出的車道線檢測模型有較高的精度,能實現復雜場景下的車道線檢測。
關鍵詞: 車道線檢測; 雙分支分割網絡; 自動駕駛; 損失函數; 網絡參數優化; 編碼器; 解碼器
中圖分類號: TN911.23?34; U463.6; TP18" " " " " " " 文獻標識碼: A" " " " " " " 文章編號: 1004?373X(2024)20?0087?08
Method of complex scene lane detection based on two?branch segmentation network
XU Xiao, ZHAO Huipeng, FAN Bowen, DUAN Min, LI Gang
(College of Automobile and Traffic Engineering, Liaoning University of Technology, Jinzhou 121001, China)
Abstract: The accurate detection of lane is a key technology in automatic driving. In allusion to the problem that the existing lane detection methods lack the accuracy of lane detection under complex working conditions, a lane detection model for complex scene is proposed. A two?branch segmentation network is designed based on LaneNet network. The loss function in the network model is used to improve the proportion of pixels in the image, so as to realize the optimization of network parameters. The encoder and decoder structures are used to realize the semantic segmentation of lane sampling and the embedding and segmentation of lane pixels. The adaptive DBSCAN clustering algorithm is used to realize the independent selection of the neighborhood radius and the minimum number of samples. The inverse perspective transformation of the image in H?Net network and lane fitting are introduced to realize the detection. The Tucson dataset is used to verify the designed model. The results show that the proposed lane detection model has higher accuracy and can realize the lane detection in complex scene.
Keywords: lane detection; two?branch segmentation network; automatic driving; loss function; network parameter optimization; encoder; decoder
0" 引" 言
車道線檢測是自動駕駛感知系統中的關鍵技術,能夠準確地實現車道線檢測,對提升自動駕駛的安全性有重要作用[1?3]。隨著人工智能技術的發展[4?5],基于深度學習的車道線檢測技術也取得了一些進展。鄧天民等人提出一種基于改進FCN的車道線實例分割檢測方法[6]。對輸入圖像采用壓縮的VGG16網絡進行編碼,設計語義分割和嵌入分割雙分支實現多車道線分割解碼;通過DBSCAN算法聚類像素點,應用逆透視變換獲得俯視視角下的圖像;利用最小二乘法完成車道線像素點的擬合并還原回圖像,得出更加精確的車道線。胡序洋等人構建主干網絡LaneNet,用于提取車道線特征信息并分割出車道線。為了提取到全局特征信息,使用多尺度空洞卷積特征融合網絡,并加入混合注意力機制,該方法具有不錯的檢測精度[7]。張沖等人設計了一個基于編碼?解碼結構的輕量級車道線分割網絡,引入深度可分離卷積來替代普通卷積,以減少卷積運算量。為了獲取更好的車道線特征表示能力,在編碼階段引入一種將空間注意力和通道注意力串聯的雙注意力機制模塊(CBAM),以提高車道線分割精度[8]。
綜上所述,基于深度學習的方法[5,9?12]進行車道線檢測在一般的檢測工況下具有較高的檢測精度,但在相對復雜的檢測工況下(如車道線缺失、磨損、光照不足等),檢測精度不足。針對此問題,本文設計了一種面向復雜工況的車道線檢測模型。基于LaneNet網絡設計了雙分支分割網絡,通過編碼器與解碼器結構對車道線進行采樣,實現語義分割與車道線像素點嵌入分割;對傳統密度算法進行改進,實現自適應聚類,利用另一個H?Net網絡中的圖像逆透視變換實現車道線擬合;最后在圖森數據集上進行實驗,驗證本文方法的優越性。
1" LaneNet網絡模型結構
本文基于LaneNet網絡進行車道線檢測。該網絡對輸入圖像進行車道線像素分割,將分割的像素點進行聚類后,利用多項式擬合即可實現車道線檢測。具體LaneNet網絡結構設計如圖1所示,圖中解碼器結構包括語義分割和車道線圖像像素點嵌入兩個分支,圖像在經過不同分支網絡模型訓練后會輸出分割圖,在分割圖中標明每一條車道線上所被歸類的像素及其他車道線所被歸類的像素,通過對車道線位置的預測進而實現對實際車道線的繪制,最后利用聚類處理實現車道線的實例分割。該網絡不僅能實現對前方車輛遮擋車道線情景下的檢測,而且在沒有明顯視覺的車道線特征路段,也能夠實現對車道線位置的精準預測。
LaneNet網絡車道線分割是一種采用二分支網絡融合的方法,其中LaneNet網絡分支將車道線檢測問題劃分成多個實例分割問題,在實現端到端學習的同時,使每一條車道線都各自具有實例。H?Net網絡是LaneNet網絡增加訓練樣本的新分支,該分支將對輸入樣本數據集進行透視變換,使用透視變換矩陣對不同種類下的車道線實例像素分割進行變換并投影到結果中,從而擬合出車道線,最終實現車道線檢測。
相比于其他深度學習網絡模型,LaneNet網絡在進行車道線檢測時的優勢主要體現在兩個方面:一方面是檢測網絡結構采用二分支網絡,能夠高效準確地實現車道線的預測;另一方面,使用H?Net網絡架構能夠對輸入樣本進行透視變換,能夠對變換參數進行預測估計,從而解決顛簸路面工況下出現的檢測率低的問題。完整的LaneNet網絡結構車道線檢測流程如圖2所示。
2" 分支網絡中編碼器?解碼器的設計
基于語義分割的車道線檢測分支網絡的編碼器?解碼器結構如圖3所示。本文的網絡模型在對編碼器?解碼器設計時,采用了大量的Bottleneck模塊。該模塊能夠高效解決梯度下降問題,并避免網絡模型退化消失現象,提高了網絡訓練效率。殘差網絡模塊對通道數為256的特征圖進行變換時,需要采用兩個大小為3×3的卷積層進行256通道數的卷積;而Bottleneck模塊是一種封閉卷積模塊,通過卷積核在不改變特征圖像素清晰度的前提下對輸入的特征圖像進行維度變換,進而實現網絡加速。圖中輸入特征圖為256通道,經過卷積層后再進行卷積下采樣,將特征圖還原。顯然,使用Bottleneck模塊可以減少網絡參數的使用量,效果優于普通殘差網絡。
3" 車道線分割檢測
車道線分割主要分為語義分割與像素嵌入分割兩種,其中語義分割可以得到車道線二值化圖像,從而區分背景與車道線;像素嵌入分割則用于區分像素點被分割后隸屬于哪條車道,通過聚類對分支嵌入來實現融合。
3.1" 車道線語義分割
車道線語義分割是為了獲取車道線像素點隸屬程度,通過對輸入圖像車道線二值化處理后可以得到白色區域像素點代表車道線特征,黑色區域像素點代表背景。為方便后續網絡模型的預測,將間斷像素點連接成線,不僅避免了車道線輪廓特征被遮擋或殘缺等工況,而且確保了LaneNet網絡精準分割車道線特征與背景信息。
語義分割網絡的編碼器?解碼器結構如圖4所示。圖5為在不同結構化道路下的車道線語義分割后車道線二值圖獲取結果。由圖5可知,基于深度學習的語義分割網絡在車道線特征被遮擋、磨損、缺失等不同工況下,都能夠準確實現對車道線特征、位置信息的預測。該網絡對車道線像素點進行提取后連接成線,得到二值化圖像,其中黑色背景代表除車道線之外的背景信息,白色線段表示原特征圖像中車道線信息,有利于提高車道線檢測的效率和準確性。
3.2" 車道線像素嵌入分割
車道線像素嵌入分割是判斷被分割的車道線像素是否隸屬于同一車道,并將不同像素點對應嵌入到車道線中。隸屬于同一條車道線的像素特征點距離車道線較近,反之,不隸屬于同一車道線的像素特征點距離車道線較遠。因此,車道線像素嵌入分割同樣也由編碼器與解碼器構成,具體結構如圖6所示。
本文根據相同車道線的像素特征點距離車道線較近,不屬于相同車道線的像素特征點距離車道線較遠這一原理進行像素點嵌入,確定不同像素點隸屬于哪條車道線。車道線像素嵌入時所產生的損失由損失函數計算,損失函數由方差損失與距離損失構成,公式如下:
[I1=1Q1WμQ-xi-δ12] (1)
[I2=1QQ-1Q1=1QQ2=1Q2δ2-μQ1-μQ22] (2)
[I=I1+I2] (3)
式中:[Q]表示車道線數量;[W]表示每條車道線像素點數量;[xi]表示初始像素點位置坐標;[μQ]表示不同車道線像素點嵌入坐標的平均值;[δ1]表示方差閾值,用于減少類間距離,本文設置[δ1]為0.6;[δ2]表示距離閾值,用于增加類間距離,本文設置[δ2]為3;[μQ1]和[μQ2]表示兩條車道線的像素點坐標平均值。
經過上述編碼器與解碼器結構可得到車道線嵌入分割結果,如圖7所示,圖中車輛在直線和曲線工況下,存在車道線缺失、遮擋及光照不足等缺失車道線特征的情景。由測試結果可知,本文基于深度學習的車道線像素嵌入分割能夠實現對不同工況下的像素嵌入,分割準確率高、魯棒性好。
4" 車道線分割結果聚類與擬合
完成對車道線語義分割與實例分割后,需要對車道線像素點信息進行聚類,保證不同車道線像素點隸屬于同一車道線。由于不同車道線像素點疏密程度不相同且距離車道中心線較近,故本文采用自適應DBSCAN聚類算法來完成對車道線的擬合。
4.1" 自適應DBSCAN聚類算法
自適應DBSCAN聚類算法是一種基于無人監督的機器學習,通過對鄰域半徑(Eps)和最小樣本個數(MinPts)兩個參數的輸入來進行數據集中各種類的識別,不需要提前給定滿足參數條件且密度可達所有點的個數。對車道線像素特征點進行提取后,本文通過設計的自適應DBSCAN聚類算法進行聚類,具體步驟如下。
步驟1:初始化核心對象集合,計算出每個樣本距離與樣本的對象密度后,再確定核心對象集合。
步驟2:將計算出的每個樣本對象密度進行排序并標記為未訪問對象,依次按照排好的對象密度順序設置未訪問樣本。
步驟3:初始化未訪問樣本集合與聚類簇數,通過將當前獲取的鄰域半徑(Eps)與最小樣本個數(MinPts)兩個值作為參數,隨機選取一個核心對象并初始化序列后,將其周邊樣本納入并標記為已訪問。
步驟4:循環步驟3中對鄰域半徑(Eps)與最小樣本個數(MinPts)兩個值作為參數的獲取,對周邊樣本納入進行不間斷訪問,并隨機抽取一個核心對象作為首個樣本進行條件判斷,若滿足要求就將其填入,不斷循環直到所有樣本均已被訪問則停止,最后進行合并相交簇。
車道線自適應DBSCAN聚類算法能夠將車道線特征區分開,但由于彎道過程中,車道線的曲率過大會導致檢測時出現漏檢的情況,從而影響檢測準確精度。本文通過自適應密度算法改進后檢測是將整個車道線的圖形紋理特征與車道線位置信息相結合,未采用自適應聚類算法的車道線檢測網絡對車道線像素點進行聚類比較困難,而經過自適應聚類算法的車道線檢測網絡能夠將車道線形狀、亮度和位置信息進行融合,進而獲取僅包含車道線像素點的區域,再將不同的車道線像素點聚類后以不同顏色輸出,具體聚類效果如圖8所示。
4.2" 逆透視變換的車道線擬合
路面平度不夠時會使遠處點信息丟失,從而影響車道線擬合精度。為了解決該問題,本文設計一種基于損失函數的H?Net神經網絡。該網絡通過端到端優化實現了對逆透視變換矩陣參數的預測,并以車道線特征圖作為輸入條件進行預測,確保了在地面陡峭情景下網絡模型能夠對逆變換矩陣參數進行調整,提高了車道線擬合精度。本文采用的可變換矩陣H具有6個自由度,為了保證在變換過程中水平方向能夠保持不變,將可變換矩陣H中部分參數設置為0進行條件約束,具體如式(4)所示。
[H=abc0de0f1] (4)
該神經網絡架構主要包括窗口大小為3×3、步長為2的卷積核、歸一化層與激活函數層,通過最大值池化層操作減小網絡模型大小;最后使用兩個全連接層,通過圖像逆透視變換得到俯視車道線特征圖,生成變換后的車道線像素點。具體逆透視變換公式如下:
[u'=Hu] (5)
式中:[u']表示逆透視變換后的車道線像素點,[u′i=[X′i,Y′i,1]∈u',i=1,2,…];[u]表示實際車道線像素點,[ui=[Xi,Yi,1]T],其中[Xi]表示實際車道線像素點的橫坐標,[Yi]表示實際車道線像素點的縱坐標。將實際車道線像素點[ui=[xi,yi,1]T]轉換為[u′i=[x′i,y′i,1]T],在任意一個[y′i]位置處預測車道線像素點與坐標[u′i*=(x′i*,y′i*)],通過使用多項式擬合得到預測車道線像素點[u′i*],以三階多項式和最小二乘法擬合預測車道線像素點,具體如式(6)所示。
[f(y')=αy'2+βy'+γw=(KTK)-1KTx'] (6)
式中:[w=[α,β,γ]]表示最小二乘法函數;[α]、[β]、[γ]表示給定參數;T表示矩陣的轉置;[x'=[x′1,x′2,…,x′n]]為透視變換車道線像素點[p']的橫坐標組合;[y'=[y′1,y′2,…,y′n]]表示可變參數矩陣透視變換車道像素點[p']縱坐標組合。
采用最小二乘法的矩陣公式如下:
[P=y′21x′1x′3???y′2ny′n1] (7)
采用[p′Δi=[x′Δi,y′Δi,1]]預測擬合的車道線像素點,利用聚類損失函數將車道線實例分割及擬合的預測車道像素點經過逆透視變換投影到實際車道線圖像中,得到最后的檢測結果。聚類損失函數的透視變換公式如下:
[pΔi=H-1p′Δi] (8)
式中:[pΔi=[xΔi,yΔi,1]T]表示投影到輸入車道線圖像中的像素點;[p′Δi=[x′Δi,y′Δi,1]T]表示預測車道線像素點;[H-1]表示透視變換矩陣。
在實際道路中最常見的車道線主要包括直線與曲線兩種,但由于道路環境復雜多變,會導致大曲率彎道工況下的擬合效果變差。本文為解決上述問題,利用已檢測出的相鄰車道特征點的線性變化判斷是直線還是曲線,當相鄰車道線特征點變化過小時可判斷其為直線,反之變化過大時則為曲線。直線工況下本文選擇最小二乘法擬合車道線,具體表達式如式(9)所示。
[Q=i=1naxi+b-yi2] (9)
式中Q表示偏差平方。
對于曲線工況,本文選擇三次曲線擬合方程,具體公式如式(10)所示。
[f(x)=a+bx+c2x2+ d6x3] (10)
5" 實驗結果與分析
本文采用車道線檢測公開數據集——圖森數據集對所提出的模型進行驗證,在LaneNet網絡模型訓練中,雙分支網絡訓練時的車道線嵌入維度為4,將車道線圖像尺寸調整為512×256,選擇大小為9的批量,網絡模型學習率為0.000 5的Adam訓練網絡,直到網絡模型收斂結束。本文實現環境感知的實驗硬件設備是Intel[?] CoreTM i7?8750HCPU 2.20 GHz處理器,NVIDIA GeForce GTX型號8 GB內存的顯卡,軟件環境為Windows 10系統,算法的實現與測試基于Python 3.6版本,該訓練框架環境為Anaconda?TensorFlow?GPU。
本文采用LaneNet網絡模型進行車道線分割,設計一種雙分支分割網絡的算法,利用網絡模型中的損失函數使圖像像素點占比提高,實現網絡參數的優化更替;通過編碼器與解碼器結構對車道線采樣,實現語義分割與車道線像素點嵌入分割;通過自適應DBSCAN聚類算法實現對鄰域半徑和最小樣本個數兩個參數的自主選擇;引入H?Net網絡中的圖像逆透視變換與車道線擬合實現檢測。對結構化道路復雜工況下的車道線檢測結果如圖9和圖10所示。
由圖9、圖10可以看出,本文所提出的車道線檢測模型在車道線特征缺失、車道線破損不清、車輛遮擋車道線等復雜場景下都能夠實現對雙車道、多車道的檢測。不同檢測算法結果對比如表1所示。
由表1可知,本文基于深度學習的LaneNet網絡通過自適應DBSCAN算法聚類對其進行逆透視變換,車道線擬合后所測試的算法準確率為96.5%,相對于ENet與ResNet等傳統識別算法,在誤檢率與漏檢率等方面都有極大提升,準確率方面也明顯優于其他算法。由此可見,本文模型不僅網絡結構穩定性好,而且準確率高、魯棒性好,能夠滿足多車道工況下的車道線檢測。
6" 結" 論
本文利用深度學習方法設計一種雙分支分割網絡的算法,通過編碼器與解碼器結構對車道線進行采樣,實現語義分割與車道線像素點嵌入分割;并對傳統密度算法進行改進,實現自適應聚類;利用另一個H?Net網絡中的圖像逆透視變換實現車道線擬合。使用圖森數據集中不同工況下的道路環境對算法進行訓練驗證,然后與其他算法進行比較來驗證本文算法的有效性。
結果表明,本文算法識別準確率為96.5%,漏檢率僅為0.019,說明該算法能夠滿足檢測需求,并實現復雜場景下的車道線檢測。
注:本文通訊作者為徐肖。
參考文獻
[1] 高揚,王晨,李昭健.基于深度學習的無人駕駛汽車車道線檢測方法[J].科學技術與工程,2021,21(24):10401?10406.
[2] 黃艷國,鐘勇,夏金龍.基于自適應透視變換與特征融合的車道線檢測方法[J].科學技術與工程,2022,22(32):14298?14305.
[3] 武志斐,李守彪.基于實例分割的車道線檢測算法[J].汽車工程,2023,45(2):263?272.
[4] 李守彪,武志斐.基于多尺寸分解卷積的車道線檢測[J].汽車技術,2022(8):32?37.
[5] LEE D H, LIU J L. End?to?end deep learning of lane detection and path prediction for real?time autonomous driving [J]. Signal, image and video processing, 2023, 17(1): 199?205.
[6] 鄧天民,蒲龍忠,萬橋.改進FCN的車道線實例分割檢測方法[J].計算機工程與設計,2022,43(10):2935?2943.
[7] 胡序洋,高尚兵,汪長春,等.LaneSegNet:一種高效的車道線檢測方法[J].南京信息工程大學學報(自然科學版),2022,14(5):551?558.
[8] 張沖,黃影平,郭志陽,等.基于語義分割的實時車道線檢測方法[J].光電工程,2022,49(5):26?37.
[9] DONG Y Q, PATIL S, AREM B, et al. A hybrid spatial?temporal deep learning architecture for lane detection [J]. Computer?aided civil and infrastructure engineering, 2023, 38(1): 67?86.
[10] BAEK S W, KIM M J, SUDDAMALLA U, et al. Real?time lane detection based on deep learning [J]. Journal of electrical engineering amp; technology, 2022(17): 655?664.
[11] ZAKARIA N J, SHAPIAI M I, ABD GHANI R, et al. Lane detection in autonomous vehicles: a systematic review [J]. IEEE access, 2023, 11: 3729?3765.
[12] LI S B, WU X, WU Z F. Efficient multi?lane detection based on large?kernel convolution and location [J]. IEEE access, 2023, 11: 58125?58135.
[13] 蔡創新,鄒宇,潘志庚,等.基于多特征融合和窗口搜索的新型車道線檢測算法[J].江蘇大學學報(自然科學版),2023,44(4):386?391.
作者簡介:徐" 肖(1989—),男,山東人,碩士研究生,講師,研究方向為智能汽車關鍵技術。
DOI:10.16652/j.issn.1004?373x.2024.20.014
引用格式:徐肖,趙會鵬,范博文,等.基于雙分支分割網絡的復雜環境車道線檢測方法[J].現代電子技術,2024,47(20):87?94.
收稿日期:2024?04?10" " " " " "修回日期:2024?05?13
基金項目:國家自然科學基金項目(51675257);國家自然科學基金青年基金項目(51305190);遼寧省教育廳基本科研項目(面上項目)
(LJKMZ20220976);遼寧省自然科學基金指導計劃項目(20180550020)