2020雲栖大會于9月17日-18日線上上舉行,阿裡巴巴高德地圖攜手合作夥伴精心組織了“智慧出行”專場,為大家分享高德地圖在打造基于DT+AI和全面上雲架構下的新一代出行生活服務平台過程中的思考和實踐,并重點分享了「高精地圖、高精算法、智能時空預測模型、自動駕駛、AR導航、車道級技術」等話題。
「高德技術」把本場講師分享的主要内容整理成文并陸續釋出出來,本文為第1篇。
阿裡巴巴高德地圖首席科學家任小楓分享的話題是《高精算法推動高精地圖落地》。任小楓從算法出發,介紹了高精地圖制作和落地的挑戰,以及高德如何打磨和突破關鍵技術,把高精地圖做到業界領先。
去年雲栖大會,任小楓給大家整體介紹了視覺技術在高德的應用,主要分享了正常地圖和AR導航、視覺定位方面的工作。今年時間比較短(每位講師隻有12分鐘的演講時間),主要介紹高精算法方面的工作。
什麼是高精地圖?主要是給自動駕駛場景用的地圖。它和我們平時開車時所用到的地圖很不一樣。一個關鍵就是要精準。高精地圖需要有精準元素,精确位置,精細表示。例如下圖中的杆子、車道線、行駛軌迹等都需要在高精地圖中精确的表示出來。

