Rethinking the Open-Loop Evaluation of End-to-End Autonomous Driving in nuScenes
關鍵字:端對端自動駕駛,nuScenes 開環評估
現有的自動駕駛系統通常被分為三個主任務:感知、預測和規劃;規劃任務涉及基於內部意圖和外部環境來預測自車的運動軌跡,並操縱車輛。現有方案大部分在nuScenes 資料集上評估他們的方法,評估指標為L2 error 和碰撞率(collision rate)
本文重新對現有的評價指標做了評估,探索他們是否能夠準確地度量不同方法的優越性。本文也設計了一個 MLP-based 方法,將原始 sensor 資料(歷史軌跡、速度等)作為輸入,直接輸出自車的未來軌跡,不使用任何感知和預測訊息,例如 camera 影像或 LiDAR。令人驚訝的是:這樣一個簡單的方法在 nuScenes 資料集上達到了 SOTA 的 planning 效能,減少了 30% 的 L2 error。我們進一步深入分析,對於 nuScenes 資料集上的規劃任務很重要的因子提供了一些新的見解。我們的觀察也表明,我們需要重新思考 nuScenes 中端到端自動駕駛的開環評測方案。
本文希望對nuScenes 上端到端自動駕駛的開環評測方案做評估;不使用視覺和Lidar 的情況下,只使用自車狀態和高級命令(總共21 維的向量)作為輸入就可以在nuScenes 上達到Planning 的SOTA。作者由此指出了nuScenes 上開環評測的不可靠性,給出了兩個分析:nuScenes 資料集上自車軌跡傾向於直行或曲率非常小的曲線;碰撞率的檢測和網格密度相關,並且資料集的碰撞標註也有噪聲,目前評估碰撞率的方法不夠穩健且準確;
相關工作:ST-P3[1] 提出一種可解釋的基於視覺的端對端系統,將感知、預測和規劃的特徵學習進行統一。 UniAD[2] 對Planning 任務進行系統化設計,採用基於query 的設計連接中間多個任務,可以對多個任務的關係進行建模和編碼;VAD[3] 以完全向量化的方式對場景進行構建模,不需要稠密的特徵表示,在計算上更有效率。
本文希望探討現有的評估指標是否能準確地測量不同方法的優劣。本文僅使用了自車在行駛中的的物理狀態(現有方法所使用資訊的子集)來進行實驗,而不是使用相機和雷射雷達提供的感知和預測資訊。總之,本文的模型沒有用視覺或點雲特徵的編碼器,直接將自車的物理資訊編碼為一維向量,在 concat 之後送到 MLP 中。訓練使用 GT 軌跡進行監督,模型直接預測自車未來一定時間內的軌跡點。 follow 之前的工作,在nuScenes 資料集上使用L2 Error 和碰撞率(collision rate.)進行評估雖然模型設計簡單,但獲得了最好的Planning 結果,本文將此歸因於當前評估指標的不足。事實上,透過使用過去的自車軌跡、速度、加速度和時間連續性,就可以在一定程度上反映出自車在未來的運動##3.2 模型結構模型結構總覽
模型輸入包括兩個部分:自車狀態以及代表未來短期運動趨勢的進階命令。
自車狀態:蒐集了自車過去
=4幀的運動軌跡、瞬時速度和加速度
進階指令:由於我們的模型不使用高精地圖,所以需要進階指令進行導航。依照常見的作法,定義了三種類型的指令:左轉、直行和右轉。具體來講,當自車在未來 3s 中將向左或向右位移大於 2m 時,將相應的命令設為左轉或右轉,否則則是直行。使用維度為 1x3 的 one-hot 編碼來表示高階指令 網路結構:網路就是簡單的三層MLP(輸入到輸出的維度分別為21-512-512-18),最終輸出的幀數=6,每一幀輸出自車的軌跡位置(x,y 座標)以及航向角(heading 角) #損失函數 ##損失函數:使用L1損失函數進行懲罰 資料集 :在nuScenes 資料集上做實驗,nuScenes 資料集包括1K 場景和大約40K 關鍵幀,主要收集在波士頓和新加坡,使用配備LiDAR 和周視攝影機的車輛。為每一幀收集的數據包括多視角 Camear 影像、LiDAR、速度、加速度等。 超參數設定及硬體:PaddlePaddle 和PyTorch 框架,AdamW 優化器(4e-6 lr 及1e-2 weight decay),cosine scheduler,訓了6 個epoch,batch size為4,用了一張V100 但自車在收集資料時實際上不會與其他任何對象發生碰撞,這導致碰撞被錯誤檢測。 當 ego 車輛接近某些物件時會導致錯誤的碰撞,例如小於單一 Occupancy map 像素的尺寸。 圖三展示了此現象的範例,以及兩種不同網格大小的地面實況軌跡的碰撞偵測結果。橙色是可能被誤檢為碰撞的車輛,在右下角所示的較小網格尺寸(0.1m)下,評估系統正確地將GT 軌跡識別為不碰撞,但在右下角較大的網格尺寸(0.5m)下,會出現錯誤的碰撞偵測。 在觀察佔用網格大小對軌跡碰撞偵測的影響後,我們測試了網格大小為0.6m。 nuScenes 訓練集有 4.8% 的碰撞樣本,而驗證集有 3.0%。值得一提的是,當我們先前使用 0.5m 的網格大小時,驗證集中只有 2.0% 的樣本被錯誤分類為碰撞。這再次證明了目前評估碰撞率的方法不夠穩健和準確的。 作者總結:本文的主要目的是提出我們的觀察結果,而不是提出一個新的模型。儘管我們的模型在 nuScenes 資料集上表現良好,但我們承認它只是一個不切實際的玩具,無法在現實世界中發揮作用。在沒有自車狀態的情況下駕駛是一項難以克服的挑戰。儘管如此,我們希望我們的見解將促進該領域的進一步研究,對端到端自動駕駛的進步能夠重新評估。 這篇文章是對近期端到端自動駕駛在 nuScenes 資料集上評測的一次正本清源。不論是隱式端對端直接出Planning 訊號,還是顯式端對端有中間環節的輸出,很多都是在nuScenes 資料集上評測的Planning 指標,而Baidu 這篇文章指出這種評測並不靠譜。這種文章其實還蠻有意思,發出來其實是打了很多同行的臉,但是也是在積極地推動行業往前走,或許端到端不用做到Planning(感知預測端到端即可),或許大家在評估性能的時候多做一些閉環測試(CARLA 模擬器等),能夠更好地推動自動駕駛社區的進步,能夠把論文落到實車上。自動駕駛這條路,還是任重道遠~ 原文連結:https://mp.weixin.qq.com/s/skNDMk4B1rtvJ_o2CM9f8w4.論文的實驗
#4.1 實驗設定
評測指標:使用 ST-P3 論文的評測程式碼(https://github.com/OpenPerceptionX/ST-P3/blob/main/stp3/metrics.py)。評估1s、2s和3s時間範圍的輸出軌跡。為了評估預測的自車軌跡的質量,計算了兩個常用的指標:4.2 實驗結果
表1 和現有的基於感知的方法進行比較在表1 中進行了一些消融實驗。以分析速度、加速度、軌跡和 High-level Command 對本文模型效能的影響。令人驚訝的是,僅使用軌跡作為輸入,沒有感知訊息,本文的 Baseline 模型已經實現了比所有現有方法更低的平均 L2 誤差。 當我們逐漸向輸入添加加速度、速度和 High-level Command 時,平均 L2 誤差和碰撞率從 0.35m 降低到 0.23m,將 0.33% 降低到 0.12%。同時將 Ego State 和 High-level Command 作為輸入的模型實現了最低的 L2 誤差和碰撞率,超過了所有先前最先進的基於感知的方法,如最後一行所示。
4.3 實驗分析
文章從兩個角度分析了自我車輛狀態在nuScenes訓練集上的分佈:未來3s的軌跡點;航向角(heading / yaw角)和曲率角(curvature angles)
#nuScenes 訓練集的分佈分析。 在圖 2 (a) 中繪製了訓練集中的所有未來 3s 軌跡點。從圖中可以看出,軌跡主要集中在中間部分(直),軌跡主要是直線,或曲率非常小的曲線。 航向角表示相對於當前時間的未來行駛方向,而曲率角反映了車輛的轉彎速度。如圖 2 (b) 和 (c) 所示,近 70% 的航向角和曲率角分別位於 -0.2 到 0.2 和 -0.02 到 0.02 弧度的範圍內。這項發現與從軌跡點分佈中得出的結論是一致的。 基於上述對軌跡點、航向角和曲率角分佈的分析,本文認為在 nuScenes 訓練集中,自車傾向於沿直線前進,在短時間範圍內行駛時以小角度前進。
Occupancy map 的不同網格大小引起GT 軌跡會發生碰撞在計算碰撞率時,現有方法的常見做法是將車輛和行人等物件投影到鳥瞰圖(BEV) 空間中,然後將它們轉換為圖中的佔用區域。而這就是精度損失之處,我們發現一小部分GT 軌跡樣本(約2%)也與佔用網格中的障礙物重疊,5. 文章評估
參考
以上是自動駕駛領域的端對端技術是否會取代Apollo、autoware等框架?的詳細內容。更多資訊請關注PHP中文網其他相關文章!