AI学习者 · 5月17日

清华提出 HENet | 一个针对多视角摄像头的端到端多任务3D感知框架 !

image.png

多视图摄像头下的三维感知是自动驾驶系统中的关键组成部分,它涉及多项任务,如3D目标检测和鸟瞰图(BEV)语义分割。为了提高感知精度,最近的3D感知模型采用了大型图像编码器、高分辨率图像和长期时间输入,带来了显著的性能提升。然而,由于计算资源限制,这些技术在训练和推理场景中往往不兼容。
此外,现代自动驾驶系统更倾向于采用端到端的框架进行多任务3D感知,这可以简化整体系统架构并减少实施复杂性。但是,在端到端的3D感知模型中联合优化多个任务时,往往会出现任务之间的冲突。为了缓解这些问题,本文提出了一个名为HENet的端到端框架,用于多任务3D感知。
具体来说,作者提出了一种混合图像编码网络,使用大型图像编码器处理短期帧,使用小型图像编码器处理长期时间帧。然后,作者引入了一个基于注意力机制的时间特征融合模块,以融合由上述两个混合图像编码器提取的不同帧的特征。最后,根据每个感知任务的特点,作者使用不同网格大小的BEV特征、独立的BEV编码器和不同任务解码器来处理不同的任务。
实验结果表明,HENet在nuScenes基准测试上取得了端到端多任务3D感知的最新成果,包括3D目标检测和BEV语义分割。
源代码和模型:https://github.com/VDIGPKU/HENet

1 Introduction

高效且准确地从多视角摄像头感知周围环境对于自动驾驶系统至关重要,这是后续轨迹预测和运动规划任务的基础。理想的3D感知系统应该同时处理包括3D目标检测和鸟瞰图(BEV)语义分割在内的多项任务。人们越来越重视端到端多任务框架,因为这类系统有潜力简化整体架构并减轻实施复杂性。

然而,端到端的多任务3D感知面临以下挑战:

  • 首先,在设计高性能基于摄像头的3D感知模型时,研究行人通常会利用高分辨率图像、更长的时序输入和更大的图像编码器来提高3D感知的准确性。然而,在单一感知模型上同时采用这些技术会导致训练成本过高。为了减轻这个问题,一些工作在内存中存储过去的信息,这存在时间特征不一致和数据增强效率低下等缺点。因此,许多最新方法没有采用这种策略,而是重新计算过去帧的特征,尽管这会增加训练成本。
  • 第二,为了处理长时序输入,许多工作直接在BEV中沿通道维度对不同帧的特征进行求和或拼接,但对于更长的时序序列,其感知性能并不令人满意。原因是移动物体的特征在不同帧中沿着其轨迹在BEV的大区域内发生了错位和分散。因此,有必要引入动态对齐机制对移动物体的位置进行校正。
  • 第三,对于端到端的多任务学习,现有工作使用共享编码网络和多个不同任务的解码器。然而,这些工作中的实验结果显示,端到端方式共同学习多个任务往往是次优的,即多任务学习中每个任务的表现不如单独训练。为了减轻这个问题,一些工作提出调整每个任务损失权重,但没有对任务间冲突存在的原因进行综合分析。

在本文中,作者提出了HENet,一个针对多视角摄像头的端到端多任务3D感知框架。为了整合大图像编码器、高分辨率图像和长时序输入,作者提出了一种混合图像编码网络,对不同帧采用不同的分辨率和图像编码器。

具体来说,作者使用高分辨率输入、大型图像主干网络和复杂的透视变换网络处理短时帧,以生成高精度的BEV特征。对于长时帧,选择低分辨率输入,并使用小型图像主干网络和简单的透视变换网络高效生成BEV特征。所提出的混合图像编码网络可以轻松整合到现有的感知模型中。然后,作者引入了一个时序整合模块,以动态对齐和融合来自多帧的BEV特征。

具体来说,在这个模块中,作者提出了一种带有相邻帧融合模块(AFFM)的时序后向和前向处理,以聚合BEV特征,通过注意力机制解决移动物体的对齐问题。最后,作者深入分析了多任务学习中3D目标检测和BEV语义分割之间的冲突,并发现关键问题是不同任务更喜欢不同的BEV特征网格大小。

