在深度學習中添加時間訊息,讓自動駕駛汽車能夠預測周圍移動目標的未來軌跡。
編輯手札:這是 NVIDIA DRIVE Labs自動駕駛實驗室系列影片的一支,我們以工程技術為重點的角度研究自動駕駛汽車的各個挑戰以及 NVIDIA DRIVE AV 軟體團隊如何解決這些問題。您可點此查看我們自動駕駛汽車其他文章。
任務:預測物體的未來運動
方法:遞歸神經網路(RNN)
在行車過程中,駕駛員會遇見其他注意力不集中的駕駛員不合理改變車道或者行人突然從停放的車輛之間竄出來的情況,駕駛狀況變化無常。
這種出乎意外的演習意味著駕駛員在行車過程中,需要為未來將出現的各種駕駛情況做好準備。
如果我們能夠準確地預測一輛汽車是否會突然繞到我們車輛的前方,或者行人是否會穿過馬路,我們就能夠為自己的駕駛操作做出最佳的規劃決策。
自動駕駛汽車面臨著同樣的挑戰。借助運算方法和感測器數據(比如一系列圖像),自動駕駛汽車可以及時判斷出物體正在如何移動。通過這類時間訊息,它能夠準確地預測周圍移動目標的未來軌跡,並根據需要調整其行駛路徑。
關鍵在於分析圖像序列中的時間訊息,並且即使在擁有不確定性和不可預測性的情況下,也能準確預測目標的未來運動。
為了實現這種預測, NVIDIA 使用了深度神經網路家族中的成員之一,我們稱之為循環神經網路(RNN)。
什麼是循環神經網路(RNN)?
典型的卷積神經網路(CNN)在提供圖像畫面中處理訊息,這與它們從之前畫面中學習到的訊息無關。然而循環神經網路擁有記憶功能,因此它們在運算並預測未來時可以利用過去的學習結果。
可以說,循環神經網路能夠利用自然的方式提取一個時間序列的圖像(也就是影片),並生成最先進的時間預測結果。
擁有從大量時間數據中學習的能力是循環神經網路的重要優勢。由於循環神經網路並不僅僅依賴圖像中本地的、畫面到畫面、基於像素的變化,在對行人及動物等非固定移動目標的未來運動軌跡進行預測時,該網路擁有更高的可靠性。
循環神經網路在預測移動目標未來軌跡(即移動目標的未來位置和速度)時還可以使用上下文訊息,如一個給定目標相對於其靜態環境將如何移動。
利用跨感測器數據訓練循環神經網路
雷達和光達感測器非常擅長測量移動目標的速度。因此, NVIDIA 使用來自兩個感測器的數據來生成地面實況訊息去訓練循環神經網路以預測目標的速度,而不試圖使用從人類標記的攝影機圖像中提取此類訊息。
白色框代表目標對象當前位置,黃色框代表循環神經網路對這些對象未來移動位置的預測。
具體來說,我們將光達和雷達的訊息輸入到攝影機中,並用速度數據標記攝影機圖像。這就使我們能夠利用跨感測器融合來創造一個自動的數據流程,為循環神經網路的訓練生成地面實況訊息。
循環神經網路輸出包括每個在場景中檢測到的動態對象(如車輛和行人)的碰撞時間(TTC)、未來位置以及未來速度預測。這些結果能夠為自動駕駛汽車中的縱向控制功能(如自動巡航控制和自動緊急制動)提供必要的輸入訊息。
借助循環神經網路從過去學習的能力, NVIDIA 能夠為自動駕駛汽車創造更安全的未來。