《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于單目視覺(jué)的智能車輛視覺(jué)導(dǎo)航系統(tǒng)設(shè)計(jì)
基于單目視覺(jué)的智能車輛視覺(jué)導(dǎo)航系統(tǒng)設(shè)計(jì)
中電網(wǎng)
摘要: 本文設(shè)計(jì)了一種精度高,穩(wěn)定性好的基于單目視覺(jué)的車載追尾預(yù)警系統(tǒng),。它利用一種新的邊緣檢測(cè)算法識(shí)別前方道路,然后利用陰影檢測(cè)與跟蹤相結(jié)合的方法識(shí)別前方車輛,,接下來(lái)根據(jù)前后車距判斷其威脅等級(jí),,最終向駕駛員提供相應(yīng)的聲光報(bào)警信號(hào)。
Abstract:
Key words :

0 引言

基于計(jì)算機(jī)視覺(jué)的高速公路防撞系統(tǒng)是當(dāng)前智能交通管理系統(tǒng)研究的熱點(diǎn)之一,。如何在多變的環(huán)境下快速準(zhǔn)確地從視頻圖像里檢測(cè)到車道和前方車輛是實(shí)現(xiàn)這類系統(tǒng)面臨的最關(guān)鍵問(wèn)題,。近20年來(lái),國(guó)內(nèi)外很多研究人員對(duì)這個(gè)問(wèn)題進(jìn)行了大量研究,,提出了多種多樣的實(shí)用算法并成功開(kāi)發(fā)了一些視覺(jué)系統(tǒng),。這些系統(tǒng)所采用的算法基本上可以分為基于雙目視覺(jué)的方法、基于運(yùn)動(dòng)的方法,、基于外形的方法和基于知識(shí)的方法,。基于雙目立體視覺(jué)的方法計(jì)算量大,,需要特殊硬件支持,;基于運(yùn)動(dòng)的方法,無(wú)法檢測(cè)靜止目標(biāo)且實(shí)時(shí)性差,;基于外形的方法,,因建立有效的培訓(xùn)樣本仍然是需要研究的問(wèn)題;基于知識(shí)的方法,,在障礙物數(shù)量較少時(shí)效率較高,,但復(fù)雜環(huán)境下錯(cuò)誤率有所增加。

針對(duì)常規(guī)算法的不足,,本文設(shè)計(jì)了一種精度高,,穩(wěn)定性好的基于單目視覺(jué)的車載追尾預(yù)警系統(tǒng)。它利用一種新的邊緣檢測(cè)算法識(shí)別前方道路,,然后利用陰影檢測(cè)與跟蹤相結(jié)合的方法識(shí)別前方車輛,,接下來(lái)根據(jù)前后車距判斷其威脅等級(jí),最終向駕駛員提供相應(yīng)的聲光報(bào)警信號(hào),。

1 系統(tǒng)工作原理

系統(tǒng)硬件部分包括MCC-4060型CCD攝像機(jī),、VT-121視頻采集卡、GPS,、PC-104工控機(jī)和顯示終端,。GPS通過(guò)串口向工控機(jī)發(fā)送本車車速信息,安裝在車內(nèi)擋風(fēng)玻璃后的CCD攝像機(jī)將圖像幀通過(guò)視頻采集卡送入工控機(jī),,經(jīng)過(guò)軟件的處理分析后,,在顯示終端上標(biāo)注出前車障礙物和道路標(biāo)線,同時(shí)根據(jù)車速、間距等判斷危險(xiǎn)等級(jí),,發(fā)出相應(yīng)的聲光報(bào)警信號(hào),;

系統(tǒng)的軟件部分包括道路檢測(cè)、道路跟蹤,、車輛檢測(cè),、車輛跟蹤、測(cè)距,、決策和報(bào)警等模塊,。當(dāng)車速達(dá)到60km/h時(shí),系統(tǒng)開(kāi)始處理實(shí)時(shí)采集到的圖像序列,。對(duì)于每一幀圖像,,首先檢測(cè)并跟蹤圖像中的車道白線,然后在車道確定的感興趣區(qū)域內(nèi)檢測(cè)車輛,。如果存在疑似障礙車輛,,則啟動(dòng)車輛跟蹤,利用跟蹤信息進(jìn)一步排除虛警,。在實(shí)現(xiàn)對(duì)障礙車輛穩(wěn)定跟蹤后,,估算出兩車間距和相對(duì)運(yùn)動(dòng)速度,判定其威脅等級(jí),,并發(fā)出相應(yīng)的報(bào)警信號(hào),。

2 系統(tǒng)關(guān)鍵技術(shù)

2.1 道路檢測(cè)

