基于單目視覺的智能車輛視覺導航系統(tǒng)設計
在以往的車輛驗證方法中,最常用的是對稱性測度驗證。這種算法的計算量較大,且對于背景復雜,對稱度差圖像的驗證效果不盡人意。為了解決這個問題,該系統(tǒng)采用了一種基于邊緣二值化圖像,通過搜索車輛左右邊緣進行驗證的算法。
假設疑似區(qū)域的寬度為W,區(qū)域左邊緣的坐標為(X1,Y1),右邊緣的水平坐標為(X2,Y2)。定義函數:
式中:f(x,y)為(x,y)點的灰度值。在區(qū)間(X1-W/4,X1+W/4)內搜索g(u)的最大值點,該點對應的水平坐標X1’就是車輛的左邊緣坐標。同理也可以搜索到車輛的右邊緣X2’。如果左右邊緣的g(u)值均大于某閾值,那么就可以認定該車輛確實存在。實驗證明,該算法能排除掉大量的“虛警”區(qū)域并得到真實車輛的兩側邊緣。
2.3 車輛跟蹤
現關心的是前方車輛與本車相對的二維位置和速度,因此只需要使用卡爾曼濾波器預測橫坐標x、橫向速度Vx、縱坐標y、縱向坐標Vy這四個狀態(tài)向量。此外由于x方向和y方向的狀態(tài)向量沒有直接聯系,所以可以將其分為兩組分別處理。
在車輛行駛過程中,由于顛簸或遮擋等原因,系統(tǒng)可能會將路牌、灌木叢等物體誤認為是車輛檢測出來,產生虛警。而這些虛警物體往往只能在連續(xù)數幀圖像中存在。如果不采取措施,系統(tǒng)就會時常產生短促的報警。
當圖像采樣間隔足夠短時,相鄰幀內同一車輛的位置會具有很大的相關性。
系統(tǒng)采用檢測與跟蹤相結合的方法,根據第n幀圖像獲得的信息,預測車輛在第n+1幀圖像中的位置等信息,并與n+1幀圖像中實際檢測到的結果進行比對。如果二者匹配度最大且超出一定值,則認定為同一車輛,繼續(xù)進行跟蹤、報警,否則認為此車已被遮擋或消失,暫時不做處理,數幀后被剔除出去。2.4 測距報警
車間測距通常采用幾何投影模型,采用了一種簡化的車距模型公式L×W=C,其中L為兩車間距,單位為m;W為圖像上目標車輛處車道寬度,單位為pixel;C為常數,可通過事先的標定獲得。然而兩車間安全車距S采用文獻推導的臨界安全車距公式動態(tài)得到。
式中:Vr為相對車速,由對測出車距求導得到相對車速后進行卡爾曼濾波得到;Vb為本車車速,由GPS得到。
如果告警頻率過高,容易使駕駛員麻痹大意,過低可能使駕駛員來不及做出反應,因此該系統(tǒng)采用由遠至近的三段報警。
若車距d≥1.5S,判定為3級威脅,發(fā)出長而緩的報警聲,提醒駕駛員前方有障礙物,但暫無危險;若車距S≤d≤1.5S,判定為2級威脅,發(fā)出較急促的報警聲,提醒駕駛員減速;若車距d≤S,判定為1級威脅,發(fā)出短而急的報警聲,提醒駕駛員制動;3種狀態(tài)下的告警聲差異很大,駕駛員可以很容易地根據報警聲判斷威脅等級。
3 試驗結果
系統(tǒng)框架及所有算法在Boiland C++ Builder 6環(huán)境下編譯完成。為了驗證系統(tǒng)算法的可靠性和實時性,利用在合肥市環(huán)城高速公路上采集不同車型、不同路段、不同環(huán)境光下多組道路圖像作為測試序列,進行了大量實驗。
圖3為典型道路場景下的實驗結果,圖3(a)為大型卡車;(b)為小型面包車;(c)為遠距離處;(d)為近距離處的檢測結果。系統(tǒng)將檢測到的目標用黑框標記出來。
可以看出,系統(tǒng)能夠檢測到本車道內不同距離上的各種車型車輛。在高速公路上的實驗結果表明,在最大車速100 km/h的情況下,系統(tǒng)在Celeron M 600 MHz處理器上的處理速度為8 j/s左右,也就是說處理一幀圖像的時間內車輛行駛3~4 m,基本滿足實時報警的要求。在一般光照條件下,系統(tǒng)正常報警的縱向距離超過200 m,視場角遠遠大于雷達(一般為±7°)。
為了驗證單目視覺測距準確性,在市內道路上采集了前車與本車距離從5~100 m的一組圖像。對采集的圖像進行處理后,根據公式推導出本車與前車距離以及實際距離見表1。表中數據顯示,單目視覺測距的相對誤差都在5%以內,可以滿足實際工作中測距告警的需要。
4 結語
本文設計了一個基于單目視覺的汽車追尾預警系統(tǒng)。該系統(tǒng)采用了一種基于光密度差的道路檢測算法,并使用了一種以車輛陰影檢測為主、左右邊緣檢測為輔的車輛探測方法,同時采用了簡單、實用的測距和報警方法。高速公路上的實驗結果證明了該系統(tǒng)的實時性、魯棒性和準確性。該系統(tǒng)目前還沒有在雨霧天氣或缺少照明的夜間環(huán)境下進行試驗,未來我們將針對這些使用環(huán)境對系統(tǒng)做進一步改進和優(yōu)化。
評論