1. 程式人生 > >高德地圖首席科學家任小楓:視覺智慧在高德地圖的應用

高德地圖首席科學家任小楓:視覺智慧在高德地圖的應用

2019杭州雲棲大會上,高德地圖技術團隊向與會者分享了包括視覺與機器智慧、路線規劃、場景化/精細化定位、時空資料應用、億級流量架構演進等多個出行技術領域的熱門話題。現場火爆,聽眾反響強烈。我們把其中的優秀演講內容整理成文並陸續釋出在「高德技術」公眾號上,本文為其中一篇。

高德地圖首席科學家任小楓在高德技術專場分享了題為《視覺智慧連線真實世界》的演講,本文根據現場內容整理而成(在不影響原意的情況下對文字略作編輯),更多視覺智慧技術的實現細節請關注本微訊號的後續系列文章。

以下為演講內容的簡版實錄:

我今天主要給大家介紹視覺及相關技術如何在高德落地,如何幫助連線真實世界。連線真實世界這句話並不只是我個人的想法,而是高德地圖的使命,我們的使命是“連線真實世界,讓出行更美好”。

首先,簡單介紹下高德地圖,有超過1億的日活使用者,超過4億的月活使用者,高德地圖不光提供導航,也提供出行相關的其他服務,涵蓋了資訊服務、駕車導航、共享出行、智慧公交、智慧景區、騎行、步行、長途出行等應用場景。

高德地圖做的事情是建立人和真實世界的關係,人要跟真實世界建立聯絡,地圖是基礎,地圖之上還有更多的資訊可以獲取。

視覺是連線真實世界的橋樑

視覺是連線真實世界的橋樑。為什麼?從人的資訊獲取角度來看,80%的內容是通過視覺獲取到的。從人的資訊處理來看,人的大腦30%-60%用於視覺感知。從機器的角度,視覺是非常重要的通用感知手段。

人類感知真實世界的方法,還有很多其他方式,例如感測器、LT...但是,作為通用的手段,我一直覺得視覺是第一選擇,通用,資訊量非常大,可以遠距感知,也可以做到實時。

還有一個原因,人類真實世界裡(各種元素)80%以上是為了視覺而設計。有的時候,我們對真實世界太過於熟悉,可能不會太在意。但是看一下週圍的標誌和資訊,包括認識的事物,都是根據視覺設計和獲取。

因為人類獲取資訊的主要方式是通過視覺,所以真實世界的設計也是基於視覺。大家可以想象下,如果獲取資訊的主要方式是通過嗅覺,那這個世界會非常不一樣。基於這些,回到我們在做的事情,大家一定不會奇怪,地圖資訊的獲取和建立,絕大部分也是來自於視覺。

視覺技術@高德地圖-地圖製作

視覺技術在高德地圖的應用有很多不同的方式,如下圖所示:

左邊是地圖製作,有常規地圖和高精地圖,高精地圖對應於未來的無人駕駛。右邊是跟導航體驗相關的,我們在做的一些跟定位相關的工作,也在利用視覺技術希望使導航變得更加便利。因為時間關係,今天只給大家介紹常規地圖和導航相關的部分。

地圖服務從哪裡來,首先要採集資料,目前絕大部分是通過相機和視覺的方式採集資訊。真實世界很大,全國有幾百萬公里道路,再加上其他資訊,人工方式目前是處理不過來的,很大程度上需要用自動識別,通過演算法識別資料。當然有時候演算法沒辦法做到100%,還需要人工修正,從而製作成地圖資料庫,來支援地圖資料服務。

地圖製作任務,常規地圖任務通常分為兩大類,一類是道路相關,一類是POI掛牌識別。這兩類任務都需要較多的視覺技術。例如,在道路標誌識別上,演算法要做的就是把道路上的標誌一個一個全部找出來,同時識別標誌的型別和內容。

道路標誌有100多種。如果只是處理這些標誌,其實並不是那麼複雜。現實中,有時候需要用低成本的方式採集資料,這時如何保證影象質量就是需要考慮和解決的問題。

