跳转到内容

什么是 OpenDRIVE?

OpenDRIVEASAM 制定的开放标准,用于描述驾驶仿真中的静态道路网络。该格式采用 .xodr 扩展名,是 OpenSCENARIO 文件引用的规范道路几何容器。

.xodr 文档以解析式(而非多边形集合)描述道路网络:

  • 道路:参考线沿 s 轴表示为 linearcspiralpoly3paramPoly3 分段。
  • 车道区间:包含左、中、右车道,每条车道有宽度、类型和车道连接关系(前驱/后驱)。
  • 交叉口:在交叉路口处连接道路,包含明确的入射道路与连接道路映射。
  • 路网对象:防护栏、交通标志、红绿灯、人行横道等。
  • 高程与超高程:描述道路的 3D 形状。

解析式表达方式使仿真器能廉价地查询”第 7 条道路上 s=42m 处的车道中心在哪里”。正因如此,该格式通常通过工具编辑而非手工编写。

  • OpenDRIVE 1.4 / 1.5 — 长期稳定版本,在旧工具中仍很常见。
  • OpenDRIVE 1.6 / 1.7 — 渐进式改进和澄清。
  • OpenDRIVE 1.8 — 当前版本,drawtonomy 的导出目标。RoadRunner 支持 1.4–1.8 版本的完整导入导出。

工具通常向下兼容但不向上兼容——检查你的仿真器预期的版本。

两种常被混淆的高精地图相关格式:

方面OpenDRIVELanelet2
来源ASAM,仿真行业Autoware,FZI
几何解析式(弧线、螺旋线、多项式)多边形线(以线条界定的通道)
主要使用者CARLA、esmini、RoadRunner、Cognata、SCANeRAutoware 规划、感知真值
存储格式XML .xodrOSM XML

两者都能描述相似的道路网络,但针对不同的下游任务进行优化。参见什么是 Lanelet2? 了解另一侧。

  • MathWorks RoadRunner — 应用广泛的高精地图编辑器,完整支持 OpenDRIVE 1.4–1.8。商业软件,许多高校有校园许可证
  • Truevision Designer — 桌面端 OpenDRIVE 编辑器,非商业用途免费,常作为 RoadRunner 的开源替代品。
  • Blender Driving Scenario Creator — 开源 Blender 插件,支持三次螺旋线道路几何和完整的交叉口支持。
  • LaneMaker — 免费的 Apache-2.0 桌面道路网络编辑器,内置交通仿真,面向普通用户。
  • odrviewer.ioodrplot — 浏览器端查看工具,用于检查 .xodr 文件,无编辑功能。
  • drawtonomy — 浏览器白板,支持 OpenDRIVE 导入 和导出(至 1.8 版本),具有完整的往返转换能力。

drawtonomy 是一款基于浏览器的 2D OpenDRIVE 编辑器。它不能替代 RoadRunner / Truevision / BDSC 用于 3D 高精地图编辑,但在 2D 道路网络工作中能覆盖全流程:

  • 导入 .xodr 文件,选择需要的道路,以可视化方式编辑车道、交叉口和连接关系。
  • 从零开始绘制道路布局——交叉口、车道合并、道路几何——并放置红绿灯、交通标志、停止线和优先权关系作为可编辑的监管元素,链接到相应的车道。
  • 导出 OpenDRIVE 1.8 及 OpenSCENARIO 1.2 文件,或合并为 esmini 就绪包。
  • 往返转换:未编辑的道路、信号和标志通过 carry-through 从原始 .xodr 原样重新生成,保留其解析式几何和完整 <signal> 属性集(在 esmini 3.3.0 中已验证)。
  • 完全在浏览器运行。无需安装,无需账户。

2D 多边形线模型的局限之处:

  • 3D 细节 — 高程、倾斜、桥梁、陡坡。drawtonomy 画布是 2D 的,所以导入时垂直几何会被丢弃,导出时无法编写。如需 3D 高精地图,请使用专用的高精地图工具。
  • 从头绘制的道路的解析式曲率。这些道路根据采样点拟合到 OpenDRIVE 几何,而非作为本地螺旋线系数编辑。对 esmini / CARLA / Autoware 回放来说足够,不适合道路设计 CAD。已导入且未重塑的道路通过 carry-through 保留原始解析式几何。

参见 导出器开发指南 了解确切的转换行为。