本文主要讲对opendrive的个人理解。

Opendrive是一种自动驾驶使用的高精地图格式,但主要用于自动驾驶的仿真模拟训练,它不是软件,而是一种地图规格。和opendrive相关的软件有RoadRunner和Vtd等。

Opendrive规格定义了基本道路元素和道路附属设施,是和机动车辆驾驶密切相关的一些地图元素,平面精度要达到能分辨出车道标线,标线一般宽十几厘米。也要能分辨出路牙,否则车辆可能会撞到。

基本道路元素就是道路本身,也就是机动车能走的部分,当然也包括高程。重点是标线和道路两侧,因为机动车要遵守交通规则,所以要按照道路标线的要求来行驶,尤其是路口转向处。

道路附属设施包括路牙,导流区,杆状物,停车位,停止线,人行横道等,因为这些都会影响机动车行驶,还有交通信号灯,交通标牌,涉及到更复杂的规则来影响机动车行驶。

opendrive最核心的是参考线Refrence Line,这条线在实际道路上不存在,应该算是对道路的数学抽象。说到数学,国内传统地图都是通过点线面来表达,多点多段线任意多边形就是地图的所有形式了。

参考线是在理解road概念的前提下才可以讲。什么是road,顾名思义,它就是道路,只不过它是一段道路,是两个路口junction之间的一段道路。路口我们暂可以简单理解为十字路口,road的起点从路口的停止线开始,到另外一个路口的停止线结束。

那么这段road的参考线可以理解为沿道路方向的中轴线,其实啊,参考线怎么画都可以,它只有数学含义。参考线的数学函义就是坐标轴,而且是x轴,相应的y轴垂直于x轴,x和y轴和地表平行。但是这里opendrive把这个坐标系另取了个名字,叫s t坐标系。opendrive中所有的空间位置描述都和这个坐标系息息相关,opendrive还定义了uv坐标系,个人认为st坐标系最重要。

参考线还有很多内容要讲,首先st坐标系的s轴,即参考线不一定是像常规坐标系一样是直线。假设一段圆弧形的路,将道路中心线定义为s轴,则s轴是一段圆弧,t轴始终垂直于这条圆弧线。

一个road的参考线可以由几段不同类型的线组成,线的类型包括直线,圆弧线,螺旋线,参数三次多项式曲线。螺旋线的种类很多,个人感觉从定义上有些像阿基米德螺旋线。

road在定义了参考线后,就可以按照空间方式来描述其组成了。具体包括车道,纵向高程信息,横向高程信息,对象,信号等。

在详细讲车道前提前说一下0车道,参考线没有实际含义,只有数学层面的含义,但是0车道有,由于0车道经常会和参考线重合,会容易产生概念混淆。0车道用来区分道路行驶方向,双向行驶的道路0车道一定是道路中心线,单向行驶的道路0车道一定是道路一侧。

OpenDrive学习笔记相关推荐

  1. Apollo学习笔记

    Apollo学习笔记 Apollo课程 智能驾驶入门课程 无人驾驶概览 1.软件层分为三层: 实时操作系统(RTOS):确保在给定时间内完成特定任务,实时时确保系统稳定性.驾驶安全性的重要要求.通过在 ...

  2. 百度Apollo自动驾驶学习笔记

    Apollo学习笔记 作者:邹镇洪(清华大学车辆学院,个人主页 转到Github项目主页查看持续更新 转到Github项目主页查看持续更新 转到Github项目主页查看持续更新 本文是对百度Apoll ...

  3. Apollo源码剖析学习笔记2

    Apollo 源码剖析学习笔记2 Talker-ListenerNode 目录中包含了 Node 对象.Reader 对象和 Writer 对象.Node 对象主要对应 Ros 中的 Node 节点, ...

  4. PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call

    您的位置 首页 PyTorch 学习笔记系列 PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 发布: 2017年8月4日 7,195阅读 ...

  5. 容器云原生DevOps学习笔记——第三期:从零搭建CI/CD系统标准化交付流程

    暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...

  6. 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移

    暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...

  7. 2020年Yann Lecun深度学习笔记(下)

    2020年Yann Lecun深度学习笔记(下)

  8. 2020年Yann Lecun深度学习笔记(上)

    2020年Yann Lecun深度学习笔记(上)

  9. 知识图谱学习笔记(1)

    知识图谱学习笔记第一部分,包含RDF介绍,以及Jena RDF API使用 知识图谱的基石:RDF RDF(Resource Description Framework),即资源描述框架,其本质是一个 ...

  10. 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记

    计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...

最新文章

  1. 【牛腩新闻发布系统】开发前的准备01
  2. Java生成CRC16数据校验码
  3. PHP-fpm 优化问题
  4. SharePoint技术峰会2009视频(6)
  5. 【ABAP】带PDF附件的邮件发送功能
  6. Java进阶:AtomicReference详解
  7. 用一个参数化的模型来投影点
  8. ElasticSearch原理
  9. project 模板_施工进度横道图模板,全套电子版,工作效率大大提高!
  10. opencl初探-sobel检测
  11. P3986 斐波那契数列
  12. AndroidStudio中获得的VersionCode一直为1和VersionName一直为1.0
  13. darknet 的python接口使用
  14. java程序包condition不存在,Ant javac:包x不存在,但我将x.jar添加到java构...
  15. 用python爬取qq空间内容_Python爬取qq空间说说的实例代码
  16. 云计算在美国的五年是如何发展的?
  17. DSP_基于TMS320F28377D双核芯片和CCS7.40的编程入门
  18. 如何实现H5可视化编辑器的实时预览和真机扫码预览功能
  19. 如何用wps设计统一的图片背景
  20. python气泡图的地图_Python数据可视化:香港地图、房价可视化,绘制气泡图

热门文章

  1. 2021秋招IC验证面经-ARM中国/中科芯/飞腾/地平线/中兴
  2. 解决Unable to find taglib [cr] for URI: [WBE-INF/tlds/testlib.tld]] with root cause的可能性方案
  3. 天正坐标标注怎么不显示_[CAD标注坐标如何显示XY]cad坐标标注不显示
  4. 控制~李雅普诺夫稳定性
  5. 08 指数基金 定投VS一次性投资
  6. ESP32-cam 初体验 从esp32-cam的购买到局域网监控的实现
  7. js怎么实现ftp上传文件到服务器,js ftp上传文件到服务器
  8. 恩智浦电磁组智能汽车竞赛视频
  9. 课后习题讲解(免费)高数下册
  10. VCPKG安装和使用教程