《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于TMS320DM6437的車道線檢測與跟蹤
基于TMS320DM6437的車道線檢測與跟蹤
2017年電子技術應用第4期
趙午峰,喬瑞萍,孫 賀
西安交通大學 電子與信息工程學院,陜西 西安710049
摘要: 在TMS320DM6437平臺上實現(xiàn)了車道線的實時檢測與跟蹤。通過兩級Hough變換實現(xiàn)了車道線實時檢測,利用視頻幀與幀之間的相關性對車道線進行跟蹤。在算法移植到TMS320DM6437平臺過程中,利用DSP特點,對算法在結構以及流程等方面再次進行優(yōu)化進行進一步優(yōu)化。經(jīng)過實驗測試,該系統(tǒng)實現(xiàn)了車道線實時檢測與跟蹤。
中圖分類號: TP391;U463.6
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.004
中文引用格式: 趙午峰,喬瑞萍,孫賀. 基于TMS320DM6437的車道線檢測與跟蹤[J].電子技術應用,2017,43(4):17-20.
英文引用格式: Zhao Wufeng,Qiao Ruiping,Sun He. Lane detection and tracking on TMS320DM6437[J].Application of Electronic Technique,2017,43(4):17-20.
Lane detection and tracking on TMS320DM6437
Zhao Wufeng,Qiao Ruiping,Sun He
School of Electronic and Information Engineering,Xi′an Jiaotong University,Xi′an 710049,China
Abstract: Real-time lane detection and tracing is achieved on TMS320DM6437 platform. Lane detection is achieved with the method of two-stage Hough transform, and the correlation of frams is used to trace lane. After the algorithm is transplanted, the algorithm will be optimized further based on the character of DSP. Experimental results show that the system achieved real-time lane detection and tracing and it has some noise immunity.
Key words : TMS320DM6437;lane detection and tracing;two-stage Hough transform;algorithm optimization

0 引言

    高級駕駛輔助系統(tǒng)(ADAS)已成為當前世界交通領域的研究熱點之一,基于視覺的車道線檢測技術是高級駕駛輔助系統(tǒng)的重要部分。

    針對車道線檢測的實時性,本文在低成本高性能DSP處理器TMS320DM6437平臺上,通過兩級Hough變換進行車道線的檢測然后利用視頻幀與幀之間的相關性對車道線進行跟蹤。將算法移植后,根據(jù)DSP的特點,對算法在數(shù)據(jù)處理、算法結構以及流程等方面再次進行優(yōu)化。

1 硬件結構

    TMS320DM6437是TI公司的32位定點DSP達芬奇技術的處理器,主頻最高可達700 MHz,具有32 bit、256 MB尋址空間的DDR2存儲器接口和8 bit、64 MB尋址空間的異步存儲器接口, 片上集成了視頻處理子系統(tǒng)VPSS,支持汽車上用于電子設備通信的CAN總線,因此TMS320DM6437非常適合車載視頻設備的開發(fā)應用[1]。系統(tǒng)所用板卡結構圖如圖1所示。

adas4-t1.gif

    硬件系統(tǒng)主要組成部分有:視頻輸入模塊、外圍存儲模塊、視頻輸出模塊、通信接口和電源。

    視頻輸入模塊:系統(tǒng)采用的是TVP5146視頻解碼芯片,該芯片對CCD鏡頭采集來視頻信息進行模數(shù)轉換以及編碼后送到TMS320DM6437進行處理。

    外圍存儲模塊:系統(tǒng)外擴了2 GB的DDR2,和128 KB的Flash。

    視頻輸出模塊:TMS320DM6437用4個輸出DAC來接口多種標準輸出,通過編程,DAC的輸出支持復合視頻,分量視頻或RGB視頻。

    通信接口:系統(tǒng)通過JTAG接口對程序進行調(diào)試,預留了可以連接汽車OBD接口的CAN總線。

2 算法設計

    本文中車道線檢測與跟蹤算法的流程圖如圖2所示。

