《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于多尺度重采樣的車道線檢測(cè)
基于多尺度重采樣的車道線檢測(cè)
2017年電子技術(shù)應(yīng)用第4期
付黎明,李必軍,葉雨同
武漢大學(xué) 測(cè)繪遙感信息工程國(guó)家重點(diǎn)實(shí)驗(yàn)室,湖北 武漢430079
摘要: 提出了一種適用于輔助駕駛的高魯棒性車道線檢測(cè)算法。算法采用了根據(jù)距離的影像金字塔,有效提高了檢測(cè)效率和準(zhǔn)確率,實(shí)現(xiàn)了Android平臺(tái)的實(shí)時(shí)檢測(cè),使用水平方向暗-亮-暗特征、二次曲線車道模型和基于卡爾曼濾波的跟蹤實(shí)時(shí)提取跟蹤路面車道線,實(shí)現(xiàn)相機(jī)俯仰角的快速標(biāo)定。實(shí)驗(yàn)證明,基于簡(jiǎn)單特征和車道線模型算法在Android系統(tǒng)的行車記錄儀上可穩(wěn)定地進(jìn)行車道跟蹤。
中圖分類號(hào): TP751.1
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.002
中文引用格式: 付黎明,李必軍,葉雨同. 基于多尺度重采樣的車道線檢測(cè)[J].電子技術(shù)應(yīng)用,2017,43(4):7-12.
英文引用格式: Fu Liming,Li Bijun,Ye Yutong. Lane detection based on multi scale resampling[J].Application of Electronic Technique,2017,43(4):7-12.
Lane detection based on multi scale resampling
Fu Liming,Li Bijun,Ye Yutong
State Key Laboratory of Information Engineering in Surveying,Mapping and Remote Sensing,Wuhan University, Wuhan 430079,China
Abstract: A robust lane detection algorithm is presented for ADAS applications. Utilizing a distance based image multiscale resampling method, horizontal dark-bright-dark feature, parabola lane model and Kalman filter based tracking, the algorithm extracts and tracks road lane in realtime. A fast pitch angle alignment method is put forward for realtime detection on Android mobile devices. Experiments show that the algorithm runs realtime on an Android car dashcam.
Key words : lane detection;multi scale resampling;image pyramid;parabola lane mode

0 引言

    高級(jí)駕駛輔助系統(tǒng)(Advanced Driver Assistance System,ADAS)快速發(fā)展,作為其中重要模塊的基于視覺(jué)的車道線檢測(cè)也得到了大量研究。車道線本身設(shè)計(jì)是適合人類視覺(jué)系統(tǒng)處理的,單目相機(jī)成本低廉,因此目前車道線檢測(cè)主流傳感器是單目相機(jī)[1],本文提出的車道線檢測(cè)方法也基于單目相機(jī)。

    根據(jù)最終輸出數(shù)據(jù)所在坐標(biāo),車道線檢測(cè)方法可分為兩類:一類直接在預(yù)處理后圖像上使用直線或直線段檢測(cè)方法[2-3],無(wú)需相機(jī)參數(shù)和路面幾何參數(shù)的假設(shè),輸出參數(shù)為車道參數(shù)在圖像坐標(biāo)內(nèi),無(wú)法定量表達(dá)自車在車道內(nèi)位置;另一類使用逆透視變換(Inverse Perspective Mapping,IPM)將圖像或特征轉(zhuǎn)換到世界坐標(biāo)系,生成鳥(niǎo)瞰圖,優(yōu)勢(shì)在于輸出坐標(biāo)為可以直接判斷自車相對(duì)車道位置的世界坐標(biāo)[4-5]。為滿車道偏離檢測(cè)對(duì)車道內(nèi)位置的定量需求,本文算法采用基于IPM的方法。

    算法采用簡(jiǎn)單亮-暗-亮特征,首先對(duì)圖像RGB三通道進(jìn)行通道運(yùn)算生成灰度影像,根據(jù)路面據(jù)相機(jī)距離,對(duì)圖像分區(qū)重采樣,在多尺度上查找特征點(diǎn)對(duì),以克服同一尺度重采樣造成的計(jì)算量大或遠(yuǎn)處特征點(diǎn)丟失問(wèn)題。特征點(diǎn)逆透視變換到世界坐標(biāo)系后,根據(jù)幾何特征初步篩選,若上一幀存在檢測(cè)結(jié)果,根據(jù)上一幀結(jié)果進(jìn)一步篩選特征點(diǎn)。特征點(diǎn)經(jīng)篩選后首先在局部查找相鄰特征點(diǎn)歸組并初步計(jì)算參數(shù),然后根據(jù)組間空間位置進(jìn)行合并得到超組(super group)并對(duì)超組進(jìn)行模型擬合,得到候選車道線,候選車道線經(jīng)幾何判斷后查找出本車道左右車道線,最后對(duì)左右車道線使用卡爾曼濾波,得到最終車道模型。流程圖如圖1。