自動駕駛要成功落地,高精地圖是必須做成的事情。高精地圖有很多用途:給自動駕駛用來定位;靜态目标的模組化“識别”;路徑/行為規劃。這些對于自動駕駛來說是非常重要的功能。
高精地圖落地的挑戰主要在哪裡?
精度!精度!精度!(重要的話說3遍)其他的挑戰還有規模、成本、時效。
首先是精度。高德對高精地圖制作的首要原則就是要準!要做到很高的精度,百米相對精度10厘米。就是在真實世界中,如果有兩個元素在真實世界中相距100米,那他們的相對位置,跟真實世界比起來的誤差必須在10厘米之内。這是一個非常高的目标。在這樣一個高目标下,生産效率和成本就成了非常大的挑戰,具體細節這裡不展開解釋了,目前高德已經做到了行業領先的水準。此外,還有鮮度和更新,最早期的時候以年為機關,後來到了月更新,周更新,日更新甚至更快,這樣才能真正做到地圖資訊是準确有效的。
算法在解決高精地圖面臨的挑戰中有很重要的作用。算法相關的工作主要有三部分:
- 資料精度與對齊
- 識别和生産自動化
- 變化發現與更新
- 資料精度
高精地圖的首要原則是精準。高德從一開始就做了很大的投入,使用了很貴的采集車。用的高精度Riegl采集車,高精度雷射雷度,它的測距精度能達到5mm,1M/sec;高精度的組合慣導;千尋基站解算…但即使這樣大的投入和采集車配備,也并不意味着采集的資料資料就沒問題了,還是會出現問題。比如軌迹,靜止或運動的時候都會出錯,出錯的時候并不是很多,可能隻有0.5%的比例,但出錯的時候就會造成點雲資料出問題,比如點雲分層,工程師們需要做很多算法方面的工作去檢測,在點雲分層的時候把它修複。
經過一系列工作後,能在軌迹錯誤率上有明顯的降低。單趟資料采集精度的問題解決後,很快就會遇到多躺資料對齊的問題。舉例來說,一條路上很可能做多次采集,多次采集回來的點雲,如果不做處理的話就會出現非常明顯的重影,它是不貼在一起的,需要用算法的手段把它對齊。這也有很大的挑戰,因為對精度的要求很高,在5cm以内。
各種場景的挑戰很多,比如植被的影響。在不同季節的時候采集資料就會遇到這種情況,這些樹和灌木會造成非常大的影響。同時在對齊的時候需要保持軌迹的剛性。因為原來采集回來的時候,軌迹的相對精度是很好的。在對齊過程中不能破壞和降低相對精度。而是要在原有基礎上去提高相對精度,包括上下行的場景,如果是一條路,上下行不同兩個方向和觀測角度采集到的資料,以及橋上橋下,因為共視區域有限,對齊的挑戰就更高了。
資料對齊
資料對齊怎麼做?分為前端和後端兩個部分。
前端有一個比較核心的算法就是點雲比對。比較常見的比如ICP或者GICP算法。但光是注意點雲比對是不夠的,要把這個題解好,還需要解決很多其他的問題。比如稀疏點雲特征提取,快速點雲語義分割,快速車道線分割。這兩塊跟語義相關,在效率上是比較大的挑戰。因為點雲的資料資料量非常大,在計算時間上不能花太多時間。
前端做了很多工作,那對齊後端做什麼呢,後端主要做大規模優化。因為軌迹的修整不能在單點做,需要很多條軌迹,甚至在整個城市的規模上一起去做調整。
高德也花了很多時間在做優化算法。比如做了一條基于樣條曲線的稀疏優化算法。把它稀疏化以後就能達到百倍級的加速。能夠比較好的解決在一個城市規模下的點雲對齊問題。
對齊問題解決後就是生産效率,即識别和生産自動化的問題。高精地圖裡元素很多,比如線性元素裡就有車道線、護欄、路緣石、自然邊界,還有所謂的OBJ,即地面辨別、杆狀物、交通标牌、橋、龍門架等等。這些都需要制作出來,采用自動化的方法,算法的方法就是非常重要的環節。它的輸入有點雲和圖像識别。可以通過算法來生成HD地圖元素。可以用算法來提高人工效率。
舉幾個有挑戰性的例子。比如說下圖的4種情況:
怎麼解決?
輸入主要是點雲和圖像。高德花了很長時間在優化模型能力和提高精度。包括:
- 點雲語義分割(多級随機聚合網絡)
- 圖像全景分割(檢測/分割深度融合)
- 點雲/圖像融合(前融合+後融合)
- 傳統算法輔助(e.g. 拟合,三維)
- 矢量化及模組化(深度特征+圖模型)
高德在這些方法做到了很高的水準:高準确度召回>98%;部分實作跳點作業,達到>99.5%召回;部分實作免人工檢查,達到>99.5準确率。
在地圖更新方面,高德有兩套方案都在做,應用于不同的場景。一種是用雷射的方法,一種是用視覺的方法。
雷射的方法。因為要控制成本,是以使用了相對低成本的雷射和相對低成本的組合慣導。輸入的資料品質比較低,需要做很多事情去提高資料的精度。包括:
- 緊耦合Lidar Slam/LIO
- 實時語義分割
- 定位地圖:多重特征圖層
- In-the-loop重定位
- 協方差模型
- 全局位姿優化
- 定位圖層更新
上面這些都有相對比較成熟的解決方案。雖然輸入資料差,但在更新場景下還是能達到很好的精度。
視覺的方法。由極低成本消費級相機和極低成本消費級組合慣導來做,這中間有很多視覺的算法。包括:
- 緊耦合Visual Slam/VIO
- 定位特征圖層和語義圖層
- 特征+語義重定位
- 全局位姿優化(融合VIO/重定位)
- 定位特征圖層及更新
現在已經做到15厘米;在嚴格評測的條件下已經是業界領先水準了。後續會繼續提高精度。
視覺更新技術可以直接應用于建構地圖。下面的圖顯示的是視覺建圖和衛星影像的重疊。
變化發現的問題,高精地圖如何做到更高的精度和更高頻率的更新?
假設有一個極低成本的方案去采集圖像,采集回來的肯定是一些品質很差的圖像,在這些圖像基礎上要做對比,和真實世界的變化,比如下圖裡的兩張圖檔裡都有個電子眼,其實是同一個電子眼,但在圖檔上看着很不一樣,需要用算法的手段來判斷這是否為同一個電子眼。這裡面就有很多圖像算法的工作要做。包括:
這些方面高德都在做,也已經有了比較好的結果。這是高精地圖制作過程中的一個必需的過程。這也是高德的特色所在,因為使用這些低成本的裝置,能用現有的低成本的資料發現實體世界的變化。
高精地圖是高德未來的一個重要方向。它的制作和落地是一個系統性的工程,除了算法以外,還有很多其他的關鍵工作要做。讓我們一起努力。