基于这一观察,作者为不同任务选择不同网格大小的BEV特征。所选特征被发送到独立的BEV编码网络和任务解码器,以进一步减轻任务冲突,获得最终的3D感知结果。

image.png

这项工作的主要贡献总结如下:

  • 作者提出了一种端到端的、带有混合图像编码网络的多任务3D感知框架,以较小的训练成本利用高分辨率图像、长时序输入和大图像编码器。
  • 作者引入了一个基于注意力机制的时序整合模块,以融合多帧的BEV特征,并使移动物体的动态帧间对齐成为可能。
  • 作者分析了端到端多任务学习中的任务冲突,并提出了特征大小选择和独立特征编码以减轻这个问题。
  • 在nuScenes上,作者在端到端多任务学习中取得了最先进的结果,包括3D目标检测和BEV语义分割任务。

2 Related Work

Multi-View 3D Object Detection

从图像中进行三维目标检测是多任务三维感知中的关键任务。早期方法专注于直接从单目图像预测目标。近来,多视角相机成为自动驾驶汽车的默认传感器,能够提供更多信息。根据视图变换的类型,当前多视角三维目标检测工作可以分为两类,即基于鸟瞰图(BEV)的方法和稀疏 Query 方法。

基于BEV的方法。BEVDet利用Lift-Splat-Shoot(LSS)从带有深度预测的多视角图像特征生成BEV特征。为了解决BEVDet中深度估计不准确的问题,BEVDepth为深度预测网络引入了外部参数,并增加了来自激光雷达点云的额外深度监督。BEVDet4D通过通过 ego-车辆变换对不同帧的BEV特征进行对齐,融入了时间信息。基于BEVDepth,BEVStereo和STS提出了时间立体技术来进一步改进深度预测。

为了收集长期时间信息,BEVFormer和Polarformer将BEV特征视为 Query ,并利用交叉注意力从所有过去帧中聚合信息。BEVFormerv2进一步引入了透视空间监督来增强BEVFormer的性能。SOLOFusion提出首先融合相邻的短期序列BEV特征,然后再融合长期序列。HoP设计了一个历史目标预测模块,可以轻松地插入到任何时间性三维目标检测器中。AeDet提出了方位等方差卷积操作和 Anchor 点,以在不同方位统一BEV表示。

稀疏 Query 方法。作为稀疏 Query 方法的先驱,DETR3D通过利用稀疏的三维目标 Query 集来索引特征,扩展了DETR。3D-MAN设计了一个对齐和聚合模块,从存储由单帧检测器生成的信息的记忆库中提取时间特征。PETR基于DETR3D,通过聚合带有3D位置信息的图像特征。PETRv2将时间信息引入PETR中的3D位置嵌入,以允许对不同帧间目标位置的时序对齐。Sparse4D分配和投射4D关键点以生成不同视图、尺度和时间戳特征。Sparse4Dv2改进了时间融合模块,以降低计算复杂性和实现长期融合。

StreamPetr提出了一种有效的中间表示,以转移如基于BEV方法的时间信息,避免特征的重复计算。SparseBEV为 Query 特征交互设计了一个尺度自适应的自注意力模块,并提出了时空采样和自适应混合,将时间特征聚合到当前 Query 中。为了探索远程检测,Far3D使用了一个透视感知聚合模块来捕捉远程目标的特征,并设计了一个去噪方法来改进 Query 传播。

BEV Semantic Segmentation

多任务3D感知中的另一项任务涉及鸟瞰图(BEV)语义分割,其目标是对整体场景有所理解。许多研究采用了类似于BEVDet的通用范式,除了不同的任务头。VPN在3D图形环境中训练他们的网络,并利用领域适应技术将其转移以处理真实世界数据。M2BEV巧妙地将多视图2D图像特征转换为以 ego 车辆坐标系中的3D BEV特征。这种BEV表示至关重要,因为它便于在不同的任务之间共享单一的编码器。CVT采用跨视图注意力机制来隐式学习从单个相机视图到规范地图视图表示的映射。每个相机都使用依赖于其内在外在标定的位置嵌入。HDMapNet编码来自周围相机或来自激光雷达的点云的图像特征,并在BEV地图中预测矢量化的地图元素。

