智猩猩与智东西将于4月18-19日在北京共同举办2024中国生成式AI大会,阿里巴巴通义千问大模型技术负责人周畅,潞晨科技创始人尤洋,生数科技CEO唐家渝,优必选研究院执行院长焦继超
,科大讯飞人形机器人首席科学家季超,DeepWisdom合伙人徐宗泽,腾讯研究科学家张驰,前Meta首席工程负责人胡鲁辉等首批嘉宾已确认带来演讲和报告,欢迎报名。
本文将主要介绍BEV+Transformer端到端感知与建模技术在高德各项业务中的应用,如高精地图中地面要素(包含线要素和地面标识)自动化上的具体方案及其演化过程。
该方案使用BEV+Transformer技术来实现采集车上不同传感器(包含激光和相机)所得数
据在空间和时间层面上信息的融合,以及对采集道路上各地面要素的感知与建模。
这些技术手段很好地服务于地图中地面要素的产线需求,为高德地图提高地图制作效率,降低制作成本提供了坚实的技术保证。
本文将以高精地图为例,分析其核心应用及其存在的挑战。
高精地图作为自动驾驶技术发展的重要支撑和基础,可以提高自动驾驶车辆的感知能力、决策能力和控制能力,从而提升自动驾驶的安全性、可靠性和舒适性。
目前高精地图中的地面要素主要包含线要素和地面标识两个大类,其中线要素包含车道线和道路边界,而地面标识则包含道路上的各类交通标识,如引导线,斑马线等。
对于自动驾驶而言,线要素和地面标识均可用于自动驾驶车辆的定位,而线要素同时也可用于自动驾驶车辆的路径规划。
在高精地图各地面要素的制作过程中主要面临两大挑战:
更高的位置精度要求和地面要素本身的识别难点。
下面本文将针对这两个挑战分别展开叙述。
首先是高精地图自身所带来的位置精度挑战。近年来,随着自动驾驶技术从L2往L4方向的推进,对其安全性和可靠性的诉求也逐渐升高。高精地图作为自动驾驶中重要的一环,自动驾驶厂商对高精地图中各要素的位置精度均提出了极高的标准,各地面要素的精度都至少有着厘米级的要求。这种更高的位置精度要求,是高精地图相较于普通地图最大的区别,同时也使得其制作过程有着更大的困难和挑战。为了应对这一挑战,高精采集车配备了多种传感器,其中激光传感器用于采集道路上的点云数据,相机传感器用于采集道路上的图像数据。下图展示了Nuscenes数据集采集车设备安装方式以供参考,并非高精车设备实际安装方式:
其次是高精地图中地面要素本身的识别难点。正如上文所述,地面要素包含线要素和地面标识,它们自身种类繁多,且在内容,形状和尺寸上均存在较大差异,这为感知模型得到全而准的结果带来了识别难度。此外,采集所得数据中包含的地面要素往往存在较多磨损和遮挡的情形,主要原因有两个:一个是地面要素因长年未修,本身存在磨损,另一个是采集过程中,由于遮挡,环境改变等因素会导致激光的反射率存在差异或可见光不清晰等情形,进而导致采集得到的点云数据和图像数据的质量参差不齐。下图分别展示了激光采集过程中点云磨损的情形,以及相机在隧道里采集时图像不清晰的情形:
此外,不同于地面标识在局部区域内独立存在,线要素在跨局部区域之间还存在关联关系,高精地图需要构建线要素的全局拓扑,并对线要素属性变化以及几何变化处进行打断,如下图所示。因此如何保证线要素在跨局部区域之间的平滑性并获取线要素精确的属性变化位置是更好的构建全局拓扑的重要一环。
为了应对这些挑战,本文引入BEV+Transformer技术来融合多传感器的数据并实现采集道路上各地面要素更鲁棒的感知和建模,具体细节将在下文给出。
高精地图中地面要素的制作需要准确的感知和建模采集车采集区域的道路信息和布局以及完整的车道结构,在人工作业的过程中,通常会在一种自上而下视图(鸟瞰图,BEV)上完成,因为高度信息不太重要。
因此,对地面要素的感知和建模天然适合在BEV空间下进行,也能更好的保证所得感知结果的精度。
本文将介绍一套基于BEV的地面要素感知方案,通过视角转换将图像数据和点云数据投影进一个统一的BEV空间内,完成对多传感器数据信息的融合和特征的提取,并得到高精度的地面要素感知结果。
下图展示了将点云数据和图像数据投影进BEV空间后的效果图:
本文涉及的第二个主要技术叫做Transformer技术,它是一种基于注意力机制(Attention)的神经网络模型,通过Query向
量量
与Key向量
和Value向量
的交互融合,来挖掘不同特征间的联系及相
关性。
Transformer技术问世后,先在自然语言处理领域大放异彩,之后又被逐步移植到计算机视觉任务上,也取得了惊人的效果,在目前的大模型时代,逐渐实现了NLP和CV在建模结构上的大一统。在本文中,Transformer技术将被用于视角转换,特征融合和实例感知等多项任务,帮助构建一套统一的地面要素感知模型。
本文构建的地面要素感知+建模技术方案主要包含三个模块:局部地面要素感知模块,全局线拓扑建模模块和线要素属性变化点模块。局部地面要素感知模块用于得到线要素和地面标识的局部感知结果,其中线要素将进入下游的全局线拓扑建模模块和线要素属性变化点模块,得到最终的全局拓扑结果。
局部地面要素感知模块
为了通过采集车采集得到的点云数据和图像数据生成全而准的地面要素矢量结果,本文构建了一套基于BEV+Transformer的点图融合地面要素感知模型,其整体技术框架及其演化主要包含三部分:
-
面向单传感器的地面要素感知模型:GroundElement2Former
-
面向多传感器融合+时序融合的感知模型:Fusion-GroundElement2Former
-
面向线要素跨帧平滑性的感知模型:Fusion-SmoothGroundElement2Former
1. GroundElement2Former
面向单传感器的地面要素感知模型主要针对单点云数据或单图像数据进行处理,来获取其中包含的地面要素矢量结果。
具体流程如下:
1. 对点云数据或图像数据进行空间转换和特征提取来获取其在BEV空间下的特征;
2. BEV特征再通过下游的分割模型获取实例分割结果;
3. 通过后处理方式将实例分割结果转化为矢量结果。
首先是空间转换和特征提取模块。单点云数据通过2D/正交投影得到点云栅格图来作为其在BEV空间内的表现形式,将点云栅格图作为模型的输入来得到BEV空间下的特征
向量
。
单图像数据则通过IPM投影完成从透视空间(PV空间)到BEV空间的转换,并将转换后的数据作为模型的输入来得到BEV空间下的特
征向量
。然
而不同于点云数据,图像数据在IPM投影的过程中,需要使用几何先验:地面平坦假设,即假设当前路面是平坦的,没有高度变化,但在现实世界里,这一条件往往很难满足。
因此GroundElement2Former模型中的PV2BEV模块使用Transformer技术和通过点云得到的地面高度值来弥补IPM投影过程中的这一问题,实现
图像数据往BEV空间的精准映射。具体如下:设置BEV Queries作为Query向量
,通
过Deformable Attention机制交互融合PV特征,从而得到BEV特征。
在进行Deformable Attention的过程中,首先通过点云得到的地面高度值来作为更精准的初始地面高度值,其次学习初始地面高度值往真实地面高度值的偏移量,来完成更精准的IPM投影。最后,本文还使用了InternImage大模型和Adapter技术,来提取表征能力更强,更鲁棒的BEV特征。
其次是实例分割模块。在得到BEV特征后,本文使用Mask2Former结构来进行实例分割,通过instance queries在BEV特征上交互融合来提取各地面要素实例信息,具体结构如下所示:
其中,Mask2Former中提出的Masked Attention机制可以很好的缓解Cross Attention上存在的搜索空间大,收敛慢的问题,帮助GroundElement2Former模型更好的分割出各地面要素
实例实例
。
最后是后处理模块。对于线要素,高精地图一般采用NDS格式存储,即将线要素保存成矢量点形式。因此,本文使用骨架提取算法,将得到的线要素实例分割结果骨架化为矢量点。对于地面标识,高精地图一般采用OBB格式存储,即将地面标识保存为包含地面标识的最小矩形框所对应的矢量点。因此,本文在使用cv2.minAreaRect获取实例分割对应的最小外接矩形后,通过cv2.boxPoints获取该矩形的四个顶点坐标作为存储的矢量点。下图从左到右分别展示了模型得到的实例分割结果和经过后处理后得到的矢量点结果:
本文提出的GroundElement2Former模型虽然可以有效的获取单传感器所得数据中的地面要素矢量,但正如上文所述,单传感器采集数据中由于环境因素,存在质量参差不齐的现象。而当前模型缺乏将多传感器信息融合的能力,这就导致模型的感知性能极度依赖单一传感器所采数据的质量。
2. Fusion-GroundElement2Former
为了缓解由于环境因素导致的单一传感器失灵的现象,本文将GroundElement2Former升级为面向多传感器融合+时序融合的感知模型Fusion-GroundElement2Former。
通过融合多传感器所得数据和多帧数据中包含的信息,来保证模型可以更稳定的感知出地面要素结果。
相比于GroundElement2Former,Fusion-GroundElement2Former新增了两个模块:
Cross-Sensor Fusion和Offline Temporal Fusion,其中Cross-Sensor Fusion模块通过Deformable Attention机制来对齐和融合多传感器信息,Offline Temporal Fusion模块则通过仿射变换来实现多帧信息的融合。
对于Cross-Sensor Fusion模块,多传感器所得数据投影到BEV空间上后可能存在不对
齐现象,因此本文类比PV2BEV模块,为点云数据和图像数据设置一个统一的BEV Queries
,通
过Deformable Attention机制交互融合图像特征和点云特征,从而
得到BEV特征特征
,并
使用Deformable Attention中学习offset的机制来实现两种数据的对齐。
对于Offline Temporal Fusion模块,融合当前帧的前后帧信息可以有效地缓解
因遮挡场景导致的模型感知不稳定的问题。不同于继承式的时序融合方式,本文使用仿射变换和特征拼接策略来作为时序融合的方式,具体方法是:对于当前时刻的BEV特征
,对于其周围时刻的BEV特征
,先根据
时刻到
时刻的仿射变换矩阵
来将其对齐进当前时刻上得到
,然后把对齐后到多帧BEV特征和当前时刻的BEV特征在channel维度上进行拼接来作为时序融合后的BEV特征。
这种时序融合方式不仅可以融合更久远
的信息防止遗忘,也可以为离线高精建图解除无法利用未来帧信息的限制。
通过上述新增的两个模块,Fusion-GroundElement2Former可以更好的应对单传感器单帧数据质量差的场景,得到更全更稳定的地面要素感知结果。
3. Fusion-SmoothGroundElement2Former
造成线要素全局关联不平滑的一个主要原因是线要素在局部区域的感知结果存在不稳定现象:
对于某些磨损车道线,可能存在上一帧给出感知结果,但当前帧又丢失其感知结果的情形。
为了得到更稳定的线要素感知结果,在关联局部区域的线要素后,可以得到更平滑且准确的线要素全局拓扑。
本文在最后介绍一种时序感知一致性约束,将Fusion-GroundElement2Former进一步升级为Fusion-SmoothGroundElement2Former来提升线要素跨局部区域的平滑性,保障全局拓扑的顺利构建。
本文将线要素的全局拓扑构建视为一个一阶马尔可夫链的过程,第
帧的感知结果
需要依赖于
帧的感知结果
,从而保证两帧之间感知结果的一致性。因此,本文设计将上一帧的感知结果
投影到当前BEV空间内,并编码为Mask Prompt
,与当前帧的BEV特征
融合进入下游的Mask2Former分割模型中,获取当前帧感知结果
:
通过这一约束来减少线要素在上一帧被感知出来,但当前帧丢失的情形。并通过上一帧线要素的感知结果约束当前帧线要素的感知,保证线要素在跨帧时的平滑性,防止其出现剧烈跳变。
全局线拓扑建模模块
为了构建线要素全局拓扑结果,本文构建了一套基于Attn-GNN的线要素关联模块和基于Diffusion Model的线要素平滑模块,其中线要素关联模块用于构建跨帧线要素之间的关联关系,构建完关联关系后通过线要素平滑模块提升关联合并后线要素的平滑性。
下面做详细介绍。
1. 基于Attn-GNN的线要素关联模块
为了构建不同帧之间线要素的关联关系,本文将其视为了一个图匹配任务,使用图(Graph)结构对单帧线要素集合进行描述,其中每个线要素被编码为一个节点
。因此线要素跨帧匹配可以被建模为输入两个Graph,输出节点间的匹配关系。