apollo_logo
2
0

高精度地图制作(二)

之前有写过一篇高精度地图制作的介绍,后面也思考了一些问题,其中比较困扰我的是高精度地图如何做到实时更新?高精度地图的维护成本?最近看了ZENRIN公司关于高精度地图的介绍PPT[1],得到了很大的启发,简单的做一个学习记录。

这个PPT的思路非常清晰,非常建议学习,下载见文末参考链接。下面开始介绍,多图预警,流量党请先收藏再看。

高效的高精度地图创建(使用GPU加速地图制作过程)

首先PPT的主题是"高效的高精度地图创建(使用GPU加速地图制作过程)",也就是说本文主要介绍了如果用GPU加速高精度地图制作过程。

你在东京的时候如何到达目的地?

想象一下你要去东京的某个景点,这时候你拿出手机,打开地图导航,一气呵成。也就是说我们需要东京的地图,才知道自己在哪里,如何去哪里,强调了地图的重要性。

接下来介绍下ZENRIN的历史,创建于1948年,在地图领域耕耘了60年,100%覆盖了日本有住宅区域的地图。

下面开始正式介绍高精度地图。

什么是高精度地图?

相比于传统地图,高精度地图不仅仅提供了道路信息,还提供了车道信息,交通标志,以及这些道路的位置信息,精度比传统导航地图更高,自动驾驶要求的精度在10cm以内。

三维信息

标识了车道线,路沿,红绿灯的三维位置信息。

语义信息

语义信息包括道路的结构化信息(哪里分流,哪里并道),同时标识车道停止线,信号位置等。

高精度地图保存格式

根据更新的需要,高精度地图一般分为几层,其中底图信息层是相对变动最少的,而动态信息层则是实时获取红绿灯的状况,路况信息等需要实时更新的信息,最后统一保存到数据库。

如何制作高精度地图

典型高精度地图制作过程分为3步:数据采集,数据处理,验证

采集车

地图采集需要专门的硬件,包括摄像头,激光雷达,轮速计,IMU和GNSS,一套下来价值不菲。

采集的数据非常大

可以看到采集的数据量非常大,即使这里是每隔2.5m拍一张照片,也就是说对道路做了采样之后的数据依然庞大。

点云注册

点云注册是制作高精度地图的基础,把2次采集的点云拼接起来,就合成了一张完整的道路,具体可以参考autoware的源码。

查找点云中的对象

接着就是查找点云地图中的对象,有些比较稀疏的对象,可以结合摄像头的融合,得出对象的具体信息,也就是说传感器融合在制图过程中非常关键。

制图并且验证

最后的过程就是提取道路几何信息,标注,并且进行质量检查,这些步骤都是在办公室用软件完成的。

高精度地图的挑战

这里提出了高精度地图的几大挑战:大量的数据需要处理,大量的计算时间,需要很多有经验的操作员,需要实时更新。也就是说这些问题也是一直困扰业界的问题。

如何加速制图过程?

这里提出了通过GPU和深度学习来加速制作地图

制作地图需要哪些工作?

这张图片非常好,完整的介绍了整个制作地图需要的步骤,然后逐个介绍如果通过GPU来加速这些过程,我找了下这里提到的"NVIDIA high performance mapping SDK"没找到,不知道是否是定制的一款SDK,没有公开?

点云注册(制作地图过程之一)

通过对比通过CPU的PCL库和GPU的ICP库进行点云注册,效率提高了4.6到5倍。

物体识别、分类(制作地图过程之一)

通过深度学习的场景分割和车道线识别,可以有效的减少人工操作。

制作地图的Pipeline

这张图很关键,讲述了整个高精度地图的流水线制作过程,很值得学习。

对比输出

这是制作高精度地图的最后一步骤,第一步是点云注册,之后是点云和图像融合辅助标识出车道等信息,最后一步原始提取,把上述融合的数据提取出重要的部分,主要是道路的部分,对数据做压缩。

利用反馈来更新地图

为了解决实时更新道路的问题,通过可靠和精确的定位来反馈真实世界的变化,并且把反馈加入到高精度地图中。

概念证明:制作整个日本的地图

这里提出了一个很好的问题,如何制作整个日本的地图,证明工作量的挑战。

日本和美国的区别

由于上述的深度学习用到模型,这里提出了如果要制作日本的地图,那么深度学习模型需要从新用日本的数据训练,这里简单对比了为什么基于美国的模型的数据对比。

我有个新奇的想法是,能不能像秦王扫六合一样,统一整个世界的交通规则?

结论

最后得出2点结论,一是GPU和AI确实可以帮忙自动的创建和更新地图;二是优化针对制作日本地图的流水线。

学习笔记

首要的一点,这个PPT回答了我的一些问题,比如:

  • 高精度地图如何做到实时更新?

通过确认过精确位置的反馈来更新高精度地图,如果指望人主动发起更新可能不现实,但是如果是汽车主动发起,也就是每个车有义务对地图做更新,那么未来技术上还是可行的。

  • 高精度地图的维护成本?

首先采集的数据确实非常大,计算量也很大,但是我们可以通过GPU和AI做加速来解决这些问题,并且也提出了一个很好的问题,证明如何制作整个日本的地图。

最后体会最深的就是关于制作地图的pipeline,并且详细的列出了制作高精度地图的各个过程,以及如何优化,其中图像和点云的融合,还有如何抽取压缩地图信息介绍的都很有启发。

关于英伟达地图SDK,发邮件问了下作者,目前得到的答复如下:

I saw "NVIDIA's High Performance Mapping SDK" in your introduction, but I can't find it in NVIDIA's official website. Is this a publicly released SDK?

No, it’s not released to the public and still under R&D phase, I believe. You may get more precise information if you contact NVIDIA directly.

看来英伟达还在开发这个SDK

原创声明,本文由作者授权发布于Apollo开发者社区,未经许可,不得转载。
发表评论已发表 0 条评论
登录后可评论,请前往 登录
暂无评论~快去发表自己的独特见解吧!
目录
什么是高精度地图?
如何制作高精度地图
高精度地图的挑战
结论
学习笔记