End-to-end Multi-task Learning

在自动驾驶场景中,多任务学习(通常包括3D目标检测和鸟瞰图(BEV)分割)对场景理解至关重要。当前的研究通常遵循BEV-Former的联合训练策略,该策略为检测和分割任务生成统一的BEV特征图。PETRv2为检测和分割任务初始化两个 Query 集,并将每个 Query 集发送到相应的任务头。最新工作UniAD将三个主要任务(包括感知、预测和规划)和六个子任务集成到一个端到端的框架中,以 Query 设计作为任务之间的连接。

这些研究显示了在结合检测和分割任务时任务之间的冲突。然而,尚未有全面的分析报告来解决这一问题。在这项工作中,作者尝试研究在3D目标检测和BEV语义分割的多任务训练中性能下降的问题。最重要的是,作者提出了一种高效的多任务3D感知框架和一种有效的训练策略来缓解这个问题。HENet在多任务设置中可以实现最先进的3D目标检测和BEV分割结果。

3 Method

作者在图2中展示了HENet的整体架构。对于给定的时间多视角图像输入,一个混合图像编码网络提取它们的鸟瞰图(BEV)特征。然后,作者使用一个时间特征融合模块来聚集多帧的BEV特征。最后,作者将不同网格大小的BEV特征发送到独立的BEV特征编码器和解码器,以执行不同的任务,从而获得多任务感知结果。

Hybrid Image Encoding Network

如图2所示,混合图像编码网络包含两个复杂度不同的图像编码器。具体来说,第一个编码器处理短期帧,将高分辨率输入进行放大,并送入图像 Backbone 网络和特征金字塔网络(FPN)。然后,应用复杂的2D到BEV网络来生成高精度的BEV特征。第二个图像编码器通过将输入下采样到低分辨率来处理长期序列,并使用小型 Backbone 网络和FPN提取图像特征。

image.png

同样,随后采用简单的2D到BEV网络进行有效的BEV特征生成。两个图像编码器的某些部分可以共享。例如,作者可以使用相同的 Backbone 网络,但不同的2D到BEV网络。然而,第一个图像编码器比第二个图像编码器要复杂。

上述混合图像编码网络可以整合到现有的多视图3D目标检测方法中。不失一般性,作者选择两种流行的基于BEV的方法,即BEVDepth 和 BEVStereo,作为示例来展示所提出的混合图像编码网络是如何工作的。

具体来说,对于处理短期帧的第一个图像编码器,作者保持图像的高分辨率,并使用大型 Backbone 网络(例如,VoVNetV2-99)后接FPN来提取特征。然后,应用多个卷积层和BEVStereo中的EM算法来生成立体深度和视锥特征。BEVDoV2将视锥特征转换为多尺度BEV特征。

对于第二个图像编码器,作者首先将长期图像序列的图像大小进行下采样,然后使用小型 Backbone 网络(例如,ResNet-50)后接FPN来提取多视图图像特征。之后,作者采用BEVDepth中的简单单目深度估计网络来获得视锥特征。进一步,作者使用BEVPoolv2根据相机的内参和外参将视锥特征从透视视图转换为多尺度BEV特征。

根据第4.4节实验,作者为3D目标检测和BEV语义分割任务选择了不同的BEV尺寸。具体来说,对于3D目标检测任务,作者使用256x256的BEV尺寸,对于BEV语义分割任务,作者使用128x128的BEV尺寸。### 时间特征融合

image.png

通过混合图像编码网络生成多帧BEV特征后,作者采用时间融合模块来融合BEV特征,如图3所示。时间融合模块包括向后过程和向前过程。向后过程将当前帧的特征融合到过去帧,而向前过程从过去聚集特征到当前帧。

image.png
image.png

Independent BEV Feature Encoding

根据第4.4节的实证分析,不同的任务倾向于选择不同大小的BEV特征。因此,在获得融合的多尺度BEV特征后,作者首先为其他任务分配不同大小的BEV特征。然后,作者独立地为每个任务编码BEV特征。受到BEVFusion的启发,所提出的编码过程包括自适应特征选择和BEV编码。

image.png
image.png

解码器和损失函数

image.png

4 Experiments

Implementation Details