adas2-t1.gif

1 多尺度影像重采樣

1.1 透視變換和逆透視變換

    采用和文獻(xiàn)[4]中相同方法,假設(shè)地面為平面,相機(jī)內(nèi)參數(shù)、外參數(shù)已知,如圖 2,以相機(jī)光學(xué)中心為原點(diǎn),定義世界坐標(biāo)系{Fw}={Xw,Yw,Zw},僅考慮相機(jī)俯仰角?琢和偏航角α,相機(jī)高度為h。

adas2-t2.gif

    對(duì)于地面一點(diǎn)齊次坐標(biāo)Pg={xg,yg,-h,1},其對(duì)應(yīng)圖像坐標(biāo):

adas2-gs1-2.gif

adas2-gs1-2-x1.gif

1.2 多尺度影像重采樣

    由于相機(jī)透視投特性,車道線在圖像上呈現(xiàn)近粗遠(yuǎn)細(xì)的特點(diǎn)。常規(guī)影像重采樣使用同一縮放尺度對(duì)影像重采樣,重采樣比例過(guò)大會(huì)使輸出圖像尺寸較大,顯著增加特征點(diǎn)搜索耗時(shí);重采樣比例過(guò)小會(huì)使遠(yuǎn)處車道線信息嚴(yán)重丟失,降低遠(yuǎn)處檢測(cè)率。

    本文提出一種按距離遠(yuǎn)近對(duì)圖像各水平區(qū)域不同比例的重采樣方法,保留遠(yuǎn)處車道線信息的情況下,顯著降低搜索區(qū)域大小,降低搜索時(shí)間。如圖3所示。

adas2-t3.gif

    由式(1)計(jì)算當(dāng)前標(biāo)定參數(shù)下滅線在圖像中的水平位置,從滅線往下至圖像底邊為車道線關(guān)注區(qū)域,設(shè)滅線到圖像底邊高為H,重采樣比例si≤1.0,i=1,…,n依次遞減,按式(3)計(jì)各重采樣區(qū)域高度hi,i=1,…,n后分區(qū)重采樣。

adas2-gs3-4.gif

adas2-gs3-4-x1.gif

2 車道模型

    單根車道線由二次函數(shù)描述:

    adas2-gs5.gif

其中x, y為世界坐標(biāo)系下坐標(biāo)。車道模型采用和式(5)相同的模型描述當(dāng)前車道中心線,增加車道寬度參數(shù)w和偏移offset。

3 圖像通道運(yùn)算

    彩色圖像包含RGB三個(gè)通道信息,需處理為灰度影像,根據(jù)被拍攝物體的光譜反射特性,路面車道線顏色為白色或黃色[6],對(duì)于白色車道線:R≈G≈B,對(duì)于黃色車道線:R≈G>B采用:

    adas2-gs6.gif

    如圖 4所示,所得灰度圖像M在保持白色車道線強(qiáng)度不變前提下有效增強(qiáng)黃色車道線與地面的對(duì)比度。

adas2-t4.gif

4 多尺度特征點(diǎn)對(duì)提取

4.1 特征點(diǎn)對(duì)查找

    特征點(diǎn)對(duì)由圖像水平方向1個(gè)“暗-亮”特征和1個(gè)“亮-暗”特征組成,描述由地面到車道線和由車道線到地面的圖像強(qiáng)度變化。首先使用卷積核為[-1 0 1]的梯度算子對(duì)圖像卷積,獲取水平方向一階導(dǎo)數(shù),在卷積后圖像中查找正負(fù)峰值即可對(duì)亮度變化邊緣定位,正峰值處即為原圖“暗-亮”特征邊緣,負(fù)峰值即為“亮-暗”特征邊緣。

    特征點(diǎn)對(duì)的查找在重采樣后圖像上逐行進(jìn)行,利用式(1)計(jì)算每行圖像上車道線寬度上下限[wmin,wmax],作為特征點(diǎn)對(duì)搜索范圍,找到一個(gè)正峰值后,從與其相隔像素?cái)?shù)為wmin處開(kāi)始查找負(fù)峰值,直至wmax處,若范圍內(nèi)查找到負(fù)峰值,則作為特征點(diǎn)對(duì)保留。