目前,車道線檢測(cè)算法主要適用于光照充足的環(huán)境下,。由于車道線與路面之間對(duì)比度大,,因此很容易利用各種常規(guī)邊緣檢測(cè)算子獲得清晰的車道輪廓信息,然后選取合適的閾值對(duì)圖像進(jìn)行二值化處理,,最后采用Hough變換識(shí)別車道線,。然而在復(fù)雜光照環(huán)境下,圖像會(huì)受到各種光線直射和物體多次反射形成雜散光的干擾,,圖像光強(qiáng)不能反映車道本身突變性質(zhì),,導(dǎo)致無(wú)法正確檢測(cè)出車道。

本系統(tǒng)采用了一種利用光密度差得到車道標(biāo)線與路面反射率差,,進(jìn)而進(jìn)行非線性邊緣檢測(cè),,再進(jìn)行Hough變換的車道檢測(cè)算法。此算法可以有效解決在復(fù)雜光照條件下的車道檢測(cè),,也可以用于夜間的車道檢測(cè),。

另外,目前車道線的跟蹤研究主要采用固定區(qū)域法或者Kalman濾波法,,根據(jù)前一幀車道線檢測(cè)的結(jié)果來(lái)劃分感興趣區(qū)域,,以實(shí)時(shí)跟蹤車道線,。然而,固定區(qū)域法對(duì)2幀圖像的相關(guān)性依賴大,,劃分感興趣區(qū)域大,,實(shí)時(shí)性差;而Kalman濾波法劃分感興趣區(qū)域小,,容易產(chǎn)生檢測(cè)誤差,,而造成跟蹤誤差累積,跟蹤正確率不高,。因此,本系統(tǒng)在跟蹤車道線時(shí)采用了一種融合固定區(qū)域法和KaIman濾波法劃分感興趣區(qū)域的新方法,。

一般來(lái)說(shuō),,只將車道邊界線交點(diǎn)(即滅點(diǎn))以下、2車道線之間的區(qū)域作為感興趣區(qū)域,,考慮到跨道行駛的車輛依然對(duì)本車有威脅,,算法把兩車道線分別向兩側(cè)平移40個(gè)像素,使感興趣區(qū)域擴(kuò)展到可以覆蓋跨道車輛的范圍,。

2.2 車輛檢測(cè)

圖像中包含車輛前方很大視野內(nèi)的物體,,如道路、樹(shù)木,、護(hù)欄,、標(biāo)牌以及其他車輛,要從中準(zhǔn)確檢測(cè)出前方車輛是一項(xiàng)困難的工作,,而本文的車輛檢測(cè)模塊會(huì)根據(jù)圖像背景自動(dòng)改變?cè)O(shè)置參數(shù),,以適應(yīng)不斷變化的道路場(chǎng)景和光照條件。

要實(shí)現(xiàn)車輛的快速檢測(cè),,首先需要根據(jù)車輛的基本特征進(jìn)行初步檢測(cè),,將所有可能的疑似車輛區(qū)域從圖像中提取出來(lái),然后再根據(jù)其他特征對(duì)疑似區(qū)域進(jìn)行篩選排除,。

2.2.1 車輛初步檢測(cè)

初步檢測(cè)采用的特征是車輛陰影,,即一塊位于目標(biāo)車輛底部、灰度值明顯比附近路面區(qū)域低的區(qū)域,。在一般環(huán)境條件下,,大部分車輛都具有這一顯著特征。

車輛初步檢測(cè)的流程如圖1所示,。車輛陰影和車道一樣具有灰度突變的特點(diǎn),,因此可以調(diào)用車道檢測(cè)算法對(duì)圖2(a)中的原始圖像做二值化處理,得到圖2(b)中的邊緣二值化圖像,。同時(shí)還要對(duì)原始圖像進(jìn)行灰度二值化,,得到圖2(c)中的灰度二值化圖像。為提高檢測(cè)實(shí)時(shí)性,以本車附近路面區(qū)域的平均灰度作為二值化閾值,。由于邊緣二值化圖像和灰度二值化圖像都包括了車輛的下底邊,,將這兩幅圖像進(jìn)行“或”運(yùn)算,就可以得到如圖2(d)所示的車輛陰影圖像,。