作者以端到端的方式训练HENet进行多任务学习,包括与LSS相同方式的三维目标检测和鸟瞰图(BEV)语义分割。作者为大型图像编码器选择了VovNet-99,图像分辨率为,为小型图像编码器选择了ResNet-50,图像分辨率为。对于输入的时间序列,作者设置短期帧数和长期帧数。混合图像编码网络的权重从预训练的三维检测器初始化。

如第4.4节所分析,作者分别为三维目标检测和BEV语义分割选择了0.4m(256256 BEV大小)和0.8m(128128 BEV大小)的BEV网格大小。端到端多任务模型在没有CBGS的情况下训练了60个周期。此外,为了进一步将HENet与一些单任务方法进行比较,作者使用CBGS训练HENet的单个三维目标检测模型,训练了12个周期。

Dataset and Metrics

作者评估HENet在nuScene数据集上的表现,这是一个大规模的自动驾驶数据集,包含1000个驾驶场景(700个用于训练,150个用于验证,150个用于测试),涵盖了城市、高速和乡村道路。每个场景包含各种目标,例如车辆、行人和自行车。

对于3D目标检测评估,NuScenes提供了一系列评估指标,包括平均精度(mAP)和五种真阳性(TP)指标:ATE、ASE、AOE、AVE和AAE,分别用于测量平移、尺度、方向、速度和属性误差。整体性能通过nuScenes检测分数(NDS)来衡量,该分数是上述指标的综合。对于鸟瞰图(BEV)语义分割,作者遵循LSS的设置,使用平均交并比(mIoU)作为指标。

Main Results

作者在表1和图1中,将提出的HENet与之前的端到端多任务模型在nuScenes验证集上进行比较。HENet显示出优越的多任务性能,并取得了最新的成果。具体来说,在3D目标检测任务上,HENet比BEVFormer 提高了7.9 NDS和8.7 mAP,在BEV语义分割任务上提高了8.6 mIoU。对于在BEV语义分割性能表现出色的PETRv2,HENet在3D目标检测任务上超过它10.4 NDS,同时在BEV语义分割任务上保持有竞争力的性能。

image.png

此外,作者还比较了与这些方法相同的批量大小时每个周期的训练时间。HENet在训练时间上优于所有其他方法,显示出提出的HENet更高效。而且,HENet可以利用更多帧来提高性能,而其他方法,如PETRv2,由于GPU内存的限制,无法使用9帧。

分析端到端多任务3D感知中的冲突

为了分析3D目标检测和BEV语义分割任务之间的冲突,作者首先进行单任务实验,以找到训练和模型的优化配置,包括输入图像的分辨率、时间帧的数量和BEV特征网格的大小。如图5上半部分所示,作者观察到当输入分辨率和时间帧数量增加时,3D目标检测和BEV语义分割任务的结果一致得到改善。

然而,对于BEV特征网格大小,作者发现不同任务更喜欢不同的BEV网格大小。作者推测这种不一致可以归因于任务的特征。3D目标检测任务专注于定位局部前景物体,相比之下,BEV语义分割任务需要全面理解大规模场景,包括车道线和道路。如图5底部所示,检测的BEV特征是局部突出显示,而分割特征在全球范围内显示更多激活区域。因此,当BEV特征网格过小时,BEV语义分割任务在聚合局部特征时会受到影响,无法捕捉整个场景理解的全球信息。相比之下,更大的BEV特征可以为3D目标检测任务提供更多的局部细节。

image.png

Single Task Results

考虑到许多关于3D感知的工作仅预测单任务结果,作者在单任务上进行了实验,并将HENet的结果与这些特定任务的模型进行了比较。通过这种比较,作者展示了作者混合图像编码网络和时序特征整合的优势,并进一步证明了HENet的有效性。3D目标检测结果。作者在表2和表3中分别展示了HENet在nuScenes验证集和测试集上单一3D目标检测任务的成果。如表2所示,在不同主干网络和输入分辨率配置下,HENet超过了所有多视角相机3D目标检测方法,证明了所提出的混合图像编码网络和时序特征整合模块的有效性。

image.png

