孫鵬飛 宋聚寶 張婷 周玉祥
摘 要:車道線檢測是完全無人駕駛的關(guān)鍵推動因素。本文綜述了近年來基于視覺的車道線檢測技術(shù)的研究進展。車道線檢測通常采用三個步驟進行處理,首先圖像預(yù)處理得到感興趣區(qū)域,然后預(yù)測車道線標記高頻出現(xiàn)的區(qū)域,最后在該區(qū)域進行車道模型擬合。在這項工作中,我們對每個步驟的實現(xiàn)方法進行了詳細分析,并展望了車道線檢測技術(shù)的發(fā)展。得益于深度學(xué)習(xí)技術(shù)的進步,車道線檢測技術(shù)取得了長足的發(fā)展,但同時帶來了大規(guī)模數(shù)據(jù)集的需求和網(wǎng)絡(luò)模型的不可解釋性,未來的車道線檢測技術(shù)挑戰(zhàn)與機遇并存。
關(guān)鍵詞:車道線檢測;計算機視覺;深度學(xué)習(xí);目標檢測分割
1 前言
完全自動駕駛是計算機視覺和機器人學(xué)研究的主要焦點,其第一個關(guān)鍵步驟是通過各種傳感器全面識別和理解車輛周圍的環(huán)境。車道線檢測能夠使車輛正確地定位在車道內(nèi),遵守車道規(guī)定的交通規(guī)則,并輔助隨后的車道偏離或軌跡規(guī)劃決策[1]。因此,實時執(zhí)行精確車道線檢測是實現(xiàn)完全自動駕駛的關(guān)鍵推動因素。基于視覺的成像在車道線檢測任務(wù)中起主導(dǎo)作用,其原因有二:首先,車道線的設(shè)計使人類駕駛員能夠在所有駕駛條件下觀察到它們,使用視覺作為計算等效系統(tǒng)獲得相同的視覺提示非常有意義[2];其次,視覺是目前自動駕駛中價格最低、魯棒性較好的模態(tài),視覺模態(tài)可以用于環(huán)境理解的所有相關(guān)階段[3]。因此,我們將主要討論基于視覺的車道線檢測技術(shù)。
基于視覺的車道線檢測技術(shù)已經(jīng)廣泛應(yīng)用在輔助駕駛系統(tǒng),通過提前預(yù)警的方式提醒人類駕駛員即將到來的危險[4]。但是其在車道屬性上使用許多假設(shè),例如路面平坦、天氣晴朗、能見度變化平穩(wěn)等[5]。由于上述假設(shè),現(xiàn)有的車道線檢測技術(shù)的魯棒性低,容易受到以下影響:車道線的復(fù)雜性、受污損程度以及磨損程度;道路上來往車輛對于車道線的遮擋程度;沿途建筑物、樹木、高架橋、過街天橋等道路陰影的影響;夜晚光照的變化;車輛光照條件的突然變化等[2,6]。迄今為止,車道線檢測技術(shù)在上述環(huán)境中準確率和召回率會嚴重下降,與普通人類駕駛員相比缺乏自適應(yīng)能力。
本文將車道線檢測技術(shù)分解為圖像預(yù)處理、特征檢測、車道模型擬合等三個模塊,并列舉建議實施每個模塊的可能方法。功能模塊分解如圖1所示。
在后續(xù)的第1、2、3章節(jié)分別介紹了上述三個模塊的研究現(xiàn)狀,并在第4章節(jié)進行了驗證評估,第5章節(jié)對本文進行了總結(jié)。
2 圖像預(yù)處理
這個模塊的目標是消除雜亂、誤導(dǎo)性的偽成像和不相關(guān)的圖像部分。圖像預(yù)處理方法可以歸納為三類:光照效果處理、感興趣區(qū)域(Region Of Interest,ROI)檢測以及路面與圖像之間的映射。
2.1 光照效果處理
光照自適應(yīng)性和鏡頭光暈是影響車道線檢測的關(guān)鍵要素。魯棒的車道線檢測系統(tǒng)可以應(yīng)對不同的光照條件并排除鏡頭光暈的影響。[7,8]使用了多曝光增強動態(tài)范圍技術(shù)改善光照適應(yīng)性,[9,10]使用顏色空間轉(zhuǎn)換和邊緣濾除獲得光照魯棒圖像。[7]在不同的相機曝光設(shè)置下多次捕捉目標場景,然后將得到的一組圖像組合創(chuàng)建高動態(tài)范圍圖像。[8]提出在多曝光圖像生成過程中涉及的相機靈敏度、曝光時間以及圖像噪聲、運動模糊等問題。[9]使用HSL、LAB等顏色空間轉(zhuǎn)換,通過組合不同的顏色通道減少投射陰影效果。[10]首先使用兩個不同的顏色空間減少干擾,然后將方向梯度用于檢測車道線邊緣,從而檢測不同復(fù)雜度下的車道線。
2.2 感興趣區(qū)域檢測
通過ROI檢測可以刪除與車道線檢測任務(wù)不相關(guān)或誤導(dǎo)性信息。[11]直接將圖像的下半部分作為ROI。[12-14]使用不同的逆透視技術(shù)估算路面和圖像之間的映射,并將此映射作為ROI定義規(guī)則。[12,13]根據(jù)計算的深度對圖像進行截斷,自適應(yīng)地確定了ROI的上邊界。[14]在將計算出的地平線用于ROI檢測。
2.3 路面與圖像之間的映射
該映射貫穿于車道線檢測任務(wù)的所有階段,可以通過不同的方法計算。[14]假設(shè)相機與車輛的連接在行駛過程中保持不變,計算了出了固定的映射矩陣。但是這一假設(shè)在路面坡度突然變化、車輛變道和并線的情況下存在失效問題。[15,16]估計了相機相對于地平面的間距。[15]通過檢測道路的消失點對應(yīng)的圖像滅點的高度計算相機的俯仰角。[16]建立相機三維模型參數(shù)矢量,通過計算該矢量與車道線邊界的位置和方向估計俯仰角與其余模型參數(shù)。
3 特征檢測
本章節(jié)主要包括圖像ROI的特征檢測以及上述映射在特征檢測中的應(yīng)用。車道邊界通常由不同類型的車道線組成,[17,18]詳細闡述了車道線的外觀變化。除了外觀形狀顏色多樣之外,車道線在圖像中占比低,形狀窄長,這些特點均增加了特征檢測的難度。同時,需要考慮圖像預(yù)處理模塊不能濾除的車輛靠近產(chǎn)生的嚴重遮擋和附近樹木和建筑物的陰影產(chǎn)生的誤導(dǎo)性邊緣和紋理。上述條件的合理覆蓋對特征檢測模塊的魯棒性提出了較高的要求。
3.1 傳統(tǒng)特征檢測方法
傳統(tǒng)的車道線檢測方法依賴于高度專業(yè)化、手工制作的特征來檢測車道線[19]。這些特征選擇包括基于顏色的特征[20]、條形濾波器[21]、脊線特征[16,22],這些方法可以歸納為基于梯度的特征及其變體。[16,21-23]假設(shè)車道線具備窄長、高亮的特征,沿著圖像行搜索低-高-低強度圖案。[21,23]使用了條形濾波器,[16,22]進一步使用了脊線特征。由于車道線在圖像中占比低,在圖像處理過程中易濾除車道線區(qū)域。[24]將圖像分割為8×8的像素塊,并將像素塊分類為車道線或背景,提高了特征的可靠性。上述基于梯度的車道線邊緣檢測方法均使用了圖像濾波技術(shù),我們需要確定卷積核的尺寸。又由于透視失真,單個尺寸的卷積核不適用于整幅圖像。[25]根據(jù)預(yù)估的車道線寬度和預(yù)測的圖像行的深度,為每個圖像行調(diào)整內(nèi)核的尺寸。另一種更加常用的技術(shù)[15,26]通過逆透視變換使圖中車道線的寬度恒定,避免卷積核尺寸的變化。
3.2 基于深度學(xué)習(xí)的特征檢測方法
近年來,基于深度學(xué)習(xí)(Deep Learning,DL)的特征檢測方法被引入自動駕駛領(lǐng)域并表現(xiàn)出了強大的能力。卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network,CNN)以特征提取器和分類器的形式進行車道線與背景的分類[6]。[27]使用一個8層的CNN進行車道線檢測。[28]使用一個7層的CNN完成基于側(cè)視圖的車道線與背景的像素行分類。隨著R-CNN[29]、Faster-RCNN[30]、YOLO[31]等網(wǎng)絡(luò)模型的檢測精度和效率越來越高,研究者們將目標檢測網(wǎng)絡(luò)引入車道線檢測系統(tǒng)。[32]研究使用CNN在單次正向推斷中執(zhí)行車道線的檢測和分類。他們使用六維向量回歸預(yù)測車道邊界局部直線的兩個端點及其相對于相機的深度。由于目標檢測網(wǎng)絡(luò)的輸出不能精確的表示車道線的邊界,語義分割網(wǎng)絡(luò)[33]具備對圖像進行逐像素分類的能力,研究者們提出了一系列基于像素分割、實例分割的變體[34,35]。[34]訓(xùn)練實例分割網(wǎng)絡(luò)將每條車道輸出為一個實例,從而處理任意數(shù)量的車道線。然而,上述方法同樣存在傳統(tǒng)特征檢測方法遇到的問題,即目標在圖像中占比小導(dǎo)致的漏檢、車道線遮擋導(dǎo)致的誤檢、車道線結(jié)構(gòu)特征明顯導(dǎo)致的信息使用不充分等,影響了車道線檢測技術(shù)準確率和召回率的提高。借鑒傳統(tǒng)車道線檢測方法在時空圖像、消失點、車道寬度和形狀、車道線軌跡[36-38]方面的成果,研究者們將這些方法引入將深度神經(jīng)網(wǎng)絡(luò)。[39]提出兩級語義分割網(wǎng)絡(luò)提高車道邊界(弱類對象)的檢測精度。[40]使用由15個點組成的單車道線坐標向量避免車道線邊界檢測不準確的問題。[41]受人類從環(huán)境中(如道路結(jié)構(gòu)和交通流)識別車道布局的直覺啟發(fā),將消失點檢測任務(wù)加入多任務(wù)網(wǎng)絡(luò),提高了網(wǎng)絡(luò)整體精度。與[24]類似,[41]還使用像素塊替代回歸,使用像素塊組合表示車道邊界。[17]將傳統(tǒng)的逐層卷積替換為特征圖中逐層卷積,為CNN架構(gòu)增加了跨行和跨列像素之間的信息流,增加了車道線結(jié)構(gòu)在網(wǎng)絡(luò)中的權(quán)重。[42]將RNN(Recurrent Neural Net)引入特征檢測模塊。RNN可以對輸出結(jié)構(gòu)進行編碼并且內(nèi)部狀態(tài)可以從一個實例保存到另一個實例[43],符合車道線檢測中目標多且結(jié)構(gòu)關(guān)聯(lián)的特點。[44,45]驗證了RNN可以在缺失車道線標記和無先驗的情況下成功進行車道線檢測,得到更加魯棒的特征檢測模型。
4 車道模型擬合
本章節(jié)主要包括濾除誤檢測線段和組段以形成最終車道。一般通過平滑路徑模型自下而上的進行車道擬合,并通過逆透視變換使邊界曲率趨于一致。
車道模型擬合的一般實施方式為點抽樣、候選點群處理和路徑回歸。首先,從車道線段出現(xiàn)概率較高的區(qū)域進行采樣。然后,使用聚類、RANSAC[46]等方法對候選點群進行處理。因為在大多數(shù)情況下,由于圖像處理過程中存在噪聲,候選點群包含大量野點。最后,使用多項式擬合[19,26]、樣條插值[47,48]、卡爾曼或粒子濾波器[49,50]等方法進行路徑擬合。車道模型擬合技術(shù)已經(jīng)趨于成熟,不再是限制車道線檢測技術(shù)的瓶頸。
隨著DL在車道線檢測技術(shù)中的發(fā)展,[28,51]將CNN應(yīng)用到車道模型擬合模塊,建立了端到端的車道線檢測模型。上述傳統(tǒng)模型擬合算法有數(shù)學(xué)理論支撐,而深度卷積神經(jīng)網(wǎng)絡(luò)具有不可解釋性。因此,DL在該模塊中的應(yīng)用不是研究的焦點。使用DL進行特征檢測,之后使用傳統(tǒng)算法進行車道模型擬合,在目前的車道線檢測技術(shù)中更加合理。
5 驗證評估
為了比較不同方法的性能,需要建立基準。然而,由于缺乏公認的測試協(xié)議、性能指標和數(shù)據(jù)集,現(xiàn)有的車道線檢測文獻并沒有統(tǒng)一的基準。Caltech Lanes數(shù)據(jù)集[52]、Road Marking 數(shù)據(jù)集[53]圖像數(shù)量少,且均為晴朗空曠場景中收集,不適用基于DL的車道線檢測技術(shù)。tuSimple lane數(shù)據(jù)集[54]包含晴天和中等天氣下的6,408幅圖像,但是存在嚴重的類間數(shù)據(jù)不平衡問題。CULane數(shù)據(jù)集[17]包含133,235幅圖像,包含了各種天氣、車道線重度遮擋、車道線磨損等場景,但是其僅標注了自車車道和相鄰車道。BDD100K數(shù)據(jù)集[55]包含100,000幅圖像,不僅包含了惡劣天氣情況,而且為車道線增加了連續(xù)性和方向兩個標注屬性。Apolloscapes數(shù)據(jù)集中的Lane Segmentation子集[18]包含超過110,000幅立體圖像,這些圖像來自不同城市的街道場景并且具有像素級標注。上述數(shù)據(jù)集中的圖像數(shù)量、圖像采集條件、圖像采集地點各不相同,圖像中包含的車道線的種類以及對應(yīng)的數(shù)量也多種多樣,CULane數(shù)據(jù)集、BDD100K數(shù)據(jù)集和更新后的Apolloscape數(shù)據(jù)集已經(jīng)取得了規(guī)模上的突破,但是他們對車道線屬性的標注仍然存在不一致,難以形成統(tǒng)一標準的公共數(shù)據(jù)集。除此之外,檢測成功的持續(xù)時間、檢測方法的算力需求,現(xiàn)在都缺乏統(tǒng)一的測試協(xié)議與性能指標。[28,35,56]在不同的硬件環(huán)境下進行了檢測效率的評估,[14]以車速為指標進行了評估。
在具有挑戰(zhàn)性的場景中進行穩(wěn)健識別的關(guān)鍵是一個大型數(shù)據(jù)集。在大型數(shù)據(jù)集的基礎(chǔ)上,統(tǒng)一車道線檢測技術(shù)的測試協(xié)議與性能指標,為不同的方法提供基準。
6 總結(jié)
車道線檢測是完全自動駕駛需要走出的第一步,其算法必須在各種環(huán)境中保持精確并且具有快速的計算時間,對算法的魯棒性提出了極高的要求。DL對基于視覺的車道線檢測技術(shù)的發(fā)展產(chǎn)生了深遠的影響,尤其體現(xiàn)在大型數(shù)據(jù)集方面,并對測試協(xié)議與性能指標提出了更高的要求。將CNN和RNN引入特征檢測模塊,促進了車道線檢測技術(shù)在各種天氣、各種光照、各種遮擋陰影等惡劣場景中性能的提升。將CNN引入圖像預(yù)處理模塊,消除了車道線檢測技術(shù)在車道屬性上使用的許多假設(shè),增加了其在各種道路環(huán)境中的魯棒性。但是DL的不可解釋性,為車道線檢測技術(shù)帶入了不確定性。現(xiàn)有的車道線檢測技術(shù)在穩(wěn)定性上仍然遠遠不能令人滿意,開發(fā)出魯棒高效的車道線檢測方法仍然任重而道遠。
[17]X. Pan,J. Shi,L. Ping,et al. Spatial As Deep:Spatial CNN for Traffic Scene Understanding [J]. https://arxivorg/abs/180306459,2017.
[18]X. Cheng,X. Huang,Q. Geng,et al. The ApolloScape Dataset for Autonomous Driving [J]. https://arxivorg/abs/180306184v1,2019.
[19]H. Tan,Z. Yang,Z. Yong,et al. A novel curve lane detection based on Improved River Flow and RANSA; TITS,2014 [C].
[20]I. Somawirata,F(xiàn). Utaminingrum. Road detection based on the color space and cluster connecting; ICSP,2017 [C].
[21]S. Wu,H. Chiang,J. Perng,et al. The Heterogeneous Systems Integration Design and Implementation for Lane Keeping on a Vehicle [J]. TIST,2008,9(2):246-63.
[22]A. López,J. Serrat,C. Ca?ero,et al. Robust lane markings detection and road geometry computation [J]. International Journal of Automotive Technology,2010,11(3):395-407.
[23]Z. Teng,J. Kim,D. Kang. Real-time lane detection by using multiple cues; ICCAS,2010[C].
[24]X. Shi,B. Kong,Z. Fei. A New Lane Detection Method Based on Feature Pattern; ICISP,2009 [C].
[25]A. Kornhauser,O. St,A. Atreya,et al. DARPA Urban Challenge Princeton University Technical Paper.
[26]A. Borkar,M. Hayes,M. Smith. Robust lane detection and tracking with ransac and Kalman filter; ICIP,2010 [C].
[27]J. Kim,M. Lee. Robust lane detection based on convolutional neural network and random sample consensus [J]. 2014.
[28]A. Gurghian,T. Koduri,S. Bailur,et al. DeepLanes:End-To-End Lane Position Estimation Using Deep Neural Networks; CVPR,2016 [C].
[29]R. Girshick,J. Donahue,T. Darrell,et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation; CVPR,2014 [C].
[30]S. Ren,R. Girshick. Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks [J]. TPAMI,2017,39(6):1137-49.
[31]J. Redmon,S. Divvala,R. Girshick,et al. You Only Look Once:Unified,Real-Time Object Detection; CVPR,2016 [C].
[32]B. Huval,W. Tao,S. Tandon,et al. An Empirical Evaluation of Deep Learning on Highway Driving [J]. Computer Science,2015.
[33]K. He,G. Gkioxari,P. Dollar,et al. Mask R-CNN [J]. TPAMI,2017,P(99).
[34]D. Neven,B. Brabandere,S. Georgoulis,et al. Towards End-to-End Lane Detection:an Instance Segmentation Approach [J]. CVPR,2018.
[35]Y. Hsu,Z. Xu,Z. Kira,et al. Learning to Cluster for Proposal-Free Instance Segmentation [J]. CVPR.
[36]J. Fritsch,T. Kuhnl,F(xiàn). Kummert. Monocular Road Terrain Detection by Combining Visual and Spatial Information[J]. TITS,2014,15(4):86-96.
[37]S. Jung,J. Youn,S. Sull. Efficient Lane Detection Based on Spatiotemporal Images [J]. TITS,2015,17(1):289-95.
[38]K. Hui,S. Sarma,T. Feng. Generalizing Laplacian of Gaussian Filters for Vanishing-Point Detection [J]. TITS,2013,14(1):408-18.
[39]S. Chougule,A. Ismail,A. Soni,et al. An efficient encoder-decoder CNN architecture for reliable multilane detection in real time; IV,26-30 2018,[C].
[40]S. Chougule,N. Koznek,A. Ismail,et al. Reliable Multilane Detection and Classification by Utilizing CNN as a Regression Network; ECCV,2018 [C].
[41]S. Lee,J. Kim,J. Yoon,et al. VPGNet:Vanishing Point Guided Network for Lane and Road Marking Detection and Recognition [J]. ICCV,2017.
[42]X. Shi,Z. Chen,W. Hao,et al. Convolutional LSTM Network:A Machine Learning Approach for Precipitation Nowcasting; ICONIP,2015 [C].
[43]L. Feldkamp,D. Prokhorov,T. Feldkamp. Simple and conditioned adaptive behavior from Kalman filter trained recurrent networks [J]. Neural Networks,2003,16(5):683-9.
[44]J. Li,X. Mei,D. Prokhorov. Deep Neural Network for Structural Prediction and Lane Detection in Traffic Scene [J]. TNNLS,2017,28(3):690-703.
[45]Q. Zou,H. Jiang,Q. Dai,et al. Robust Lane Detection from Continuous Driving Scenes Using Deep Neural Networks [J]. CVPR,2019.
[46]F. Martin,Bolles,et al. Random sample consensus:a paradigm for model fitting with applications to image analysis and automated cartography [J]. Readings in Computer Vision,1987.
[47]Z. Whan,Kim. Robust Lane Detection and Tracking in Challenging Scenarios [J]. TITS,2008,9(1):16-26.
[48]K. Zhao,M. Meuter,C. Nunn,et al. A novel multi-lane detection and tracking system; IV,2012 [C].
[49]W. Fiedler. Stochastic Lane Shape Estimation Using Local Image Descriptors [J]. TITS,2013,14(1):13-21.
[50]B. Shin,J. Tao,R. Klette. A superparticle filter for lane detection [M]. Elsevier Science Inc,2015.
[51]W. Brabandere,D. Neven,M. Proesmans,et al. End-to-end Lane Detection through Differentiable Least-Squares Fitting [J]. CVPR,2019.
[52]M. Aly. Real time Detection of Lane Markers in Urban; IV,2008 [C].
[53]W. Tao,A. Ranganathan. A practical system for road marking detection and recognition; IV,2012 [C].
[54]The tuSimple lane challange [J]. http://benchmarktusimpleai/,2017.
[55]F. Yu,W. Xian,Y. Chen,et al. BDD100K:A Diverse Driving Video Database with Scalable Annotation Tooling [J],CVPR,2018.
[56]Y. Hou. Agnostic Lane Detection [J]. CVPR,2019.