高精地图(High-definition Map)在自动驾驶研究领域一直占据重要地位。关于高精地图的具体定义,以及为什么我们要利用深度学习在线构建高精地图的相关信息,我们已经在我们之前的知乎文章(HDMapNet https://zhuanlan.zhihu.com/p/447145384)中进行了讲解。
随着越来越多的车辆开始搭载视觉传感器,这些传感器收集的海量实时环境动态信息,为高精地图的构建提供了丰富的源泉,我们希望利用自动驾驶算法来提取这些信息,构建出一个更为精确高精语义地图。
接下来,我们将深入探讨这个话题,让熊璇分享我们如何运用Neural Map Prior(神经地图先验)的技术,不仅构建了局部区域语义地图,也实现了城市级别的神经先验特征图的构建。让我们一起来看看这个过程是如何实现的。
论文地址:https://arxiv.org/pdf/2304.08481.pdf
项目代码:https://github.com/Tsinghua-MAR
项目主页:https://tsinghua-mars-lab.github.io/neural_map_prior/
一、引言
首先,我们简单回顾一下传统离线高精度地图制作和在线高精度地图预测各自的优点和不足。传统的离线高精度地图的制作方法通常包含一系列复杂的步骤:如使用配备LiDAR的专门测绘车辆进行多次扫描,然后进行SLAM对齐,以及最终人工进行标注。这些离线标注的地图往往能提供极高的精度,但同时,这种离线建图的方式流程复杂,制作成本相当高,从而会限制这种地图在更多城市的扩展。此外,这种离线构建的地图的更新过程也很缓慢,无法及时反映道路情况的变化。
而近期有研究学者提出使用深度学习在线构建高精地图(HDMapNet)的方案,这种方案通过实时感知周围环境来动态创建地图,这种方法不仅能够解决传统离线建图方法中地图更新滞后的问题,并且相对于传统方法,成本大大降低。但是,这种实时构建的高精度地图的可视范围仍受到传感器感知范围的限制,并且容易受到遮挡或者恶劣天气的影响。
近期,我们在在线地图预测的基础上,提出一项创新性的改进,称作Neural Map Prior。灵感来源是人们在多次经过同一个地方之后,会对场景逐渐形成记忆并熟悉起周围的环境。我们也赋予了车辆一种类似的记忆功能,使它们也能够逐渐适应并认识它们所经过的路线。在我们的神经先验网络的框架中,我们主要通过在线地图推理实时捕捉周围环境和道路的各种信息,并将通过这种在线地图推理获得的特征存在记忆特征库中。然后,当车辆再次经过相同区域时,我们会利用车辆的地理位置,从记忆中提取相关的先验特征。这些记忆中的特征会和在线推理的特征一起参与生成车辆的当前局部地图。这种模式的独特之处在于,它既能通过在线推理得到地图的先验知识,同时又能利用记忆中的先验地图知识辅助在线地图的预测。而且,随着车辆经过相同路段获取的数据量的逐渐增多,我们能够不断提升在线地图推理的效果,并逐步完善全局神经地图先验的构建。整体框架如下图所示:
二、为什么设计Neural Map Prior(神经地图先验)
Neural Map Prior的设计核心在于使用神经网络为自动驾驶车辆提供长期记忆能力的同时将过去的地图先验数据与现在的感知数据进行融合,这样做的优势有以下几点:
首先,当车辆在行驶过程中生成实时地图时,神经网络可能会出现误差。但是,通过将多次地图预测的信息结合起来,我们可以得到更接近真实环境的地图预测。另外,当车辆重复经过相同地点时,存储在长期记忆中的地图先验信息能够提高在线地图生成的效率。而且,如果当前的观测信息被遮挡或模糊时,长期记忆中的地图先验可以提供重要的辅助信息,从而提高在线地图生成的准确性。
其次,从全局地图构建的角度看,随着越来越多的视觉传感器被安装在量产车辆上,这些设备能够收集大量的实时环境动态信息。这些收集的信息能帮助自动驾驶算法构建出一个更加丰富的三维虚拟世界。实际在我们的设计中,Neural Map Prior不仅适用于局部区域的语义地图的构建,还能构建城市级别的神经网络先验特征图。在这个城市级别的特征图中,我们可以通过不同车辆共同创建、更新并共享同一城市级别的地图特征信息,使得我们能更完整、更准确地捕捉和描绘复杂的城市环境。
我们开心地看到,神经先验网络已经在理想汽车的城市NOA产品中成功落地,显著地提升了车辆在城市路口的道路结构感知能力,对解决中国复杂的道路场景有很大帮助。理想汽车对我们的学术成果进行了工程化改进和适配,本论文的模型技术细节不100%代表理想汽车NPN。
三、神经地图先验 (Neural Map Prior)
以下我们先通过一个例子来介绍神经地图先验的框架,以及这种方法的显著优势。
考虑一个雨天的场景,在这种天气条件下,由于地面反光和水汽导致摄像机视觉模糊,实时地图构建的效果可能会下降。然而,如果我们的车辆或者其他车辆曾经在晴天驶过相同的路段,并产生了优质的地图先验,那么这些优质的先验信息可以被储存并上传至云端。当再次遇到雨天时,这些存储在云端的优质先验信息被下载到车辆中,从而帮助车辆在雨天中构建更准确的实时地图。
我们提出了神经先验网络包含以下三个主要贡献:
- 我们提出了一种新的地图构建范式——神经先验网络,它可以处理全局神经地图先验的构建、更新及在线局部地图的推理。
- 我们设计了有效的融合模块,包括Current-to-prior注意力模块和门控循环单元模块,这些模块有助于提取帮助在线地图构建的先验特征,并提升在线地图预测的性能。
- 在nuScenes数据集的评估表明,我们的方法显著提升了在线地图预测性能,尤其在面对具有挑战性的场景,例如恶劣的天气条件或更远的感知范围,提升尤为显著。
四、模型结构
神经先验网络(NPN)主要由三部分构成:在线语义地图预测,全局地图先验更新,以及一个将在线语义地图预测与全局地图先验更新相结合的融合模块。
在线语义地图预测部分的作用是将环视图像在通过神经网络进行处理下,推理出局部的鸟瞰视图语义地图。在线地图构建的部分并不依赖于特定的网络结构,可以是通过MLP进行视角转换的方法HDMapNet,也可以是利用深度预测进行视角转换的Lift-splat-shoot,或者是矢量化地图检测方法VectorMapNet。我们会从在线地图预测架构的编码器和解码器之间提取当前特征。
在获得了当前的地图预测特征后,我们同时设计了一个用于储存全局地图先验信息的稀疏地图图块。在线地图预测的特征将动态地更新这些地图图块中储存的特征,从而实现全局神经地图先验的持续完善和更新。
我们同时设计了一套融合模块,目的是将全局神经地图先验和在线地图特征有效的结合在一起。这些模块包括局部位置嵌入(Local Position Embedding)、当前到先验的注意力模块(Current-to-Prior Attention)以及门控循环单元(Gated Recurrent Unit)。具体每个模块的功能和细节可以在论文里找到。
五、实验和结果
实验设置: 我们在自动驾驶数据集nuScenes上对我们的方法进行了评估。主要使用的评估指标有mIoU(平均交并比)和mAP(平均精确度)。
实验结果一: 我们将NPN添加到不同的在线地图预测方法上,例如HDMapNet、LSS、BEVFormer和VectorMapNet,都取得了显著的提升。说明我们的方法可以适应于不同地图学习框架。
实验结果二: 我们在不同的鸟瞰视图(BEV)感知范围比较NPN模型的性能,随着感知范围的增加,原始在线地图预测的性能有所下降,NPN显著地提升了效果。我们发现提升的部分最大的往往在距离自车较远的地区,说明NPN能够提供距离当前车辆更远而且互补的感知信息。
实验结果三: 我们在也比较了下雨、夜晚等具有挑战性的天气条件下的建图的性能,结果显示NPN也能提高在恶劣天气下地图预测的准确性,这一部分往往是由于在天气更好的时候我们也经过相同的区域,然后我们把晴天或者光照更好的地图先验加在恶劣天气下的地图推理中,可以参考如上面示例。
我们通过视觉效果来展示这一点。对比基线方法(w/o prior),我们的地图构建结果(w/ prior)表现得更为准确。
六、地图图块(Map tiles)
最后,在我们的NPN方法中,我们采用了地图图块(tiling)的方法来存储全局神经地图先验。这种技术在地理信息系统(GIS)、谷歌地图等数字地图服务中已经得到了广泛应用。我们采用同样类似的方法,主要因为这种方法能有效地减少内存需求以及加载时间,同时可以降低通信成本。
七、 结语
总的来说,我们提出的神经先验网络,既可以解决传统离线高精度地图更新缓慢,制作成本高的问题,又克服了在线生成地图受限于传感器的局限性。用神经表示来构建和持续更新全局地图,同时将车辆的过去先验和实时感知数据相结合,大大提高了地图生成精度和实用性,使得在线地图预测能够更有效地处理遮挡和恶劣天气状况。这些优势可能使神经先验网络成为实际应用的理想选择,为自动驾驶汽车的建图开辟了新的可能。
作者:清华MARS Lab
来源:知乎:https://zhuanlan.zhihu.com/p/644351344