自动驾驶科普:一辆无人车到底是怎样工作的?
你可能對“自動駕駛”一詞并不陌生了,但是否知道無人車是怎樣在沒有司機的情況下到達目的地的?
今天,Udacity的員工David Silver在外媒Medium上發文,科普了Udacity自動駕駛技術中的四個子系統。這份介紹輕快簡明,條理清晰,是篇不錯的自動駕駛入門讀物。量子位編譯整理,與大家分享。
在我工作的Udacity有一輛無人車,我們叫她Carla。
整體來說,Carla上主要有四個子系統,分別為傳感(Sensor)系統,感知(Perception)系統,決策(Planning)系統和控制(Control)系統。接下來我將為大家一一講解Udacity的無人車是如何通過這些技術工作的。
△?每個系統中都包含很多小環節
傳感(Sennor)
Carla的傳感器系統中含有從環境中收集數據的物理硬件。
例如,Carla擋風玻璃的頂部安裝了一些相機,用戶能根據需要調整相機的數量。通常情況下,1到3個相機會排成一排。
△?擋風玻璃上的相機
Calar自帶一個嵌入至保險杠的前置雷達,此外,車頂上還安裝了一個360度激光雷達,是收集環境數據的主力。
△?激光雷達傳感器(左)和采集到的點云數據(右)
有時Carla也會用到其他傳感器,比如GPS、IMU和超聲波雷達等。從這些傳感器中收集到的數據匯將交由感知器處理。
感知(Perception)
Carla的感知子系統負責將原始的傳感器數據轉換成有意義的環境信息。根據功能不同,我們可將感知系統的組件分為兩個區塊:檢測模塊與定位模塊,兩者各司其職。
檢測模塊需要從傳感器的環境信息中檢測車輛外部的物體,包括信號燈的檢測與分類、物體檢測與追蹤和自由空間探測。
△?車輛、行人、信號燈、指示牌……不同類別的物體被不同顏色的檢測框圈起
定位模塊告訴我們車輛的具體位置,這是一項聽起來容易但做起來難的事。Carla自帶的全球定位系統(GPS)幫助準確定位,但GPS的精度只能精確到1至2米,對無人車來說,這種精度遠遠達不到上路的要求。一輛自認為在車道中心行駛的車,如果加上這一兩米的誤差,可能會撞到行人或路崖。
所以,僅用GPS定位還不夠。Carla結合了高精地圖、激光雷達傳感器和復雜的數學算法,將誤差縮減到10厘米內。激光雷達先掃描外部環境,將看到的與高精地圖做對比,最后找到精確的定位。
△?Carla將自己定位在一張高精地圖上
之后,感知系統將其結果輸出至決策系統上。
決策(Planning)
Carla的決策系統簡明易懂,決策裝置構建了一系列路徑點,Carla只需沿路追尋這些點即可。值得注意的是,每個路徑點都有指定位置,并且與目標速度相關聯。當Carla經過路徑點時,將與位置與速度相匹配。
同時,決策系統還負責根據感知器提供的數據預測其他車輛的運動軌跡,不斷重新規劃調整路徑點的位置。
舉個例子,如果決策系統預測Carla前面的車輛會減速,則決策系統會讓Carla也走得慢點。之后,決策系統會根據軌跡生成組件創建新的減速路徑點。
對策系統對信號燈和交通標志等信息的處理也是用這種方法計算的。
一旦決策系統已經生成了新路徑點路徑,那這些路徑會被傳送至最后一個子系統,即控制系統。
控制(Control)
控制系統通過加速或剎車的方式驅動車輛行進,并且掌握第一手的車輛運行數據。這其中有些純電子數據,有些則是物理數據。例如,當你坐在Carla里時,你會發現它自身也帶方向盤。
控制系統將路徑點作為輸入信息,在決策系統的幫助下控制車輛速度。之后,控制系統將路徑點和速度等信息傳遞給控制器。為了實現預定軌跡,控制器需要規劃方向盤、加速、剎車等部件的動作。
控制系統可用很多算法將路徑點映射成方向盤和油門的相關指令,這些不同的算法被稱為控制器。Carla用的是簡單的比例-積分-微分控制器(PID控制器),當然還有其他復雜的控制器可供選擇。
總結
我們將上面的四個系統的功能總結一下,可以梳理出Udacity自動駕駛汽車的工作流程。
首先,傳感系統從Carla的相機、雷達和激光雷達中收集環境數據交于感知系統,感知系統利用這些數據在環境中檢測物體并定位。之后,決策系統利用環境數據創建Carla的行進軌道。控制器通過方向盤、油門和剎車等保證車輛在預定軌道上行駛。
Carla進行了很多測試,她已經可以從山景城跑到舊金山了。Udacity的學生也可以在課程結束時把設計的代碼加載到Carla上,看看在測試軌道上的駕駛情況如何。
我們為Carla自豪。
總結
以上是生活随笔為你收集整理的自动驾驶科普:一辆无人车到底是怎样工作的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里巴巴JAVA开发手册及开发插件
- 下一篇: Fiddler抓取APP网络请求