跳转到内容

什么是 esmini?

esmini 是由瑞典 ADAS 社区开发的开源 OpenSCENARIO 播放器。它是一个刻意保持精简的播放器,被广泛用作 OpenSCENARIO 1.x 的轻量参考实现——代码量小到可以通读、运行速度快到可以内嵌,也足够稳定可以作为正确性验证的基线。

esmini 解析 OpenSCENARIO 1.x .xosc 文件,加载引用的 OpenDRIVE .xodr 路网,然后执行 Storyboard——驱动各实体沿轨迹或控制器运动,并持续输出运动状态。

它不是 CARLA 或 LGSVL 那样的全物理仿真器。精简本身就是设计目标:esmini 是大多数 OpenSCENARIO 工具链都会对齐的开源”这个场景能正确解析并回放吗?“基线。

由于 esmini 是最常见的开源 OpenSCENARIO 1.x 消费方,“能在 esmini 中运行吗?“已成为任何 OpenSCENARIO 导出流水线的标准验证指标。大多数产出 ASAM 文件的工具都会在声称支持 OpenSCENARIO 之前先对 esmini 进行验证——包括 RoadRunner(其导出场景”与任何 OpenSCENARIO 兼容仿真器和播放器兼容,如 CARLA、esmini 和 IPG CarMaker”)等。

esmini 最少需要:

  • 一个 .xosc(OpenSCENARIO 场景)。
  • 一个从 .xosc 中引用的 .xodr(OpenDRIVE 路网)。
  • 可选的 .osgb 文件(供 3D 查看器渲染)或 Models/ 车辆资产目录。

将这些文件打包成一个自包含的 zip——有时非正式地称为”esmini bundle”——可以让场景在不同机器和 CI 环境之间便携传输。

drawtonomy 可以导出包含 .xosc.xodrrun.sh 的 zip 压缩包,针对标准 esmini 安装配置。根据 drawtonomy 导出器文档

Terminal window
unzip <name>.zip
esmini --osc <name>/<name>.xosc --window 60 60 1024 768

需要了解的几点:

  • 导出器覆盖 OpenSCENARIO 1.3 / OpenDRIVE 1.8 的一个子集——简单场景可以回放;条件触发、参数扫描、复杂 Storyboard 以及 OpenDRIVE 路口目前不在导出范围内。
  • 车辆资产默认使用 esmini 内置模型,无需额外的 .osgb 文件。
  • 输出适合作为起点——可用于草图绘制、教学演示和最小可复现示例。对于大规模或参数化场景扫描,请手动编辑 XML 或使用 DSL 生成。