在陰影圖像中由下至上逐行搜索,,尋找連續(xù)陰影點(diǎn)超過(guò)一定閾值的線段,并以此線段為底邊劃出一個(gè)矩形區(qū)域作為疑似車輛區(qū)域,。為保證疑似區(qū)域包含車輛整體,,矩形的寬度比線段稍寬,高度由寬度按比例給出,。為避免重復(fù)搜索,,將已搜索到的疑似區(qū)域內(nèi)陰影完全抹去。由于同一車輛的各個(gè)部分可能分別被檢測(cè)為疑似目標(biāo),,因此還需要對(duì)各個(gè)相交的疑似區(qū)域進(jìn)行合并,。由于前方車輛的遮擋,可能會(huì)將多個(gè)目標(biāo)認(rèn)定為一個(gè)目標(biāo),,但是對(duì)本車的安全無(wú)影響,。

2.2.2 篩選驗(yàn)證

如果單純采用陰影特征進(jìn)行車輛檢測(cè),在保證較低“漏警”率的同時(shí),,也造成了較高的“虛警”率,,因此還需要對(duì)疑似區(qū)域進(jìn)行篩選和驗(yàn)證。

對(duì)于結(jié)構(gòu)化道路,,車輛寬度與車道寬度的比值應(yīng)該是大致固定的,,那么當(dāng)攝像機(jī)的焦距、俯仰角等參數(shù)固定后,,圖像上車道寬度(像素?cái)?shù))與車輛寬度(像素?cái)?shù))也滿足這個(gè)比例,。根據(jù)之前檢測(cè)的車道方程,就可以計(jì)算出感興趣區(qū)域內(nèi)任意縱坐標(biāo)上車輛圖像寬度的范圍,,并剔除寬度不在此范圍內(nèi)的疑似區(qū)域,。

在以往的車輛驗(yàn)證方法中,最常用的是對(duì)稱性測(cè)度驗(yàn)證,。這種算法的計(jì)算量較大,,且對(duì)于背景復(fù)雜,對(duì)稱度差圖像的驗(yàn)證效果不盡人意,。為了解決這個(gè)問(wèn)題,,該系統(tǒng)采用了一種基于邊緣二值化圖像,通過(guò)搜索車輛左右邊緣進(jìn)行驗(yàn)證的算法,。

假設(shè)疑似區(qū)域的寬度為W,,區(qū)域左邊緣的坐標(biāo)為(X1,,Y1),右邊緣的水平坐標(biāo)為(X2,,Y2),。定義函數(shù):

式中:f(x,y)為(x,,y)點(diǎn)的灰度值,。在區(qū)間(X1-W/4,X1+W/4)內(nèi)搜索g(u)的最大值點(diǎn),,該點(diǎn)對(duì)應(yīng)的水平坐標(biāo)X1’就是車輛的左邊緣坐標(biāo),。同理也可以搜索到車輛的右邊緣X2’。如果左右邊緣的g(u)值均大于某閾值,,那么就可以認(rèn)定該車輛確實(shí)存在,。實(shí)驗(yàn)證明,該算法能排除掉大量的“虛警”區(qū)域并得到真實(shí)車輛的兩側(cè)邊緣,。

2.3 車輛跟蹤

現(xiàn)關(guān)心的是前方車輛與本車相對(duì)的二維位置和速度,因此只需要使用卡爾曼濾波器預(yù)測(cè)橫坐標(biāo)x,、橫向速度Vx,、縱坐標(biāo)y、縱向坐標(biāo)Vy這四個(gè)狀態(tài)向量,。此外由于x方向和y方向的狀態(tài)向量沒(méi)有直接聯(lián)系,,所以可以將其分為兩組分別處理。

在車輛行駛過(guò)程中,,由于顛簸或遮擋等原因,,系統(tǒng)可能會(huì)將路牌、灌木叢等物體誤認(rèn)為是車輛檢測(cè)出來(lái),,產(chǎn)生虛警,。而這些虛警物體往往只能在連續(xù)數(shù)幀圖像中存在。如果不采取措施,,系統(tǒng)就會(huì)時(shí)常產(chǎn)生短促的報(bào)警,。
當(dāng)圖像采樣間隔足夠短時(shí),相鄰幀內(nèi)同一車輛的位置會(huì)具有很大的相關(guān)性,。

系統(tǒng)采用檢測(cè)與跟蹤相結(jié)合的方法,,根據(jù)第n幀圖像獲得的信息,預(yù)測(cè)車輛在第n+1幀圖像中的位置等信息,,并與n+1幀圖像中實(shí)際檢測(cè)到的結(jié)果進(jìn)行比對(duì),。如果二者匹配度最大且超出一定值,則認(rèn)定為同一車輛,,繼續(xù)進(jìn)行跟蹤,、報(bào)警,,否則認(rèn)為此車已被遮擋或消失,暫時(shí)不做處理,,數(shù)幀后被剔除出去,。

2.4 測(cè)距報(bào)警

