目前,在整个自动驾驶系统当中,感知模块扮演了其中至关重要的角色,行驶在道路上的自动驾驶车辆只有通过感知模块获得到准确的感知结果后,才能让自动驾驶系统中的下游规控模块做出及时、正确的判断和行为决策。目前,具备自动驾驶功能的汽车中通常会配备包括环视相机传感器、激光雷达传感器以及毫米波雷达传感器在内的多种数据信息传感器来收集不同模态的信息,用于实现准确的感知任务。
基于纯视觉的BEV感知算法因其较低的硬件成本和易于部署的特点,以及其输出结果能便捷地应用于各种下游任务,因此受到工业界和学术界的广泛关注。近年来,许多基于BEV空间的视觉感知算法相继涌现,且在公开数据集上展现出色的感知性能。
目前,基于BEV空间的感知算法根据构建BEV特征的方式可以大体分成两类算法模型:
尽管两种算法都能够准确生成BEV空间下的特征并实现3D感知结果,但在目前基于BEV空间的3D目标感知算法中,比如BEVFormer算法,存在以下两个问题:
为了解决BEVFormer感知算法模型存在的问题,我们对其进行了改进,提出了基于环视图像的3D检测算法模型CLIP-BEVFormer。我们通过引入对比学习的方法,增强了模型对BEV特征的构建能力,并在nuScenes数据集上实现了领先水平的感知性能。
文章链接:https://arxiv.org/pdf/2403.08919.pdf
在详细介绍本文提出的CLIP-BEVFormer感知算法模型细节之前,下图展示了CLIP-BEVFormer算法的整体网络结构。
本文提出的CLIP-BEVFormer感知算法模型整体流程图
通过算法的整体流程图可以看出,本文提出的CLIP-BEVFormer算法模型是在BEVFormer算法模型的基础上进行改进的,这里先简单回顾一下BEVFormer感知算法模型的实现过程。首先,BEVFormer算法模型输入的是相机传感器采集到的环视图像数据,利用2D的图像特征提取网络提取输入环视图像的多尺度语义特征信息。其次,利用包含时序自注意力和空间交叉注意力的Encoder模块完成2D图像特征向BEV空间特征的转换过程。然后,在3D感知空间中以正态分布的形式生成一组Object Query,并送入到Decoder模块中完成与Encoder模块输出的BEV空间特征的空间特征交互利用。最后利用前馈神经网络预测Object Query查询到的语义特征,输出网络模型最终的分类和回归结果。同时,在BEVFormer算法模型训练的过程中,采用一对一的匈牙利匹配策略完成正负样本的分配过程,并利用分类和回归损失完成整体网络模型参数的更新过程。BEVFormer算法模型整体的检测过程可以用如下的数学公式进行表示:
其中,公式中的代表BEVFormer算法中的Encoder特征提取模块,代表BEVFormer算法中的Decoder解码模块,代表数据集中的真值目标标签,代表当前BEVFormer算法模型输出的3D感知结果。
在上文中已经有提到,现有的绝大多数基于BEV空间的3D目标检测算法没有显式的对生成的BEV空间特征进行监督,导致模型生成的BEV特征可能存在与真实的BEV特征不一致的问题,这种BEV空间特征的分布差异会制约模型最终的感知性能。基于这一考虑出发,我们提出了Ground Truth BEV模块,我们设计该模块的核心思路是想让模型生成的BEV特征可以和当前真值BEV特征进行对齐,从而提高模型的表现性能。
具体而言,如整体网络框架图所示,我们使用了一个真值编码器()用来对BEV特征图上的任意一个真值实例的类别标签和空间边界框位置信息进行编码,该过程可以用公式表述成如下的形式:
其中公式中的具有和生成的BEV特征图同等大小的特征维度,代表某个真值目标被编码后的特征信息。在编码的过程中,我们采用了两种形式,一种是大语言模型(LLM),另外一种是多层感知机(MLP),通过实验结果发现,两种方式基本达到了同样的性能。
除此之外,我们为了进一步增强真值目标在BEV特征图上的边界信息,我们在BEV特征图上根据真值目标所在的空间位置将其裁剪下来,并对裁剪后的特征采用池化操作构建对应的特征信息表示,该过程可以表述成如下的形式:
最后,我们为了实现模型生成的BEV特征与真值BEV特征的进一步对齐,我们采用了对比学习的方法来优化两类BEV特征之间的元素关系和距离,其优化过程可以表述成如下的形式:
其中公式中的和分别代表生成的BEV特征和真值BEV特征之间的相似度矩阵,代表对比学习中的逻辑尺度因子,表示矩阵间的乘法运算,代表交叉熵损失函数。通过上述对比学习的方式,我们提出的方法可以为生成的BEV特征提供更加明确的特征指导,提高模型的感知能力。
这部分在前文中也有提到,BEVFormer感知算法模型中的Object Query通过Decoder模块与生成的BEV特征进行交互,获得对应的目标查询特征,但该过程整体还是一个黑盒过程,缺少一个完整的流程理解。针对这一问题,我们引入了真值查询交互模块,通过将真值目标来执行Decoder模块的BEV特征交互来激发模型参数的学习过程。具体而言,我们将真值编码器()模块输出的真值目标编码信息引入到Object Query当中参与Decoder模块的解码过程,与正常的Object Query参与相同的自注意力模块,交叉注意力模块以及前馈神经网络输出最终的感知结果。但需要注意的是,在解码的过程中,所有的Object Query均是采用了并行计算的方式,防止发生真值目标信息的泄露。整个真值目标查询交互过程,可以抽象表述成如下的形式:
其中,公式中的代表初始化的Object Query,和分别代表真值Object Query经过Decoder模块和感知检测头的输出结果。通过在模型训练的过程中引入真值目标的交互过程,我们提出的真值目标查询交互模块可以实现真值目标查询与真值BEV特征进行交互,从而辅助模型Decoder模块的参数更新过程。
为了验证我们提出的CLIP-BEVFormer算法模型的有效性,我们分别在nuScenes数据集上从3D感知效果、数据集中目标类别的长尾分布情况以及鲁棒性等角度出发进行了相关实验,下表是我们提出的算法模型与其他3D感知算法模型在nuScenes数据集上的精度对比情况。
本文提出的方法与其他感知算法模型的对比结果
在这部分实验中,我们分别评估了不同模型配置情况下的感知性能,具体而言,我们将CLIP-BEVFormer算法模型应用于BEVFormer的tiny和base变体中。此外,我们还探索了将预训练的CLIP模型或者MLP层作为真值目标编码器对于模型感知性能的影响。通过实验结果可以看出,无论是原先的tiny还是base变体,在应用了我们提出的CLIP-BEVFormer算法后,NDS和mAP指标均有稳定的性能提升。除此之外,通过实验结果我们可以发现,对于真值目标编码器选择MLP层还是语言模型,我们提出的算法模型对于此并不敏感,这种灵活性可以使得我们提出的CLIP-BEVFormer算法更具有适应能力并且方便上车部署。总之,我们提出的算法模型的各类变体的性能指标一致表明提出的CLIP-BEVFormer算法模型具有很好的感知鲁棒性,可以在不同模型复杂度和参数量的情况下实现出色的检测性能。
除了验证我们提出的CLIP-BEVFormer在3D感知任务上的性能外,我们还进行了长尾分布的实验来评估我们的算法在面对数据集中存在长尾分布情况下的鲁棒性和泛化能力,实验结果汇总在下表
提出的CLIP-BEVFormer算法模型在长尾问题上的表现性能
通过上表的实验结果可以看出,nuScenes数据集中表现出了极大的类别数量不均衡的问题,其中一些类别如(建筑车辆、公交车、摩托车、自行车等)占比很低,但是对于小汽车的占比非常高。我们通过进行长尾分布的相关实验来评估提出的CLIP-BEVFormer算法模型在特征类别上的感知性能,从而验证其解决不太常见类别的处理能力。通过上述的实验数据可以看出,提出的CLIP-BEVFormer算法模型在所有类别上均实现了性能的提升,并且在对于占比极少的类别上,CLIP-BEVFormer算法模型展示出了明显的实质性改进。
考虑到在真实环境下的自动驾驶系统需要面临硬件故障、恶劣天气状况或者人造障碍物容易引发的传感器故障等问题,我们进一步实验验证了提出的算法模型的鲁棒性。具体而言,我们为了模拟传感器的故障问题,我们在模型实施推理的过程中随机对一个相机的摄像头进行遮挡,从而实现对于相机可能出现故障的场景进行模拟,相关的实验结果如下表所示
提出的CLIP-BEVFormer算法模型的鲁棒性实验结果
通过实验结果可以看出,无论是在tiny还是base的模型参数配置下,我们提出的CLIP-BEVFormer算法模型始终要优于BEVFormer的相同配置的基线模型,验证了我们的算法模型在模拟传感器故障情况下的优越性能和优秀的鲁棒性。
下图展示了我们提出的CLIP-BEVFormer算法模型与BEVFormer算法模型的感知结果可视化对比情况。通过可视化的结果可以看出,我们提出的CLIP-BEVFormer算法模型的感知结果与真值目标更加的接近,表明我们提出的真值BEV特征生成模块与真值目标查询交互模块的有效性。
提出的CLIP-BEVFormer算法模型与BEVFormer算法模型感知结果的可视化对比情况
在本文中,针对原有的BEVFormer算法当中存在的生成BEV特征图过程中缺少显示监督以及Decoder模块中Object Query与BEV特征交互查询的不确定问题,我们提出了CLIP-BEVFormer算法模型,并从算法模型的3D感知性能、目标长尾分布以及在传感器故障的鲁棒性等方面进行实验,大量的实验结果表明我们提出的CLIP-BEVFormer算法模型的有效性。
以上是CLIP-BEVFormer:显式监督BEVFormer结构,提升长尾检测性能的详细内容。更多信息请关注PHP中文网其他相关文章!