採集資訊的時候,有時候圖片會有畸變、反光、遮擋等情況,先不說解析度壓縮的問題,成像本身取決於鏡頭的質量和成本、天氣條件、光線等因素,有時候採集回來的影象中差的圖很多。這時候就不只是單純去解決一個理想當中的演算法問題,也需要處理很多實際情況。

給大家舉幾個例子,下面左邊的圖是實際採集的影象,會有各種各樣的問題。大家對相機有些瞭解的話,知道相機有內參和外參,內參是焦距、中心、畸變。外參是位置、角度,這些都會影響成像效果。

對於識別問題來說,這些相機引數不會造成太大問題,但是如果需要做一些跟幾何、位置相關的計算,這時候相機畸變和內外參不準就會造成很大的問題。我們通過把多源資料放在一起做匹配,基本可以解決這個問題。右邊是一個實際例子,相機的畸變糾正角度,有一些斜的被糾正過來了,很大的提高了後面的演算法處理。

另一個例子,影象質量。有的圖質量比較差,但是沒辦法丟掉,還是有有用的資訊。有的原始影象,放大之後非常模糊。如果這時採用影象增強的方法,可以把這張圖變得更清楚。改善原始資料的質量,有很多可用的方法。比如提高識別演算法精度,提高人工效率,也可以用它做模糊的檢測,對比一下增強前後,可以知道哪些是模糊,哪些是不模糊。

剛才舉的只是交通標誌的例子。還有一個有趣的問題,就是感知電子眼。電子眼很小,而小目標的檢測是一個有挑戰的問題,在研究領域大家也比較關注。大家可以感受下,拿一張圖,如果是太小的東西,放大之後就看不清了,還不如遠景。那怎麼能比較精確的找到這麼小的電子眼呢?

通常方式就是放大區域,因為這個東西太小了,光找這個目標比較難,找到區域放大,引入周邊的資訊。這些資訊可以幫助更好的找到這個小目標,放的再大一點,才能看到其他相關的資訊來幫助電子眼的智慧檢測。

但是放的太大也會有問題,放的太大會引入很多無關的資訊。從技術上來說有一些解決方法,現在視覺技術上用的比較多的有一個注意力機制,畫一個大框,機器自己會學哪塊重要哪塊不重要,幫助更好的聚焦到目標本身。當然,儘量會用一些先驗資訊,比如本身的分佈、高度、大小。

光檢測還不夠,很多時候真實世界在變。很多時候要分辨出哪些變了哪些沒變。以前檢測出一個電子眼,新的資料又檢測出一個電子眼,需要知道這兩個是否是同一個。

如何判斷?因為這張圖表達的不一樣,如果仔細看,確實可以看到背景的建築、架設型別都差不多。需要用演算法來判斷到底是不是,這就牽涉到目標檢測、車道歸屬、架設型別分析,還要做場景匹配。通過這些,很大程度上可以判斷這是一個什麼場景,從而判斷兩張圖的元素是不是同一個。

剛才說的是道路,下面是幾個跟POI相關的例子。POI的牌子,可以分成好多不同型別,有牌坊式、掛牌式、門臉式等。不僅POI各種各樣,非POI其實也各種各樣。如果只是檢測文字的話,你會發現真實世界裡的很多不是POI,有的只是標牌、標語、廣告、對聯、交通標誌等。所以,要區分出POI和非POI。

有很多其他的複雜場景,這裡不一一舉例了,有些可能平時也不太能想到,比如三維掛牌,它不是一個平的牌子,在街角,可能是一個水果超市,沿著街角彎曲過來。這類牌子很難在一張圖裡完全檢測出來,即使檢測出來,一不小心就會分成兩塊牌子,所以真實世界的複雜性還是會造成更多的問題。

面對這麼多複雜性,需要去分析具體場景的情況。很多時候最後的結果往往不是一個演算法就能解決所有的問題,需要各種演算法的融合。比方說,如果是文字,需要做檢測,文字本身也需要做檢測和識別。位置的話,需要做一些三維方面的推斷。很多時候資料獲取到以後也有模糊和遮擋的部分,也要做判斷。

