高精度地图:自动驾驶的向导_高精度地图 自动驾驶
myzbx 2025-09-01 09:48 5 浏览
来源:智能汽车设计 作者:Dr. Li
高精度地图是伴随着自动驾驶而生的,是目前研发L3及以上自动驾驶技术的标配。高精度地图是以厘米级精度来描述道路细节的数据集。与传统导航地图不同的是,高精度地图除了能提供的道路(Road)级别的导航信息外,还能够提供车道(Lane)级别的导航信息。无论是在信息的丰富度还是信息的精度方面,都远远高于传统导航地图。
01 国内外高精度地图发展概述
Waymo早在2009年就在为自动驾驶构建地图。随后,由于大算力芯片以及深度学习技术的蓬勃发展,自动驾驶技术能落地的场景也变得越来越丰富,同时自动驾驶技术本身带来的巨大商业价值,吸引了越来越多的国内外玩家进入该领域,进行深入研究来实现各类场景的落地。高精地图作为自动驾驶技术中的重要环节,在定位、感知、规划甚至端到端的自动驾驶算法中都能提供技术支撑,越来越多的企业加入了高精度地图制作行业来加速自动驾驶快速落地。
除了Here、TomTom等传统图商先后加入到高精地图制作外,自动驾驶技术公司Mobileye,Tesla等在自研高精度地图上也投入了大量精力。国内厂商紧随其后,2013年,国内图商四维图新、高德、宽凳科技等加入高精度地图的制作,同时,自动驾驶技术公司百度、Momenta等为满足L3级别的自动驾驶的要求也开始了高精度地图的制作和使用。
高精度地图在自动驾驶中的作用主要体现在如下几个方面:
感知:红绿灯感知、车道线感知、超视距感知等大大简化了自动驾驶过程中后续预测以及规控算法设计的复杂度。
路径规划与决策:使用高精度地图提供的信息提前进行路径规划,同时根据障碍物所在车道位置或者红绿灯等信息预测障碍物可能的运行轨迹,从而提前做出预判和决策。
安全:在雨雪、大雾等极端天气下,各传感器可能会出现一定失效或者感知结果不准确,高精度地图可以有效的进行信息的补充,从而保证自动驾驶汽车行驶过程中的安全性,同时,在一些如多层立交、隧道等复杂的道路场景下,利用高精度地图,结合视觉毫米波雷达、激光雷达等无源定位的无源传感器,实现自主定位,这种融合定位的方式会大大提升定位的准确性,也会进一步提升自动驾驶的安全性。
02 高精度地图制作方案对比
目前高精度地图的生产制作主要是两种方式,一种是采用摄像头这种纯视觉的生产方式,代表的公司Deep Motion、宽凳科技、Momenta等初创公司,纯视觉的生产方式除了大大降低生产成本,还会使得高精度地图制作的周期大大降低,加速高精度地图众包方案的落地,但是对算法技术的创新有较高的要求。另一种主流的方案是采用以激光雷达为主的高精地图采集方案来进行高精度地图的生产(图2为高精度地图采集车示意图以及实物图),代表公司有很多,例如Waymo、百度、四维图新、高德等,采用激光雷达为主,摄像头为辅的方案相对来说技术比较成熟,可以综合利用各个传感器的优势进行算法的研发,简化了后续算法研发的复杂度。但是生产制作成本高,生产周期长,同时不利于众包更新高精度地图方案的落地。
03 高精度地图制作技术发展趋势
高精度地图可以分为两个层级:静态高精度地图和动态高精度地图。受限于芯片算力以及制作成本的考虑,目前的高精度地图制作都是围绕静态高精度地图展开的,其组成主要包括车道线信息、方向箭头信息、道路标志牌信息、道路属性信息等。在静态高精度地图图层之上,动态高精度地图主要包括道路上发生的实时动态信息,主要包括随时间变化的交通标志(如红绿灯状态、潮汐车道等)、道路交通信息(道路拥堵情况、事故发生情况、道路施工情况、交通管制情况、天气情况、路面积水情况等)。目前高精度地图的生成一般涉及到的技术为数据采集、栅格图预处理、数据标注、检测识别、自动矢量化等生产流程,如图3所示。
- 数据采集技术:一般利用多传感器GPS、IMU、轮速计、激光雷达或者摄像头融合技术计算出当前采集车的位置信息,让后将该位置信息以及激光雷达/摄像头的扫描信息写入到地图数据中。
- 栅格图预处理:这里主要涉及点云拼接、栅格图融合以及伪影去除等。
- 数据标注:利用标注工具对需要识别的元素按照一定的规则进行标注。
- 检测识别:这里主要是利用深度学习算法进行检测和识别,提供目标元素的语义以及位置信息。
- 自动矢量化:按照一定的精度要求,给出利用点线以及多边形所描述目标物体的坐标信息。这里主要涉及数据采样、多边形拟合等传统图像数据处理算法。
可以看出整个流程还是相当繁琐的,同时制作成本也是相当高的。加上后期的地图更新和维护成本也会是相当复杂和价格高昂,这些都大大限制了其使用范围,尤其是在自动驾驶领域大规模的落地使用和更新。
因此,为了解决在自动驾驶技术落地高精度地图使用的问题,产生了实时局部高精度地图生成的技术路线。相比较传统的高精度地图生成,该技术路线主要体现在高精度地图生成的实时性以及空间范围的局部性(只产生处在当前车辆周边环境的高精度地图信息以供自动驾驶使用)两个方面,如图4所示。
2021年,实时局部高精度地图技术路线主要是利用多视图摄像头/激光雷达采集到的图像数据利用神经网络进行特征提取并利用相机外参投影到鸟瞰图视角下,在鸟瞰图视角下进行解码操作得到车道线的分割信息以及车道线方向信息,在经过后处理操作得到矢量地图,如图5所示。
2022年,实时局部高精度地图技术路线迎来了比较大的变化,第一个比较大的变化是整个实时局部高精度地图生成变成端到端的方式,不再需要根据车道线的分割结果等进行矢量化后处理操作。第二个比较大的变化是,transformer网络结构被广泛地使用在图像或者激光雷达数据特征图的编解码阶段直接输出矢量化的地图数据,包含道路线的关键点信息,关键点之间的起始顺序以及拓扑结构信息。比较有代表性的工作有VectorMapNet(如图6所示)、该方案将不同模态(如摄像头图像和激光雷达点云)生成的特征转换为鸟瞰图特征后,再聚合到一个公共的BEV特征空间中;然后,基于transformer的网络结构进行车道线的关键点预测,最后利用注意模块建模生成关键点之间的拓扑连接关系。
MapTR(如图7所示)的方案首先是对原始图像进行语义特征提取,之后转换为鸟瞰图特征,采用transformer变体结构,使用分层级的query embedding机制结构化地编码地图要素的信息,最终输出地图要素的语义类别和节点位置。特斯拉的Lanes Neural Network(如图8所示)则更加面向工程化一点,Lanes Neural Network不仅用到了图像信息,而且其用到了导航地图的文本信息,例如车道线的数量、宽度、拓扑连接关系等属性描述,通过嵌入操作和视觉图像的特征信息统一到同一个特征张量空间输入到transformer网络结构进行解码输出,这也是文本与图像信息首次进行特征融合被用在局部高精度地图自动生成构建中。
其大概的过程如下:首先是视觉特征作为输入,利用transformer结构,网络会先预测关键节点的粗略位置,再以粗略位置所在的局部范围进行更精确的位置预测,然后预测该节点的语义信息,最后预测节点的连接拓扑关系,如分叉/并道/曲率参数等。网络会以这样自回归的方式将所有的车道线节点进行生成(按照一定顺序,如自上而下,自左到右)。
04 高精度地图制作技术发展趋势
从目前的技术发展路线来看,未来自动驾驶所需的高精度地图使用方式无论从制作成本、使用的便利性以后续更新的实时性角度考虑,很大概率会使用这种局部实时构建高精度地图的方式,感知数据输入会分为纯视觉(多视图)以及视觉与激光雷达融合输入的方案,但都是在鸟瞰图视角下利用transformer网络结构对多源数据(摄像头、激光雷达)进行感知特征的统一表征,同时为了提高车道线关键点之间拓扑结构关系描述的准确性以及更多的高精度地图元素输出,带有地图文本描述的信息会越来越多的加入到网络结构中,利用transformer网络结构将这些特征信息进行交互得到更准确的位置信息以及更多的高精度地图元素输出,而不局限于只有车道线、人行横道线等有关高精度地图线信息元素的矢量化输出。
通过将视觉感知、文本、语音等不同模态数据,通过映射到同一语义空间进行特征对齐后,利用transformer网络结构进行特征交互学习得到统一的多模态特征,灵活的根据不同的下游任务进行特征解码操作也将是未来很多AI模型训练的一种方式。
参考文献:
[1]
https://ryanadex.github.io/2019/06/04/opendrive/
Opendrive地图数据解析
[2] Q. Li, Y. Wang, Y. Wang, and H. Zhao. Hdmapnet: A local semantic map learning and evaluation framework. arXiv preprint arXiv:2107.06307, 2021
[3] Yicheng Liu, Yue Wang, Yilun Wang, and Hang Zhao. Vectormapnet: End-to-end vectorized hd map learning. arXiv preprint arXiv:2206.08920, 2022a
[4] Liao B, Chen S, Wang X, et al. MapTR: Structured Modeling and Learning for Online Vectorized HD Map Construction[J]. arXiv preprint arXiv:2208.14437, 2022.
[5] Thinkautonomous.ai, “A Look at Tesla’s Occupancy Networks”,
https://www.thinkautonomous.ai/blog/occupancy-networks/
[6] 地图采集车的那些事 | 载车篇
https://zhuanlan.zhihu.com/p/367189697
相关推荐
- 半导体行业术语缩写词典总结-JKL_半导体词汇缩写表
-
作为半导体行业新人来说,最痛苦的莫过于各种缩写词术语了,有的缩写词一样但是会有不同的解释。这里作者给大家整理了部分术语词典,后面会按照更新顺序一一分享出来。废话不多说,直接开始,如有遗漏,欢迎大家在评...
- JD.com Deepens Push Into Embodied Intelligence With Investment in Sensor Maker PaXiniTech
-
ToraOne,thesecond-generationmultidimensionaltactilehumanoidrobotdevelopedbyPaXiniTechTMTPOS...
- Hong Kong's Consumer Market Becomes New Battleground for Chinese Mainland Internet Giants
-
AI-generatedimageTMTPOST--StrollthroughthestreetsofHongKongtoday,anditmightfeellikey...
- http2解决了哪些问题_简述http2的优点
-
HTTP/2(最初称为SPDY)是HTTP协议的第二个主要版本,它在HTTP/1.1的基础上进行了重大改进,旨在解决其在性能和效率方面的诸多瓶颈。以下是HTTP/2主要解决的问题:队头阻...
- China's economy stays strong and vital amid pressure
-
Peoplevisitthe4thChina-CEECExpo&InternationalConsumerGoodsFairinNingbo,eastChina's...
- JD.com Makes $2.4 Billion Bid for Ceconomy in Bold Push to Build a Global Retail Empire
-
TMTPOST--JD.comhasunveiledplanstoacquireGermany’sCeconomyAG—theparentofEurope’sleading...
- 深入剖析 Java 中的装饰器设计模式:原理、应用与实践
-
在Java软件开发的广阔天地里,设计模式犹如璀璨星辰,照亮我们构建高效、可维护系统的道路。今天,让我们聚焦于其中一颗闪耀的星——装饰器设计模式,深入探究它的奥秘,看看如何利用它为我们的代码赋予...
- 组合模式应用-适配器模式_适配器组件
-
写在前面Hello,我是易元,这篇文章是我学习设计模式时的笔记和心得体会。如果其中有错误,欢迎大家留言指正!该部分为各模式组合使用,涉及代码较多,熟能生巧。内容回顾定义适配器模式是一种结构型设计模式,...
- OOM (Out Of Memory) 故障排查指南
-
1.确认OOM类型首先需要确认是哪种类型的OOM:JavaHeapOOM:Java堆内存不足NativeMemoryOOM:本地内存不足MetaspaceOOM:元空间内存不足Contai...
- 刷完这49题,面试官当场给Offer!Java程序员必备指南
-
1.问题:如果main方法被声明为private会怎样?答案:能正常编译,但运行的时候会提示”main方法不是public的”。2.问题:Java里的传引用和传值的区别是什么?答案:传引用是指传递的是...
- C#编程基础(看这一篇就够了)_c#编程入门与应用
-
C#及其开发环境简介C#概述C#是一个现代的、通用的、面向对象的编程语言,由微软(Microsoft)开发,经Ecma和ISO核准认可。它由AndersHejlsberg和他的团队在.NET框架开发...
- 说一下JDK的监控和 线上处理的一些case
-
一句话总结JDK监控常用工具包括JConsole、VisualVM、JMC等,用于实时查看内存、线程、GC状态。线上常见问题处理:内存泄漏通过heapdump分析对象引用链;频繁GC可调整-Xmx/...
- JavaScript深拷贝极简指南:3种方法解决嵌套与循环引用难题
-
为什么需要深拷贝?首先我们看看浅拷贝,point指向的是同一个地址,这时我们修改obj2.point的属性时,obj1的point属性也会被修改再看看深拷贝,point指向的是不同地址,这时我们修改o...
- Java 25 在 JEP 519 中集成了紧凑对象头
-
作者|ANMBazlurRahman译者|刘雅梦策划|丁晓昀Java25通过JEP519将紧凑对象头作为产品特性进行了集成,在不需要更改任何代码的情况下,为开发人员提供了...
- 每日一练 Python 面试题(1)_python每日一记
-
以下是5道Python基本语法相关的面试题,涵盖变量、运算符、数据结构、函数和异常处理等核心概念:1.变量与作用域题目:以下代码的输出是什么?解释原因。x=10deffunc():...
- 一周热门
- 最近发表
-
- 半导体行业术语缩写词典总结-JKL_半导体词汇缩写表
- JD.com Deepens Push Into Embodied Intelligence With Investment in Sensor Maker PaXiniTech
- Hong Kong's Consumer Market Becomes New Battleground for Chinese Mainland Internet Giants
- http2解决了哪些问题_简述http2的优点
- China's economy stays strong and vital amid pressure
- JD.com Makes $2.4 Billion Bid for Ceconomy in Bold Push to Build a Global Retail Empire
- 深入剖析 Java 中的装饰器设计模式:原理、应用与实践
- 组合模式应用-适配器模式_适配器组件
- OOM (Out Of Memory) 故障排查指南
- 刷完这49题,面试官当场给Offer!Java程序员必备指南
- 标签列表
-
- HTML 简介 (30)
- HTML 响应式设计 (31)
- HTML URL 编码 (32)
- HTML Web 服务器 (31)
- HTML 表单属性 (32)
- HTML 音频 (31)
- HTML5 支持 (33)
- HTML API (36)
- HTML 总结 (32)
- HTML 全局属性 (32)
- HTML 事件 (31)
- HTML 画布 (32)
- HTTP 方法 (30)
- 键盘快捷键 (30)
- CSS 语法 (35)
- CSS 轮廓宽度 (31)
- CSS 谷歌字体 (33)
- CSS 链接 (31)
- CSS 定位 (31)
- CSS 图片库 (32)
- CSS 图像精灵 (31)
- SVG 文本 (32)
- 时钟启动 (33)
- HTML 游戏 (34)
- JS Loop For (32)