局部语义地图构建——HDMapNet

本文介绍了高精度地图在自动驾驶中的重要性,包括定位、感知、规划和安全方面的辅助作用。高精地图与导航地图相比,精度更高,元素更丰富。HDMapNet是一种新的方法,利用车载传感器动态构建局部高精地图,通过透视图像编码器、神经视图变换器、点云编码器和地图元素解码器实现鸟瞰图视角的转换和道路信息的向量化表示。这种方法旨在减轻高精地图的标注和维护工作量,提高自动驾驶系统的实时性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

高精度地图

😸高精地图提供了精准的、综合的道路几何与语义信息,通常包含影像地图(Imagery Map)和语义地图(Semantic Map)这两部分,是其他自动驾驶模块不可或缺的一部分。其中影像地图主要包括 3D 雷达点云、反射率、高度、斜率等物理信息,而语义地图主要提供了丰富的标注信息,如道路的向量化表示、类型(车道、自行车道或公交车道)、速度限制、车道线类型(虚线、实线、双实线)等等。

😸高精度与导航地图大体有如下区别

  • 使用对像:导航地图给人看,高精地图给机器看
  • 精度:导航地图精度存在米级以上(5-10米)的误差,高精地图精度在厘米级
  • 地图元素:高精地图道路元素及交通相关动态元素更丰富,比如详细的车道线、路标、交通提示牌、交通灯、车道曲率、坡度及车道级实时交通动态信息,主要服务于机器自动驾驶环境判断、决策、控制等。而导航道路元素只到道路级,除导航路线准确、合理性,人们更注重视效及语音引导体验
  • 导航地图与高精地图的关系:从技术演进角度,汽车上的导航地图与高精地图会在较长的时间内共存,并可能最终使用一个高精底图同时满足人和车的应用需求

😸高精地图为自动驾驶应用提供全方位的辅助

  • 定位:结合高精地图道路特征、点云地图,车辆可实现视觉定位和点云定位
  • 感知:通过提供道路信息等先验知识辅助车辆传感器缩小识别范围、提升识别效率、降低错误率,同时弥补一定环境下其它传感器感知缺陷(如雨、雪、黑暗情况下的其它传感器失效),和 V2X 结合进一步突破传感器感知局限
  • 规划、预测:高精地图可结合导航规划、实时路况、自动驾驶功能等级、适合自动驾驶路线,帮助车辆进行车道级路径规划,并根据先验知识及实时路况预测前方道路情况及障碍物等辅助局部路径规划
  • 安全:基于地图已知道路信息,如已知障碍物、道路标识等特征信息与传感器实时检测匹配互检,提升冗余、降低误判,同时辅助检测传感器故障、失效、被欺骗行为

HDMapNet

🙀高精地图的生成涉及到了定位、融合、检测、标注等复杂的流程,在生成高精地图之后,还需要不时地对其进行更新,以适应路况信息的变化。虽然高精地图能够提供丰富的信息,但标注、 维护高精地图需要耗费大量的人力和资源,因而限制了其的可拓展性。为了减轻这些工作量,本文提出了一种可供选择的解决方法 HDMapNet

😼HDMapNet 是使用车载传感器(相机 and/or 雷达)来动态构建局部高精地图的方法,该方法使用数据集为 nuScenes。其将道路预测向量化,并实现从相机前视图到鸟瞰图的视角转换。值得注意的是,该方法并不是要替代全局 HD map 的重建,而是提供一种预测实时运动预测、规划中使用的局部语义地图的方法。

  • 向量化:最终得到的地图信息不是图片形式的,而是用点、线、框等几何形状表示的,这种表示在地图的下游任务使用、存储等方面都有巨大优势。
  • 鸟瞰图转换:由于没有图片上每个像素点的深度信息,无法简单地利用几何投影将图像投回到鸟瞰视角。一种做法是假设地面高度全部为0,直接通过 Inverse Perspect Mapping 来进行投影。但因为地面会有倾斜,再加上车的颠簸,并不能保证车道线被正确的投影到鸟瞰视角。Lift-Splat-Shoot 很巧妙的利用 attention 的方式端到端地学了一个深度,但是因为没有显式的深度作为监督,所以实际的性能并不是很好。在这里,作者团队参考了 VPN 的做法,使用全连接网络来让 network 自己学习如何进行视角的变换。与其不同的是,HDMapNet 显式地使用了相机外参来将从不同相机抽取的特征拼接到鸟瞰视角,从而提升了特征在鸟瞰视角的分辨率。

