Apollo进阶课程⑪ | Apollo地图生产技术

目录

高精地图生产流程

数据采集

数据处理

元素识别

人工验证

全自动数据融合加工

基于深度学习的地图要素识别

人工验证生产

地图成果


原文链接:进阶课程⑪ | Apollo地图生产技术

高精地图是自动驾驶汽车的「千里眼」「透视镜」

摄像头、激光雷达、传感器所监测到的范围是有限的。摄像头根据不同的俯角看到的距离约15米-60米不等,激光雷达所看到的范围大约40米-80米范围,而安装了高精地图的自动驾驶汽车,就相当于具备了一双“千里眼”,不但可帮助自动驾驶汽车提前知晓位置信息,还能精确规划行驶路线

Camera看不清的地方,或者雷达检测不到的地方,高精地图能及时反馈数据,起到一个“透视镜”的作用

上周阿波君为大家详细介绍了「Apollo进阶课程⑩Apollo地图采集方案」

Apollo采取的是激光雷达和Camera二者相结合的制图方案。该方案需要配置64线激光雷达、16线激光雷达、GPS、IMU、长焦相机以及短焦相机六大基础传感器。

基于Apollo系统的地图数据采集可以实现一键采集。采集完成之后,Apollo会提供一系列后续的制图服务。

本周阿波君将与大家分享Apollo地图生产技术相关内容。下面,我们一起进入进阶课程第11期。


高精地图生产流程

                                                                                        高精地图生产流程

在城市道路环境下,高精地图生产分为数据采集、数据处理、元素识别、人工验证四个环节。


数据采集

百度采取的是激光雷达和Camera二者相结合的制图方案。Apollo2.5版本中,百度已经发布了其地图采集方案。

该方案的基础传感器配置有:平装的64线激光雷达16线激光雷达

其中,64线激光雷达用于道路路面采集。由于其扫描高度比较低,还需要一个斜向上装的16线激光雷达,用于检测较高处的红绿灯、标牌等信息。其他传感器有GPS、IMU、长焦相机以及短焦相机

数据处理

传感器采集到的数据分为点云图像两大类。

L4级自动驾驶汽车对地图的精度要求非常高。Apollo在制图过程中处理的数据也以点云为主。

采用RTK的先决条件,即在开阔无遮挡的情况下,才能取得相对准确的信号。

在城市道路中采用RTK方案,由于高楼遮挡或林荫路等场景无法避免,它们仍会对信号的稳定性产生影响。

因此,我们在拿到点云之后需要对其进行拼接处理。

点云拼接:采集过程中出现信号不稳定时,需借助SLAM或其他方案,对Pose进行优化,才能将点云信息拼接,并形成一个完整的点云信息。

反射地图:点云拼接后,可将其压缩成可做标注、高度精确的反射地图,甚至基于反射地图来绘制高清地图。其生产过程与定位地图的制图方式一样。

元素识别

bai元素识别包括基于深度学习的元素识别和基于深度学习的点云分类。

基于点云压缩成的图像进行车道线的识别,我们可得出准确的车道线级别的道路形状特征。

除此之外,我们还需要提炼道路的虚实线、黄白线、路牌标识等,来完善道路特征

通过对收集到的图像等进行深度学习,即可提炼出道路相关元素放到高精地图中。

数据采集、数据处理、元素识别三个流程是高精地图自动化的必要环节。不过,从目前来看,自动化仍无法解决所有问题,仍存在信息补齐和逻辑关联的缺陷。

一方面,无人驾驶车辆无法处理没有车道线的道路。这一步需要离线并用人工手段补齐相关信息。

其次,涉及到逻辑信息的处理时,无人车无法判断。例如在某一路口遭遇红绿灯时,车端应该识别哪个交通信号灯,也需要人工手段关联停止线与红绿灯。

人工验证

人工验证的环节包括识别车道线是否正确、对信号灯、标志牌进行逻辑处理、路口虚拟道路逻辑线的生成等。


全自动数据融合加工

                                                                                通过64线激光雷达采集到的点云信息加上定位信息,拼接得出一个完整的点云效果

百度高精地图依托模式识别、深度学习、三维重建、点云信息处理等世界领先的技术,其数据自动化处理程度已达到90%,相对精度达0.1-0.2米,准确率高达95%以上

简单的说,采集到的这些每秒 10 帧左右的图像,识别和融合都是自动化的。把 GPS、点云、图像等数据叠加到一起后,将进行道路标线、路沿、路牌、交通标志等等道路元素的识别。

