黃雨濤, 鄭景南, 何演權(quán), 謝秀齊
(廣東理工學(xué)院, 廣東 肇慶 430063)
司機(jī)通過限高橫梁時常常因為對車輛車身高度預(yù)估錯誤,導(dǎo)致車頂部撞擊橫梁或立交橋底;車輛以較快的速度在通過較窄路段或限寬墩時,因為通過角度或司機(jī)操作失誤,導(dǎo)致車輛剮蹭或卡住車輛;駕駛過程中的司機(jī)注意力不夠集中,忽略前方道路的凹陷或突起等,可能導(dǎo)致行駛的汽車側(cè)翻或爆胎等。為了解決上述問題,本文設(shè)計了一種基于Kinect 的障礙物識別和危險警報功能的主動式車載路面障礙檢測系統(tǒng),來輔助司機(jī)觀測前方障礙物。
為了達(dá)到上述目的,本文設(shè)計了一款識別路面障礙、判定物體危險程度的輔助駕駛系統(tǒng),它包括固定架、獨(dú)立計算機(jī)Jstson TX2 模塊、kinect DK 傳感器。使用螺紋固定架或者槽位固定架即可方便地固定在車輛上,設(shè)備如圖1 所示。該設(shè)備包含3 個功能模塊,分別為圖像檢測模塊、圖像識別模塊、數(shù)據(jù)提取模塊[1-2]。
圖1 主動式車載路面障礙檢測設(shè)備圖
三維圖像采集設(shè)備采用了Kinect DK,相比于普通攝像產(chǎn)品,Kinect DK 內(nèi)置了100 萬像素的TOP 深度相機(jī),能夠在復(fù)雜多變的路面條件下,識別相關(guān)可能威脅行駛車輛及駕駛?cè)?、乘客等物體。另外Kinect DK 鏡頭包含3 種不同攝像模式,即普通高清鏡頭、紅外線鏡頭、深度鏡頭??梢詫⑽矬w的不同類型數(shù)據(jù)分門別類,有序針對計算,加快整體處理數(shù)據(jù)速度。
檢測系統(tǒng)實時地對Kinect DK 采集到的彩色圖像和三維點云數(shù)據(jù)進(jìn)行處理,其計算量非常大,需要高性能的計算設(shè)備進(jìn)行分析,同時系統(tǒng)的復(fù)雜性不能太高,設(shè)備價格盡量降低。為此,設(shè)備采用了全功能NVIDIA CUDA 平臺開發(fā)組件的Jetson TX2,該設(shè)備可以快速開發(fā)和部署用于計算機(jī)視覺、機(jī)器人學(xué)以及醫(yī)學(xué)等領(lǐng)域的計算密集型系統(tǒng)。NVIDIA 提供了BSP 和軟件包,其中包括CUDA、OpenGL 4.4 以及NVIDIA VisionWorks,可以憑借全套的開發(fā)和動態(tài)分析工具以及對攝像頭和其他外設(shè)進(jìn)行開發(fā),其擴(kuò)展端口用于額外的顯示器、通用IO 以及高帶寬攝像頭接口等,具有多種標(biāo)準(zhǔn)的硬件接口,使其易于集成到廣泛的產(chǎn)品形式中去。經(jīng)檢測,Jetson TX2 能夠完成對Kinect DK 采集到的彩色圖像和三維點云數(shù)據(jù)進(jìn)行處理,且價格低廉、安裝簡單。
系統(tǒng)需要實時對路面上的障礙物進(jìn)行識別,識別目標(biāo)的外形尺寸(長、寬、高)參數(shù)。首先,采用像素點二值性對目標(biāo)的外圍輪廓線進(jìn)行提取,采用輪廓近似方法實現(xiàn)。其次,在完成對深度圖像的輪廓提取后,利用外邊矩形框選圖形的輪廓,并對矩形框的大小進(jìn)行分析,作為障礙物識別的依據(jù)。
系統(tǒng)總體流程如下:攝像機(jī)設(shè)備會通過Kinect DK 相機(jī)采集物體的點云數(shù)據(jù)、邊緣及特定區(qū)域。在處理數(shù)據(jù)后架構(gòu)相應(yīng)的邊緣模型,并對自身車輛信息進(jìn)行對比,在發(fā)生碰撞的情況下提前對駕駛者等人發(fā)出警報。系統(tǒng)工作流程如圖2 所示。
圖2 系統(tǒng)流程圖
在車輛駕駛室或車頭前方裝備設(shè)備,當(dāng)前方道路出現(xiàn)其他物體進(jìn)入設(shè)備的檢測范圍時,Kinect DK 通過高清鏡頭、紅外鏡頭及深度相機(jī)鏡頭對物體進(jìn)行拍攝,并將拍攝的高清圖像和三維點云數(shù)據(jù)進(jìn)行預(yù)處理。
對上述獲取的三維點云數(shù)據(jù)進(jìn)行實時分析,將設(shè)備目標(biāo)下方長度坐標(biāo)軸及寬度坐標(biāo)軸的點云擬合得出路面平面圖,得到車輛前方道路的長度和寬度。
將步驟1 獲取到的三維點云數(shù)據(jù)及步驟2 擬合的地面平面方程,結(jié)合Kinect 掃描目標(biāo)物體,對目標(biāo)物體進(jìn)行點云聚類,在進(jìn)行去噪和點云拼接后,獲取物體輪廓點云圖。
對步驟3 的障礙物輪廓點云數(shù)據(jù)進(jìn)行分析,判斷障礙物大小、高度。一旦威脅到行車安全即發(fā)出警告。提醒司機(jī)注意,并通過三維圖的方式告知障礙物的位置和威脅程度。
實驗車輛行駛時,通過Kinect DK 不斷收集路面信息,獲取正常路面的水平高度數(shù)據(jù)。當(dāng)障礙物進(jìn)入Kinect DK 視野時,設(shè)備偵測障礙物并根據(jù)障礙物高于水平路面的特點進(jìn)行三維取樣,如圖3 所示,在實驗車輛前方路段放置圓柱形障礙物后,Kinect DK 第一時間判斷出前方障礙物高于正常路面水平,并對障礙物進(jìn)行圖像分割。
圖3 障礙物示意圖
對提取的障礙物點云數(shù)據(jù)進(jìn)行三維坐標(biāo)映射,在對點云數(shù)據(jù)使用部分重點采樣后,由障礙物一般處于水平地面,當(dāng)障礙物y 坐標(biāo)值取最小時,可分割道路與障礙物。
將物體三維數(shù)據(jù)輸入至算法部分,假定障礙物的長、寬、高(x1、y1及 h1)任一數(shù)值超出限定威脅數(shù)值(假定 x0、y0及 h0),便會發(fā)出預(yù)警[3-4]。
本文將采樣Kinect DK 和Jstson TX2 對復(fù)雜多變的交通道路情況進(jìn)行實時監(jiān)測分析,結(jié)合圖像分割和物體邊緣提取算法,設(shè)計了一款帶物體識別和危險警報功能的主動式車載路面障礙檢測系統(tǒng)。該系統(tǒng)可以不斷辨別道路上障礙物,判斷物體是否會對駕駛者帶來威脅,在危險發(fā)生前提前發(fā)出警報,提高車輛在道路中的行駛安全性。