單目視覺ADAS的技術與體驗升級之路|硬創公開課

雷鋒網按:本文內容來自武漢極目智能CEO程建偉在硬創公開課的分享,由雷鋒網旗下欄目「新智駕」整理。目前,單目視覺ADAS技術相對成熟,同時成本也比較低,應用最為廣泛。那麼,到底單目視覺ADAS背後有哪些技術原理(演算法、硬體)?同時如何讓廣大用戶觸手可及?

以下分享也許可以解答您的疑問:

ADAS的實現途徑;

單目視覺ADAS的基本原理;

單目視覺ADAS的技術難點(數據樣本積累、演算法、晶元、攝像頭及前後裝等);

視覺ADAS的發展趨勢。

一、ADAS的實現途徑

伴隨著這幾年自動駕駛概念的火熱,ADAS越來越受大家關注,輔助駕駛作為自動駕駛的早期階段,在整個流程里扮演著感和知的角色。

第一步是通過各種感測器來採集車身已經周邊環境信息,包括但不限於GPS、車身感測器、攝像頭及雷達等。目前汽車智能都離不開這幾種感測器的融合運用,為車輛來建立周邊的立體信息。

第二步則是根據採集到的信息來進行道路、車輛、行人和路標的識別。對各種工況下道路參與者的狀態提取,給決策者提供決策信息。如果決策者為駕駛員,那麼是輔助信息;如果決策者為制動部件,那麼就上升到AEB或者LC等Level 2以上的駕駛輔助階段。

各類感測器的機制從底層邏輯來說是比較類似的,都是光學或者模擬信號的數字化,採用演算法來還原感測量的變化。而攝像頭技術是目前ADAS領域最快速發展的感測器技術。

SA(Strategy analytics)分析指出:如果車輛前方只有一個感測器,那麼最大可能是攝像頭;如果車輛前方有多個感測器,那麼確定的是會有一個攝像頭在其中。

二、視覺ADAS的基本原理

我們以目前基於攝像頭的單目視覺為例來說明其基本原理。

整個流程包括樣本的採集及標記,同時對標記的樣本進行大範圍訓練來提取特徵和模型,將模型作為實際圖像數據進行分類識別。

另外一個維度,我們需要保證圖像源的質量,通過寬動態、強光抑制、降噪等技術來保證輸入數據源的乾淨,將真實環境清晰的數據進行邊緣化和紋理化送入分類器進行識別

同時,在這個環節我們要非常注重模型數據和圖像源數據的一致性,即樣本標記的數據和實際圖像源要來自相同的鏡頭、圖像Sensor和相同的ISP技術,來保證訓練和實際的高匹配。

這部分是目前在實驗室做數據時很難實現的,很多可能採用的是公開的樣本庫來訓練,而公開樣本庫所採用的攝像頭、鏡頭角度等並不是我們實際中使用的。

三、視覺ADAS的難點

在產品開發中,難點在各個環節都有覆蓋。

首先是演算法本身的檢測率,這是需要不斷提升的環節。需要在魯棒性和敏感性之間作平衡,來保證產品的良好體驗。

同時從產品工程化的角度講,很多時候並不能用檢測率最高的演算法,必須優化演算法速度,因為我們沒法將一顆i7晶元或者伺服器搬到汽車上去;其次是正負樣本的積累,考慮到源同步的問題,樣本積累必須來自實測,同時保證大量。

第三個方面,既然做的是產品,那麼硬體處理器和攝像頭的選擇必須考慮性價比、可量產性等。

第四,安裝方面要儘可能的簡化用戶的安裝步驟,降低安裝難度,那麼需要在演算法設計的時候充分將內外參的兼容性考慮進去,並在不同車型的測試中驗證,這部分是採用技術提升體驗的關鍵。

最後是天氣適應性,每種感測器都有自己的長處,但是也都有自身的短板,比如雷達對靜態物體、激光雷達對天氣,攝像頭也會受制於天氣和光照影響,在這些條件下,提升攝像頭前端技術變得尤為重要(Mobileye也不僅僅是一個演算法公司)。