4.2 特征點(diǎn)對(duì)位置精化

    查找到特征點(diǎn)對(duì)整像素點(diǎn)位后,精化特征點(diǎn)正負(fù)峰值位置,求出中心點(diǎn)位置和特征點(diǎn)寬度。

adas2-gs7.gif

adas2-t5.gif

    進(jìn)一步求峰值精確位置:

adas2-gs8.gif

5 車道跟蹤

5.1 特征點(diǎn)歸組

    根據(jù)式(2)將包含寬度的特征點(diǎn)由圖像坐標(biāo)轉(zhuǎn)換到世界坐標(biāo),由距離相機(jī)最近點(diǎn)p0向遠(yuǎn)順序搜索與其距離最近點(diǎn)p1,若p0與p1間距離小于一定值td,則歸為一組,再?gòu)膒1繼續(xù)搜索,至兩點(diǎn)間距離大于td則當(dāng)前組分組完畢,創(chuàng)建新組繼續(xù)搜索直至所有特征點(diǎn)都被分組。分組后刪除點(diǎn)數(shù)過(guò)少的組。具體算法流程如下:

     adas2-5.1-x1.gif

5.2 分組合并

    經(jīng)5.1中特征點(diǎn)歸組后,連續(xù)線段歸為一組,實(shí)際環(huán)境由于虛線或者實(shí)線污損會(huì)過(guò)度分組,分組后合并操作可使一條車道線的各個(gè)組合并為同一個(gè)組。

    判斷兩個(gè)分組是否合并有兩個(gè)規(guī)則:(1)兩個(gè)分組是否落在對(duì)方的拓展范圍內(nèi);(2)合并后所擬合的二次曲線方差是否足夠小。

    規(guī)則1與文獻(xiàn)[7]中相似,在各分組首末點(diǎn)處各延伸出一個(gè)矩形,矩形方向與本組特征點(diǎn)方向一致,若待判斷組的端點(diǎn)落在矩形范圍內(nèi),則標(biāo)記為T(mén)rue。規(guī)則2中將兩組特征點(diǎn)合并后進(jìn)行二次曲線擬合,兩組特征點(diǎn)之間若存在橫向偏移或旋轉(zhuǎn),二次曲線擬合方差會(huì)顯著大于同一條線上擬合方差。

    同時(shí)滿足規(guī)則1和規(guī)則2的分組被合并到同一個(gè)超組中,對(duì)每個(gè)超組進(jìn)行二次曲線擬合,得到各自的二次曲線方程作為候選車道線。

5.3 車道模型更新

    對(duì)于所有候選車道線,根據(jù)a0的正負(fù)分為左、右兩類,左、右兩類間逐一計(jì)算在y=0處和y=20處寬度與上一幀車道模型寬度的差值,若差值小于一定范圍,則繼續(xù)進(jìn)行后續(xù)車道組成。

    車道組成分為3種情況:(1)左右均存在車道線,則用左右車道線更新車道模型;(2)有一邊車道線缺失,使用存在的車道線更新車道模型;(3)左右車道線均不存在,則不更新車道模型。

    車道模型使用卡爾曼濾波更新,模型如下

adas2-gs9-13.gif

    HLR上3行對(duì)應(yīng)左車道線,下3行對(duì)應(yīng)右車道線,當(dāng)一側(cè)車道線缺失時(shí),將對(duì)應(yīng)部分設(shè)置為0更新模型,更新后模型即作為車道模型輸出。

