drawtonomy 與 CARLA ScenarioRunner
不是比較——不同的層次
Section titled “不是比較——不同的層次”drawtonomy 與 CARLA ScenarioRunner 並非競爭工具。它們位於同一生態系的不同層次:
- drawtonomy — 用於編寫場景的二維瀏覽器白板。輸出 OpenSCENARIO 1.3 + OpenDRIVE 1.8。
- CARLA ScenarioRunner — 用於 CARLA 模擬器的基於 Python 的場景定義與執行引擎。使用 OpenSCENARIO 1.0 / 2.0(以及以 Python 介面定義的場景)。
兩者的關係是「drawtonomy 生產,ScenarioRunner 使用」——在格式匹配時。
CARLA ScenarioRunner 的功能
Section titled “CARLA ScenarioRunner 的功能”依據官方說明文件:
- 透過 Python 介面或 OpenSCENARIO 標準進行場景定義。
- 支援 OpenSCENARIO 1.0——涵蓋對操縱動作、條件、故事與 Storyboard 的初步支援。
- 支援 OpenSCENARIO 2.0 標準。
- 基於 Python,無需建置步驟。
- 與 CARLA 採用相同授權的開源專案。
ScenarioRunner 是在 CARLA 中定義與執行場景的標準方式。
drawtonomy 的適配方式
Section titled “drawtonomy 的適配方式”drawtonomy 的匯出器輸出 OpenSCENARIO 1.3 的子集。ScenarioRunner 主要針對 OpenSCENARIO 1.0,因此在邊緣情況下可能存在規格版本不匹配的問題。drawtonomy 的主要重播目標是 esmini,其對 1.x 版本的處理更為一致。
若要將 drawtonomy 的輸出用於 CARLA:
.xosc可能需要手動編輯,以符合 ScenarioRunner 接受的格式。.xodr為 OpenDRIVE 1.8——CARLA 接受多種 OpenDRIVE 版本。- 對於複雜場景(觸發器、ML 控制器、參數掃描),請直接在 ScenarioRunner 的 Python 介面中定義;drawtonomy 無法表達這些內容。
合理的使用模式:使用 drawtonomy 以視覺化方式草繪場景,然後在 ScenarioRunner 中謄寫/手動編輯場景邏輯。
同一生態系的一部分
Section titled “同一生態系的一部分”CARLA、ScenarioRunner、drawtonomy、esmini、Scenic、scenariogeneration、RoadRunner 與 Blender DSC 都屬於同一個 OpenSCENARIO 生態系,在不同的層次工作(編寫、生成、執行、重播)。drawtonomy 是那個社群中較小的貢獻者之一——其角色是編寫側的視覺草圖介面。
- OpenSCENARIO 是什麼?
- esmini 是什麼? — drawtonomy 的主要重播目標。
- OpenSCENARIO 撰寫前的草圖繪製