0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Apollo高精地图如何表征和规范,一起来了解!

YB7m_Apollo_Dev 来源:lp 2019-03-08 11:02 次阅读

高精地图与普通地图不同,高精地图主要服务于自动驾驶车辆,通过一套独特的导航体系,帮助自动驾驶解决系统性能问题,扩展传感器检测边界。

目前 Apollo 内部高精地图主要应用在高精定位、环境感知、决策规划、仿真运行四大场景,帮助解决林荫道路GPS信号弱、红绿灯定位与感知以及十字路口复杂等导航难题。

上周阿波君为大家详细介绍了「Apollo进阶课程⑪丨Apollo地图生产技术」。

详细讲解了高精地图生产的四个环节:数据采集、数据处理、元素识别、人工验证。通过全自动数据融合加工和基于深度学习的地图要素识别方法,最后进行人工验证生产的全部过程。

本周阿波君将与大家分享Apollo高精地图(高精地图的表征和规范)。下面,我们一起进入进阶课程第12期。

以下,ENJOY

Apollo高精地图能够表征的元素如下图所示,包括道路、路口、交通信号灯、逻辑关系元素以及其他的道路对象元素。

高精地图的数据元素

道路包括左边界右边界。它可分为两个层次,一是道路级别,一是Lane(车道)级别。

每个Lane都有左边、右边界;道路也有道路边界,而且道路边界是强约束,即自动驾驶的时候,道路边界是永远不能压的。

车道线理论上也是不能压的,但是如果在紧急情况下可以压车道线,比如说可以越过虚黄线进行借道超车。

路口是一个相对复杂的场景,可以进一步细分为路口边界和虚拟车道。路口边界主要用于感知。

可以通过路口的边界,对感知进行过滤。如果感知识别到的静态物体不在地图的路口边界之内,就可以暂时忽略它。虚拟车道主要是用来路口的行驶引导。

交通信号灯可以分为红绿灯和其他道路标志。高精地图会为红绿灯提供一个三维空间位置,其次也会提供红绿灯跟车道之间的关联关系,即告知当前所在车道,应该看哪个灯。

道路标志主要包括人行横道,停止线以及一些路上的文字信息。这些信息可以用于各个模块,例如感知、PNC等。

逻辑关系表述。当前,地图中各个元素之间的关系并没有嵌入到元素的表述中,而是使用overlap来表述两个元素之间的关系。

Overlap主要是用来描述两个元素的空间关系。

如下图所示,Lane和Junction在空间上有重叠,它们之间就会有Overlap。

Overlap关系

高精地图的车道模型

上图给出了Apollo的车道模型及其相关描述元素。它与openDRIVE大致的规则是一样的,把纵向切成Section,横向还是使用Lane分割。

该车道模型包含了很多元素属性。其中Left road_sample主要用来描述中心线到两个边界的距离,该边界指的是车道线边界。

Left road sample和Right road sample主要用来表述车道中心线到道路的物理边界的距离。

路口表述:路口分为真实路口和十字路口。在实践过程中,发现除了真实路口之外,在车道数变化的时候,比如从两车道变到三车道,需要感知周围有没有车辆,在Apollo高精地图里面也把这种情况处理成一个路口。

这也是In road和Cross road的区别。

高精地图的Junction模型

高精地图的UTM坐标系

UTM坐标系把全球分成60个区域带(Zone),每个Zone里面都是相当于Zone中心的一个局部坐标系,如上所示。

UTM坐标系描述的位置十分精确。目前,Apollo内部主要采用UTM坐标系。

84坐标系是一套全球经纬度,也是高精地图里面使用的坐标系。

在该坐标系中,把整个地球想象成是一个椭球,地面的高度是相对于椭球面的一个偏移。高由正数表示,低由负数表示。

高精地图的Track坐标系

Track坐标系是基于st的,如上图所示。s是纵向,t是横向。这个坐标系用来表述一个元素跟Lane之间关系,描述它位于Lane的什么位置,相对于Lane起点的偏移量是多少。

Apollo OpenDRIVE把所有元素做了归类。

类似于Road和Junction。路上的所有的地面标识都归属为Objects,所有的标牌都归属为Signal,并通过Overlap把它们关联起来,如下图所示。

Apollo的OpenDrive规范

Apollo的OpenDRIVE跟标准OpenDRIVE的区别主要有以下四点。

首先,元素形状的表达方式不同。

标准OpenDRIVE是基于参考线加偏移,并采用方程来描述。

Apollo里面的OpenDRIVE,都是坐标点,没有采用方程的方式。采用方程方式的好处在于数据量非常小,通过三四个参数就可以描述一个非常长的线。

采用坐标点的方式,数据量会稍微大一点。但是也有很多的好处。第一,用点表示对于下游的计算非常友好,不需要再重新通过线去做点的采样。

第二,在道路急于转弯的地方,原始的OpenDRIVE把基于Reference Line的方式还原成点的方式,会导致道路上存在毛刺。这种处理方式对于无人驾驶来说非常危险。

一旦道路出现毛刺,就会导致无人驾驶车猛打方向盘,可能直接冲到路边上去。

其次,Apollo对OpenDRIVE进行了元素类型的扩展。比如增加了禁停区,人行横道、减速带等元素的藐视。

