李飛 賓洋 羅文廣 朱英凱
摘 要:針對車道線檢測算法計算量大,耗時長的問題,為提高算法的實時性和魯棒性,把通過CCD獲取的道路圖像由視頻轉(zhuǎn)碼模塊TVP5158從模擬信號轉(zhuǎn)化為數(shù)字信號,在進行工作區(qū)域的限定的基礎(chǔ)上,進行灰度化,并利用改進的濾波算子進行圖像的濾波處理;為利于后續(xù)步驟的處理,然后利用對噪聲的低敏感性和更有利邊緣的顯示的Sobel算子進行邊緣分割;然后在搭建DSP硬件平臺上,結(jié)合改進的Hough算法,提高檢測與識別的準確性和實時性,將處理后的圖像送到LCD顯示屏上顯示最終檢測的結(jié)果.
關(guān)鍵詞:車道線檢測;工作區(qū)域;邊緣檢測;改進Hough (IH)
中圖分類號:U495 DOI:10.16375/j.cnki.cn45-1395/t.2018.01.008
0 引言
車道線檢測是一項基礎(chǔ)的工作,為如車道偏離報警系統(tǒng)(Lane Departure Warning System, LDWS)、高級輔助駕駛系統(tǒng)(Advanced Driver Assistance System, ADAS)以及無人駕駛等技術(shù)的實現(xiàn)提供了可能.同時,在交通安全事故日趨上升的情況下,以車道線檢測與識別為基礎(chǔ)的安全輔助駕駛系統(tǒng)的研究愈來愈受到研究人員和各國政府的重視.閾值分割作為車道線預(yù)提取的關(guān)鍵,是完成車道線識別的基礎(chǔ).為解決算法準確性與實時性之間的矛盾,謝一峰等[1]采取軟件濾波的方法,來抑制噪聲干擾,提高檢測算法的準確性,并且把算法的運行時長降低,提出了基于形態(tài)學(xué)的車道線檢測算法,并基于DSP實現(xiàn)了車道線的實時檢測.王云建等[2]通過融合區(qū)域生長和最優(yōu)閾值在ROI內(nèi)選取候選點集并篩選分類得到有效特征點,再進行擬合實現(xiàn)車道線檢測.由于基于模型的車道線檢測算法本身算法比較復(fù)雜,運算量比較大難以滿足實時性的需要.
卞建勇等[3]采用在參數(shù)空間進行分塊的方法,對傳統(tǒng)Hough變換進行改進,以減少車道標志線檢測算法的運算量,并且在DSP平臺上實驗,獲得了很好的車道標志線檢測效果.此外,王寶峰等[4-6]通過結(jié)合局部逆透視變換及Hough變換,提出了一種線性逼近的彎道識別方法,并具有一定的適用性;Kim等[7]利用“緊湊型霍夫變換”來完成車道直線檢測,其本質(zhì)是通過約束極坐標系下極角范圍,來減少Hough變換的計算量;林貴潮等[8]利用改進的離散化Hough變換完成直線檢測,可提高算法的實時性;另外,利用參數(shù)模型來實現(xiàn)車道重建是一種行之有效的方法,Kang等[9]提出“蛇形-直線”模型,將圖像分為多個區(qū)域,并對每個區(qū)域進行Hough變換從而完成彎道檢測.
為研究車道線預(yù)提取及車道線檢測識別,首先對由CCD攝像機獲得的道路圖像以經(jīng)過改進的濾波算子進行有效濾波,然后對工作區(qū)域ROW(Region of Work)以車道線為中軸在一定區(qū)域范圍內(nèi)進行設(shè)定,最后經(jīng)過邊緣檢測得到含有雙邊緣的車道線,及有效單邊緣的車道線.
1 ROW確定
經(jīng)過對大量道路圖像進行分析,以及對車道線識別的影響及重要程度,本文將圖像按照圖1進行ROW劃分,從而建立初始檢測區(qū)域.
首先,在車輛前方一定距離的近視場內(nèi)框定一個矩形區(qū)域如圖1中矩形IJKL所示,讓獲取道路圖像的CCD攝像機中軸線L1與道路中心線L2重合,以兩者的重合線L0(豎直方向)為Y軸,水平方向為X軸建立直線檢測變換坐標系,使道路左側(cè)的車道線(左車道線)位于Y軸左側(cè)和矩形IJKL所圍成的區(qū)域ABJCD內(nèi),道路右側(cè)的車道線(右車道線)位于Y軸右側(cè)和矩形IJKL所圍成的區(qū)域EFKGH內(nèi),如圖1所示.
圖中,矩形IJKL的確定過程如下:首先,在一幀圖像中V 軸方向上從上到下,其像素范圍記為(PixelV_start,PixelV_end),確定待處理的像素區(qū)域的上下邊界,PixelV_up和PixelV_down,即水平方向矩形IJKL的兩條邊IL和JK;然后,在U軸方向上,其像素范圍記為(PixelU_start,PixelU_end),確定待處理的像素區(qū)域的左右邊界,(PixelU_MwidthL,PixelU_MwidthR),即豎直方向矩形IJKL的兩條邊IJ和LK,將圖像從左到右分為3部分,亦即(PixelU_start,PixelU_MwidthL),(PixelU_MwidthL,PixelU_MwidthR),(PixelU_MwidthL,PixelU_end),由于原圖水平方向很長,現(xiàn)只截取包含道路信息的主要部分.其中,PixelU_MwidthL和PixelU_MwidthR分別是豎直方向矩形IJKL的兩條邊IJ和LK,Mwidth為待處理區(qū)域的像素寬度,PixelU_MwidthL和PixelU_MwidthR分別是待處理區(qū)域的像素寬度Mwidth的左右兩邊.
再根據(jù)車道標志線與路面兩者灰度值的差異,將左右車道標志線的檢測區(qū)域分別主要限制在多邊形ABJCD內(nèi)和多邊形EFKGH內(nèi).
2 圖像濾波
2.1 濾波原理
為了完成車道線預(yù)提取,需基于感興趣區(qū)域[10],對圖像進行分割:1)對目標區(qū)域進行中值濾波,濾除干擾信息;2)利用像素梯度進行車道線邊緣提取;3)根據(jù)車道線邊緣像素點分布特點[11]進一步去噪及車道邊緣細化,從而獲取最佳車道邊緣信息.
在進行濾波處理之前,需要先對經(jīng)電荷耦合設(shè)備(CCD)獲取的包含車道線信息的道路圖像進行灰度化處理,其輸出的視頻是PAL制式的.而DSP平臺在幀緩存器中采用YUV422[11]的格式進行傳輸和處理,存儲形式為用2個字節(jié)(byte)存放1個像素,即UYVY的形式.前半部分存儲U,V分量,即色度信號;后半部分存儲Y分量,即亮度信號.PAL形式的彩色圖像轉(zhuǎn)化為YUV形式的灰度圖像具體實現(xiàn)過程如下:通過指針操作,令每一個存儲像素的前半部分等于0~255的256個灰度等級中某一個特殊的灰度值來屏蔽掉彩色信號;后半部分的亮度信號不作處理,以達到在工作區(qū)域ROW內(nèi)的彩色圖像灰度處理的目的.
傳統(tǒng)的中值濾波算法[12]通過在需要計算的區(qū)域內(nèi)對數(shù)據(jù)元素的特定的排序來實現(xiàn).排序的方法有冒泡排序等,將像素值的大小進行比較再交換位置,以此反復(fù)進行,然而這樣的操作次數(shù)在小的計算區(qū)域尚可,在大的計算區(qū)域傳統(tǒng)濾波算法的排序速度會對檢測系統(tǒng)的實時性產(chǎn)生巨大影響.
2.2 濾波改進
改進中值濾波實現(xiàn)如下:選取ROW工作區(qū)域矩形IJKL內(nèi)的任一像素點P(i, j )及其鄰域(圖2中左上矩形框所示),對像素點P(i, j )及其鄰域所在區(qū)域(圖2右側(cè)大的矩形框所示)進行了放大,而右側(cè)大的矩形框所包圍的部分為ROW工作區(qū)域矩形IJKL內(nèi)的互不重復(fù)的子集.
分別計算第j-1列、第j列、第j+1列的極大值Ma( j-1)、中值Me( j)和極小值Mi( j+1),共計算9次,構(gòu)成極大值組Ma、中值組Me和極小值組Mi.分別記極大值組Ma、中值組Me和極小值組Mi中的最小值、中值和最大值為Mi_Ma、Me_Me、Ma_Mi,并且計算出其值,共計算9次,需要計算的像素點P(i, j )及其鄰域的濾波輸出結(jié)果Me(i, j )為Mi_Ma、Me_Me、Ma_Mi的中值,需要計算3次.總共需要計算21次,而按行計算的傳統(tǒng)方法需要36次,提高了處理效率.處理過程如表1所示.
3 邊緣分割
在車道線圖像中,由于局部圖像特征的非連續(xù)性,導(dǎo)致像素的灰度值發(fā)生明顯變化,從宏觀角度看表現(xiàn)為分割不同區(qū)域的邊緣.路面邊緣主要分為:階躍邊緣、屋頂邊緣和過渡邊緣.邊緣分割主要包括兩種:基于邊緣擬合算子和基于微分算子.基于后者的方法有很多種,比如Canny算子、Prewitt算子、Roberts算子,由于對噪聲的低敏感性和更有利邊緣的顯示,本文采用基于Sobel算子[13]的邊緣分割方法.
Sobel算子將局部平均和方向差分運算相結(jié)合,傳統(tǒng)的Sobel算子大多采用水平和豎直方向2個算子,其梯度值計算公式如下所示.
而本文采用改進的算子,使得左車道線使用45°的算子,右車道使用135°的算子,如圖3所示.
檢測結(jié)果如圖4所示,圖中包含車道線的黑色區(qū)域即為在第一節(jié)ROW確定中矩形IJKL經(jīng)DSP處理后在LCD屏上的顯示.
從實驗結(jié)果可以看出,本文方法相對簡單,且能夠較好地對車道邊緣進行定位.
4 車道線檢測
基于DSP平臺,不同于個人計算機平臺,其內(nèi)存空間和計算能力等受到限制,在面對復(fù)雜、耗時長的傳統(tǒng)Hough算法時[14],往往效果不理想.為此,需要對其作出改進,以適應(yīng)嵌入式平臺的特點.在經(jīng)過前面3步之后,在DSP硬件平臺進行IH算法的試驗.
4.1 DSP硬件平臺的搭建
1)CCD攝像頭:負責(zé)道路圖像的采集,把光學(xué)信號轉(zhuǎn)變成電子信號,以供后續(xù)處理.
2)TMSDM6437:通過TMSDM6437中的TVP5158視頻解碼芯片使得采集到的每幀圖像由模擬信號轉(zhuǎn)換成數(shù)字信號,數(shù)字信號儲存到TMSDM6437的外部DDR2.
3)個人計算機:在DSP/BIOS環(huán)境下由C語言編寫的程序?qū)隩MSDM6437中在集成開發(fā)環(huán)境CCS3.3下,主要完成系統(tǒng)的軟件開發(fā)和調(diào)試.
4)ICETEK:實現(xiàn)程序下載到芯片F(xiàn)lash中.
5)LCD顯示器:在長和寬分別為為720×480的顯示屏上實時顯示實驗結(jié)果.
4.2 實現(xiàn)過程
根據(jù)圖像空間x-y和參數(shù)空間D-α相互映射的關(guān)系,圖像空間x-y直線上的每個點都對應(yīng)一條曲線且相交于一點,直線 y=ax+b的極徑和極角分別由D和α映射到參數(shù)空間時,D-α直線上的每個點對應(yīng)一條曲線,這些曲線在D-α空間都交于一點,通過統(tǒng)計參數(shù)空間D-α整數(shù)點個數(shù)的統(tǒng)計,得出個數(shù)最多的點,即此點就是在路面上包含車道線直線的最佳位置,還需要去除最大值附近的次極大值,以消除檢測出的多余的直線對最佳直線的影響.包含車道線信息的圖像空間x-y與參數(shù)空間D-α之間滿足以下關(guān)系:
其中,D是直線到原點的法線距離,α是法線與X軸的夾角大小,(x, y)為圖像空間任一點P的坐標.
在操作過程中作出如下改進:
a) 以L*M個單元劃分參數(shù)空間,L、M是D、α的劃分刻度.對每一區(qū)域做累加,其值記為Acc(L, M),且其初始值為零.
b)根據(jù)式(2)以及α值得出D的值.
c) 根據(jù)計算出的D值和α,在D-α空間使相應(yīng)的Acc(L, M)= Acc(L, M)+1.
d) 反復(fù)執(zhí)行步驟b和c,計算完所有ROW內(nèi)的點,并且找到Acc(L,M)的最大值A(chǔ)cc_max,清除Acc_max附近與其接近的值 Acc_max所對應(yīng)的參數(shù)即為所求.
車道線以細長線條顯示,是在CCS程序編輯環(huán)境中編寫以下語句經(jīng)過在DSP嵌入式平臺上操作得到:
src[mi * 2]=10;src[mi * 2 + 1]=250;
其中,mi為操作變量,src為儲存像素值的數(shù)組,將圖像分為0~255共256個灰度級,上面的10,250的取值正在此范圍內(nèi),將YUV值中的亮度和色度兩個分量賦予不同的值,便可以在處理后的包含車道線的圖像上顯示不同的顏色.
經(jīng)過上述算法處理后得到的車道線識別結(jié)果圖像如圖5所示,其中在圖5(a)中,黑色區(qū)域為前面確定的工作區(qū)域ROW,可以明顯地看到,工作區(qū)域ROW內(nèi)的車道線經(jīng)過處理并且以不同的顏色顯示;而工作區(qū)域ROW外的車道線沒有經(jīng)過處理,還是以原樣顯示,這樣減少了嵌入式設(shè)備TMSDM6437處理的負擔(dān),提高了數(shù)據(jù)處理的效率,在實時性方面有一定的提高.經(jīng)過一定的優(yōu)化處理,可以得到如圖5(b)所顯示的車道線識別結(jié)果圖像.
5 結(jié)語
本文提出方法能較好地實現(xiàn)車道線識別,通過對實際道路的大量實驗驗證,結(jié)果表明:
1)通過實驗結(jié)果可知,該方法可以有效地抑制噪聲,并提取復(fù)雜工況下車道線內(nèi)側(cè)邊緣點.同時,相比于Otsu及Canny算子,該方法具有更好的車道線邊緣預(yù)提取效果.
2)通過實驗結(jié)果,可以發(fā)現(xiàn),本文方法能夠較好地提高車道線檢測的魯棒性、實時性及準確性.
但也存在著不足:1)由于道路環(huán)境較為復(fù)雜,本文未能夠建立更為精準和簡便的數(shù)學(xué)模型,來判斷車道線的類型與走向;2)在不同的路況下,特別是非結(jié)構(gòu)化道路情況下,如城市道路和鄉(xiāng)間道路上,針對彎道識別的問題,需要進行更深入的研究.
參考文獻
[1]謝一峰, 袁建軍,張偉軍. 車道線實時檢測的形態(tài)學(xué)算法及其DSP實現(xiàn)[J]. 機電一體化, 2013,19(3):26-29.
[2]王云建, 孫志海,張樺. 基于 DM6446 的車道線快速檢測算法[J]. 杭州電子科技大學(xué)學(xué)報, 2013,33(2):37-40.
[3]卞建勇, 徐建閩. 一種基于改進Hough變換的車道線檢測算法[J]. 微電子學(xué)與計算機, 2013,30(5):157-161.
[4]王寶鋒, 齊志權(quán), 馬國成,等. 基于線性逼近的車道線彎道識別方法[J]. 北京理工大學(xué)學(xué)報, 2016,36(5):470-474.
[5]DANESCU R, NEDEVSCHI S. Probabilistic lane tracking in difficult road scenarios using stereovision[J]. Intelligent Transportation Systems IEEE Transactions on, 2009, 10(2):272-282.
[6]SEO D, JO K. Inverse perspective mapping based road curvature estimation[C]// IEEE/SICE International Symposium on System Integration. IEEE, 2014.
[7]KIM H S , BEAK S H ,PAEK S Y.Parallel hough space image generation method for real-time lane detection[C]//International Conference on Advanced Concepts for Intelligent Vision Systems 2016: Advanced Concepts for Intelligent Vision Systems. 81-91.
[8]林桂潮, 鄒湘軍, 羅陸鋒,等.改進隨機樣本一致性算法的彎曲果園道路檢測[J]. 農(nóng)業(yè)工程學(xué)報, 2015(4):168-174.
[9]KANG D J, CHOI J W, KWEON I S. Finding and tracking toad lanes using “Line-snakes”[C]//Proceedings of IEEE on Intelligent Vehicles Symposium, Tokyo, 1996: 189-194.
[10]BOTTAZZI V S, BORGES P V K, JO J. A vision-based lane detection system combining appearance eegmentation and tracking of salient points[J]. 2013, 36(1):443-448.
[11]陳家哲,羅文廣,謝超藝,等.基于 DM6437圖像序列中的直線檢測[J].廣西科技大學(xué)學(xué)報,2014,25(3):44-48,54.
[12]李克騰.基于DM6446的車道線偏離預(yù)警系統(tǒng)的研究與實現(xiàn)[D].杭州:杭州電子科技大學(xué),2012.
[13]周磊, 任國全, 肖浩,等. 結(jié)構(gòu)化道路車道線快速檢測的一種改進算法[J].計算機仿真, 2012,29(4):362-365.
[14]曹月花,羅文廣.基于 DSP 的直線特征提取算法[J]. 廣西科技大學(xué)學(xué)報,2016,27(1):15-18,25.
Abstract: Given that the lane detection algorithm is time-consuming, in order to improve the real time and robustness of lane detection algorithm, the main innovatory work following has been done in this paper. The road image obtained by CCD is converted into digital signal from analog signal by video transcoding module TVP5158, and the working area is defined. Based on this, the gray level is improved, and the filtering operator is processed by the improved filtering operator. Then, the Sobel operator with low sensitivity to noise and more favorable edge display is used to segment the edge, which is beneficial to the subsequent processing. Then, on the DSP hardware platform, combined with the improved Hough algorithm, the accuracy of real-time detection and recognition improved, the processed image then was sent to the LCD display to display the final detection results.
Key words: lane detection; ROW (region of work); edge detection; improved Hough (IH)
(學(xué)科編輯:張玉鳳)