[OpenDrive] OpenDrive学习笔记

article/2025/11/10 5:05:58

文章目录

  • OpenDRIVE
    • reference line
    • lanes
    • lane offset
    • lane sections
    • lane properties
    • superelevation and crossfall
    • lateral profile
    • road linkage
    • junctions
    • neighbors
  • 总体结构
  • Apollo OpenDRIVE
    • Apollo OpenDRIVE结构

OpenDRIVE

OpenDRIVE是对路网结构的描述性文件,于2006年1月31日发布第一版,目前已更新至1.5版本。
OpenDRIVE文件格式为XML,该XML文件种包含了Road、Junction、station等诸多道路路网信息。
从OpenDRIVE 1.4 开始, 可以使用格式化为 “proj4”-字符串的投影定义对路网进行地理参照转化. 它将地理空间坐标从一个坐标参考系统 (CRS) 转换为另一个坐标参考系统。这包括制图投影和大地测量转换。 geoReference元素定义了该文件使用的投影坐标系,其中地理坐标系为WGS-84[1]。
在OpenDRIVE数据中大量使用的位置信息都是投影后的xy坐标,而除了该投影坐标系,还定义了一种轨迹坐标系,如下所示,s坐标是沿着reference line的,关于reference line后面介绍,长度是在xy坐标下计算的。 t坐标,是相对于reference line的侧向位置,左正,右负。
在这里插入图片描述
OpenDRIVE中路网结构中的一个road,该road有三部分组成,蓝色的reference line,车道lane,车道lane的其他feature(限速等)。
在这里插入图片描述
所有道路都由一条reference line组成, 用于定义基本几何 (弧线、直线等)。
沿着reference line 可以定义道路的各种属性,例如海拔概况、车道、交通标志等。
道路之间可以直连,也可以通过junction进行连接。

reference line

在这里插入图片描述

lanes

在这里插入图片描述

lane offset

在这里插入图片描述

lane sections

在这里插入图片描述

lane properties

superelevation and crossfall

在这里插入图片描述

lateral profile

在这里插入图片描述

road linkage

在这里插入图片描述
在这里插入图片描述

junctions

在这里插入图片描述

neighbors

在这里插入图片描述

由于是XML文件写的,所以可以有类似C语言中include的用法,可以在xml中include对应另一个xml


Original File
<planView>
<include file="planview.xml"/>
</planView>Included File
<planView>
<geometry x="-0.014" y="-0.055" hdg="2.8829" length="95.889" s="0.000">
<arc curvature="-0.000490572"/>
</geometry>
<geometry x="-92.102" y="26.644" hdg="2.8359" length="46.651" s="95.889">
<spiral curvStart="-0.000490572" curvEnd="-0.004661241"/>
</geometry>
</planView>

总体结构

OpenDrive格式为xodr,默认浮点型为double类型,推荐家用16位科学计数法表示。
OpenDrive采取的路网结构

|- OpenDRIVE
|- header [1]
|- road [1+]
|- controller [0+]
|- junction [0+]
|- junctionGroup [0+]
|- station [0+]

|- road [name, length, id, junction]
|- link
|- type
|- planView
|- elevationProfile
|- lateralProfile
|- lanes
|- objects
|- signals
|- surface
|- railroad

新版的OpenDrive中推荐使用lateral profile而不是crossfall

Apollo OpenDRIVE

OpenDRIVE本身设计面向的应用是仿真器,自动驾驶需要更多的信息OpenDRIVE并没有完全提供,所以Apollo对OpenDRIVE的标准做了部分改动和扩展。

主要改动和扩展了以下几个方面:

  • 地图元素形状的表述方式 : 以车道边界为例,标准OpenDRIVE采用基于Reference Line的曲线方程和偏移的方式来表达边界形状,而Apollo OpenDrive采用绝对坐标序列的方式描述边界形状;
  • 元素类型的扩展, 例如新增了对于禁停区、人行横道、减速带等元素的独立描述;
  • 扩展了对于元素之间相互关系的描述, 比如新增了junction与junction内元素的关联关系等;

除此之外还有一些配合无人驾驶算法的扩展,比如增加了车道中心线到真实道路边界的距离、停止线与红绿灯的关联关系等。改动和扩展后的规格在实现上更加的简单,同时也兼顾了无人驾驶的应用需求。

Apollo OpenDRIVE结构

在这里插入图片描述
百度高精地图坐标采用WGS84经纬度坐标表示。

车道 ID 的命名规则:

  • lane section 内唯一数值连续的
  • reference line 所在 lane 的 ID 为 0
  • reference line 左侧 lane 的 ID 向左侧依次递增 (正t轴方向)
  • reference line 右侧 lane 的 ID 向右侧依次递减(负 t 轴方向)
  • reference line 必须定义在**< center >**节点内
  • reference line 自身必须为 Lane 0。