第三是增加了一些道路元素关系的表述。比如新增了Junction与Junction内元素的关联关系。

最后还增加了诸如停止线与红绿灯的关联关系,中心线到边界的距离等的描述。

高精地图引擎

HDMAP引擎是Apollo里面用于从HDMAP里面提取相关元素给下游的一个模块。它的结构框图如上图所示。

HDMAP 引擎可以通过ID去检索一个元素,也可以通过空间位置查找元素,比如给定一个点和半径,可以把这个范围之内所有的红绿灯都提出来。

在国内,采集地图属于国家机密事项。并不是任何人都可以做测绘,并不是每一家厂商或者公司都有资格采集地图。

采集地图,必须要经过国家测绘部门/安全部门的审批。

同时,测绘得到的数据需要进行加密。高程、曲率、坡度等在高精地图里面是不允许表述的,但这些数据对于无人驾驶又是必须的。如何在符合国家安全要求和技术需求之间找到平衡,这仍是自动驾驶发展所需要正视、解决的问题。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动驾驶
    +关注

    关注

    773

    文章

    13022

    浏览量

    163186
  • Apollo
    +关注

    关注

    5

    文章

    326

    浏览量

    18292
  • 深度学习
    +关注

    关注

    73

    文章

    5235

    浏览量

    119893

原文标题:进阶课程 ⑫ | Apollo高精地图

文章出处:【微信号:Apollo_Developers,微信公众号:Apollo开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Apollo相对地图在自动驾驶中的使用及实际应用

    相对地图是在Apollo 2.5的时候第一次对外开放。在3.0的时候我们和长沙智能驾驶研究院一起合作研发,对相对地图进行了功能和架构上的升级。
    的头像 发表于 08-01 08:55 6053次阅读

    【鸿蒙千帆地图携手HarmonyOS NEXT,开启智能出行新篇章

    宋浩波对地图鸿蒙化历程的回顾,从 2023 年 10 月 24 日的鸿蒙立项全员开工大会,到 12 月 1 日与华为正式签署鸿蒙合作协议,再到最近发布的鸿蒙原生
    发表于 02-02 11:09

    让我们一起来写makefile

    大家一起来学哈
    发表于 03-14 00:04

    Abdroid论坛的帖子 资料好少,做个榜样,大家一起来疯狂and...

    Abdroid论坛的帖子 资料好少,做个榜样,大家一起来疯狂android吧
    发表于 04-07 13:33

    【招募帖】有人对智能硬件感兴趣吗,一起来交流吧。

    ,并请反馈产品评测报告或试用体验。大致情况就是这样,不知道有人有兴趣吗?一起来聊聊吧,有兴趣的可以私信我或是加我QQ:632170494 会再和您详说的。
    发表于 03-23 10:52

    3天造出自动驾驶汽车的百度Apollo,背后竟有50多个后台

    对外开放百度自动驾驶技术能力和资源。百度智能汽车事业部总经理顾维灏向全场开发者和合作伙伴介绍了百度通过环境感知、端对端、地图、仿真地图等AI技术赋能行业的计划,他在演讲中指出,有了
    发表于 07-07 18:28

    一起来讨论吧

    一起来讨论吧
    发表于 10-24 10:35

    一起来论坛学习吧

    一起来论坛学习吧
    发表于 10-24 10:39

    一起来学习吗

    一起来学习吗
    发表于 11-10 15:02

    SmartXplorer与XFlow一起使用SmartXplorer想要引用地图选项

    我正在尝试将SmartXplorer与XFlow一起使用。我已经更新了fpga.flw文件,用smartxplorer部分替换了map和par部分。我遇到的问题是SmartXplorer想要引用
    发表于 10-15 11:44

    apollo2外挂的32.768kHz的晶振不振的原因

    最近和硬件同事块调个使用Apollo2的MCU的板子,这种MCU号称全球超低功耗MCU之最。“咱也不知道,咱也不敢问,为什么敢用如此嚣张的称呼!!!哈哈,开个玩笑。”言归正传,在生产板子的时候
    发表于 11-04 06:21

    如何将DMA和环形的FIFO队列结合在一起来使用呢

    如何将DMA和环形的FIFO队列结合在一起来使用呢?有哪些实验步骤呢?
    发表于 12-09 08:05

    一起来认识深入了解水银

    一起来认识深入了解水银    汞在常温下呈液态,
    发表于 10-23 09:22 1870次阅读

    Apollo定位、感知、规划模块的基础-高精地图

    与普通地图不同,高精地图主要服务于自动驾驶车辆,通过一套独特的导航体系,帮助自动驾驶解决系统性能问题,扩展传感器检测边界。目前 Apollo 内部高精地图主要应用在高精定位、环境感知、
    的头像 发表于 08-12 11:15 9360次阅读

    直播预告丨何为拥有“连续体验感”的高阶智驾地图?

    重感知、轻地图提了一段时间 城市NOA究竟需要什么样的智驾地图? 7月20日20:00 一起来听听 百度智驾地图业务部主任架构师万聪怎么说 一键预约直播 何为拥有“连续体验感”的高阶智
    的头像 发表于 07-19 17:45 314次阅读
    直播预告丨何为拥有“连续体验感”的高阶智驾<b class='flag-5'>地图</b>?