機械視覺也可以稱作為環境感知,是無人駕駛汽車最重要也是最複雜的一部分。無人駕駛車輛的環境感知層的任務是針對不同的交通環境,對傳感器進行合理的配置、融合不同傳感器獲取的環境信息、對複雜的道路環境建立模型。無人駕駛系統的環境感知層分為交通標誌識別、車道線的檢測與識別、車輛檢測、道路路沿的檢測、障礙物檢測以及多傳感器信息融合與環境建模等模塊。
傳感器探測環境信息,只是將探測的物理量進行了有序排列與存儲。此時計算機並不知道這些數據映射到真實環境中是什麼物理含義。因此需要通過適當的算法從探測得到的數據中挖掘出我們關注的數據並賦予物理含義,從而達到感知環境的目的。
比如我們在駕駛車輛時眼睛看前方,可以從環境中分辨出我們當前行駛的車道線。若要讓機器獲取車道線信息,需要攝像頭獲取環境影像,影像本身並不具備映射到真實環境中的物理含義,此時需要通過算法從該影像中找到能映射到真實車道線的影像部分,賦予其車道線含義。
自動駕駛車輛感知環境的傳感器繁多,常用的有:攝像頭、雷射掃描儀、毫米波雷達以及超聲波雷達等。
針對不同的傳感器,採用的感知算法會有所區別,跟傳感器感知環境的機理是有關係的。每一種傳感器感知環境的能力和受環境的影響也各不相同。比如攝像頭在物體識別方面有優勢,但是距離信息比較欠缺,基於它的識別算法受天氣、光線影響也非常明顯。雷射掃描儀及毫米波雷達,能精確測得物體的距離,但是在識別物體方面遠弱於攝像頭。同一種傳感器因其規格參數不一樣,也會呈現不同的特性。為了發揮各自傳感器的優勢,彌補它們的不足,傳感器信息融合是未來的趨勢。事實上,已經有零部件供應商做過此事,比如德爾福開發的攝像頭與毫米波雷達組合感知模塊已應用到量產車上。因此本系統設計將多個感知模塊結合去識別各種環境實物。
1、交通識別模塊
交通標識識別模塊又分為交通標誌牌識別和交通信號燈識別。其中,交通標誌牌識別主要由以下幾部分組成:
(1)圖像/視頻輸入;
(2)交通標識檢測;
(3)交通標識識別;
(4)識別結果輸出;
(5)實驗資料庫和訓練樣本資料庫。
交通信號燈識別主要由以下幾部分組成:
(1)圖像/視頻輸入;
(2)交通信號燈檢測;
(3)交通信號燈狀態識別;
(4)識別結果輸出。
交通標識識別模塊系統框圖如圖所示。
交通標誌牌識別系統框圖
交通信號燈識別系統框
2、車道線檢測與識別模塊
車道線檢測模塊是通過對傳感器圖像進行車道線檢測和提取來獲取道路上的車道線位置和方向,通過識別車道線,提供車輛在當前車道中的位置,能夠幫助無人車遵守交通規則,為無人駕駛車輛的自主行駛提供導向,提高無人車的行車穩定性。智能車道線檢測和識別模塊的處理流程主要是:
對採集的圖像進行預處理,主要是圖像的平滑;
對圖像進行二值化,為了適應光照分布的不均勾,採用了自適應閾值二值化方法;
對二值化圖像進行分析,得出該路段屬於哪種路況;
對不同路況運用不同算法進行檢測和識別在圖像預處理階段,運用高斯平滑模板對圖像進行平滑,去除圖像噪聲的幹擾。在圖像二值化上,利用S*S大小的均值模板對圖像進行卷積,將圖像中車道線的區域信息提取出來,然後通過逆透視投影變換,通過路況判斷,識別出車道線,通過透視投影原理,將車道線映射到原始圖像上。
3、車輛檢測模塊
車輛檢測模塊則是通過對相機圖像進行處理將環境中的車輛檢測出來,為了保證圖像中任意尺寸的車輛都能檢測到,本設計採用滑動窗口的目標檢測:在輸入圖像的多尺度空間中,對圖像進行放縮,然後在每一個尺度上,通過平行移動滑動搜索窗口,可以獲得不同尺度和不同坐標位置的子圖。其次對所獲得子框圖的類別進行判別,整合各個子框圖的類別信息,輸出檢測得到的結果。其檢測採用的是基於區域的Haar特徵描述算子和Adaboost級聯分類器。
4、決策規劃層
無人駕駛車輛決策規劃層的任務是根據路網文件(RNDF)、任務文件(MDF)以及定位信息生成一條全局最優路徑,並在交通規則的約束下,依靠環境感知信息實時推理出正確合理的駕駛行為,最終生成安全可行駛的路徑發送給控制執行系統。決策規劃層分為全局規劃、行為決策和運動規劃三個模塊。
全局規劃模塊首先讀取網文件和任務文件,遍歷路網文件中的所有路點,生成所有路點之間的連通性,然後根據任務文件來設定起點、任務點和終點,計算出最優路徑,最終將這條最優路徑的路點序列發送給行為決策模塊。
行為決策模塊針對車輛所處的不同交通場景、任務要求以及環境特徵,將無人駕駛車輛行為分為多個狀態,並延展為不同的亞態和子態。
運動規劃模塊的任務則是根據行為決策模塊發送的局部目標點以及環境感知信息,實時規劃出安全可行駛的路徑,並將路徑的軌跡點序列發送給控制執行。