網頁

2021-08-04

[openpilot] Openpilot到底如何運作的?深入Comma con來認識Openpilot

喜歡本文請押讚好,如果跳出確認視窗,要再押一次"確認"才能成功給我一個讚唷~



    7/31日Comma AI在美國舉辦一場發表會叫做comma con,除了發表第四代產品Comma Three同時也說明comma的發展過程與技術架構,就像是一場開發者大會。這個大會內容含金量很高,我們來看看他們到底說了什麼吧?


    2016年Comma發表第一代comma one的首部曲產品時,在Techcrunch會議上拿出一支手機說可以讓車子自動駕駛,當時世界跟現場的人都覺得George Hotz瘋了,自動駕駛這麼高科技,怎麼可能被一支手機取代?那其他車廠不是丟臉到家了?


    到底comma是如何辦到的?

    第一個突破點是現在的汽車,在物聯網設備發展過程中越來越一致,就像現在一隻Google智慧手機手機跟Apple iphone也有非常多重疊的硬體架構。在2008~2012年左右越來越多汽車配備方向盤發動機與電子油門,這意味著車子可以自己打轉方向盤,以及可以透過電子訊號加油與剎車。當我們可以控制方向盤與油門,等於可以控制車子的移動,因為我們人開車也是靠方向盤跟油門。

    這一方面是車廠為了佈局自動駕駛的前瞻部屬,一方面也打開了汽車可以被設備控制的潛能。


    現代具備Level2能力的車種,都有三個關鍵設備,一個是毫米波雷達、方向盤發動機以及視覺鏡頭。


    所以我們只要能連接車用的通訊設備,加上資料的解讀與轉譯發送,我們就擁有了ADAS通訊通道的控制權。Openpilot就是給車子更好的訊號,就可以讓車子在原本ADAS架構下升級輔助駕駛的能力。

    


    Openpilot的架構就是手機執行視覺辨識,透過一個Panda的轉換介面,把比原車廠更正確的AI辨識結果送給車子,你的車子就等於能升級高階的ADAS功能。


    這聽起來很不可思議,一台手機連接器車就可以讓車子有更強的Ai功能,那意思就是說這麼多車廠的Ai連一隻手機都不如?是的,事實就是如此。原因在於除了手機,comma ai的ai也跟多數車廠與設備商走的路線完全不同。

在講到Ai不同之處之前,你可能會懷疑,用一隻手機控制汽車,會不會不安全?行車安全是許多方面的結果,不是單一設備可以概括承受。Openpilot因為是使用ADAS通道,意思等於他們的所有控制都在車廠的安全設計當中。


    汽車ADAS通道是給輔助設備專用的通訊,駕駛操作優先於ADAS通道,意思是駕駛只要介入操作優先性就會蓋過ADAS的操作。就像現在的ADAS設備,就算Level2、Level3運作當中,駕駛可以任意介入完全掌控,Openpilot使用ADAS就已經確保駕駛優先。而且車廠對於方向盤扭矩與油門加減速都有限制,只要在ADAS通道,就一定會符合車廠的安全規範。

   第二個是Openpilot有自己的兩道安全規範,一個是在Openpilot系統中會限制扭矩輸出,第二個是Panda safety,如果它偵測到Openpilot不正常發送訊息,超過不合理的發送訊號,Panda會暫停發送訊號給車子。

   也就是說安全性有三道關卡:ADAS通道、Openpilot Safety、Panda Safety,安全性絕對遠高於你的想像。

    所以,當你的車自裝上Openpilot之後,你看不到你的方向盤快速打轉,也無法猛加速跟猛踩剎車(除了AEB或FCW運作以外)