當前階段在嵌入式端工作的演算法,普遍基於機器學習,其優點是工程化、量產化更有可行性。

任何人工智慧演算法的落地都必須具備可工程化。一方面是視覺前端的提升帶來了運算量的降低;另一方面科研人員的探索可以給技術實現提供更豐富的組合可能。

同時摩爾定律的繼續深化帶來晶元可以實時的完成更多複雜的演算法,特別是嵌入式晶元可以運行以前高配置電腦甚至伺服器才能完成的功能。

當然硬幣的另一面,依然有需要用更好的方法來解決的地方,包括有遮擋的目標物、檢測率的繼續提升等等。這些都有待攝像頭前端技術的繼續提升和深度學習演算法的嵌入式應用來解決。

四、視覺ADAS的功能

接下來我們通過兩個簡單的例子來介紹車輛識別、車道線識別、交通標誌牌識別等功能。

對車輛識別和車道線識別只是前方碰撞預警和車道偏離預警的第一步,我們還需要綜合速度、車輛自身行駛區域、前方車輛狀態等信息來進行分析,參照ISO標準來進行報警信息的輸出。

1、車輛識別及跟蹤:

2、車道線識別:

3、交通標誌識別:

基於前面基本功能和背景的分析,我們從以下幾個方面來探討ADAS技術的深化之路,它需要的是面向AEB(自動制動)、LC(車道中心保持)等。

五、視覺ADAS的硬體

視覺ADAS系統其實是一套嚴謹的光學系統或者相機。

但是它比普通相機運行的環境更加苛刻,包括振動、顛簸、高溫等因素,我們從每一個環節來保證這套系統的一致性和可靠性,特別是圖像源環節,比如說鏡頭標定、焦距控制、畸變係數的補償,這些都構成產品可量產性的重要因素。

視覺ADAS系統的內參可靠性同時要結合外部參數的差異性。比如說車輛在平路和坡道時的視覺和測距完全不一樣,我們通過對自身鏡頭的參數和外部目標的視角進行距離矯正,最終達到1個像素以內的誤差。

精準的距離測試是前車碰撞預警乃至AEB的基礎。

目前,基於單目視覺的測距方法集中於兩類:

其一,就是通過光學幾何模型(即小孔成像模型)建立測試對象世界坐標與圖像像素坐標間的幾何關係,結合攝像頭內、外參的標定結果,便可以得到與前方車輛或障礙物間的距離;

其二,就是在通過採集的圖像樣本,直接回歸得到圖像像素坐標與車距間的函數關係,這種方法缺少必要的理論支撐,是純粹的數據擬合方法,因此受限於擬合參數的提取精度,魯棒性相對較差。

正因如此,我們採用了光學幾何模型進行車距的計算。前面已經說過了,我們採用了嚴格的攝像頭標定方法可以獲得精準的內參和外參。

除此之外,影響測距精度的另一重要因素就是車輛邊緣檢測的精度。我們採用了精確的邊緣檢測和多幀綜合檢測的演算法,可以在不同的光線環境下得到相對精準的用於車距檢測的車輛坐標信息。

儘管如此,由於道路平面的多變特性,動態的距離測試必須考慮外參的動態改變數及圖像處理時的隨機誤差。圖像上幾個像素的跳變,就可能引起遠距離車距測量的較大誤差。

因此,我們在誤差來源分析的基礎上,力圖通過誤差修正方法及演算法優化方法,從多個層面降低測距誤差:

道路環境的精準重構:

同時可以保證我們對周邊其他參照系的精確重構。在這個模型圖像里,我可以看到對道路環境進行了位置重構,對車道線距離、車輛距離、車道線角度以及車高等信息完成了提取,特別是車道線的距離檢測可以達到厘米級的誤差。

六、視覺ADAS的演算法

