《 無人駕駛原理與實踐》一1.3無人駕駛系統的基本框架
1.3無人駕駛系統的基本框架

無人駕駛系統的核心可以概述為三個部分:感知(Perception)、規劃(Planning)和控制(Control),這三部分的交互及其與車輛傳感器硬件、環境的交互如圖13所示。
由圖13可知,無人駕駛軟件系統實際上是一個分層的結構,感知、規劃、控制模塊各自發揮不同的作用并相互影響。下面詳細了解這三層的功能。
感知是指無人駕駛系統從環境中收集信息并從中提取相關知識的能力。其中,環境感知(Environmental Perception)特指對于環境的場景理解能力,如障礙物的類型、道路標志及標線、行人車輛的檢測、交通信號等數據的語義分類。定位(Localization)是對感知結果的后處理,通過定位功能從而幫助無人車了解其相對于所處環境的位置。
規劃是指無人車為了到達某一目的地而做出決策和計劃的過程。對于無人駕駛車輛而言,這個過程通常包括從起始地到達目的地,同時要避開障礙物,并且不斷優化行車路線軌跡和行為,以保證乘車的安全舒適。規劃層通常又被細分為任務規劃(Mission Planning)、行為規劃(Behavioral Planning)和動作規劃(Motion Planning)三層[3]。
控制是指無人車精準地執行規劃好的動作、路線的能力,及時地給予車輛執行機構合適的油門、方向、剎車信號等,以保障無人車能按預期行駛。
1.3.1環境感知
為了確保無人車對環境的理解和把握,無人駕駛系統的環境感知部分通常需要獲取大量的周圍環境信息,具體來說包括行人、車輛的位置和速度,以及下一時刻可能的行為、可行駛的區域、對交通規則的理解等。無人車通常是通過融合激光雷達(Lidar)、攝像頭(Camera)、毫米波雷達(Millimeter Wave Radar)等多種傳感器的數據來獲取這些信息的[4],本節簡要地介紹一下激光雷達和攝像頭在無人駕駛感知系統中的應用。
激光雷達是一類使用激光束進行探測和測距的設備,如美國Velodyne公司的64線激光雷達,它每秒鐘能夠向外界發送數百萬個激光脈沖,它的內部是機械式旋轉結構。激光雷達能夠實時地建立起周圍環境的三維地圖,通常來說,激光雷達以10Hz左右的頻率對周圍環境進行旋轉掃描,其每一次掃描的結果為密集的點構成的三維圖,每個點具備空間坐標(x,y,z)信息,由于其掃描結果都是激光點數據,并且數量巨大,所以又被稱為點云數據,點云數據構建的圖也叫點云圖(Point Cloud Graph),圖14是使用Velodyne VLP32c型號的激光雷達繪制的一個點云地圖。
目前,激光雷達因其測量的高度可靠性、精確性,仍是無人駕駛系統中最重要的傳感器之一。但是并不意味著在任意場景中激光雷達的表現都是完美的,如在開闊地帶,由于缺乏特征點,會存在點云過于稀疏,甚至丟失點的問題;對于不規則的物體表面,使用激光雷達也比較難辨別其特征模式;在諸如大雨、大霧這類天氣情況下,激光雷達的精度和準確度也會受到很大影響。
對于激光點云數據的處理,通常我們會進行兩步操作:分割(Segmentation)和分類(Classification)。其中,分割是為了將點云圖中離散的點使用聚類算法重新分組,使其聚合成一個個整體,而分類則是區分出這些整體屬于哪一種類別,如屬于行人類、車輛類或者其他障礙物類等。
在完成了對點云的目標分割以后,分割出來的目標還需要被正確地分類。在這個環節中可以借鑒機器學習的分類算法,如支持向量機(Support Vector Machine,SVM)、決策樹、K均值(Kmeans)等算法,以對聚類的特征進行分類。最近幾年由于深度學習的發展,業界開始使用卷積神經網絡(Convolutional Neural Network,CNN)來對三維的點云聚類進行分類,然而,無論是基于提取特征的SVM方法還是基于原始點云的CNN方法,由于激光雷達點云本身解析度低,對于反射點稀疏的目標(比如行人、自行車等),基于點云的分類并不可靠,所以在實踐中我們往往融合激光雷達和攝像頭傳感器,既利用攝像頭的高分辨率來對目標進行分類,又利用激光雷達的可靠性對障礙物進行檢測和測距,融合兩者的優點最終完成環境感知。
在無人駕駛系統中,我們通常使用視覺傳感器來完成對道路的檢測,以及車輛、交通標志等的檢測、識別和分類。道路的檢測包含對車道線的檢測(Lane Detection)、可行駛區域的檢測(Drivable Area Detection)。檢測任務還包括對其他車輛的檢測(Vehicle Detection)、行人檢測(Pedestrian Detection)、交通標志和信號的檢測(Traffic Sign Detection)等,以及對所有交通參與者的檢測、識別和分類。
車道線的檢測涉及兩個方面:第一是識別車道線,對于彎曲的車道線,能夠計算其曲率,即彎曲的弧度,以決定方向盤的控制角度;第二是確定車輛自身相對于車道線的偏移(即無人車自身在車道線的哪個位置)。一種方法是提取一些車道的特征,包括邊緣特征(如索貝爾算子,通常是通過求取邊緣線的梯度,即邊緣像素的變化率來檢測車道線)、車道線的顏色特征等,然后再使用多項式擬合車道線的像素,最后基于多項式以及當前攝像頭在車上掛載的位置,確定前方車道線的曲率和車輛相對于車道的偏離位置。
對于可行駛區域的檢測,目前的一種做法是采用深度學習神經網絡對場景進行像素分割,即通過訓練一個像素級分類的深度神經網絡,完成對圖像中可行駛區域的分割。
交通智能體 自動駕駛
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。