朱洪華
(莆田學院機電工程學院,福建莆田,351100)
智能駕駛是當前國內(nèi)外研究的關鍵技術之一,具有極大的應用價值[1]。跟車工況是指車輛在行駛中跟隨前方并保持安全的行駛距離的狀態(tài)。對于使用智能駕駛系統(tǒng)的車輛來說,跟車工況的精確度和實時性對車輛的安全性和舒適性有重要的影響,也進一步影響了智能駕駛技術的推廣[2]。因為跟車工況執(zhí)行的好壞主要取決于前車識別和前車距離測定的精確度和實時性,所以良好的前車識別技術研究對普及智能駕駛有重大的意義[3]。
傳統(tǒng)的車輛識別方法主要有:Ada Boost+Harr、SVM+HOG、DPM算法等。傳統(tǒng)的算法通常不能適應復雜實時的路況下前方車輛的識別,例如:SVM+HOG 算法難以解決遮擋的問題,并且在車輛改變方向時也不容易檢測到;DPM 算法直觀、簡單、計算快速,但激勵特征是人工設計的,工作量繁重,不能適應較大幅度旋轉,穩(wěn)定性較差。傳統(tǒng)的算法雖然不能滿足智能駕駛條件下的車輛識別要求,但由于成本低和技術成熟,在固定牌照識別和人臉識別等應用方案中得到廣泛應用。
人的眼睛一看到圖像,就能馬上識別出圖像中的物體、物體所處的位置和其相對的位置。這樣就能使人們可以實時地做出反應來完成各種復雜的任務。對智能駕駛訓練也同樣要有與人類相似水平的反應速度和與人相當?shù)木_度。智能駕駛系統(tǒng)必須實時地分析前方道路的路況, 并且可以在確定繼續(xù)行駛的路徑之前識別出現(xiàn)實世界中的各種對象和其所處的位置。
目前,常用的基于深度學習的車輛識別方法有 R-CNN、SSD 和 YOLO 等[4]。因為 R-CNN、Fast R-CNN 和 Faster R-CNN等模型需要在一個區(qū)域內(nèi)提名候選框,然后將這個候選框帶入卷積神經(jīng)網(wǎng)絡進行運算處理,所以在復雜情況下容易產(chǎn)生過多的候選框,導致運算量增大,從而降低了識別的速度。YOLO識別速度非常快,它的識別速度比“R-CNN”快1000倍以上。它可以處理實時的視頻流,延遲極低,一般不超過25毫秒,精度比其他算法實現(xiàn)的實時系統(tǒng)高兩倍以上。從檢測的速度和精度上綜合考慮,本文最終選用最新版本的YOLOv5算法來實現(xiàn)車輛目標檢測。
車用傳感器進行車輛之間測量距離的方法有很多,大致包括:激光、超聲波、雷達、紅外線及機器視覺圖像測距等。激光測距具有穩(wěn)定性好及測距精度高的優(yōu)點。但是由于其價格昂貴,因此限制了其市場的應用發(fā)展。超聲測距的精度較高。然而,在長距離測距時,由于所接收的回聲較弱,較慢,導致測量信息不準確。因此超聲測距一般用于諸如倒車系統(tǒng)等短距離環(huán)境中。雷達測距是通過接收從物體反射的電磁波來測量距離。雷達傳輸不會受到復雜天氣的影響,即使天氣不好,也可以確保結果仍然準確。而且與激光相比,成本相對較低,但是容易受其他雷達或其他通信設施的信號干擾。紅外測距在夜間具有高隱蔽性,而且其傳播速度快,響應快速,所以廣泛用于軍事相關領域。但是其存在測距范圍短,數(shù)據(jù)輸出不穩(wěn)定以及無法檢測透明物體的缺點。機器視覺測距是通過相機傳感器捕獲周圍圖像信息,并通過在圖像信息和空間之間建立三維關系模型來計算障礙物的距離?;跈C器視覺的距離測量技術是基于環(huán)境感知的智能汽車駕駛輔助系統(tǒng)研究的關鍵技術。它具有以下優(yōu)點:拍攝范圍寬,重量輕,范圍廣,低成本等。雖然它易受環(huán)境干擾,但它結合其他傳感器進行聯(lián)合測距是目前前景最好的研究方向之一。
智能汽車在駕駛過程中需要連續(xù)跟蹤目標,相機可以捕獲視頻信息并感知周圍環(huán)境。通過對視頻圖像的處理,可以從二維圖像中提取三維世界的測量信息,從而獲得前對象和相機之間的距離。目前,通過攝像頭對前方目標測距的方法有有雙目視覺測距[5]和單目視覺測距[6]。雙目攝像機的距離測量原理與人眼相似,但成本高于單目系統(tǒng)。由于雙目視覺系統(tǒng)的計算量遠大于單眼系統(tǒng)的計算量,所以它需要強大的軟件和硬件支持。雙目相機的另一個問題是需要匹配兩個相機拍攝的圖像,并且匹配的精度將對前目標的距離測量的精度產(chǎn)生顯著影響[7]。單目系統(tǒng)的優(yōu)點在于,計算資源的成本比較低,系統(tǒng)結構比較簡單,缺點是距離測量的精度較低??紤]到成本,計算效率和效果等因素,本文使用單目相機進行距離測量。
圖1 圖像坐標與世界坐標
因為攝像機的基本參數(shù)是已知條件,所以我們可以基于針孔成像的原理來搭建攝像機圖像和現(xiàn)實世界三維圖像之間的透視關系,然后再根據(jù)攝像機圖像對現(xiàn)實世界車輛的距離進行計算[8]。令攝像機圖像坐標系為 L(u,v),世界坐標系為 W(x,y,z)[9]。攝像機圖像坐標系與世界坐標系的關系如圖1所示。世界坐標系的 q 點(現(xiàn)實生活中真實的一點)映射到圖像坐標系的 q'(圖像中的成像點)。測距過程其實就是通過q'在圖像坐標的位置,來求q 點與相機焦點之間的距離m。
通過利用一些先驗知識可以找到攝像機圖像空間 L(u,v) 中的點映射到現(xiàn)實世界空間的(x,y,0) 平面的位置。另外還需獲得以下參數(shù):
(1)汽車的真實位置映射到(u,v) 空間中的坐標uq;
(2)攝像機在現(xiàn)實世界的實際高度 h;
(3)攝像機的中心軸與 x 軸的垂直方向之間的夾角β’;
(4)攝像機的孔徑張角的大小,用α來表示;
(5)攝像機的像素,用m×n表示,其中n是列數(shù)。
通過以上的參數(shù),我們可以得出此時攝像機的焦點和攝像機圖像空間中的點( uq,vq)的連線跟(x,y,0) 平面的之間的夾角 β(uq)為:
如圖2所示,我們可以通過下面的公式求出地面一點 q與攝像機焦點之間的水平距離。
圖2 地面一點到攝像機焦點的水平距離測量圖
本文研究的目標測距方法試驗在車輛較少的直線公路上進行。硬件包括:電腦CPU為Intel Core i5-6500 3.2GHz,內(nèi)存16GB,攝像機焦距為25mm,主要參數(shù)為β'= 00,α= 0.388,h=1.6m。
通過YOLOv5算法對攝像頭獲得的圖像進行檢測,得到圖像坐標,再用測距算法求出前方車輛的距離。實驗用定量分析的方法獲取前方目標的圖像,即目標車輛每行駛15米,提取一幀圖像,首先對目標車輛進行識別,然后提取識別區(qū)域的像素信息,結合已知參數(shù)和目標測距公式,最后求出理論距離。
表1 車距測算與實際距離對比表
如表1所示,本文在(15-105)m范圍內(nèi)對前方車輛距離測算系統(tǒng)進行試驗。將實際車輛距離與計算出來的前方車輛距離進行比較,并計算出相對誤差,檢驗出該測算系統(tǒng)具有有效性,并且平均精度達到 3.52%,平均運算時間為0.16秒,基本滿足智能駕駛的精度和實時性的要求。
本文針對目標車輛識別定位及車距測量方面進行了大量研究。對比多種車輛識別算法,最終選用最新版本的YOLOv5算法來實現(xiàn)車輛目標檢測。對常用測距傳感器進行了比較分析,考慮到成本,計算效率和效果等因素,最后選用了單目相機進行距離測量。在實際試驗中證明了本算法基本滿足智能駕駛的精度和實時性的要求,具有較好的應用前景。