base_map, routing_map和sim_map之间的差异

  • base_map是最完整的地图,包含所有道路和车道几何形状和标识。其他版本的地图均基于base_map生成。
  • routing_map包含base_map中车道的拓扑结构
  • sim_map是一个适用于Dreamview视觉可视化,基于base_map的轻量版本。减少了数据密度,以获得更好的运行时性能。

参考文章:
[1] https://ryanadex.github.io/2019/06/04/opendrive/
[2] https://www.csdn.net/article/a/2018-04-12/15945514
[3] https://blog.csdn.net/weixin_36662031/article/details/81081744


http://chatgpt.dhexx.cn/article/RsJBdYii.shtml

相关文章

opendrive简介

1、概要 ASAM OpenDRIVE描述了自动驾驶仿真应用所需的静态道路交通网络&#xff0c;并提供了标准交换格式说明文档。该标准的主要任务是对道路及道路上的物体进行描述。OpenDRIVE说明文档涵盖对如道路、车道、交叉路口等内容进行建模的描述&#xff0c;但其中并不包含动态内容…

如何使用OpenDRIVE

文章目录 OpenDRIVE Notes#1 前言#2 OpenDRIVE结构#2.1 Road#2.1.1 道路属性#2.1.2 道路联接#2.1.3 参考线 #2.2 laneSection#2.3 laneOffset#2.4 junction#2.4.1 路口的联接 #2.5 poly3(三次多项式) #3 解析#3.1 数据结构#3.1.1 ID#3.1.2 Point #4 构建topo#5 邻接点#6 路径规…

《OpenDRIVE1.6规格文档》1

目录 1 前言1.1 说明文档的可交付内容 2 介绍2.1 概要2.2 规范和非规范的声明与可交付内容2.3 惯例2.3.1 命名惯例2.3.2 单位2.3.3 情态动词2.3.4 拼写惯例2.3.5 ID的使用2.3.6 曲率 3 与其它标准的关联(初步)3.1 ASAM OpenDRIVE在ASAM标准系列中的角色3.2 OpenDRIVE与OpenCRG以…

万字详解OpenDRIVE文件

opendrive简介_whuzhang16的博客-CSDN博客_opendrive一文读懂opendrive的xodr文件内容_布拉德先生的博客-CSDN博客_xodr格式自动驾驶场景仿真标准&#xff08;一&#xff09;- OpenDRIVE - 知乎 (zhihu.com)opendrive坐标系_whuzhang16的博客-CSDN博客_opendrive坐标系 1 Open…

OpenX系列标准介绍(1):OpenDRIVE介绍

|作者版权所有&#xff0c;未经许可谢绝转载&#xff0c;转载请联系adsimtest163.com。 “ 本系列尝试对ASAM OpenX系列标准进行介绍。这是第一篇&#xff1a;介绍OpenDRIVE地图数据格式所能描述的内容和思路。” 01 概述 作为一个完整的仿真测试场景描述方案&#xff0c;Op…

完美解析Opendrive地图格式数据

