訂閱
糾錯
加入自媒體

自動駕駛汽車預(yù)測周圍環(huán)境是由哪些技術(shù)支撐的?

為什么自動駕駛要做“預(yù)測”

自動駕駛汽車要安全行駛,光知道眼前有什么還不夠,更重要的是能預(yù)判接下來會發(fā)生什么。打個比方,開車的人不僅看前方的車位,還會判斷那輛車是不是要并線、那個行人是不是準備過馬路。自動駕駛也是這樣,如果只是把物體的位置和速度報出來,規(guī)劃器就只能被動反應(yīng),容易出現(xiàn)緊急制動、急拐或讓乘客覺得不舒服等情況。預(yù)測的核心價值是把“可能發(fā)生的未來”提前告訴決策層,讓車能提前準備,從而做出提前減速、放棄變道或慢慢避讓等決策,從而把突發(fā)情況變成可控事件。

預(yù)測不僅僅是讓自動駕駛系統(tǒng)可以思考,預(yù)測的時間尺度也很重要。像是未來1s~2s的短時間的預(yù)測,多半是根據(jù)當前速度和方向往前延伸就能大致估計,這是為了避免追尾等即時風(fēng)險;而三到六秒、甚至十秒的預(yù)測,則需要理解對方的意圖,比如前方車輛是不是要進出口匝道,對面的騎車人是不是要拐彎。這兩類預(yù)測用到的技巧不一樣,短期更多靠物理和濾波,長期則要靠對道路語義和人車互動的理解。預(yù)測不是可選項,而是把“看見”變成“懂得可能發(fā)生什么”的必要能力。

自動駕駛是怎么做預(yù)測的?

想要讓自動駕駛汽車做好預(yù)測,首先得有靠譜的輸入。攝像頭、雷達、激光雷達會把周圍的物體“看”出來,然后跟蹤模塊把同一個目標在時間上連成軌跡,告訴系統(tǒng)這個目標現(xiàn)在在哪兒、速度多快、朝哪個方向。高精度地圖在這個環(huán)節(jié)中的作用也很關(guān)鍵,高精度地圖能告訴系統(tǒng)車道在哪兒、路口怎么連、哪里有人行橫道,這些信息可以把未來的可能性大幅縮小。沒有穩(wěn)定的跟蹤和時間同步,預(yù)測的基礎(chǔ)就不牢。

想實現(xiàn)預(yù)測,其實有幾類比較直觀的辦法。最簡單的是把車輛或者行人當作遵循物理規(guī)律在走的“物體”,用當前速度和加速度往前推幾步,這種做法快、穩(wěn),短時間內(nèi)的決策通常夠用。還有一種叫概率/濾波的方法,會把不確定性考慮進去,用數(shù)學(xué)工具維護“可能狀態(tài)”的分布,在遇到傳感器噪聲或遮擋時會更穩(wěn)。第三種是靠數(shù)據(jù)學(xué)出來的方法,也就是現(xiàn)在比較火熱的深度學(xué)習(xí)。它們把歷史軌跡、地圖信息、周圍車輛的行為一股腦兒丟進模型,學(xué)習(xí)從復(fù)雜場景里直接輸出“未來可能的幾條軌跡”。這些學(xué)習(xí)方法能捕捉到禮讓、并線、繞行等策略性行為,但需要大量數(shù)據(jù)來訓(xùn)練。

當然,在實際的交通環(huán)境中,交通參與者并不只會做一個的動作,比如在十字路口,一輛車可能直行也可能左轉(zhuǎn),這就是所謂的多模態(tài)。因此在預(yù)測技術(shù)中,通常不會只給一條“最可能”的路,而是給幾條帶概率的候選軌跡,或者直接給出一個軌跡的概率分布。這樣做的好處是規(guī)劃器可以基于概率來做風(fēng)險權(quán)衡,某條軌跡雖然最可能,但另一條低概率但高風(fēng)險的軌跡會導(dǎo)致碰撞,系統(tǒng)就會選擇更保守的策略。與此同時,預(yù)測系統(tǒng)還要把模型沒見過的情況區(qū)分出來,也就是模型不確定性。如果模型對當前場景信心不足,系統(tǒng)應(yīng)該主動變得保守,比如執(zhí)行減速或請求人工接管的動作。

