盡管汽車工業目前正集中討論自動駕駛,但要讓完全自主的車輛駛上街道還需要一段時間。技術和產業發展永遠都是漸進式的,一步一步這些技術必須足夠強大,同時滿足ISO 26262等一系列汽車行業的安全標準。
目前,包括Waymo在內的多家自動駕駛領域的頭部企業都在加快L4級無人駕駛的商業化落地,但前提是目前僅僅是各國的交通主管部門或者政策制定者提供了一個相對寬松的“鼓勵政策”。
但量產,意味著技術和產品的成熟,供應鏈的成本下降到大規模應用的甜蜜點。這仍然需要行業在技術上的突破。
SAE的J3016標準確定了從“非自動化”到“完全自動化”的六個駕駛自動化級別(0級到5級)。自2010以來,駕駛輔助功能(ADAS),如ACC(自動巡航控制),LKA(車道保持輔助),LCA(車道變換輔助)或CTA(交叉交通警報)等已經出現了越來越多的量產車型上。
在下一步(從2019年到2020年),這些系統被進一步集成以實現諸如AEB(自動緊急制動)或TJA(交通堵塞輔助)等功能,目前這幾項功能在2019年上市車型中已經出現滲透率不斷上升的趨勢。
而L3級公路自動駕駛仍然需要駕駛員負責,并且必須能夠在短時間內進行干預,這對于量產車而言仍然具備一定的難度。目前也僅有少數幾款車型在嘗試提供給消費者使用,但成熟度仍然存在挑戰。
技術和市場的進步幾乎總是遵循相似的模式。最初,一種新技術作為一種創新出現,使新的應用成為可能。這通常與客戶方面的高期望相關,與技術的成熟度水平形成鮮明對比。
ADAS和AD技術正是遵循這一曲線,基于現有的控制技術(例如,轉向控制、驅動控制)、GPS和HMI技術,用于L1級應用的傳感器技術(雷達、超聲波、攝像頭等)是多年前開發的。
這些應用已經達到了量產成熟度,汽車制造商現在可以付出更低的成本獲得更多智能的攝像頭和高性能的毫米波雷達(ABCD的新一代雷達大多是在今年底到明年真正量產)——所以,它們現在具有最高的增長率。
從2019年開始,具有L3級應用的車輛將可用于批量生產,但L4級和5級是目前討論最多的,可是技術的成熟度仍然很低,尤其是深層神經網絡(DNN/CNN)被認為是L4級最有前景的應用和補充,但其效用仍需在測試中去得到證實。
迄今為止,汽車行業仍然大部分在沿用傳統的視覺及數據計算方法。不同的傳感器,例如攝像頭或雷達,由傳感器層使用硬件加速器單獨計算并創建單獨的對象列表。
融合層創建一個360°環境模型,然后將此模型處理到抽象層,其中運行諸如自由空間檢測或碰撞時間之類的函數,以確定驅動策略的關鍵參數。
下面的應用層使用這些參數來執行路徑或運動規劃,并為制動層生成命令。這種傳統的方法可以用來實現NCAP應用程序和自動化級別達到L3級。
而目前,基于深層學習(DL)的算法是對上述傳統計算路徑的冗余。DL可以執行諸如語義分割、重新映射(如SLAM:同時定位和映射)、數據提取和驅動策略的確定之類的任務。
有兩種可能的方法:無監督的DL(端到端)和有監督的DL。DL層控制車輛并向駕駛員提供允許在交通中進行更復雜操作的功能,盡管保留了傳統的CV方法來監視來自DL層的決策。
自2011年以來,DL方法在基于圖像的分類精度方面明顯優于傳統的CV方法,特別是使用DNNs和卷積神經網絡(CNNs)。
我們從全球著名的數據測試集KittiVision的基準測試可以看到一些端倪。KITTI數據集由德國卡爾斯魯厄理工學院和豐田美國技術研究院聯合創辦,是目前國際上最大的計算機視覺算法評測數據集之一。
數據集用于評測立體匹配(stereo)、光流(flow)、場景流(sceneflow)、視覺里程計(visual odometry)、物體檢測(object detection)和跟蹤(tracking)、道路分割(road)、語義分割(semantics)等計算機視覺技術的性能。KITTI包含市區、鄉村和高速公路等場景采集的真實圖像數據,每張圖像中最多包含15輛車和30個行人,且存在不同程度的遮擋與截斷。
KITTI道路檢測基準:前20種算法中的80%基于CNN;汽車立體視覺基準:前20種算法中有一半是基于CNN;但汽車光流(在圖像中發現移動物體)檢測基準:前20種算法中的80%到90%仍然使用傳統的CV方法。
從中可以看出,短期內仍是傳統CV與CNN的融合效率更高。兩種方式目前來看各有利弊,更關鍵的是現在的成熟量產芯片架構(車規級、低功耗、高性能)決定了量產方案的選擇。
CNNs有四個關鍵點:準確性、網絡拓撲、數據類型和數據層的大小。這些因素直接影響推理部分,這是實際的硬件加速器。這種硬件加速器的特征還包括四個參數:性能、功耗、內存帶寬,當然還有成本。
在當前最先進的神經網絡設計中,有兩條主要途徑是向前發展:通過提高性能MAC(Multiply Accumulate)來提高精度,或者在相同的精度水平上降低性能。作為一個經驗法則:為了提高精度5%,性能必須增加10倍。
減輕性能提高的另一個主要研究領域是通過采用整數或甚至位表示來折衷數據類型。數據類型約簡的適用性很大程度上取決于要解決的問題。
然而,目前的技術狀態顯示16位固定點相對于32位浮點具有1%的精度損失。從推理層的能量概念來看,有兩個因素尤其不利:內存訪問和浮點計算。
對DRAM的32位讀訪問將消耗640 PJ(Piojoule),而SRAM訪問需要5 PJ。32位浮點乘法消耗3.7個PJ,而8位整數乘法僅需要0.2個PJ。
為了實現嵌入式系統的最低可能功耗,推理引擎將專門進行整數計算(16位,可能考慮更高的精度損失,8位)和無內存架構(最小化對DDR和本地SRAM的訪問)。
傳統的計算體系結構,如CPU和GPU,利用其高性能和高靈活性,是目前CNN學習和推理的主流。然而,這些措施并不是有效的,尤其是從電力消耗的角度來看。
對于5x5卷積濾波器,總共需要50個讀(數據和操作數)、25個MAC和一個回寫。這意味著每個MAC需要三個指令,其中指令效率僅為30%左右。
從能量的角度來看,這導致浮點計算大約425pj,其中60%是由于實際的浮點MAC操作——考慮到數據在本地緩存中。移動到16位不動點整數,能量消耗下降到276pJ,并且這其中只有10%是由于實際的MAC操作。結果,與傳統的CPU/GPU架構相比,優化的CNN架構可以提供20倍的性能改進。
此外,未來的需求將需要更高的性能。如上所述,如果精度需要提高5%,那么CNN的性能必須提高10倍。
傳感器和輸入層的數量也增加了。今天的1兆像素(MP)傳感器將被多個MP傳感器(8×2MP或4×4MP)所取代。換句話說,性能應該增加10倍的倍數。
現在,可以預見,2019年將需要4TOPS(每秒Tera操作)的性能;2022年,要達到40TOPS或更多,換句話說:必須增加倍數為10的因子。
按照傳統的CPU/GPU體系結構,最好的結果是在2年內性能提升2倍,同時將功耗保持在較低的水平,這需要整個通用芯片架構的變革。
而現有的處理器架構只能通過更高的功耗(50W及以上)來實現。(英偉達DRIVE AGX Xavier是在30 TOPS,30W功耗,預計量產時間是在2020年,滿足L4級自動駕駛。)
在目前的計算體系結構中,需要通過提供更專用的硬件IP來保持在可控區域中的嵌入式功率。這將不像CPU/GPU那樣靈活,但是允許更高的計算效率。
一直以來,包括NXP、瑞薩等傳統汽車半導體廠商,都是通過DL硬件加速,集成基于現有算法的專用硬件IP來實現最佳性能/功率效率。這些IP使得CNN的高性能、低功耗的實現成為可能。
-
CV
+關注
關注
0文章
53瀏覽量
16879 -
自動駕駛
+關注
關注
784文章
13877瀏覽量
166647 -
cnn
+關注
關注
3文章
353瀏覽量
22256
原文標題:自動駕駛量產路徑,從傳統CV到CNN | GGAI視角
文章出處:【微信號:ilove-ev,微信公眾號:高工智能汽車】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論