Are we ready for driverless cars?
Lauren Isaac TEDxSacramento
Lauren Isaac TEDxSacramento
leiphone 作者:谷磊
按:本文作者 Kevin Zhong,博世研發工程師。原載於知乎。
深度學習在無人駕駛領域主要用於圖像處理,也就是攝影機 上面。當然也可以用於雷達的數據處理,但是基於圖像極大豐富的資訊,以及難以手工建模的特性,深度學習能最大限度的發揮其優勢。
現在介紹一下全球攝影機領域的巨擘,以色列的 Mobileye 公司是怎麼在他們的產品中運用深度學習的。 深度學習可以用於感知、辨識周圍環境、各種對車輛有用的資訊;也可以用於決策,比如 AlphaGo 的走子網路(Policy Network),就是直接用 DNN 訓練, 如何基於當前狀態作出決策。
環境辨識方面,Mobileye 把他們辨識方面的工作,主要分為三部分,物體辨識,可行駛區域檢測,行駛路徑辨識。
- 物體辨識
一般的物體辨識是這樣子的:
有一個長方形框框能辨識出來車在哪裡,很好,很不錯,但是 Mobileye 出來的是這樣子的:
以及這樣子的:
很明顯的區別,就是 Mobileye 可以實現非常準確的車的正面,以及側面的檢測,以及完全正確的區分左邊側面,以及右邊側面(黃色和藍色)。
這兩種檢測結果的資訊量是完全不同的,左邊這個檢測結果告訴我們什麼位置大概有一輛車,但是他的具體位置,車的朝向信息完全沒有。
但是從右邊的檢測結果,就可以相對精確的估算出來車的位置,行駛方向等重要信息,跟我們人看到後可以推測的信息差不多了。
這樣出眾的結果,對於較近距離的車,用其他基於幾何的方法,多跟蹤幾幀,可能可以做到接近的效果,但是留意遠處很小的車,結果也完全正確,這就只可能是深度學習的威力了。
可惜 Mobileye 創始人兼 CTO,總愛四處顯擺他們技術怎麼怎麼牛,之前也常發論文共享一些技術,但是在車輛辨識怎麼建模神經網路,可以輸出這麼精確帶 Orientation 的 bounding box,他只是微微一笑,說這裡面有很多 tricks……
可惜 Mobileye 創始人兼 CTO,總愛四處顯擺他們技術怎麼怎麼牛,之前也常發論文共享一些技術,但是在車輛辨識怎麼建模神經網路,可以輸出這麼精確帶 Orientation 的 bounding box,他只是微微一笑,說這裡面有很多 tricks……
如果誰知道學術界有類似的工作,請私信告訴我, 拜謝
- 可行駛區域(free space)檢測
深度學習以前的可行駛區域檢測,有兩種方法,一是基於雙目攝影機立體視覺,或者 Structure from motion, 二是基於局部特徵,馬爾科夫場之類的圖像分割。結果是這樣的:
綠色部分是可行駛區域檢測,看著還不錯對不對? 但是注意左邊的綠色部分涵蓋了馬路「倒鴨子」(路邊石),以及人行道部分,因為「倒鴨子」也就比路面高十釐米左右, 靠立體視覺是很難跟馬路區分開來的。而傳統的圖像分割也很困難,因為局部特徵上,「倒鴨子」上和路面的顏色極其接近。區分二者需要對環境整個context的綜合理解。
自從有了深度學習可以做 scene understanding 之後,這個問題終於被攻克了:
綠色部分還是可行駛區域,馬路右邊的路肩,跟路面的高度相差無幾,顏色 texture 也是一模一樣,用立體視覺的方法不可能區分開來。
而且不僅僅可行駛區域的邊界,準確檢測出來了,連為什麼是邊界的原因也可以檢測出來:
紅色表示是物體跟道路的邊界,滑鼠位置那裡表示的是 Guard rail(護欄),而上一張圖應該是 Flat。這樣在正常情況下,知道哪些區域是可以行駛的,而在緊急情況下,也可以知道哪裡是可以衝過去的。
當然,相較於第一部分,這一部分的原理是比較清楚的,就是基於深度學習的 scene understanding。學術界也有蠻不錯的結果了,比如下圖(Cambridge的工作),路面跟倒鴨子就分的很好(藍色跟紫色):
- 行駛路徑檢測
這一部分工作要解決的問題,主要是在沒有車輛線,或者車輛線狀況很差的情況下,車怎麼開的問題。如果所有的路況都如下:
那當然很完美,但是由於路況或者天氣,有些時候車輛線是很難檢測到的。
深度學習為此提供了一個解決辦法。我們可以用人在沒有車道線的路況下,開車的數據來訓練神經網路,訓練好之後,神經網路在沒有車道線的時候,也能大概判斷未來車可以怎麼開。
這一部分原理也是比較清楚的,找一個人開車,把整個開車的過程攝影機的錄影保存下來,把人開車的策略車輛的行駛路徑,也保存下來。
用每一幀圖片作為輸入,車輛未來一段時間(很短的時間)的路徑,作為輸出訓練神經網路。
之前很火的 Comma 公司,黑蘋果手機那個創立的,做的無人駕駛就是這種思路,因為其可靠性以及原創性還被 LeCun 鄙視了。
這一部分原理也是比較清楚的,找一個人開車,把整個開車的過程攝影機的錄影保存下來,把人開車的策略車輛的行駛路徑,也保存下來。
用每一幀圖片作為輸入,車輛未來一段時間(很短的時間)的路徑,作為輸出訓練神經網路。
之前很火的 Comma 公司,黑蘋果手機那個創立的,做的無人駕駛就是這種思路,因為其可靠性以及原創性還被 LeCun 鄙視了。
結果如下,可以看到神經網路提供的行駛路徑,基本上符合人類的判斷:
更極端的情況:
綠色是預測的行駛路徑。沒有深度學習,這種場景也是完全不可能的。當然,我在最近的另外一個答案裡面提到了,不能完全依靠神經網路來做路徑規劃,Mobileye 也是綜合傳統的車道線檢測,上面提到的場景分割檢測到的護欄等,這一部分的神經網路輸出等等,做信息融合最後,得到一個穩定的完美的行駛路徑。
沒有留言:
張貼留言