adas4-t2.gif

    本文算法總流程共分為兩大部分:車道線檢測與車道線跟蹤。

    (1)車道線檢測

    本文通過兩級Hough變換進行車道線檢測。

    Step1.擴大角度步長,進行第一級Hough變換。

    Step2.利用Step1檢測結果,約束范圍,進行第二級Hough變換,精確檢測車道線。

    (2)車道線跟蹤

    利用視頻幀之間的相關性,以上一幀圖像車道線檢測結果為基礎,對參數(shù)進行區(qū)間約束,進行Hough變換,便可以跟蹤檢測后續(xù)幀的車道線。

2.1 兩級Hough變換檢測車道線

    Hough變換[2,4]是經(jīng)典的直線檢測模型,車道線的檢測問題,經(jīng)過Hough變換,變成了直線參數(shù)的求取過程。

    Hough變換的基本原理可以用式(1)表示:

adas4-gs1-2.gif

    本文提出的兩級Hough變換檢測車道線的具體過程可以用仿真實驗中以下2步來說明:

    第一級Hough變換:以10°為角度步長檢測車道線。

    第二級Hough變換:在第一級Hough變換檢測結果周圍以一定的區(qū)域作為約束區(qū)間,進行第二級Hough變換,得到精確的車道線參數(shù)。

    兩級Hough變換的檢測結果如表1所示。

adas4-b1.gif

    一次基本Hough變換如式(1),即為一次乘加運算。Hough變換中計算量最大的部分為坐標空間變換部分,假設二值圖像中非零像素數(shù)為N。

    按照傳統(tǒng)Hough變換,則一幀圖像在坐標空間變換部分計算量為:

adas4-gs3-4.gif

    不同步長下計算量如表2所示。

adas4-b2.gif

    計算量相比結果為該步長下計算量與傳統(tǒng)Hough變換計算量相比的結果,從表中可以看出步長越大優(yōu)化效果越好。經(jīng)過大量實驗測試,當步長超過10°,檢測準確性將不能保證,所以將步長限定在10°以內(nèi)。

    檢測結果示意圖如圖3所示。

adas4-t3.gif

2.2 車道線跟蹤

    車道線跟蹤是依據(jù)相鄰視頻幀之間的相關性更加快速地檢測車道線,下一幀圖像的車道線參數(shù)可以以上一幀圖像車道線參數(shù)為基礎限定范圍進行得到約束區(qū)間,在約束區(qū)間內(nèi)可以快速地檢測到車道線。以三幀圖像為例:

    (1)前一幀圖形的車道線參數(shù)為(ρ1,i-1,θ1,i-1)和(ρ2,i-1,θ2,i-1),對前一幀參數(shù)進行約束就能夠得到目前幀的感興趣區(qū)域。

    (2)在感興趣區(qū)域進行Hough變換得到目前幀的車道線參數(shù)(ρ1,i,θ1,i)和(ρ2,i,θ2,i),得到當前幀的參數(shù)之后可以確定下一幀圖像的感興趣區(qū)域;

    (3)在下一幀圖像的感興趣區(qū)域內(nèi)進行Hough變換得到車道線參數(shù),重復(1)和(2),便可得到視頻流的車道線跟蹤。

3 算法移植優(yōu)化

    本文在算法移植階段使用的是CCS3.3集成開發(fā)環(huán)境,以及DSP/BIOS操作系統(tǒng)和數(shù)字視頻軟件開發(fā)包DVSDK,充分利用了TI提供的的Vlib和IMGLIB函數(shù)庫。算法在TMS320DM6437平臺實現(xiàn)過程中,本文對算法進行了優(yōu)化,進一步提高了運算效率。

    (1)根據(jù)DSP特點進行數(shù)據(jù)處理

    TMS320C64x+DSP每個指令周期可以完成一次short*short運算,但是一個int*int運算需要5個指令周期,所以數(shù)據(jù)盡量采用了short型進行存儲。而且因為像素數(shù)據(jù)大小在0~255之間,所以像素數(shù)據(jù)以及部分其他數(shù)據(jù)均可以使用short型存儲。

    DSP中整數(shù)乘除運算指令的計算量遠遠超過邏輯移位指令的計算量,所以算法中的乘除運算,盡量使用移位運算。

    (2)循環(huán)部分優(yōu)化。盡量將循環(huán)展開,減少循環(huán)嵌套層數(shù),并且減少循環(huán)內(nèi)部計算。

    (3)對于車道線的驗證部分,由每一行都進行驗證,縮減為隔行驗證。

    (4)將算法中的“與、或”條件語句展開。

    (5)對車道線驗證過程再次進行優(yōu)化。傳統(tǒng)算法的驗證過程為將像素坐標以及車道線參數(shù)帶入Hough變換進行驗證,本文提出利用像素之間的位置關系進行驗證,示意圖如圖4所示。

