Czym jest esmini?
esmini to otwartoźródłowy odtwarzacz OpenSCENARIO opracowany przez szwedzką społeczność ADAS. Jest to celowo minimalny odtwarzacz, powszechnie stosowany jako lekka referencja dla OpenSCENARIO 1.x — na tyle mały, by dało się go przeczytać, na tyle szybki, by można go było wbudować, i na tyle przewidywalny, by służył jako test poprawności.
Co robi esmini
Dział zatytułowany „Co robi esmini”esmini parsuje plik OpenSCENARIO 1.x .xosc, wczytuje sieć drogową OpenDRIVE .xodr, do której ten plik się odwołuje, i wykonuje storyboard — prowadząc uczestników ruchu po trajektoriach lub sterownikach i strumieniując wynikowy stan.
To nie jest pełny symulator fizyczny jak CARLA czy LGSVL. Minimalizm jest tu celem samym w sobie: esmini to otwartoźródłowa linia bazowa odpowiadająca na pytanie „czy ten scenariusz się parsuje i poprawnie odtwarza?”, na którą celuje większość narzędzi OpenSCENARIO.
Dlaczego esmini ma znaczenie dla narzędzi
Dział zatytułowany „Dlaczego esmini ma znaczenie dla narzędzi”Ponieważ esmini jest najpowszechniejszym otwartoźródłowym konsumentem OpenSCENARIO 1.x, pytanie „czy działa w esmini?” stało się standardowym testem poprawności dla każdego potoku eksportu OpenSCENARIO. Większość narzędzi produkujących pliki ASAM weryfikuje je względem esmini, zanim ogłosi obsługę OpenSCENARIO — w tym RoadRunner (który eksportuje scenariusze „kompatybilne z dowolnymi symulatorami i odtwarzaczami zgodnymi z OpenSCENARIO, takimi jak CARLA, esmini czy IPG CarMaker”) i wiele innych.
Typowe dane wejściowe esmini
Dział zatytułowany „Typowe dane wejściowe esmini”esmini potrzebuje co najmniej:
- Pliku
.xosc(scenariusz OpenSCENARIO). - Pliku
.xodr(sieć drogowa OpenDRIVE), do którego odwołuje się.xosc. - Opcjonalnie pliku
.osgbdo renderowania w podglądzie 3D lub kataloguModels/z modelami pojazdów.
Zapakowanie tych elementów w samowystarczalne archiwum zip — nieformalnie nazywane czasem „paczką esmini” — sprawia, że scenariusze łatwo przenosić między maszynami i środowiskami CI.
Miejsce drawtonomy w ekosystemie
Dział zatytułowany „Miejsce drawtonomy w ekosystemie”drawtonomy uruchamia esmini bezpośrednio — skompilowany do WebAssembly — w przeglądarce. Tworzysz storyboard (albo otwierasz istniejący .xosc), naciskasz play, a edytor scenariuszy wykonuje go na stronie: sterowanie odtwarzaniem, przewijanie, kamera śledząca, ślady widma (ghost trails) oraz werdykt PASS / FAIL na podstawie Twoich warunków END i FAIL — bez instalacji, bez osobnego odtwarzacza. Rdzeniem symulacji jest esmini; drawtonomy dokłada wokół niego natywną dla płótna powłokę.
Jeśli wolisz uruchomić scenariusz w natywnej instalacji esmini (dla podglądarki 3D OpenSceneGraph, przeglądów CI albo potoku Python/C++), drawtonomy eksportuje również archiwum zip z .xosc, .xodr i wywołaniem run.sh:
unzip <nazwa>.zipesmini --osc <nazwa>/<nazwa>.xosc --window 60 60 1024 768Warto wiedzieć:
- Odtwarzacz w przeglądarce czyta OpenSCENARIO 1.x, a eksport ASAM zapisuje OpenSCENARIO 1.0–1.2 / OpenDRIVE 1.8 — oba pokrywają podzbiór specyfikacji: akcje, warunkowe wyzwalacze, fazy i zdarzenia działają, a prymitywy skrzyżowań OpenDRIVE i wpisy
<signal>również są emitowane. Skrzyżowania przeniesione bez edycji z zaimportowanego.xodrmają wysoką wierność; skrzyżowania zsyntetyzowane z ręcznie narysowanej sieci pasów nie są jeszcze w pełni wiarygodne. Przeglądy parametrów oraz niestandardowe lub sterowane ML kontrolery nie są dziś emitowane. - Modele pojazdów domyślnie korzystają z wbudowanych modeli esmini, więc dodatkowy plik
.osgbnie jest wymagany. - Do dużych lub sparametryzowanych serii scenariuszy generuj flotę z DSL-a lub biblioteki Python — to pozostaje poza zakresem edytora wizualnego.
Powiązane artykuły
Dział zatytułowany „Powiązane artykuły”- Edytor scenariuszy — twórz i uruchamiaj storyboardy w przeglądarce na esmini-WASM.
- Otwórz i odtwórz istniejący plik .xosc — upuść plik
.xosci naciśnij play. - Czym jest OpenSCENARIO?
- Czym jest OpenDRIVE?
- Eksport do ASAM OpenDRIVE / OpenSCENARIO