每一個判斷不是單一辦法就可以解決,不是光靠一個模型就能夠做到最好的效果,需要的是兩個甚至更多的模型,從不同的角度去解決問題,才能夠達到更好的效果,這是在資料積累的基礎之上。

上面列舉的一些問題有一定的複雜性,跟所有的問題一樣,越做到後面越難,我們現在還在做,這些演算法很大程度上決定了地圖製作的效率和觸達到使用者的地圖質量,這些是非常重要的核心問題。

POI也不光是以上介紹的只需要判斷是不是POI或者文字識別,很多時候還需要做版面的內容理解。如果一個牌子,需要知道這個牌子上的資訊,有時候會有主名稱,有時候會有分店,有時候沒有,有沒有聯絡方式、營業範圍,這些都需要用演算法去做。

視覺技術@高德地圖-導航

以上介紹的是在地圖製作方面有很多的複雜性,需要用視覺演算法或者其他演算法來處理。接下來分享下在導航方面的。

先說下自己的一個體會。前段時間在西班牙休假,歐洲的環島特別多,谷歌(地圖)導航經常提示我,進了彎道之後從第三個出口出去,我當時特別鬱悶,因為要數口子,經常你也不知道那個到底算不算出口,所以走錯了好幾次。我在國內沒開過車,國內的交通更復雜,例如在北京的西直門,有時候可以直接右拐,有時候需要轉一個810度的圈。

我們希望對導航的方式做一個比較大的變化,讓它變成所見即所得的場景。如果有演算法能夠直接告訴人們往哪邊走,對人來說是更加有用的,能夠讓開車更加簡單,導航變得更加直接。

很多汽車現在都會有攝像頭,不管是前端還是後端,很多時候可以獲取到視訊資料。我們把AI演算法計算出的效果疊加在視訊上,告訴人們到底該怎麼走。

高德在今年4月份釋出了AR導航產品,這個產品裡有一項是實景增強,它會告訴你應該保持在這條線上繼續往前開或者轉彎,會有壓線的提示,會有箭頭告訴你前面右轉。

這個產品中,除了引導之外,還有別的功能。例如,也加入了前車的碰撞預警功能,會估計前車的距離和速度,這將幫助大家安全駕駛。其他事物也可以用更加直觀的方式展示,例如限速,電子眼,跟斑馬線相關的,如果看到前方有人,也會做出提示。

以上的功能看起來可能不那麼難,但要實現起來很難。為什麼?因為我們希望這是每個人馬上就能實用的功能,所以要做到很低的成本。這和自動駕駛系統不一樣。從感測器的角度,我們要做的是單個感測器,而且是低成本的相機。從計算的角度來說,自動駕駛系統可能會用一個幾百瓦的專用晶片,而對於我們來說,所需要的算力大概只是普通手機的五分之一。

給大家看一個AR導航的例子,這是實際演算法的輸出,這個例子裡面有車輛的檢測,車道線的分割,和引導線的計算等。剛才提到了,高效能(低算力)是一個主要挑戰,那我們在開發演算法的時候就要充分考慮計算效率,包括各種手段,比如模型壓縮,小模型訓練優化,檢測和跟蹤的結合,多目標的聯合模型,和傳統GPS導航的融合,等等,需要幾件事情在一個模型裡做。

真實世界是非常複雜的,要做到高質量、高效的地圖製作,或者做到精準的定位導航,在視覺方面還有很多工作要做。希望通過以上介紹,大家對視覺技術在高德地圖中的應用,在出行領域的應用,有了更多的瞭解,也對高德的使命有了更多瞭解。

我們在很多時候需要去連線真實世界或者是理解真實世界,才能夠讓出行更美好。希望能夠儘快的把這些做好,讓大家實際應用高德APP的時候,能夠感受到技術進步帶來的體驗變化。我今天就講到這裡,謝謝大家。

                                                                   關注高德技術,找到更多出行技術領域專業內容