1.前言 高精度电子地图也称为高分辨率地图(HD Map&#xff0c;High Definition Map)&#xff0c;是一种专门为无人驾驶服务的地图。与传统导航地图不同的是&#xff0c;高精度地图除了能提供的道路(Road)级别的导航信息外&#xff0c;还能够提供车道(Lane)级别的导航信息。无论…

OpenDRIVE文件格式详解

1 OpenDRIVE概要 ASAM OpenDRIVE描述了自动驾驶仿真应用所需的静态道路交通网络&#xff0c;并提供了标准交换格式说明文档。该标准的主要任务是对道路及道路上的物体进行描述。OpenDRIVE说明文档涵盖对如道路、车道、交叉路口等内容进行建模的描述&#xff0c;但其中并不包含动…

Unity iOS 使用 ASTC 格式纹理实践

引言上一篇文章描述了如何在不修改自定义渲染组件的前提下使用 alpha 分离的纹理来提升 iOS 的透明压缩纹理质量&#xff08;见这里&#xff1a;上一篇的链接&#xff09;。在这个方案投入项目开始使用一段时间之后&#xff0c;UI 同学又来找我抱怨了&#xff1a;虽然一些贴图的…

图形 3.6 纹理压缩——包体瘦身术——RGBA与ASTC与ETC2压缩与实际对比体验

包体瘦身术 RGBA与ASTC与ETC2压缩与实际对比体验Unity贴图压缩方式官方文档默认格式安卓的各个格式注意事项 体积对比单图片大小安装包大小 实机表现RGBA32综合表现ASTC12x12综合表现ETC2综合表现 虚假的总结&#xff01;额外的测试报告RGBA32额外测试报告ASTC12x12综合表现ETC…

creator贴图纹理压缩(creator2.4.x 实现ETC2和ASTC)

目录 1. creator游戏开发之纹理压缩 2. 常用的压缩纹理格式 3. 测试 4. ETC2 格式测试 6. ASTC格式测试 送上下载链接 不修改引擎的实现ASTC格式加载.zip-cocos2D文档类资源-CSDN下载 7. 最后附上插件代码 1. creator游戏开发之纹理压缩 目的&#xff1a;减少运行内存…

Android平台压缩纹理ETC2 VS ASTC

1&#xff09;Android平台压缩纹理ETC2 VS ASTC ​2&#xff09;Unity使用Profiler和UWA内存差异巨大 3&#xff09;Unity 2020 IL2CPP打包异常 4&#xff09;TouchScreenKeyboardWrap在PC模式下打包报错 这是第301篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发…

Unity iOS使用ASTC格式纹理实践

引言 上一篇文章描述了如何在不修改自定义渲染组件的前提下使用 alpha 分离的纹理来提升 iOS 的透明压缩纹理质量&#xff08;见这里&#xff1a;https://indienova.com/indie-game-development/unity-alpha-separate/&#xff09;。 在这个方案投入项目开始使用一段时间之后…

ASTC纹理压缩格式详解

https://zhuanlan.zhihu.com/p/158740249 一、ASTC纹理压缩格式介绍 ASTC是在OpenGL ES3.0出现后在2012年中产生的一种业界领先的纹理压缩格式&#xff0c;它的压缩分块从4x4到12x12最终可以压缩到每个像素占用1bit以下&#xff0c;压缩比例有多种可选。ASTC格式支持RGBA&…

astc纹理压缩格式

astc是当前android和ios平台下压缩最好的纹理格式&#xff0c;并且主流的机器基本都支持&#xff0c; astc:支持非2次幂的&#xff0c;2次幂的&#xff0c;等宽高的 一、ASTC纹理压缩格式介绍 ASTC是在OpenGL ES3.0出现后在2012年中产生的一种业界领先的纹理压缩格式。 它的压…

ASTC textures

ASTC textures 原文&#xff1a;https://arm-software.github.io/opengl-es-sdk-for-android/astc_textures.html This document describes usage of compressed ASTC textures. Introduction This tutorial shows how Adaptive Scalable Texture Compression (ASTC) can be …

[图形学]ASTC纹理压缩格式

纹理压缩的目的 1&#xff0c;降低内存&#xff0c;特别是移动端应用&#xff0c;内存占用不应过大&#xff0c;否则低端机很容易崩溃 2&#xff0c;降低带宽&#xff0c;手游类应用&#xff0c;在渲染时会有大量贴图传输到GPU&#xff0c;不限制的话不仅会严重影响渲染性能&a…

ASTC纹理压缩格式(Adaptive Scalable Texture Compression)

原文&#xff1a;这是一个pdf的下载链接 介绍 Adaptive Scalable Texture Compression(ASTC)是一种世界领先的新型纹理压缩格式。这种压缩格式已经加入Khronos标准&#xff0c;并已在某些硬件平台中提供。本文介绍了它的工作原理、使用方法和如何最大程度地使用它。更深入的信…

ASTC纹理压缩格式介绍

一、ASTC纹理压缩格式介绍 ASTC是在OpenGL ES 3.0出现后&#xff0c;在2012年中产生的一种业界领先的纹理压缩格式&#xff0c;它的压缩分块从4x4到12x12最终可以压缩到每个像素占用1bit以下&#xff0c;压缩比例有多种可选。ASTC格式支持RGBA&#xff0c;且适用于2的幂次方长宽…

选择软件人力外包公司看这几点没错

近几年&#xff0c;大数据、云计算等各种互联网技术飞速发展&#xff0c;深入到我们工作生活的各个角落。很多企业为了提升竞争力也加快了信息化建设的步伐&#xff0c;而信息化建设的关键就是软件人才&#xff0c;谁能快速构建真正高效的软件开发团队&#xff0c;谁就能先一步…

10 个Web3 设计灵感网站

10 个Web3 设计灵感网站&#xff1a;Cosmos、Axies Infinity、DeSo Foundation、Foundation App、Llama、Snapshot、Juicebox、Alchemy、RabbitHole 正如Twitter前首席执行官Jack Dorsey最近发的一条推文“你不拥有web3&#xff0c;但风险投资家拥有”&#xff0c;而Marc Andre…