6 實(shí)驗(yàn)結(jié)果與分析

    算法實(shí)現(xiàn)分離線部分和在線部分,離線部分基于VS2010和OpenCV實(shí)現(xiàn),運(yùn)行環(huán)境為Intel Core i5-2520 CPU,主頻為2.5 GHz,操作系統(tǒng)為Windows10 X64,使用兩組數(shù)據(jù):(1)魅族MX2手機(jī)后置攝像頭所采集真實(shí)環(huán)境視頻,視頻在武漢市環(huán)城高速、二環(huán)線等道路上采集,包含了直線、彎道、進(jìn)出隧道、地面文字圖形干擾、車道線單邊缺失、車道被侵占和地面陰影干擾等場(chǎng)景,視頻分辨率為1 280×720,(2)Caltech車道線數(shù)據(jù)集[4]進(jìn)行對(duì)照,Caltech車道線數(shù)據(jù)集是由美國(guó)加州理工學(xué)院在2008年公布的車道線測(cè)試數(shù)據(jù)集,數(shù)據(jù)集為4段一天中不同時(shí)間的圖像序列,分別包含250幀、406幀、337幀和232幀圖像,分辨率均為640×480,該數(shù)據(jù)集廣泛用于車道線檢測(cè)算法評(píng)估。

    在線部分硬件為魅族MX2手機(jī),4核1.6 GHz ARM架構(gòu)CPU,算法基于OpenCV for Android和Qt for Android實(shí)現(xiàn),與離線部分一致,實(shí)時(shí)采集圖像分辨率、焦距與離線部分一致。

    為對(duì)比多尺度采樣對(duì)于算法運(yùn)行效率的提高,使用離線數(shù)據(jù)集中的MX2數(shù)據(jù)中一段視頻進(jìn)行對(duì)比實(shí)驗(yàn),總幀數(shù)1 760幀。多尺度重采樣比例設(shè)置為si={1.0,0.5,0.2};為保證對(duì)照組同樣的檢測(cè)效果,對(duì)照組使用圖像重采樣比例整體為1,即不進(jìn)行重采樣操作,程序運(yùn)行時(shí)間見(jiàn)圖 6,不使用多尺度重采樣平均運(yùn)行時(shí)間為36.0 ms/幀,幀率約為27.8幀/秒,基本滿足車道線檢測(cè)的實(shí)時(shí)要求;多尺度重采樣運(yùn)行時(shí)間均值約為20.6 ms/幀,幀率約為48.5幀/秒。實(shí)驗(yàn)表明,多尺度影像重采樣在保證相同車道線檢測(cè)效果的情況下,可有效提高算法運(yùn)行效率。

adas2-t6.gif

    離線實(shí)驗(yàn)第二部分為本文算法與Caltech車道線檢測(cè)算法對(duì)比,對(duì)比實(shí)驗(yàn)使用Caltech車道線數(shù)據(jù)集,為方便比較,將Caltech數(shù)據(jù)集中4段視頻運(yùn)行時(shí)間數(shù)據(jù)合并后進(jìn)行運(yùn)行時(shí)間比較。Caltech車道線檢測(cè)算法使用有向高斯濾鏡對(duì)經(jīng)過(guò)逆透視變換后的圖像進(jìn)行卷積,隨后使用RANSAC算法進(jìn)行初始直線匹配,最后使用快速RANSAC算法將進(jìn)行貝塞爾曲線匹配,得到車道線檢測(cè)結(jié)果。圖 7和圖 8分別為Caltech車道線檢測(cè)算法與本文算法的運(yùn)行時(shí)間和效果對(duì)比圖,Caltech數(shù)據(jù)集中圖像尺寸較小,檢測(cè)算法運(yùn)行快于上一項(xiàng)實(shí)驗(yàn),其中Caltech車道線檢測(cè)算法運(yùn)行平均時(shí)間約為18.5 ms,幀率為53.9幀/秒;本文算法平均運(yùn)行時(shí)間約為10.1 ms,幀率為99.0幀/秒。

adas2-t7.gif

adas2-t8.gif

    典型場(chǎng)景的檢測(cè)效果如圖 8,在常規(guī)場(chǎng)景(a)下,本文算法結(jié)果與Caltech算法結(jié)果相似,得益于算法中特征點(diǎn)位置精化,檢測(cè)結(jié)果穩(wěn)定于車道線正中央;圖中(b)、(c)、(d)三項(xiàng)分別為對(duì)照算法受到地面橫線、文字和陰影干擾而產(chǎn)生誤檢,本文中算法可以正確檢測(cè)到車道線。

    第三部分實(shí)驗(yàn)算法檢測(cè)準(zhǔn)確率定量評(píng)估,用離線數(shù)據(jù)中的MX2采集的5段視頻運(yùn)行車道線檢測(cè),隨后逐幀統(tǒng)計(jì)檢測(cè)結(jié)果中的誤檢和漏檢情況,統(tǒng)計(jì)結(jié)果見(jiàn)表 1,在絕大多數(shù)情況下,算法可準(zhǔn)確檢測(cè)車道線,其中錯(cuò)誤部分總體誤檢率小于漏檢率,用于ADAS系統(tǒng)時(shí),誤提醒干擾駕駛者的概率比較小。