对于在线评估,表3显示HENet达到了最先进的3D目标检测结果。值得注意的是,HENet是在BEVDepth和BEVStereo的基础上构建的。作者可以通过整合更强的检测器,例如SparseBEV和StreamPETR,来进一步改进HENet的性能。

BEV语义分割结果。作者在表4中展示了HENet在nuScenes验证集上单一BEV语义分割任务的成果。与现有方法相比,HENet获得了具有竞争力的结果。

image.png

值得一提的是,与单任务性能相比,HENet的端到端多任务性能在3D目标检测任务和BEV语义分割任务上仅分别下降了0.3 mAP和0.8 mIOU。这些结果指出了独立BEV特征编码设计以及使用不同BEV网格大小来解决多任务冲突问题的有效性。### 消融研究

作者还对nuScenes验证集上的每个提出模块进行了消融研究。在以下实验中,作者采用BEVDepth4D [18]作为小图像编码器,采用BEVStereo [17]作为大图像编码器。

图6:在端到端多任务处理中HENet和 Baseline 的可视化结果。从左至右,作者展示了多视角图像输入,BEVDepth4D,BEVStereo和HENet(BEVDepth4D + BEVStereo)的结果以及 GT 情况。所提出的HENet通过长期信息更好地估计被遮挡的物体,并通过高分辨率信息进行更准确的预测。

image.png

混合图像编码网络。为了证明所提出的混合图像编码网络的有效性,作者将HENet与两种 Baseline 方法及其集成模型进行了比较。如表5所示,通过混合图像编码结合BEVDepth4D和BEVStereo,HENet可以显著提高3D目标检测性能。与提高分辨率(模型C)相比,混合图像编码网络可以在更快的推理速度和更低的训练成本下实现更高的准确度。与增加帧数(模型F)相比,混合图像编码网络可以在较低的训练成本下实现更高的准确度。

image.png

值得注意的是,将两个 Baseline 的检测结果进行集成会降低整体性能,因为较弱的BEVDepth4D引入了许多错误的阳性检测结果。作者还提供了检测结果的可视化,如图6所示。可以看出,由于运动或遮挡,一些物体或场景(如图中的蓝色框所示)需要更长的时序。此外,高分辨率和精细的深度估计方法有利于难以感知的物体和场景(如图中的红色框所示)。HENet可以有效结合长时序、高分辨率和精细深度估计的优势。

时间特征融合。表6比较了不同类型的时间特征融合方法的性能。

image.png

作者的相邻注意力机制取得了最佳结果。作者观察到,相邻设计比全局操作更有效,无论是使用注意力还是使用拼接和卷积。此外,与拼接和卷积相比,基于注意力机制的AFFM表现更好。最后,全局注意力和更大的BEV编码器引入了更多的模型参数,性能不如成对注意力。这表明成对注意力性能的提升来自于设计本身,而不是增加了模型参数。

独立BEV特征编码。 如第4.4节分析,3D目标检测和BEV语义分割任务更倾向于不同的BEV特征网格大小。如表7所示,实验结果表明,对不同任务使用不同大小的BEV特征图可以达到最佳的多任务性能平衡。此外,为每个任务采用独立的自适应特征选择和BEV编码器可以进一步提高1.7 NDS、1.1 mAP和3.4 mIoU的多任务性能。

image.png

5 结论

在本文中,作者提出了HENet,一个用于多任务3D感知的端到端框架。作者提出了混合图像编码网络和时序特征融合模块,以有效地处理高分辨率和长时序图像输入。

此外,作者采用特定于任务的BEV网格大小,独立的BEV特征编码器和解码器来解决多任务冲突问题。实验结果表明,HENet在nuScenes数据集上获得了最先进的多任务结果,包括3D目标检测和BEV语义分割。

参考

[1].HENet: Hybrid Encoding for End-to-end Multi-task 3D Perception from Multi-view Cameras.

作者:AI驾驶员
来源:智驾实验室

推荐阅读

欢迎大家点赞留言,更多Arm技术文章动态请关注极术社区嵌入式客栈专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。

推荐阅读
关注数
18835
内容数
1369
嵌入式端AI,包括AI算法在推理框架Tengine,MNN,NCNN,PaddlePaddle及相关芯片上的实现。欢迎加入微信交流群,微信号:aijishu20(备注:嵌入式)
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息