自動駕駛系統(tǒng)在預(yù)測時還有一個很關(guān)鍵的問題就是互動,路上的參與者會互相影響。比如準備變道的車會觀察旁邊車的速度,旁邊車的反應(yīng)又會影響它的決策。把每個目標獨立預(yù)測通常會出問題,尤其是在人多、車多的城市路段,每個目標獨立預(yù)測通常沒有什么意義。因此現(xiàn)在常用的方法會把周邊對象的信息“聚合”起來,學(xué)習(xí)他們之間如何相互影響。有的用注意力機制把影響大的對象加權(quán),有的把道路和車輛抽成圖結(jié)構(gòu),用圖神經(jīng)網(wǎng)絡(luò)來傳播影響信息。總之,交互建模是讓預(yù)測更貼近真實行為的關(guān)鍵一步。

想要讓預(yù)測技術(shù)應(yīng)用到實際,其實還有一個細節(jié)是如何表示這些信息。早期很多系統(tǒng)把場景渲染成鳥瞰的格子圖像(BEV),再用卷積網(wǎng)絡(luò)處理,這種方式直觀,但對表達長距離道路拓撲不夠高效。最近更流行把車道、路口這些用向量方式表示,結(jié)合圖網(wǎng)絡(luò)或基于矢量的Transformer,既節(jié)省計算又更符合道路的結(jié)構(gòu)。在實際應(yīng)用中多選擇模塊化方案,即感知先把結(jié)構(gòu)化信息(物體、軌跡、地圖語義)產(chǎn)出來,預(yù)測模塊再用這些干凈的輸入做判斷,這樣利于驗證和可解釋。

把預(yù)測放到真實車上有何實際難題?

把一個預(yù)測模型從實驗室放到真車上,將會有很多問題。第一個是延遲,模型越復(fù)雜推理越慢,延遲會侵蝕決策時間窗,影響能否及時應(yīng)對突發(fā)情況。第二個是算力,車上的計算資源有限,必須在精度和速度間取舍。第三個是驗證,光看預(yù)測模型訓(xùn)練時的誤差指標完全不夠,必須把預(yù)測器放到整個感知—預(yù)測—規(guī)劃—控制的閉環(huán)里做仿真和路測,看看在預(yù)測出錯時整車系統(tǒng)是否還能保證安全。這種閉環(huán)評估比單獨看軌跡誤差更能發(fā)現(xiàn)真實風(fēng)險。

對于預(yù)測模型來說,數(shù)據(jù)很重要但也很難。大多數(shù)危險的場景一般不會出現(xiàn),真實道路上很難收集到足夠多的樣本。為了解決這個問題,在很多技術(shù)實現(xiàn)中會通過仿真合成或放大這些長尾場景來訓(xùn)練和驗證,或者是做場景挖掘,把真實數(shù)據(jù)里出現(xiàn)的復(fù)雜場景抽出來作為重點測試用例。當然那,在這一環(huán)節(jié)中,標注也不能馬虎,軌跡標簽要時間對齊、定位準確,否則模型會學(xué)到錯的規(guī)律。

預(yù)測模型在運行時還需要有明確的守護策略。預(yù)測模塊要跟規(guī)劃模塊約定好接口,比如候選軌跡的數(shù)量、置信度怎么表達、當置信度低時采取的默認動作等。自動駕駛系統(tǒng)還要能檢測輸入分布漂移,如果當前遇到的場景和模型訓(xùn)練時差別很大,系統(tǒng)應(yīng)該自動觸發(fā)更保守策略。很多事故并不是單一模塊出錯,而是模塊之間對風(fēng)險的理解不一致導(dǎo)致的連鎖反應(yīng),所以接口和降級策略的設(shè)計要在系統(tǒng)層面就考慮清楚。

最后的話

預(yù)測前方交通環(huán)境既是科學(xué)問題也是系統(tǒng)工程問題。它結(jié)合了物理規(guī)律、概率理論與大規(guī)模數(shù)據(jù)驅(qū)動方法,同時必須通過嚴謹?shù)墓こ舔炞C與運行時守護來保證安全。一個既能輸出多模態(tài)候選又能提供可信置信度、并和規(guī)劃器協(xié)同做風(fēng)險加權(quán)決策的預(yù)測—規(guī)劃閉環(huán),才是真正具備落地能力的解決方案。

-- END --

       原文標題 : 自動駕駛汽車預(yù)測周圍環(huán)境是由哪些技術(shù)支撐的?

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    掃碼關(guān)注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯
    x
    *文字標題:
    *糾錯內(nèi)容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網(wǎng)安備 44030502002758號