Перейти к содержимому

drawtonomy vs scenariogeneration (pyoscx / pyodrx)

scenariogeneration — открытая Python-библиотека для генерации связанных файлов OpenSCENARIO (.xosc) и OpenDRIVE (.xodr). Это преемник более ранних библиотек pyoscx и pyodrx, доступный на PyPI.

Что покрывает scenariogeneration:

  • Python API для программного построения файлов OpenSCENARIO и OpenDRIVE.
  • Три основных компонента: модуль scenario_generator, подпакет xosc (OpenSCENARIO), подпакет xodr (OpenDRIVE).
  • Полное покрытие OpenSCENARIO V1.0.0 и большей части V1.1.0, V1.2.0, V1.3.1.
  • Покрытие на основе OpenDRIVE V1.7.1 — базовые дороги, перекрёстки, сигналы и объекты.
  • Утилиты параметризации и автогенерации для создания вариантов сценариев.
  • Интеграция с esmini для визуализации.
  • Лицензия MPL-2.0.

Для программной генерации сценариев — особенно флотов, перебора параметров и тест-кейсов, управляемых CI — scenariogeneration является одним из устоявшихся Python-вариантов.

drawtonomy — 2D браузерная доска. Нет Python API, нет параметрической генерации, экспорт OpenSCENARIO / OpenDRIVE — меньший подмножество, чем покрытие scenariogeneration.

Несколько небольших вещей, которые drawtonomy может добавить рядом с scenariogeneration:

  • Визуальный 2D-набросок отдельной сцены перед написанием Python.
  • .drawtonomy.svg как повторно редактируемый источник фигур для документации.
  • Быстрый пакет esmini для ручной сцены, отдельный от Python-конвейера.

Два инструмента находятся на разных уровнях: scenariogeneration — программный генератор; drawtonomy — визуальная поверхность для набросков.

scenariogeneration (и её предшественники pyoscx / pyodrx) — один из наиболее устоявшихся открытых вкладов в Python-экосистему OpenSCENARIO / OpenDRIVE. drawtonomy генерирует те же форматы файлов и визуализирует против того же нижнего плеера (esmini). Оба инструмента — вместе с Scenic, CARLA ScenarioRunner и прямым ручным XML — являются частью сообщества, строящего инструментарий вокруг открытых стандартов ASAM.