車間測(cè)距通常采用幾何投影模型,采用了一種簡(jiǎn)化的車距模型公式L×W=C,,其中L為兩車間距,,單位為m;W為圖像上目標(biāo)車輛處車道寬度,,單位為pixel,;C為常數(shù),可通過(guò)事先的標(biāo)定獲得,。然而兩車間安全車距S采用文獻(xiàn)推導(dǎo)的臨界安全車距公式動(dòng)態(tài)得到,。

式中:Vr為相對(duì)車速,由對(duì)測(cè)出車距求導(dǎo)得到相對(duì)車速后進(jìn)行卡爾曼濾波得到,;Vb為本車車速,,由GPS得到。
如果告警頻率過(guò)高,,容易使駕駛員麻痹大意,,過(guò)低可能使駕駛員來(lái)不及做出反應(yīng),因此該系統(tǒng)采用由遠(yuǎn)至近的三段報(bào)警,。

若車距d≥1.5S,,判定為3級(jí)威脅,發(fā)出長(zhǎng)而緩的報(bào)警聲,,提醒駕駛員前方有障礙物,,但暫無(wú)危險(xiǎn);若車距S≤d≤1.5S,,判定為2級(jí)威脅,,發(fā)出較急促的報(bào)警聲,提醒駕駛員減速,;若車距d≤S,,判定為1級(jí)威脅,發(fā)出短而急的報(bào)警聲,,提醒駕駛員制動(dòng),;3種狀態(tài)下的告警聲差異很大,駕駛員可以很容易地根據(jù)報(bào)警聲判斷威脅等級(jí),。

3 試驗(yàn)結(jié)果

系統(tǒng)框架及所有算法在Boiland C++ Builder 6環(huán)境下編譯完成,。為了驗(yàn)證系統(tǒng)算法的可靠性和實(shí)時(shí)性,利用在合肥市環(huán)城高速公路上采集不同車型,、不同路段,、不同環(huán)境光下多組道路圖像作為測(cè)試序列,,進(jìn)行了大量實(shí)驗(yàn)。

圖3為典型道路場(chǎng)景下的實(shí)驗(yàn)結(jié)果,,圖3(a)為大型卡車,;(b)為小型面包車;(c)為遠(yuǎn)距離處,;(d)為近距離處的檢測(cè)結(jié)果,。系統(tǒng)將檢測(cè)到的目標(biāo)用黑框標(biāo)記出來(lái)。

可以看出,,系統(tǒng)能夠檢測(cè)到本車道內(nèi)不同距離上的各種車型車輛,。在高速公路上的實(shí)驗(yàn)結(jié)果表明,在最大車速100 km/h的情況下,,系統(tǒng)在Celeron M 600 MHz處理器上的處理速度為8 j/s左右,,也就是說(shuō)處理一幀圖像的時(shí)間內(nèi)車輛行駛3~4 m,基本滿足實(shí)時(shí)報(bào)警的要求,。在一般光照條件下,,系統(tǒng)正常報(bào)警的縱向距離超過(guò)200 m,視場(chǎng)角遠(yuǎn)遠(yuǎn)大于雷達(dá)(一般為±7°),。

為了驗(yàn)證單目視覺(jué)測(cè)距準(zhǔn)確性,,在市內(nèi)道路上采集了前車與本車距離從5~100 m的一組圖像。對(duì)采集的圖像進(jìn)行處理后,,根據(jù)公式推導(dǎo)出本車與前車距離以及實(shí)際距離見(jiàn)表1。表中數(shù)據(jù)顯示,,單目視覺(jué)測(cè)距的相對(duì)誤差都在5%以內(nèi),,可以滿足實(shí)際工作中測(cè)距告警的需要。

4 結(jié)語(yǔ)

本文設(shè)計(jì)了一個(gè)基于單目視覺(jué)的汽車追尾預(yù)警系統(tǒng),。該系統(tǒng)采用了一種基于光密度差的道路檢測(cè)算法,,并使用了一種以車輛陰影檢測(cè)為主、左右邊緣檢測(cè)為輔的車輛探測(cè)方法,,同時(shí)采用了簡(jiǎn)單,、實(shí)用的測(cè)距和報(bào)警方法。高速公路上的實(shí)驗(yàn)結(jié)果證明了該系統(tǒng)的實(shí)時(shí)性,、魯棒性和準(zhǔn)確性,。該系統(tǒng)目前還沒(méi)有在雨霧天氣或缺少照明的夜間環(huán)境下進(jìn)行試驗(yàn),未來(lái)我們將針對(duì)這些使用環(huán)境對(duì)系統(tǒng)做進(jìn)一步改進(jìn)和優(yōu)化,。

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