adas2-b1.gif

    實(shí)驗(yàn)視典型場(chǎng)景如圖 9所示,包含了常規(guī)的直線行駛,彎道行駛,進(jìn)入隧道、隧道中行駛和駛出隧道等光線劇烈變化場(chǎng)景和地面文字、陰影、車輛對(duì)于車道線的干擾以及單邊車道線缺失等異常狀況,本文算法在以上場(chǎng)景中均能正確檢測(cè)出車道線,場(chǎng)景(f)為誤檢場(chǎng)景,算法將靠近車道線的地面破損誤檢測(cè)為車道線。

adas2-t9.gif

    第四部分實(shí)驗(yàn)為在線實(shí)驗(yàn),算法運(yùn)行在一臺(tái)4核1.6 GHz ARM架構(gòu)CPU的手機(jī)上,從手機(jī)相機(jī)實(shí)時(shí)獲取1 280×720像素圖像用于算法處理,算法占用1個(gè)CPU核心,平均運(yùn)行時(shí)間約為35.6 ms,幀率約為28.1幀/秒,滿足實(shí)時(shí)性要求。

7 結(jié)語(yǔ)

    本文提出了一種適用于無(wú)人駕駛車輛和輔助駕駛的高魯棒性車道線檢測(cè)算法,根據(jù)距離遠(yuǎn)近生成金字塔影像,在縮減計(jì)算量的同時(shí)保證了對(duì)遠(yuǎn)處特征點(diǎn)的提取,保證了算法在Android等移動(dòng)平臺(tái)的實(shí)時(shí)運(yùn)行,進(jìn)一步的特征點(diǎn)位置精化提供了亞像素級(jí)特征點(diǎn)位置,為無(wú)人駕駛提供了準(zhǔn)確的車道線位置信息?;诙吻€的車道模型用較少的參數(shù)描述車道的位置和幾何特征,保證了結(jié)果的穩(wěn)定性。大量實(shí)驗(yàn)證明,算法在PC端和Android端均有很好的實(shí)時(shí)性、魯棒性和高檢測(cè)率、低誤檢率。后續(xù)工作中,將進(jìn)一步解決因上下坡等特殊情況下出現(xiàn)的車道模型異常等情況。

參考文獻(xiàn)

[1] MCCALL J C,TRIVEDI M M.Video-based lane estimation and tracking for driver assistance:survey,system,and evaluation[J].Intelligent Transportation Systems,IEEE Transactions on,2006,7(1):20-37.

[2] JIANG Y,GAO F,XU G.Computer vision-based multiplelane detection on straight road and in a curve[C].Image Analysis and Signal Processing(IASP),2010 International Conference on,2010:114-117.

[3] BORKAR A,HAYES M,SMITH M T.Robust lane detection and tracking with ransac and Kalman filter[C].ICIP,2009:3261-3264.

[4] ALY M.Real time detection of lane markers in urban streets[C].Intelligent Vehicles Symposium,2008 IEEE,2008:7-12.

[5] SEUNG-NAM K,SOOMOK L,JUNHWA H,et al.Multilane detection based on accurate geometric lane estimation in highway scenarios[C].Intelligent Vehicles Symposium Proceedings,2014 IEEE,2014:221-226.

[6] 中國(guó)國(guó)家標(biāo)準(zhǔn)化管理委員會(huì).GB 5768.3-2009道路交通標(biāo)志和標(biāo)線.第3部分:道路交通標(biāo)線.2009.

[7] ESKANDARIAN A.Handbook of Intelligent Vehicles[M].Springer,2012.



作者信息:

付黎明,李必軍,葉雨同

(武漢大學(xué) 測(cè)繪遙感信息工程國(guó)家重點(diǎn)實(shí)驗(yàn)室,湖北 武漢430079)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。