接下來要進入Ai的差異性,comma舉例這是車廠的ai運作方式,先用鏡頭捕捉畫面,然後感知與標記(Perception),然後開始規劃操作,接下來操作車子。聽起來很直覺很合理對不對?


    所以傳統的車廠,需要花大量時間教系統辨識周邊環境,像是Mobileye或是Waymo或是Telsa都是這樣的流程,因為他們(整個業界)認為這樣才安全。如果有玩Edge AI邊緣運算的人就知道,邊緣運算是標籤最重要過程,也是整個系統大量處裡最耗資源的地方。

   而且標籤方法有其限制,它不符合真實環境,你永遠不知道世界上其他國家有多少你標籤不出來的物體。所以大多數車商卡住了,這是你看到的為什麼車商喊自己科技很高,但是你看每一台車,不論是福特還是賓士,都只是車道維持,頂多好一點或差一點而已。

   所有的車廠都卡關了!


    除了標籤感知無法模擬所有真實路況,針對標籤的規劃也需要更多不同情況對應的模型,車廠把問題越來越複雜化,
車商把自己當成奇異博士要預知1400多萬種未來尋求完全的掌控,以至於自己無法突破自己設下的門檻。

    Comma對所有車廠提出一個啟示「每當人開車的時候,人都在告訴車子到底要如何開車。」Openpilot採用另一種全新且獨特的做法,當然它會用視覺辨識路徑,但是它是學習人對於路況的反應。


    所以在comma的訓練模式,它不讓車子花大量時間辨識標籤跟物體,它讓Ai學習什麼是人類行為,因為在高速公路,所有的安全駕駛會有一定的共通性,面對類似的場景,會有類似的操作。所以comma ai是紀錄了人類行為,它不問為什麼,它只學習當人類遇到一樣的狀況時,它應該要做什麼。






    comma採用e2e(End 2 End)的ML模仿人類的駕駛行為,所以他可以在無車道線無路標的環境下駕駛,甚至在開放式車道上可以偏右行駛。

    這是完全不一樣的Ai訓練!(Tesla拿掉雷達後也開始採用e2e)


    所以openpilot跳過Perception這個無底洞,不斷擷取用戶經驗,不斷增強的Ai的學習結果。comma的ai就是紀錄了安全駕駛的反應的一套ai系統。這種ai是什麼?類似Aphago下圍棋的經驗,他也是模擬人類對於棋局反應的結果,經過幾百萬次的訓練,它不是把所有期局每次做200、300步以後的全套推估,而是找出每一步每個位置最有可能贏的五六種下法,來跟人類競賽。不追求100%的完美掌控,一樣是超越人類的下棋大師。


    comma這個訓練系統包含了每天10萬分鐘行駛,超過5000萬哩的駕駛經驗。它給你的是,模仿人類安全駕駛的學習結果。


    結果,這種尋找路徑與模擬人類反應的ai可以適用全世界各種路況場景。都難不倒openpilot,因為它不需要標記周邊的物體,它只要知道什麼是路,什麼是最有可能人類的反應,它就能提供高品質的ai駕駛能力。


所以在各式各樣的道路中,Openpilot都可以找出人類應該會行駛的路徑,作為Openpilot的規畫邏輯。當然羅馬不是一天造成的,模仿人類學習它就需要大量的駕駛資訊與紀錄才能達成他們ai的訓練。

為什麼人類行為可以被學習?因為人開車就是為了安全的行駛,就像aphago學習人類下棋就是因為人類行為是為了贏棋。

Comma ai演示一種全新的Approach,所以它不用像Waymo消耗大量資源在非常多設備的感知系統,例如光達建立3D環境模型,或是高精度GPS加上高精度圖資來定位自己才能駕駛。



    經過了長期訓練,Openpilot證明自己靠高通神經運算系統,就可以達成高階的車道維持、車道辨識,甚至比許多車廠的系統還更聰明行駛體驗更精緻。這都是讓人覺得不可思議的地方。



Openpilot甚至在美國消費者報導的ADAS評鑑中獲得榜首。經過一整串介紹,你是不是發現comma ai這家公司真的很不一樣了呢?