😻下图为 HDMapNet 的整体架构,主要由四部分组成:
HDMapNet 框架

  • 透视图像编码器(PV image encoder) ϕI\phi_IϕI:输入周围相机获取的图像,每张图片 IiI_iIi 通过共享的神经网络 ϕI\phi_IϕI 来产生 PV 特征图 FIiPV⊆RHPV×WPV×KF_{I_i}^{PV} \subseteq R^{H_{PV} \times W_{PV} \times K}FIiPVRHPV×WPV×K,其中 HPVH_{PV}HPVWPVW_{PV}WPVKKK 分别为特征图的高、宽和维度。
  • 神经视图变换器(neural view transformer) ϕV\phi_VϕV:透视图视角和相机坐标系中对应像素的关系由 MLP ϕVi\phi_{V_i}ϕVi 计算得出,具体公式为 FIic[h][w]=ϕVihw(FIiPV[1][1],⋯ ,FIiPV[HPV][WPV])F_{I_i}^{c}[h][w]=\phi_{V_i}^{hw}(F_{I_i}^{PV}[1][1], \cdots, F_{I_i}^{PV}[H_{PV}][W_{PV}])FIic[h][w]=ϕVihw(FIiPV[1][1],,FIiPV[HPV][WPV])FIic[h][w]F_{I_i}^c[h][w]FIic[h][w] 是位于 FIicF_{I_i}^cFIic 在位置 (h,w)(h, w)(h,w) 的像素。鸟瞰图视角特征 FIibev⊆RHbev×Wbev×KF_{I_i}^{bev} \subseteq R^{H_{bev} \times W_{bev} \times K}FIibevRHbev×Wbev×KFIicF_{I_i}^{c}FIic 使用相机外设的几何投影(geometric projection with camera extrinsics)转换得到。最终图像特征 FIbevF_{I}^{bev}FIbevNmN_mNm 个相机鸟瞰图视角特征的平均值
  • 点云编码器(pillar-based point cloud encoder) ϕP\phi_PϕP:该编码器是具有动态体素化(dynamic voxelization)的 PointPillar 变体,它将 3D 空间划分为多个柱子(pillars),并从柱状点云的柱状特征中学习特征图。点云中的每个点不只具有三维坐标,还包含一个 KKK 维的额外特征,因此点 fp⊆RK+3f_p \subseteq R^{K+3}fpRK+3。当将点云的特征投影到鸟瞰图视角时,可能会有多个点落到同一个 pillar 中。记 PjP_jPj 为落在第 j 个 pillar 中所有点的集合,为了从 pillar 中聚类点的特征,本文使用 PointNet(记为 PN) 来处理,公式如下

fjpillar=PN({fp∣∀p∈Pj}) f_j^{pillar} = PN(\{f_p | \forall p \in P_j \}) fjpillar=PN({fppPj})

pillar-wise 的特征通过卷积神经网络 ϕpillar\phi_{pillar}ϕpillar 做更进一步处理,从而生成特征图 FPbevF_P^{bev}FPbev

  • 地图元素解码器(map element decoder) ϕM\phi_MϕMBEV 是一个包含 3 个分支的 FCN,这 3 个分支分别是语义分割、实例嵌入和方向预测分支。如果点云数据和图像数据都存在,则将这两者的特征图拼接起来输入 BEV 中。然后通过后处理的手段来将这些信息处理成向量化的道路表达。

😼以下是在 nuScenes 数据集上构建高精度地图例子
可视化结果

😻项目地址:https://tsinghua-mars-lab.github.io/HDMapNet/
😻论文地址:https://arxiv.org/abs/2107.06307
😻代码地址:https://github.com/Tsinghua-MARS-Lab/HDMapNet

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值