自動(dòng)駕駛定位技術(shù)就是解決“我在哪兒”的問題,并且對(duì)可靠性和安全性提出了非常高的要求。除了GPS與慣性傳感器外,我們通常還會(huì)使用LiDAR點(diǎn)云與高精地圖匹配,以及視覺里程計(jì)算法等定位方法,讓各種定位法互相糾正以達(dá)到更精準(zhǔn)的效果。隨著自動(dòng)駕駛的發(fā)展,定位技術(shù)也一定會(huì)不斷優(yōu)化。
一般來講,自動(dòng)駕駛實(shí)際包含三個(gè)問題:一是我在哪?二是我要去哪?三是如何去?能完整解決這三個(gè)問題就是真正的自動(dòng)駕駛。
定位技術(shù)就是解決“我在哪兒”的問題,并且自動(dòng)駕駛需要的是厘米級(jí)定位。
目前自動(dòng)駕駛的技術(shù)基本上都源自機(jī)器人,自動(dòng)駕駛汽車可以看做是輪式機(jī)器人外加一個(gè)舒適的沙發(fā)組成。機(jī)器人系統(tǒng)中定位和路徑規(guī)劃是一個(gè)問題,沒有定位,就無法規(guī)劃路徑。厘米級(jí)實(shí)時(shí)定位是目前自動(dòng)駕駛最大的挑戰(zhàn)之一。對(duì)機(jī)器人系統(tǒng)來說,定位主要靠SLAM與先驗(yàn)地圖(Prior Map)的交叉對(duì)比。
SLAM是Simultaneous Localization and Mapping的縮寫,意為“即時(shí)定位與地圖構(gòu)建”。它是指運(yùn)動(dòng)物體根據(jù)傳感器的信息,一邊計(jì)算自身位置,一邊構(gòu)建環(huán)境地圖的過程。
由于傳感器種類和安裝方式的不同,SLAM的實(shí)現(xiàn)方式和難度會(huì)有很大差異。按傳感器來分,SLAM主要分為激光、視覺兩大類。
自動(dòng)駕駛通過定位技術(shù)準(zhǔn)確感知自身在全局環(huán)境中的相對(duì)位置,將自身視作一個(gè)質(zhì)點(diǎn)并與環(huán)境有機(jī)結(jié)合起來。
按定位技術(shù)原理不同可分為三類。第一類,基于信號(hào)的定位,代表就是GNSS定位,即全球?qū)Ш叫l(wèi)星系統(tǒng);第二類,航跡推算,依靠IMU等,根據(jù)上一時(shí)刻的位置和方位推斷現(xiàn)在的位置和方位;第三類是環(huán)境特征匹配15:36:2015:36:21,基于LiDAR的定位,用觀測(cè)到的特征和數(shù)據(jù)庫(kù)中的特征和存儲(chǔ)的特征進(jìn)行匹配,得到現(xiàn)在車的位置和姿態(tài)。
現(xiàn)有的無人車高精度定位在某些情況下會(huì)出現(xiàn)定位不準(zhǔn)的情況。因此僅依靠GPS的定位方案可靠性太差。
因此自動(dòng)駕駛一般用組合定位。首先本體感知傳感器如里程計(jì)(Odometry)、陀螺儀(Gyroscopes)等,通過給定初始位置和姿勢(shì)(簡(jiǎn)稱位姿),來測(cè)量相對(duì)于機(jī)器人初始位姿的距離和方向來確定當(dāng)前機(jī)器人的位姿,也叫做航跡推測(cè)。然后用激光雷達(dá)或視覺感知環(huán)境,用主動(dòng)或被動(dòng)標(biāo)識(shí)、地圖匹配、GPS、或?qū)Ш叫艠?biāo)進(jìn)行定位。位置的計(jì)算方法包括三角測(cè)量法、三邊測(cè)量法和模型匹配算法等。從這個(gè)角度而言,IMU也是自動(dòng)駕駛必備的部件。
慣性傳感器(IMU)是檢測(cè)加速度與旋轉(zhuǎn)運(yùn)動(dòng)的高頻(1KHz)傳感器,對(duì)慣性傳感器數(shù)據(jù)進(jìn)行處理后我們可以實(shí)時(shí)得出車輛的位移與轉(zhuǎn)動(dòng)信息,但慣性傳感器自身也有偏差與噪音等問題影響結(jié)果。而通過使用基于卡爾曼濾波的傳感器融合技術(shù),我們可以融合GPS與慣性傳感器數(shù)據(jù),各取所長(zhǎng),以達(dá)到較好的定位效果。
注意由于無人駕駛對(duì)可靠性和安全性要求非常高,所以基于GPS和慣性傳感器的定位并非無人駕駛里唯一的定位方式。
就目前定位技術(shù)而言,自動(dòng)駕駛有三類定位方法,通常三種方法會(huì)被交叉使用,以相互糾正達(dá)到更精準(zhǔn)的效果:
基于 GPS 和慣性傳感器的傳感器融合;
基于 LiDAR 點(diǎn)云與高精地圖的匹配;
基于視覺的道路特征識(shí)別。
這三類定位方法,都屬于需要結(jié)合多個(gè)傳感器聯(lián)合來解決定位問題,以下為幾個(gè)具體的定位方法:
1、業(yè)內(nèi)通用的定位方式是GPS+高精度地圖+攝像機(jī)(激光雷達(dá)等)信息融合的定位方法。
激光雷達(dá)的SLAM,利用車輛自帶的GPS和IMU做出大概位置判斷,然后用預(yù)先準(zhǔn)備好的高精度地圖(Prior Map)與激光雷達(dá)SLAM云點(diǎn)圖像與之對(duì)比,或者說Registration,放在一個(gè)坐標(biāo)系內(nèi)做配準(zhǔn)。配對(duì)(Matching)成功后確認(rèn)自車位置。這是目前最成熟,準(zhǔn)確度最高的方法。
通過一個(gè)視頻具體了解一下業(yè)內(nèi)是如何結(jié)合車載傳感器信息做定位的。
首先根據(jù)GPS的數(shù)據(jù)(經(jīng)緯高和航向)確定無人車大致處于哪條道路上,這個(gè)位置的可能與真實(shí)位置有5~10米的差距。
根據(jù)車載傳感器檢測(cè)的車道線(虛、實(shí)線)及道路邊緣(路沿或護(hù)欄)的距離與高精地圖提供的車道線及道路邊緣做比對(duì),然后修正無人車的橫向定位。
根據(jù)車載傳感器檢測(cè)到的廣告牌、紅綠燈、墻上的標(biāo)志、地上的標(biāo)志(停止線、箭頭等),與高精地圖提供的同一道路特征(POI)進(jìn)行匹配,進(jìn)而修正縱向定位和航向。在沒有檢測(cè)到任何道路特征的情況下,可以通過航位推算進(jìn)行短時(shí)間的位置推算。
無人車的定位算法通常采用粒子濾波的方法,需要多個(gè)計(jì)算周期后,定位結(jié)果才會(huì)收斂,進(jìn)而提供一個(gè)相對(duì)穩(wěn)定的定位結(jié)果。粒子濾波的算法原理我會(huì)在隨后的系列文章中介紹。
2、圖像增強(qiáng)型定位。通常是將Lidar和視覺系統(tǒng)結(jié)合進(jìn)行定位。 這種方法需要預(yù)先準(zhǔn)備一幅激光雷達(dá)制造的3D地圖,用Ground-Plane Sufficient得到一個(gè)2D的純地面模型地圖,用OpenGL將單目視覺圖像與這個(gè)2D的純地面模型地圖經(jīng)過坐標(biāo)變換, 用歸一化互信息(normalizedmutual information)配準(zhǔn)。然后用擴(kuò)展卡爾曼濾波器(EKF)來實(shí)現(xiàn)定位。
3、是用激光雷達(dá)的強(qiáng)度掃描圖像。激光雷達(dá)有兩種最基本的成像方式,一是3D距離成像,可以近似地理解為點(diǎn)云;二是強(qiáng)度掃描成像,激光經(jīng)物體反射,根據(jù)反射強(qiáng)度值的不同,可以得到一副強(qiáng)度成像圖像。強(qiáng)度值是包括在點(diǎn)云里的,光強(qiáng)分離核心技術(shù)之一。這種定位方法需要預(yù)先制作一個(gè)特殊的SLAM系統(tǒng),稱之為位姿圖像SLAM(Pose-GraphSLAM),勉強(qiáng)可看作激光雷達(dá)制造的高清地圖。有三個(gè)約束因素,一是掃描匹配約束,二是里程計(jì)約束,三是GPS先驗(yàn)約束。激光雷達(dá)的3D云點(diǎn)地圖抽出強(qiáng)度值和真實(shí)地面(Ground Plane),轉(zhuǎn)化為2D的地面強(qiáng)度掃描圖像。與位姿圖像SLAM配對(duì)后即可定位。
另外還可用高斯混合地圖進(jìn)行定位,即在遇到惡劣環(huán)境,比如很厚的積雪,雪后還有殘雪的泥濘的道路,缺乏紋理的老舊的被破壞的道路,用高斯混合模型來做定位,提高激光雷達(dá)定位的魯棒性。
4、Mobileye提出的REM。REM是一種無需SLAM的定位方法,但顯然只是視覺SLAM的變種而已,Mobileye通過采集包括交通信號(hào)、方向指示牌、長(zhǎng)方形指示牌、路燈及反光標(biāo)等「地標(biāo)」,得到一個(gè)簡(jiǎn)單的 3D 坐標(biāo)數(shù)據(jù);再通過識(shí)別車道線信息,路沿,隔離帶等獲取豐富的 1D 數(shù)據(jù)。把簡(jiǎn)單的 3D 數(shù)據(jù)和豐富的 1D 的數(shù)據(jù)加起來,大小也不過是 10Kb/km,攝像頭的圖像與這種REM地圖中匹配即可定位。Mobileye這種設(shè)計(jì)毫無疑問是成本最低的,但前提是至少有上千萬輛車配備REM系統(tǒng),能夠自動(dòng)搜集數(shù)據(jù)并上傳到云端,有些路段或者說非道路地區(qū),沒有裝載REM系統(tǒng)的車走過,就無法定位。
不過這種方法讓人有以下幾點(diǎn)存疑:
在全球范圍內(nèi)讓裝載REM系統(tǒng)的車走遍每一寸土地是不可能的。這可能牽涉到隱私問題,也牽涉到數(shù)據(jù)版權(quán)問題,這些數(shù)據(jù)的版權(quán)究竟歸誰,是車主還是車企還是云端的服務(wù)商,還是Mobileye?這個(gè)問題很難說清。
同時(shí)REM的數(shù)據(jù)要及時(shí)更新,幾乎要做到準(zhǔn)實(shí)時(shí)狀態(tài),同時(shí)光線對(duì)數(shù)據(jù)影響明顯,REM要濾除那些不合適的數(shù)據(jù),所以維持這份地圖的有效性需要非常龐大的數(shù)據(jù)量和運(yùn)算量,誰來維護(hù)這個(gè)龐大的運(yùn)算體系?
最致命的一點(diǎn),REM是基于視覺的,只能在天氣晴好,光線變化幅度小的情況下使用,這大大限制了其實(shí)用范圍,而激光雷達(dá)可滿足95%的路況。
以上只是一般常見的定位方法,當(dāng)然,具體的定位手段有多種,多個(gè)傳感器可根據(jù)定位方法進(jìn)行隨意組合。融合方案的定位精度會(huì)優(yōu)于單一傳感器,一個(gè)傳感器在某種環(huán)境失效,補(bǔ)充傳感器能頂上。例如市面上常見的一些多傳感器融合的定位手段有:
1. 自動(dòng)駕駛 GPS+I(xiàn)MU+里程計(jì)
GPS 給出的全局錨定,可以消除累計(jì)誤差問題,不過它的更新頻率低,并且信號(hào)容易被遮擋。 IMU和輪盤里程計(jì)更新頻率高,不過有累計(jì)誤差問題,最容易想到的是收到GPS定位,使用GPS位置信息,誤差就是GPS的精度,在下一次收到GPS定位間隔中,使用IMU(角度累加)和里程計(jì)(位移累加)進(jìn)行位姿累加,中間的位姿誤差是初值GPS定位誤差和中間累加誤差的積累。
改進(jìn)的方法是使用非線性卡爾曼濾波,在收到GPS位置信息的時(shí)候,要結(jié)合IMU和里程計(jì)的積累預(yù)測(cè)值和GPS觀測(cè)值,算出一個(gè)誤差收斂的更優(yōu)的位置估算值。
2. 自動(dòng)駕駛 GPS+ 多線雷達(dá)+高精地圖匹配
GPS 給出全局錨定,中間使用雷達(dá)SLAM 前端里程計(jì)做累加,可以配合高精地圖的圖匹配,做類似后端回環(huán)優(yōu)化的方式,將GPS、激光雷達(dá)及已知地圖進(jìn)行融合定位。
3. 自動(dòng)駕駛多對(duì)雙目視覺攝像頭SLAM方案
這種方案成本低,更加考究的是算法,有很少的自動(dòng)駕駛公司宣稱自己主攻純視覺方案,現(xiàn)在不是主流。
4. 單線雷達(dá)+I(xiàn)MU+里程計(jì)融合
滿足室內(nèi)定位的要求,個(gè)人理解可以分為淺融合和深融合。淺融合使用IMU+里程計(jì)的累加值作為推算雷達(dá)里程計(jì)的初值,在這個(gè)初值基礎(chǔ)上進(jìn)行連續(xù)幀的掃描匹配,會(huì)大大加速匹配速度。深融合會(huì)結(jié)合IMU和里程計(jì)的值作為約束條件,應(yīng)用到后端回環(huán)約束矯正中。
5. 深度攝像頭+ IMU 融合
目前在手機(jī)的VR應(yīng)用中已經(jīng)初見端倪,如蘋果公司的IphoneX以及Google 已經(jīng)發(fā)布一段時(shí)間的Tango項(xiàng)目。深度視覺SLAM 與 IMU 進(jìn)行深淺融合,達(dá)到一個(gè)比較不錯(cuò)的VR體驗(yàn)。
無人駕駛對(duì)可靠性和安全性要求非常高,除了GPS與慣性傳感器外,我們通常還會(huì)使用LiDAR點(diǎn)云與高精地圖匹配,以及視覺里程計(jì)算法等定位方法,讓各種定位法互相糾正以達(dá)到更精準(zhǔn)的效果。相信隨著自動(dòng)駕駛技術(shù)的發(fā)展,未來的定位技術(shù)也不會(huì)不斷優(yōu)化。