另外,诸如同一条道路上下行双向采集之后造成的数据重复问题,也会在这一步里被自动整合,剔除重复内容。

目前百度对于城市复杂场景及环境的制图效果较好,可以精细刻画上百种道路要素和属性。


基于深度学习的地图要素识别

                                                                                        基于深度学习的地图要素识别

地图要素的识别包含两个层面:

第一个层面,能否根据点云分割从中提取精确的Feature

第二个层面,尝试从点云中提取车道线、灯杆、红绿灯。如灯杆可以用来做视觉定位的Feature。


人工验证生产

                                                                                        人工生产验证

百度把高精度地图制作分为「外业」和「内业」两部分,共三个步骤,分别是外采、后台数据化处理、人工验证以及发布

因为自动化处理不可能做到百分之百的准确,所以得再进行一轮人工验证,相当于视频制作的精剪、输出成片阶段。

验证人员需要从云端下载需要验证的路段数据,然后把自动处理之后的高精度地图数据和对应位置的图像信息作比对,找出错误的地方并进行更正。每人/天修正的数据量在 30-50 公里左右。

修正后的数据不会保存在本地,而是需要上传到云端。最终的高精度地图成品,也会通过云平台进行下发。

高精地图是基于反射地图生产的。通过融合底图数据、图像数据、点云数据,整合生成高精地图数据,将可形成一份相对完整精确的自动驾驶地图数据。


地图成果

                                                                                Apollo所需的定位地图、高精地图,以及基于高精地图生成的路径规划图和仿真地图

目前Apollo高精地图主要应用在高精定位、环境感知、决策规划、仿真运行四大场景。

  1. 定位地图类似于整齐排列的小格子,存储了坐标信息和反射强度信息等,用于点云定位。
  2. 点云定位是Apollo中的一个定位方案,在高精地图各个模块都会应用到。
  3. 路径规划地图主要用于车道级别规划。
  4. 仿真地图主要用于基于高精地图的仿真。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/439925.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jenkins初识

Jenkins是啥 官方文档 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。 Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。CI(Continuous integration,持续集成…

Apollo进阶课程 ⑫ | Apollo高精地图

目录 Apollo高精地图表征元素 Apollo车道模型 UTM坐标系 84坐标系 Track坐标系 Apollo opDRIVE规范 HDMAP引擎 高精地图在政策方面的挑战 原文链接:进阶课程 ⑫ | Apollo高精地图 高精地图与普通地图不同,高精地图主要服务于自动驾驶车辆&#…

一步步编写操作系统 6 启动bochs

运行bochs 终于安装完成了,虽然这过程中有可能会出现各种各样的问题,但还是值得庆祝的,对Linux不熟的朋友第一次就搞定了这么个硬货,我理解您此时的喜大普奔之情,哈哈,给大家点赞。顺便说一句,…

Apollo技能图谱2.0焕新发布 更新7大能力91个知识点

阿波君 Apollo开发者社区 2月26日 过去的一年里,Apollo发展迅速,向智能交通不断渗透。从2.5到3.5版本,无论控制系统的升级、高清地图的泛用和车路协同技术服务的推进,无不在推动自动驾驶技术从开源向开辟商业化新格局位移。 在开…

一步步编写操作系统 07 开机启动bios

bios是如何苏醒的 bios其实一直睡在某个地方,直到被唤醒……前面热火朝天的说了bios的功能和内存布局,似乎还没说到正题上,bios是如何启动的呢。因为bios是计算机上第一个运行的软件,所以它不可能自己加载自己,由此可…

0.《沉浸式线性代数》:前言

今天介绍一本新书《immersive linear algebra》:世界上第一本具有完全交互式图形的线性代数书。本书目前已经更新完毕。 作者是:JacobStrm,Kallestrm和Tomas Akenine-Mller,全文共包含11个部分:前言和10个正文章节。内…

Apollo进阶课程 ⑬ | Apollo无人车自定位技术入门

目录 1.什么是无人车自定位系统 2.为什么无人车需要精确的定位系统 2.1 激光定位 2.2 视觉定位 2.3 惯性导航 2.4 多传感器融合定位 原文链接:进阶课程 ⑬ | Apollo无人车自定位技术入门 上周阿波君为大家详细介绍了「Apollo进阶课程⑫丨Apollo地图生产技术」…

一步步编写操作系统 08 bios跳转到神奇的内存地址0x7c00

为什么是0x7c00 计算机执行到这份上,bios也即将完成自己的历史使命了,完成之后,它又将睡去。想到这里,心中不免一丝忧伤,甚至有些许挽留它的想法。可是,这就是它的命,它生来被设计成这样&…

Apollo进阶课程⑭ | Apollo自动定位技术——三维几何变换和坐标系介绍

目录 1.三维几何变换---旋转 2.三维几何变换----平移 2.1刚体的位置和朝向 3. 坐标系 3.1 ECI地心惯性坐标系 3.2 ECFF地心地固坐标系 3.3当地水平坐标系 3.4 UTM坐标系 3.5 车体坐标系 3.6IMU坐标系 3.7 相机坐标系 3.8 激光雷达坐标系 3.9 无人车定位信息中涉及…

一步步编写操作系统 09 写个mbr

有点不好意思了,说了好久,才说到实质性的东西,好了,赶紧给客官上菜。 代码2-1(c2/a/boot/mbr.S)1 ;主引导程序2 ;------------------------------------------------------------3 SECTION MBR vstart0x7c…

【2019牛客暑期多校训练营(第二场)- F】Partition problem(dfs,均摊时间优化)

题干: 链接:https://ac.nowcoder.com/acm/contest/882/F 来源:牛客网 Given 2N people, you need to assign each of them into either red team or white team such that each team consists of exactly N people and the total competi…

Apollo进阶课程 ⑮丨Apollo自动定位技术详解—百度无人车定位技术

目录 1.百度无人车定位进化历程 2.百度自动驾驶应用的定位技术 2.1GNSS定位技术 2.2载波定位技术 2.3激光点云定位技术 2.4视觉定位技术 原文链接:进阶课程 ⑮丨Apollo自动定位技术详解—百度无人车定位技术 定位的目的是让自动驾驶汽车找到自身确切位置的方法…

一步步编写操作系统 10 cpu的实模式

cpu的实模式 由于mbr在实模式下工作……什么?什么是实模式?这时候有同学打断了我。我心想,这下好办了……哈哈,没有啦,开个玩笑而已。我们这里所说的实模式其实就是8086 cpu的工作环境、工作方式、工作状态&#xff0…

Ubuntu系统中使用搜狗输入法

今天介绍如何在Ubuntu中使用搜狗输入法。(Ubuntu版本为16.04) 1)登陆搜狗官网选择对应系统的搜狗输入法:http://pinyin.sogou.com/linux。 2)打开下载目录,命令行输入以下命令: sudo dpkg -i …

