文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.004
中文引用格式: 趙午峰,喬瑞萍,,孫賀. 基于TMS320DM6437的車道線檢測與跟蹤[J].電子技術(shù)應(yīng)用,,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.
0 引言
高級駕駛輔助系統(tǒng)(ADAS)已成為當(dāng)前世界交通領(lǐng)域的研究熱點之一,,基于視覺的車道線檢測技術(shù)是高級駕駛輔助系統(tǒng)的重要部分,。
針對車道線檢測的實時性,本文在低成本高性能DSP處理器TMS320DM6437平臺上,,通過兩級Hough變換進(jìn)行車道線的檢測然后利用視頻幀與幀之間的相關(guān)性對車道線進(jìn)行跟蹤,。將算法移植后,根據(jù)DSP的特點,,對算法在數(shù)據(jù)處理,、算法結(jié)構(gòu)以及流程等方面再次進(jìn)行優(yōu)化。
1 硬件結(jié)構(gòu)
TMS320DM6437是TI公司的32位定點DSP達(dá)芬奇技術(shù)的處理器,,主頻最高可達(dá)700 MHz,,具有32 bit、256 MB尋址空間的DDR2存儲器接口和8 bit,、64 MB尋址空間的異步存儲器接口,, 片上集成了視頻處理子系統(tǒng)VPSS,支持汽車上用于電子設(shè)備通信的CAN總線,因此TMS320DM6437非常適合車載視頻設(shè)備的開發(fā)應(yīng)用[1],。系統(tǒng)所用板卡結(jié)構(gòu)圖如圖1所示,。
硬件系統(tǒng)主要組成部分有:視頻輸入模塊、外圍存儲模塊,、視頻輸出模塊,、通信接口和電源。
視頻輸入模塊:系統(tǒng)采用的是TVP5146視頻解碼芯片,,該芯片對CCD鏡頭采集來視頻信息進(jìn)行模數(shù)轉(zhuǎn)換以及編碼后送到TMS320DM6437進(jìn)行處理,。
外圍存儲模塊:系統(tǒng)外擴(kuò)了2 GB的DDR2,和128 KB的Flash,。
視頻輸出模塊:TMS320DM6437用4個輸出DAC來接口多種標(biāo)準(zhǔn)輸出,,通過編程,DAC的輸出支持復(fù)合視頻,,分量視頻或RGB視頻,。
通信接口:系統(tǒng)通過JTAG接口對程序進(jìn)行調(diào)試,預(yù)留了可以連接汽車OBD接口的CAN總線,。
2 算法設(shè)計
本文中車道線檢測與跟蹤算法的流程圖如圖2所示。
本文算法總流程共分為兩大部分:車道線檢測與車道線跟蹤,。
(1)車道線檢測
本文通過兩級Hough變換進(jìn)行車道線檢測,。
Step1.擴(kuò)大角度步長,進(jìn)行第一級Hough變換,。
Step2.利用Step1檢測結(jié)果,,約束范圍,進(jìn)行第二級Hough變換,,精確檢測車道線,。
(2)車道線跟蹤
利用視頻幀之間的相關(guān)性,以上一幀圖像車道線檢測結(jié)果為基礎(chǔ),,對參數(shù)進(jìn)行區(qū)間約束,,進(jìn)行Hough變換,便可以跟蹤檢測后續(xù)幀的車道線,。
2.1 兩級Hough變換檢測車道線
Hough變換[2,,4]是經(jīng)典的直線檢測模型,車道線的檢測問題,,經(jīng)過Hough變換,,變成了直線參數(shù)的求取過程。
Hough變換的基本原理可以用式(1)表示:
本文提出的兩級Hough變換檢測車道線的具體過程可以用仿真實驗中以下2步來說明:
第一級Hough變換:以10°為角度步長檢測車道線,。
第二級Hough變換:在第一級Hough變換檢測結(jié)果周圍以一定的區(qū)域作為約束區(qū)間,,進(jìn)行第二級Hough變換,得到精確的車道線參數(shù)。
兩級Hough變換的檢測結(jié)果如表1所示,。
一次基本Hough變換如式(1),,即為一次乘加運(yùn)算。Hough變換中計算量最大的部分為坐標(biāo)空間變換部分,,假設(shè)二值圖像中非零像素數(shù)為N,。
按照傳統(tǒng)Hough變換,則一幀圖像在坐標(biāo)空間變換部分計算量為:
不同步長下計算量如表2所示,。
計算量相比結(jié)果為該步長下計算量與傳統(tǒng)Hough變換計算量相比的結(jié)果,,從表中可以看出步長越大優(yōu)化效果越好。經(jīng)過大量實驗測試,,當(dāng)步長超過10°,,檢測準(zhǔn)確性將不能保證,所以將步長限定在10°以內(nèi),。
檢測結(jié)果示意圖如圖3所示,。
2.2 車道線跟蹤
車道線跟蹤是依據(jù)相鄰視頻幀之間的相關(guān)性更加快速地檢測車道線,下一幀圖像的車道線參數(shù)可以以上一幀圖像車道線參數(shù)為基礎(chǔ)限定范圍進(jìn)行得到約束區(qū)間,,在約束區(qū)間內(nèi)可以快速地檢測到車道線,。以三幀圖像為例:
(1)前一幀圖形的車道線參數(shù)為(ρ1,i-1,,θ1,,i-1)和(ρ2,i-1,,θ2,,i-1),對前一幀參數(shù)進(jìn)行約束就能夠得到目前幀的感興趣區(qū)域,。
(2)在感興趣區(qū)域進(jìn)行Hough變換得到目前幀的車道線參數(shù)(ρ1,,i,θ1,,i)和(ρ2,,i,θ2,,i),,得到當(dāng)前幀的參數(shù)之后可以確定下一幀圖像的感興趣區(qū)域;
(3)在下一幀圖像的感興趣區(qū)域內(nèi)進(jìn)行Hough變換得到車道線參數(shù),,重復(fù)(1)和(2),,便可得到視頻流的車道線跟蹤。
3 算法移植優(yōu)化
本文在算法移植階段使用的是CCS3.3集成開發(fā)環(huán)境,,以及DSP/BIOS操作系統(tǒng)和數(shù)字視頻軟件開發(fā)包DVSDK,,充分利用了TI提供的的Vlib和IMGLIB函數(shù)庫,。算法在TMS320DM6437平臺實現(xiàn)過程中,本文對算法進(jìn)行了優(yōu)化,,進(jìn)一步提高了運(yùn)算效率,。
(1)根據(jù)DSP特點進(jìn)行數(shù)據(jù)處理
TMS320C64x+DSP每個指令周期可以完成一次short*short運(yùn)算,但是一個int*int運(yùn)算需要5個指令周期,,所以數(shù)據(jù)盡量采用了short型進(jìn)行存儲,。而且因為像素數(shù)據(jù)大小在0~255之間,所以像素數(shù)據(jù)以及部分其他數(shù)據(jù)均可以使用short型存儲,。
DSP中整數(shù)乘除運(yùn)算指令的計算量遠(yuǎn)遠(yuǎn)超過邏輯移位指令的計算量,,所以算法中的乘除運(yùn)算,盡量使用移位運(yùn)算,。
(2)循環(huán)部分優(yōu)化,。盡量將循環(huán)展開,減少循環(huán)嵌套層數(shù),,并且減少循環(huán)內(nèi)部計算,。
(3)對于車道線的驗證部分,由每一行都進(jìn)行驗證,,縮減為隔行驗證,。
(4)將算法中的“與、或”條件語句展開,。
(5)對車道線驗證過程再次進(jìn)行優(yōu)化,。傳統(tǒng)算法的驗證過程為將像素坐標(biāo)以及車道線參數(shù)帶入Hough變換進(jìn)行驗證,本文提出利用像素之間的位置關(guān)系進(jìn)行驗證,,示意圖如圖4所示,。
假設(shè)圖像高度為h,,該車道線參數(shù)為(ρ0,,θ0),則對于第一行有:
所以對于待檢測像素(x,,y),,符合式(8):
(6)CCS3.3編譯選項中Opt Level優(yōu)化控制。Opt Level能夠控制優(yōu)化級別,,其中-o后面的數(shù)字代表優(yōu)化程度,,數(shù)字越高優(yōu)化越明顯,-o3為最高優(yōu)化程度,。
以上各個優(yōu)化過程對應(yīng)計算量如表3所示,。
4 結(jié)果及分析
4.1 算法仿真結(jié)果
本文在算法仿真階段中所用圖庫為加利福尼亞理工學(xué)院的Caltech Lanes dataset。該圖庫一共1 330張道路圖片,,分別為科爾多瓦和華盛頓兩個城市的道路圖片,。Caltech Lanes dataset樣圖如圖5所示,,對應(yīng)檢測結(jié)果圖片如圖6所示。
經(jīng)過實驗該方法正確率為79.8%,。出現(xiàn)檢測錯誤的圖片全部是不存在車道線或者車道線較遠(yuǎn)不可檢測的圖片,,示意圖如圖7所示。
從時間消耗來看,,經(jīng)過對不同尺寸的共計3 000幅圖片進(jìn)行測試,,運(yùn)用本文中算法與傳統(tǒng)Hough變換算法相比較,本文中算法時間消耗比傳統(tǒng)算法時間消耗少50%,。
4.2 系統(tǒng)測試結(jié)果
在室外搭建了實驗平臺對系統(tǒng)進(jìn)行測試,。經(jīng)過測試,系統(tǒng)對車道線檢測與跟蹤達(dá)到了實時性要求,,測試平臺每幀圖像大小為720×480,,最終檢測速度為一幀圖像33 ms,幀率可以達(dá)到30 幀/s,,并且可以在一定程度上克服行人等障礙物的影響,。DM6437平臺上結(jié)果截圖如圖8所示。
5 結(jié)論
針對車道線檢測的實時性要求,,本文在TMS320DM6437平臺上實現(xiàn)了車道線實時檢測與跟蹤,。本文通過兩級Hough變換進(jìn)行車道線的檢測,然后利用視頻幀與幀之間的相關(guān)性,,對車道線進(jìn)行跟蹤,。將算法移植到TMS320DM6437平臺上后,根據(jù)DSP特點,,對算法在結(jié)構(gòu)以及流程等方面再次進(jìn)行優(yōu)化,。該方法減少了車道線檢測與跟蹤的計算量,提高了算法效率,,達(dá)到了車道線檢測的實時性要求,,并且保證了檢測結(jié)果的正確性。本文車道線檢測與跟蹤可以應(yīng)用在車輛防碰撞預(yù)警,,車輛檢測以及自動駕駛等系統(tǒng)中,,對ADAS有很高的應(yīng)用價值。
參考文獻(xiàn)
[1] 周猛,,喬瑞萍,,王效鵬,等.基于DaVinciTM的360°全景泊車影像系統(tǒng)的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,,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)濾波的車道線檢測技術(shù)[J].公路,2015(11):22-25.
[4] 段建民,,劉冠宇,,鄭榜貴.基于整體最優(yōu)閾值的車道線快速識別方法[J].北京工業(yè)大學(xué)學(xué)報,2015,,41(1):42-47.
作者信息:
趙午峰,,喬瑞萍,孫 賀
(西安交通大學(xué) 電子與信息工程學(xué)院,,陜西 西安710049)