置場景詳解:從城市到雪村的 12 個(gè)開箱即用世界)
科研自動(dòng)駕駛物理引擎【免費(fèi)下載鏈接】webotsWebots Robot Simulator項(xiàng)目地址https://gitcode.com/gh_mirrors/web/webots點(diǎn)擊查看免費(fèi)下載本篇指南以 Webots 開源倉庫中docs/automobile/worlds.md為主線系統(tǒng)梳理隨 Webots 一并分發(fā)的 12 個(gè)汽車仿真預(yù)置世界World涵蓋城市、高速、村莊、真實(shí)地圖導(dǎo)入與 SUMO 交通流仿真等典型場景。讀完本文你將掌握每個(gè)世界的文件位置、場景構(gòu)成、配套控制器與傳感器配置并能快速選擇或改造適合自己自動(dòng)駕駛算法測試的仿真環(huán)境。預(yù)置世界總覽開箱即用的多樣化場景庫Webots 在安裝包中隨附了一批可直接運(yùn)行的汽車仿真世界覆蓋了從簡單直線路段到完整城市中心的各種駕駛場景。這些世界統(tǒng)一存放在 projects/vehicles/worlds 目錄下全部基于 projects/vehicles 項(xiàng)目中的道路分段Road Segment、車輛 PROTO 和工具構(gòu)建而成其對應(yīng)的文檔說明位于 docs/automobile 章節(jié)。worlds.md列出的 12 個(gè)世界及其對應(yīng)文件如下世界對應(yīng) .wbt 文件場景特點(diǎn)City城市city.wbt小型城市街區(qū)、交通標(biāo)志、受控路口、黃色中線City night城市夜景city_night.wbt夜間光照、路燈含一盞閃爍故障燈、車前燈City traffic城市交通city_traffic.wbt城市道路擴(kuò)展 SUMO 生成車流CH MorgesCH_Morges.wbt基于 OpenStreetMap 導(dǎo)入的瑞士小城CH VensCH_Vens.wbt阿爾卑斯山區(qū)村莊ElevationGrid 起伏地形Highway高速highway.wbt帶出入口的簡單高速場景Highway overtake高速超車highway_overtake.wbt四車道高速 SUMO 密集車流 超車與雷達(dá)SUMO interface exampleSUMO 接口示例sumo_interface_example.wbt四路交叉口 信號燈 SUMO 聯(lián)動(dòng)Village村莊village.wbt高寫實(shí)虛構(gòu)村莊Village center村莊中心village_center.wbt村莊中心區(qū)域SUMO 管理交通Village winter冬季村莊village_winter.wbt雪地場景隨積雪量變化的摩擦系數(shù)Realistic village寫實(shí)村莊village_realistic.wbt更小但細(xì)節(jié)更豐富的寫實(shí)村莊說明以_net結(jié)尾的同名目錄如city_net/、highway_net/是與對應(yīng)世界配套的 SUMO 路網(wǎng)文件目錄只有使用了 SUMO 接口的世界才需要它們。城市系列從基礎(chǔ)車道保持到夜間與密集車流City基礎(chǔ)車道保持基準(zhǔn)city.wbt呈現(xiàn)城市的一小部分區(qū)域包含若干大型建筑、交通標(biāo)志和一個(gè)受信號燈控制的路口。它最顯著的設(shè)計(jì)特征是道路中央線為黃色這是為了方便基于車載攝像頭做車道保持lane keeping算法的視覺參考——projects/vehicles/worlds/city.wbt 中場景的自主車輛控制器設(shè)置為autonomous_vehicle其WorldInfo.basicTimeStep為 10 ms見 city.wbt。世界描述中明確寫道The simple controller example uses an on-board camera to follow the yellow road lines and a SICK sensor to avoid the obstacles.該示例控制器使用車載攝像頭跟隨黃色道路線并用 SICK 傳感器避開障礙物對應(yīng)的控制器實(shí)現(xiàn)位于 projects/vehicles/controllers/autonomous_vehicle。因此該世界非常適合作為攝像頭視覺車道保持算法的入門測試環(huán)境障礙物避讓SICK 距離傳感器算法的驗(yàn)證場景城市低速駕駛的基礎(chǔ)對照基準(zhǔn)。City night夜間魯棒性測試city_night.wbt與city場景結(jié)構(gòu)類似但模擬夜間光照條件太陽光被移除新增了若干路燈其中特意包含一盞閃爍的故障路燈同時(shí)啟用了車輛前部的 SpotLights 車前燈。閃爍路燈會(huì)對視覺算法形成擾動(dòng)因此這個(gè)世界的定位非常明確——測試駕駛控制算法在夜間光照下的魯棒性。它可以與city世界形成晝夜對照實(shí)驗(yàn)用于量化光照變化對視覺感知的影響。City trafficSUMO 車流擴(kuò)展city_traffic.wbt是city世界的擴(kuò)展道路網(wǎng)絡(luò)被加長并補(bǔ)充了更多樹木和建筑。與city世界一樣一輛車輛通過車載攝像頭自主跟隨道路中線行駛控制器同樣為autonomous_vehicle見 city_traffic.wbt在此基礎(chǔ)上SUMO 被用來在道路網(wǎng)絡(luò)上生成額外的交通流使場景同時(shí)具備本車自主駕駛 他車動(dòng)態(tài)車流兩個(gè)要素。其配套路網(wǎng)目錄 city_traffic_net 提供了sumo.net.xml、sumo.rou.xml等 SUMO 文件詳見后文 SUMO 接口章節(jié)。真實(shí)地圖世界基于 OpenStreetMap 的瑞士城市場景CH Morges完整導(dǎo)入的瑞士湖畔小城Morges 是瑞士日內(nèi)瓦湖畔的一座中型城市。CH_Morges.wbt使用 OpenStreetMap importer 工具對整個(gè)城市中心進(jìn)行了建模包含約 400 條道路、超過 1000 棟建筑以及若干小片森林、河流與湖泊等自然要素。這是倉庫中體量最大的真實(shí)地圖世界之一適合需要大規(guī)模、高密度城市環(huán)境的大規(guī)模仿真如車流調(diào)度、路徑規(guī)劃研究。CH Vens山地村莊與起伏地形Vens 是阿爾卑斯山中的一個(gè)小山村同樣由 OpenStreetMap importer 建模。它有兩個(gè)與眾不同的技術(shù)點(diǎn)使用 ElevationGrid 定義起伏不平的地面從而生成坡度不平的道路有一條從谷底通往村莊、并繼續(xù)延伸到山頂?shù)牡缆氛麠l道路和村莊都被森林環(huán)繞。村莊由約一百棟建筑組成。對于需要在帶坡度地形而非純平面上測試車輛動(dòng)力學(xué)、爬坡能力或視覺地形的場景CH_Vens.wbt是一個(gè)現(xiàn)成選擇。從文件結(jié)構(gòu)看CH_Morges.wbt與CH_Vens.wbt均位于 projects/vehicles/worlds 下且與forest/目錄中的森林資源共用。高速系列路網(wǎng)拼裝與 SUMO 密集車流Highway預(yù)定義道路分段的拼裝示范highway.wbt是一個(gè)帶有多個(gè)高速出入口的簡單高速場景。它的核心教學(xué)意義在于展示如何使用預(yù)定義道路分段快速搭建高速路網(wǎng)——從 highway.wbt 的源碼結(jié)構(gòu)看場景由CurvedRoadSegment彎道分段、StraightRoadSegment直道分段、AddLanesRoadSegment車道數(shù)變化分段、LaneSeparation車道分離以及Road、Pose、Box等節(jié)點(diǎn)組合而成各分段通過connectedRoadIDs字段相互銜接。同時(shí)該世界頂部聲明了EXTERNPROTO webots://projects/default/protos/SumoInterface.proto并包含SumoInterface節(jié)點(diǎn)見 highway.wbt 與 L116說明高速車流由 SUMO 接口驅(qū)動(dòng)。如果你需要快速搭建自己的高速出入口測試路網(wǎng)可以仿照該世界把直道 彎道 車道增減 車道分離幾種分段按順序擺放并設(shè)定連接關(guān)系即可在數(shù)分鐘內(nèi)得到一個(gè)結(jié)構(gòu)完整的互通式高速場景。Highway overtake四車道超車與雷達(dá)可視化highway_overtake.wbt是一條筆直的 4 車道高速包含一條應(yīng)急車道通過 SUMO 接口注入密集車流。場景中有兩套關(guān)鍵角色超車車輛使用距離傳感器嘗試超越其他車輛其控制器為 projects/vehicles/controllers/highway_overtake見 highway_overtake.wbt雷達(dá)目標(biāo)追蹤 supervisor控制器為 projects/vehicles/controllers/radar_target_tracker見 highway_overtake.wbt用于在 3D 窗口中顯示車輛前向雷達(dá)探測到的目標(biāo)。該世界非常適合測試基于距離/雷達(dá)傳感器的自主超車決策邏輯并且由于雷達(dá)目標(biāo)被可視化調(diào)試感知算法時(shí)能直觀看到雷達(dá)的探測范圍與目標(biāo)關(guān)聯(lián)結(jié)果。世界標(biāo)題為 Highway overtake、basicTimeStep為 10 ms見 highway_overtake.wbt。SUMO 接口Webots 世界與交通仿真的橋梁多個(gè)預(yù)置世界City traffic、Highway、Highway overtake、Village center、SUMO interface example 等都依賴 Webots 與 SUMO 節(jié)點(diǎn)用 Python 實(shí)現(xiàn)通過TraCI 協(xié)議與 SUMO 通信詳細(xì)說明見 sumo-interface.md。其核心價(jià)值在于能在仿真進(jìn)行中實(shí)時(shí)生成大量車輛從而低成本地制造真實(shí)交通流。使用 SUMO 接口的前提條件要運(yùn)行依賴 SUMO 的世界系統(tǒng)必須安裝 SUMO且環(huán)境變量SUMO_HOME指向 SUMO 安裝路徑Debian / Ubuntusudo apt install sumo sumo-tools sumo-doc安裝后可能需要注銷重登或重啟才能生效macOS先brew install --cask xquartz接口依賴 X11再brew tap dlr-ts/sumo brew install sumo并在~/.bashrc末尾添加export SUMO_HOME/opt/homebrew/opt/sumo/share/sumo默認(rèn)安裝目錄Windows從 SUMO 官方文檔下載最新安裝包運(yùn)行即可。若 Webots 以 snap 方式安裝沙箱會(huì)阻止 Webots 直接啟動(dòng) SUMO。解決辦法是將SumoInterface.exterController字段設(shè)為TRUE并在 Webots 外部以 extern controller 方式啟動(dòng)控制器參考 running-extern-robot-controllersexport WEBOTS_HOME/snap/webots/current/usr/share/webots $WEBOTS_HOME/webots-controller $WEBOTS_HOME/projects/default/controllers/sumo_supervisor/sumo_supervisor.py如需傳遞 SUMO 選項(xiàng)直接追加在啟動(dòng)行末尾例如--use-netconvert --no-gui。路網(wǎng)文件與命名規(guī)則每個(gè)使用 SUMO 的世界其同級目錄下必須有名為worldName_net如sumo_interface_example_net的文件夾內(nèi)含 SUMO 定義路網(wǎng)的常規(guī)文件.edg.xml、.nod.xml、.rou.xml等以及.netccfg和.sumocfg配置。接口默認(rèn)加載名為sumo.netccfg與sumo.sumocfg的配置文件若不存在則回退使用該目錄下任意其他名稱的配置不建議同目錄放置多份 SUMO/NETCONVERT 配置因?yàn)闊o法確定哪份會(huì)被使用。接口會(huì)在仿真開始時(shí)自動(dòng)啟動(dòng) SUMO 并與 Webots 時(shí)間同步。每輛新進(jìn)入 SUMO 仿真的車輛都會(huì)在 Webots 中創(chuàng)建其位置與朝向持續(xù)更新DEF 名被設(shè)置為SUMO_VEHICLEXX 為從 0 開始的車輛編號。反之若仿真中已存在 DEF 名為SUMO_VEHICLEX的車輛接口會(huì)優(yōu)先復(fù)用它們再創(chuàng)建新車可避免實(shí)時(shí)動(dòng)態(tài)添加車輛造成的瞬時(shí)速度下降若 SUMO 車輛 ID 與場景中某車輛 DEF 名相同該車也會(huì)被自動(dòng)關(guān)聯(lián)。若場景中存在 DEF 名為WEBOTS_VEHICLEX的車輛接口還會(huì)反向把它們的位姿注入 SUMO實(shí)現(xiàn)雙向閉環(huán)。車輛類型的映射規(guī)則為SUMO 車輛抽象類別為passenger默認(rèn)時(shí)隨機(jī)選用一款汽車 PROTObus使用Busmotorbike在Motorbike與Scooter間隨機(jī)選擇trailer與truck分別選擇帶掛車與不帶掛車的TruckPROTO。SumoInterface PROTO 參數(shù)SumoInterfacePROTO 繼承自 Supervisor完整字段如下PROTO SumoInterface [ field SFString name sumo interface field SFBool gui TRUE field SFBool useNetconvert FALSE field SFBool enableTrafficLights TRUE field SFBool enableWheelsRotation FALSE field SFInt32 maxVehicles 100 field SFInt32 radius -1 field SFFloat maximumLateralSpeed 2.5 field SFFloat maximumAngularSpeed 3 field SFFloat laneChangeDelay 3 field SFBool enableHeight FALSE field SFInt32 step 200 field SFInt32 port 8873 field SFInt32 seed 1 field SFString networkFiles field SFString sumoArguments field SFNode display NULL field SFBool verbose FALSE field SFBool synchronization TRUE field MFNode children [] ]各字段含義全部可在 projects/default/protos/SumoInterface.proto 中查看定義gui使用 SUMO 的命令行版本還是 GUI 版本useNetconvert是否在啟動(dòng) SUMO 前先調(diào)用 NETCONVERT若已提供*.net文件應(yīng)禁用enableTrafficLights是否啟用信號燈同步enableWheelsRotation車輛車輪是否旋轉(zhuǎn)旋轉(zhuǎn)更真實(shí)但會(huì)降低仿真速度maxVehicles從 SUMO 加入 Webots 的最大車輛數(shù)radius車輛可見半徑米車輛距視點(diǎn)超過該距離則不會(huì)加入 Webots負(fù)值表示加入全部車輛maximumLateralSpeed/maximumAngularSpeed車輛最大橫向速度m/s與最大角速度rad/slaneChangeDelay換道耗時(shí)秒此期間 Webots 與 SUMO 中車輛位置可能不同步enableHeight是否從邊edge名稱中提取高度信息實(shí)驗(yàn)性stepSUMO 仿真步長毫秒應(yīng)大于或等于世界步長portWebots 與 SUMO 通信端口seedSUMO 隨機(jī)數(shù)種子0表示基于時(shí)間的隨機(jī)種子等價(jià)于 SUMO 的--random選項(xiàng)networkFilesSUMO 路網(wǎng)文件所在目錄為空時(shí)默認(rèn)使用世界文件同級的worldName_net目錄sumoArguments啟動(dòng) SUMO 時(shí)附加的參數(shù)display可選的SumoDisplay節(jié)點(diǎn)verbose是否在 Webots 控制臺(tái)打印 SUMO 輸出synchronization接口控制器是否與 Webots 同步children用于插入其他節(jié)點(diǎn)信號燈應(yīng)加在該字段中。SumoDisplay 與信號燈同步如需在 Webots 內(nèi)部看到 SUMO 的 GUI 視圖例如模擬 GPS 視圖可在SumoInterface的display字段中放入SumoDisplay節(jié)點(diǎn)其字段為PROTO SumoDisplay [ field SFInt32 width 256 field SFInt32 height 256 field SFFloat zoom 1.0 field SFInt32 refreshRate 1000 field SFBool fitSize FALSE ]width/height定義 Display 的尺寸zoom控制啟動(dòng)時(shí) SUMO 自動(dòng)縮放的比例refreshRate為刷新間隔毫秒fitSize為TRUE時(shí)圖像自動(dòng)縮放填滿 Display長寬比可能不保真為FALSE時(shí)按原始比例裁剪或留白。信號燈同步方面Webots 中交通燈對應(yīng)的LEDs節(jié)點(diǎn)名稱必須遵循trafficLightID_trafficLightIndex_r/y/g語法r紅、y黃、g綠接口才能把 SUMO 的信號燈狀態(tài)自動(dòng)同步到 Webots??赏ㄟ^ Netedit 打開路網(wǎng)文件在交通燈模式下右鍵連接獲取trafficLightID與trafficLightIndex參考文檔中sumo_traffic_light配圖說明。插件機(jī)制除 PROTO 參數(shù)外接口還支持 Python 插件擴(kuò)展插件需放在 SUMO 路網(wǎng)文件同一目錄實(shí)現(xiàn)SumoSupervisorPlugin類及兩個(gè)入口函數(shù)class SumoSupervisorPlugin: def __init__(self, supervisor, traci, net): # TODO def run(self, ms): # TODO__init__在接口初始化時(shí)調(diào)用參數(shù)依次為 Supervisor 本身、traci 類用于獲取 TraCI 上下文信息與 net 類用于獲取路網(wǎng)信息run在每次 SUMO 步進(jìn)時(shí)調(diào)用參數(shù)為時(shí)間步長。該機(jī)制可用于在 SUMO 側(cè)修改信號燈狀態(tài)等自定義邏輯。倉庫中的 sumo_interface_example_net/plugin.py 即為真實(shí)插件示例。預(yù)置示例世界逐個(gè)剖析SUMO interface example接口最小演示sumo_interface_example.wbt是一個(gè)由信號燈控制的四路交叉口專門用于演示 SUMO 接口。其工作流程為仿真開始時(shí) SUMO 以圖形模式啟動(dòng)在horizontal水平道路上仿真若干車輛當(dāng)一輛優(yōu)先車輛從vertical垂直道路駛來時(shí)車道傳感器會(huì)檢測到它隨后信號燈狀態(tài)發(fā)生改變。配套目錄 sumo_interface_example_net 中含有完整的 SUMO 文件sumo.edg.xml、sumo.nod.xml、sumo.rou.xml、sumo.con.xml、sumo.det.xml、sumo.netccfg、sumo.sumocfg以及generate_route_file.py與plugin.py。該世界還有一個(gè)亮點(diǎn)一輛由 SUMO 驅(qū)動(dòng)的車輛在前部安裝了 Lidar 傳感器并顯示測量到的點(diǎn)云——其控制器為 projects/vehicles/controllers/enable_all_lidars見 sumo_interface_example.wbt世界步長basicTimeStep為 20 ms。這直觀展示了為 SUMO 控制的車輛采集傳感器數(shù)據(jù)的可行性只需按前文命名規(guī)則放置車輛、在傳感器插槽中添加傳感器并指定控制器即可。通用做法是在仿真中放入自己的車輛并設(shè)置合適的 DEF 名添加傳感器、指定控制器控制器即可啟用傳感器并把輸出記錄到文件或發(fā)送給外部進(jìn)程。Village / Village center高寫實(shí)虛構(gòu)村莊village.wbt是一個(gè)小型虛構(gòu)村莊寫實(shí)度很高細(xì)節(jié)精心打磨包含橋梁、人行橫道、河流、樹木等所有路口都經(jīng)過精心設(shè)計(jì)并配有合適的道路標(biāo)志全部交通標(biāo)志齊全且配有動(dòng)態(tài)信號燈。其 SUMO 路網(wǎng)目錄 village_net 表明該世界同樣接入 SUMO 車流。village_center.wbt則聚焦村莊中心區(qū)域?qū)憣?shí)度同樣很高并明確使用 SUMO 接口 管理交通配套目錄 village_center_net。這兩個(gè)世界適合需要美觀、寫實(shí)且元素完整的封閉村莊場景的視覺算法、行人避讓或基礎(chǔ)設(shè)施級仿真研究。Village winter積雪摩擦建模village_winter.wbt同樣是虛構(gòu)小村莊但處于冬季道路、建筑和樹木上覆蓋了不同厚度的積雪這會(huì)使車載攝像頭難以跟蹤道路更重要的是道路與輪胎之間的摩擦系數(shù)隨積雪量相應(yīng)改變。從 village_winter.wbt 的WorldInfo.contactProperties結(jié)構(gòu)可以看到具體實(shí)現(xiàn)見 L25-L177定義了high_snow、medium_snow、low_snow三種接觸材質(zhì)并與車輛輪胎材質(zhì)如CitroenCZeroWheels、ToyotaPriusWheels組合成多組ContactProperties通過coulombFriction指定不同的庫侖摩擦系數(shù)道路表面則使用snowy_road系列 PBR 貼圖基礎(chǔ)色、粗糙度、法線、遮擋貼圖位于 projects/vehicles/worlds/textures/snowy_road建筑與地面覆雪使用snow.jpg紋理。需要特別注意的是雪/冰與輪胎間的摩擦現(xiàn)象非常復(fù)雜該世界不應(yīng)被視為地面真值ground truth只能作為粗略近似。它適合用來測試算法在摩擦參數(shù)變化、視覺特征退化條件下的表現(xiàn)差異而不是用于標(biāo)定真實(shí)物理參數(shù)。Realistic village細(xì)節(jié)增強(qiáng)版村莊realistic-village.md描述village_realistic.wbt與Village世界非常相似但規(guī)模更小、包含的細(xì)節(jié)多得多因此觀感更真實(shí)。配套目錄 village_realistic_net 表明它也接入 SUMO 車流。當(dāng)場景規(guī)模不是瓶頸、而畫面真實(shí)度是關(guān)鍵例如生成合成訓(xùn)練數(shù)據(jù)、視覺 SLAM 評測時(shí)優(yōu)先選擇這個(gè)世界。如何選擇與運(yùn)行這些世界打開與運(yùn)行在 Webots 中打開任意世界只需在啟動(dòng)器中選擇對應(yīng)的.wbt文件或通過File Open World直接加載 projects/vehicles/worlds 下的文件。涉及 SUMO 的世界City traffic、Highway、Highway overtake、Village、Village center、Village realistic、SUMO interface example需要提前按上文完成 SUMO 安裝與SUMO_HOME配置。場景選擇速查表測試目標(biāo)推薦世界攝像頭車道保持入門City夜間視覺魯棒性City night城市自主駕駛 動(dòng)態(tài)車流City traffic大規(guī)模真實(shí)城市地圖CH Morges起伏地形 / 帶坡度道路CH Vens高速路網(wǎng)拼裝示范Highway密集車流下的超車決策與雷達(dá)調(diào)試Highway overtake理解 SUMO 接口機(jī)制SUMO interface example寫實(shí)村莊 動(dòng)態(tài)信號燈Village / Village center雪地摩擦與低能見度測試Village winter高細(xì)節(jié)真實(shí)感場景Realistic village配套控制器一覽與這些世界配套的控制器全部位于 projects/vehicles/controllers包括autonomous_vehicle城市世界中的攝像頭 SICK 傳感器自動(dòng)駕駛示例、highway_overtake高速超車控制、radar_target_tracker前向雷達(dá)目標(biāo)可視化 supervisor、enable_all_lidars為 SUMO 車輛啟用全部激光雷達(dá)并顯示點(diǎn)云以及vehicle_driver/VehicleDriver、boomer、racing_wheel等車輛驅(qū)動(dòng)相關(guān)控制器。閱讀這些控制器源碼可以完整復(fù)現(xiàn)預(yù)置場景中的自主駕駛行為??偨Y(jié)Webots 的 12 個(gè)汽車仿真預(yù)置世界構(gòu)成了一條從基礎(chǔ)車道保持到大規(guī)模真實(shí)城市 SUMO 車流的完整演進(jìn)路徑。它們既可以直接用于算法驗(yàn)證也可以作為搭建自定義場景的模板highway.wbt展示了如何用預(yù)定義道路分段拼裝路網(wǎng)city.wbt展示了如何組織自主車輛與傳感器sumo_interface_example.wbt與配套_net目錄則展示了如何接入 SUMO 實(shí)時(shí)車流并采集傳感器數(shù)據(jù)。結(jié)合 docs/automobile 章節(jié)中的工具如 OpenStreetMap importer與 SumoInterface 接口你可以基于這些預(yù)置世界快速構(gòu)建面向自動(dòng)駕駛研究與教學(xué)的專業(yè)仿真環(huán)境。贊分享科研自動(dòng)駕駛物理引擎【免費(fèi)下載鏈接】webotsWebots Robot Simulator項(xiàng)目地址https://gitcode.com/gh_mirrors/web/webots點(diǎn)擊查看免費(fèi)下載相關(guān)推薦從一句話到可復(fù)用的 AI 技能Refly 從零開始跑通實(shí)錄從一句話到可復(fù)用的 AI 技能Refly 從零開始跑通實(shí)錄 Refly 是一款開源的 AI 工作流與 Agent Skills 構(gòu)建工具你用一句自然語言描述科研自動(dòng)駕駛物理引擎Webots 汽車仿真工具鏈從 OpenStreetMap 地圖生成世界到 SUMO 交通仿真的完整實(shí)戰(zhàn)指南Webots 汽車仿真工具鏈從 OpenStreetMap 地圖生成世界到 SUMO 交通仿真的完整實(shí)戰(zhàn)指南 Webots 為汽車仿真場景提供了一套完整的工具科研自動(dòng)駕駛物理引擎Webots 汽車仿真 PROTO 節(jié)點(diǎn)全解析從 AckermannVehicle 底盤到完整整車模型Webots 汽車仿真 PROTO 節(jié)點(diǎn)全解析從 AckermannVehicle 底盤到完整整車模型 本文圍繞 Webots 開源機(jī)器人仿真器當(dāng)前倉庫為科研自動(dòng)駕駛物理引擎上一篇gogcli 群組成員管理實(shí)戰(zhàn)gog admin groups members remove 命令全面解析下一篇CesiumJS三維地球可視化終極指南從零構(gòu)建專業(yè)級WebGIS應(yīng)用創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考