剛才講到的是前端攝像頭,接下來是演算法端的核心。我們需要的是對樣本進行大量的訓練。我們在樣本的訓練方式上採用了一些創新,包括UGC(User Generated Content)、圖像源同步、自動提取和人工校驗相結合等。

演算法的載體是硬體,硬體的選擇需要從運算速度、功耗散熱和成本三個方面來平衡。

攝像頭、演算法及硬體最終需要通過安裝來保證設計者的意志得到體現,糟糕的安裝會導致前面的工作功虧一簣。在有安裝條件的情況下,我們通過專業安裝人員進行標定板的安裝;同時我們有大量的DIY用戶,那麼便可以通過精簡的內外參和行駛數據總結來給用戶提供個性化的報警機制。

我們目前近千台的激活用戶經過上百萬公里的行駛里程積累,產生了一些比較喜人的數據。

根據我們的駕駛行為評分系統,某個用戶在為我們貢獻了2950公里里程的實際數據的同時,他的駕駛得分得到了穩步的提高,充分體現了ADAS系統對用戶的駕駛規範性提升價值。

最後,針對視覺ADAS的發展趨勢,程建偉認為將包含以下方面:

問答環節:

雷鋒網新智駕:請問基於攝像頭如何得到物體的三維位置?基於slam能重建出運動的車輛嗎?

程:根據攝像頭的自身參數,得到目標物體的縱向距離和橫向距離,進一步計算出物體的寬度高度信息;可以通過自運動模型得到車輛的縱向和橫向運動。

雷鋒網新智駕:能否說一下單目和雙目的區別?基於視覺的測距為什麼不選雙目,會更准嗎?

程:單目更加成熟,並且對性能要求更低,安裝角度要求低;雙目可以計算圖像深度信息,能更準確的測量距離,但是運算要求高,有效距離近。人對距離的感知刷新是在0.1s級別,所以99米和100米之間的誤差,實際對人的駕駛判斷沒有太高意義。單目測距完全符合ADAS的標準。

雷鋒網新智駕:基於光學幾何模型測距的方法依賴於物體在路面的假設,如果車輛被遮擋,或者行人下半身被綠化帶遮擋,與路面沒有交點,那麼如何測距?

程:我們的鏡頭在標定時會計算FOE值,通過該參數與物體實際寬度值來計算實際距離,計算距離經過多次濾波來消除遮擋的干擾。

雷鋒網(公眾號:雷鋒網)新智駕:視覺ADAS技術需要處理的數據量多大? 需要怎麼樣的硬體資源?

程:數據處理量看功能以及優化,目前的情況是行人檢測大於車輛檢測大於車道線檢測,目前車輛和車道大概40G FLOPS,如果加上行人,會翻倍。所以硬體的選擇一方面是處理器性能,另外是優化性能的均衡。

雷鋒網新智駕:您認為傳統視覺演算法與新興CNN、RNN演算法相比優劣勢在哪裡?未來,您更看好哪種?

程:傳統視覺演算法優勢是目前成熟,計算量小,可以實現嵌入式化,低成本化;劣勢是演算法的提升後期比較困難;CNN在最近幾年得到了長足的發展,目前更多的是在伺服器後台端運行,對於嵌入式化還有一段路要走;未來隨著摩爾定律的繼續發展,硬體性能的進一步提升,CNN會有比較大的空間在嵌入式應用領域,我們這這塊也已經在做一些測試工作,也有一些比較好的結果。

雷鋒網新智駕:極目的單目ADAS方案與Mobileye有什麼區別及優勢?

程:Mobileye是單目ADAS的標杆,目前國內外單目的ADAS都是更多的在以他們為目標進行學習。極目做了更多的針對國內的路況適配,同時針對國人做了很多報警機制的優化。同時我們以移動互聯網/車聯網為載體,在大範圍樣本獲取方面,做了很多UGC的落地工作。

雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知。

推薦閱讀:

知乎在構建話題層(Ontology)方向上是如何考慮的?
這種粘連字元分割有什麼好的演算法?
翻轉字元串 (Reverse a String)

TAG:自动驾驶 | 算法 |