2.1)深度学习笔记:深度学习的实践层面

目录 1)Train/Dev/Test sets 2)Bias/Variance 3)Regularization(重点) 4)Why regularization reduces overfitting(理解) 5)Dropout Regularization(重点…

一步步编写操作系统 12 代码段、数据段、栈和cpu寄存器的关系

先说下什么是寄存器。 寄存器是一种物理存储元件,只不过它是比一般的存储介质要快,能够跟上cpu的步伐,所以在cpu内部有好多这样的寄存器用来给cpu存取数据。 先简短说这一两句,暂时离开一下主题,咱们先看看相对熟悉一…

【2019牛客暑期多校训练营(第三场)- F】Planting Trees(单调队列,尺取)

题干: 链接:https://ac.nowcoder.com/acm/contest/883/F 来源:牛客网 The semester is finally over and the summer holiday is coming. However, as part of your universitys graduation requirement, you have to take part in some …

Apollo进阶课程⑯丨Apollo感知之旅——感知概貌

原文链接:进阶课程⑯丨Apollo感知之旅——感知概貌 上周阿波君为大家详细介绍了「进阶课程⑮| Apollo无人车自定位技术入门」。 我们人类天生就配备多种传感器,眼睛可以看到周围的环境,耳朵可以用来听,鼻子可以用来嗅,…

一步步编写操作系统 13 栈

栈到底是什么玩意 cpu中有栈段SS寄存器和栈指针SP寄存器,它们是用来指定当前使用的栈的物理地址。换句话说,要想让cpu运行,必须得有栈。栈是什么?干吗用的?本节将给大家一个交待。 还记得数据结构中的栈吗?那是逻辑…

【2019牛客暑期多校训练营(第二场)- E】MAZE(线段树优化dp,dp转矩阵乘法,线段树维护矩阵乘法)

题干: 链接:https://ac.nowcoder.com/acm/contest/882/E?&headNavacm 来源:牛客网 Given a maze with N rows and M columns, where bijb_{ij}bij​ represents the cell on the i-row, j-th column. If bi,j"1"b_{i, j} …