adas4-t4.gif

    假設圖像高度為h,該車道線參數(shù)為(ρ0,θ0),則對于第一行有:

     adas4-gs5-7.gif

    所以對于待檢測像素(x,y),符合式(8):

adas4-gs8-9.gif

    (6)CCS3.3編譯選項中Opt Level優(yōu)化控制。Opt Level能夠控制優(yōu)化級別,其中-o后面的數(shù)字代表優(yōu)化程度,數(shù)字越高優(yōu)化越明顯,-o3為最高優(yōu)化程度。

    以上各個優(yōu)化過程對應計算量如表3所示。

adas4-b3.gif

4 結果及分析

4.1 算法仿真結果

    本文在算法仿真階段中所用圖庫為加利福尼亞理工學院的Caltech Lanes dataset。該圖庫一共1 330張道路圖片,分別為科爾多瓦和華盛頓兩個城市的道路圖片。Caltech Lanes dataset樣圖如圖5所示,對應檢測結果圖片如圖6所示。

adas4-t5.gif

adas4-t6.gif

    經(jīng)過實驗該方法正確率為79.8%。出現(xiàn)檢測錯誤的圖片全部是不存在車道線或者車道線較遠不可檢測的圖片,示意圖如圖7所示。

adas4-t7.gif

    從時間消耗來看,經(jīng)過對不同尺寸的共計3 000幅圖片進行測試,運用本文中算法與傳統(tǒng)Hough變換算法相比較,本文中算法時間消耗比傳統(tǒng)算法時間消耗少50%。

4.2 系統(tǒng)測試結果

    在室外搭建了實驗平臺對系統(tǒng)進行測試。經(jīng)過測試,系統(tǒng)對車道線檢測與跟蹤達到了實時性要求,測試平臺每幀圖像大小為720×480,最終檢測速度為一幀圖像33 ms,幀率可以達到30 幀/s,并且可以在一定程度上克服行人等障礙物的影響。DM6437平臺上結果截圖如圖8所示。

adas4-t8.gif

5 結論

    針對車道線檢測的實時性要求,本文在TMS320DM6437平臺上實現(xiàn)了車道線實時檢測與跟蹤。本文通過兩級Hough變換進行車道線的檢測,然后利用視頻幀與幀之間的相關性,對車道線進行跟蹤。將算法移植到TMS320DM6437平臺上后,根據(jù)DSP特點,對算法在結構以及流程等方面再次進行優(yōu)化。該方法減少了車道線檢測與跟蹤的計算量,提高了算法效率,達到了車道線檢測的實時性要求,并且保證了檢測結果的正確性。本文車道線檢測與跟蹤可以應用在車輛防碰撞預警,車輛檢測以及自動駕駛等系統(tǒng)中,對ADAS有很高的應用價值。

參考文獻

[1] 周猛,喬瑞萍,王效鵬,等.基于DaVinciTM的360°全景泊車影像系統(tǒng)的設計與實現(xiàn)[J].電子技術應用,2014,40(10):20-22,26.

[2] LI X,WU Q X,KOU Y,et al.Lane detection based on spiking neural network and hough transform[C]//2015 8th International Congress on Image and Signal Processing(CISP),Shenyang,China,2015:626-630.

[3] 申長安,段新濤,焦曉君,等.基于同態(tài)濾波的車道線檢測技術[J].公路,2015(11):22-25.

[4] 段建民,劉冠宇,鄭榜貴.基于整體最優(yōu)閾值的車道線快速識別方法[J].北京工業(yè)大學學報,2015,41(1):42-47.



作者信息:

趙午峰,喬瑞萍,孫  賀

(西安交通大學 電子與信息工程學院,陜西 西安710049)

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