目标检测是自动驾驶的重要组成部分,已经开发了许多检测应用程序来解决这个任务。这些应用通常依赖于Backbone架构,该架构从输入中提取表示特征以执行目标检测任务。Backbone架构提取的特征质量对整体检测性能有重要影响。许多研究人员致力于开发新的和改进的Backbone架构,以增强目标检测应用程序的效率和准确性。虽然这些Backbone架构在通用目标检测数据集如 MS-COCO 和 PASCAL-VOC 上表现出色,但在自动驾驶环境下评估它们的性能尚未被先前探讨过。
为了解决这个问题,作者的研究评估了3个知名的自动驾驶数据集,即KITTI、NuScenes和BDD,以比较不同Backbone架构在目标检测任务上的性能。
1、简介
目标检测(OD)是自动驾驶的关键组成部分。许多当前用于自动驾驶的OD应用程序源自计算机视觉在2D OD方面的研究贡献。自AlexNet以来,基于深度学习的方法已经成为该领域的主导趋势,相对于传统方法。在深度学习的方法中,通常采用一种被称为Backbone的架构,由多个层组成,用于从输入图像中提取特征,并生成紧凑且有意义的表示。这个特征表示可以用于下游的目标检测任务。而生成的特征表示的质量可以极大地影响目标检测的准确性和效率。
因此,在深度学习的背景下,对Backbone进行了大量的研究,导致了几种有效的架构被广泛应用于流行的目标检测模型中。已经在目标检测任务中表现出色的众所周知的Backbone示例包括ResNet、Darknet、Res2Net和Swin Transformer(Swin-T)。
尽管所有前述的Backbone架构在几种目标检测模型中都被证明是有效的,但提出这些架构的研究人员通常会在通用数据集(如COCO和ImageNet)上评估它们。很少有研究专注于评估这些架构在自动驾驶数据集上的性能,而这些数据集具有其独特的特征。
对于目标检测而言,自动驾驶数据集的挑战包括图像中存在的目标太小,人眼难以辨认,目标的形状和大小非常相似(例如汽车、卡车和面包车),以及由于恶劣天气条件下拍摄的图像导致的低质量数据。因此,在自动驾驶数据集上评估目标检测模型的性能对于确保它们在实际场景中的适用性至关重要。
因此,作者的研究集中在自动驾驶2D数据集上,旨在使用相同的2D目标检测模型评估四种前述的Backbone架构的性能。作者使用Deformable DETR作为唯一的目标检测模型,以评估不同Backbone的性能,因为先前的研究表明,Deformable DETR能够有效地利用不同Backbone的特征,在COCO数据集上实现比其他检测器模型更好的目标检测结果。
本文的贡献包括:
- 评估了四种不同的Backbone架构
- 在本研究中调查了三种不同的自动驾驶数据集(KITTI、nuScenes和BDD)。
- 在本研究中提供了基于Transformer的检测器(Deformable-DETR)在自动驾驶数据集上使用不同Backbone的性能。据作者所知,这是首次进行这种分析。
2. 方法
在本节中,作者首先详细描述了在本研究中研究的4种Backbone架构。随后,作者介绍了Deformable-DETR,它被用作作者研究中的检测器。最后,作者介绍了所使用的评估指标。
2.1 ResNet
ResNet是一种卷积神经网络(CNN),其主要创新是在网络中构建了一个残差学习块,定义如下:
在作者的研究中,作者选择了基于ResNet的ResNet-50和ResNet-101。这两种架构分别由50和101个卷积层组成。虽然ResNet-101通常被认为是对ResNet-50的改进,但实际的性能提升可能因任务和考虑的数据集而异。这项研究将展示ResNet是否适用于自动驾驶数据集,并评估增加ResNet层数是否会显著提高性能。
2.2 DarkNet
Darknet架构由多个卷积层组成,后面跟着一个全局平均池化层和用于预测的全连接层。作者研究中使用的Darknet-53架构基于Darknet,包括53个具有残差连接的卷积层。这些额外的残差连接不包括在原始Darknet中,它们使深度神经网络更容易训练。
Darknet-53已经被引入作为替代ResNet的架构,用于目标检测,并且在计算上不那么昂贵。在作者的研究中,作者旨在调查在处理自动驾驶数据集时,具有简化架构的Darknet-53是否能够赶上ResNet。
2.3 Res2Net
Res2Net是ResNet的扩展,引入了一种具有多个分层残差连接的新型残差块。在每个残差块内,前一层的输出与不同尺度的特征图并行组合。这种设计使网络能够捕获多尺度特征,并增强了检测不同大小和形状的目标的能力。
作者的研究采用了Res2Net-101架构,它由101层组成,并且在通用数据集(如COCO)上表现更好。作者的研究旨在确定Res2Net-101是否也能够提高在自动驾驶数据集上的目标检测性能,与其他基于CNN的Backbone架构相比。
2.4 Swin Transformer(Swin-T)
在自然语言处理任务中注意力机制的成功之后,研究人员还将这一技术应用于目标检测任务,并展示了其有效性。
Swin-T是一种采用了注意力机制的符号化架构。Swin块是Swin-T的基本块,使用了具有偏移窗口的自注意力机制来捕获特征,从而使生成的特征表示包括图像不同区域之间的空间差异。通过使用多个阶段的Swin块对图像进行分层处理,Swin-T能够有效地捕获输入图像的局部和全局特征。作者选择Swin-T作为研究中的选定Backbone之一,这将帮助作者评估在与自动驾驶相关的任务中,基于Transformer的Backbone的性能。
2.5 Deformable-DETR
DETR是第一个采用了与传统CNN方法不同的基于Transformer的架构的目标检测模型。该架构对由Backbone网络生成的整个特征图进行编码,利用自注意力机制来捕获全局上下文信息。这种方法使DETR能够就目标检测做出明智的决策,并且在COCO数据集上取得了最先进的性能。尽管其性能突破了,但DETR面临着一些挑战。其中之一是它在大规模数据集上训练起来可能很困难。另一个挑战是在检测小目标时的困难。
后来,Deformable-DETR被引入作为DETR的增强版本,以解决这些挑战。它通过引入可变形注意力模块来修改其注意力机制来实现这一目标。为了防止模型变得过于复杂并促进收敛,Deformable-DETR使用了每个Query的有限数量的关键。此外,它使用了多尺度特征图,使其在检测较小的目标时表现出色。
3 结果与分析
3.1 KITTI数据集
根据表5,在ResNetBackbone网络中增加层数通常会导致更好的性能,但这种改善不像切换到更高级的Backbone网络(如Res2Net-101或Swin Transfer)那么显著。Darknet-53是一种轻量级网络,其性能可能较其他网络差。
然而,当评估mAP0.5度量时,其性能与ResNet-50相当。实际上,Darknet-53与ResNet-50之间的mAP0.5差异不像mAP0.75的差异那么显著。
Res2Net-101在实验中的所有基于CNN的Backbone架构中表现最好。这主要归因于其在检测小目标方面的出色能力,这是所有评估的Backbone中最好的。
虽然Res2Net-101在检测小目标方面优于Swin-T,但在大多数指标中,Swin-T仍然是性能最好的Backbone。
如图1所示,小目标的训练实例占比不到20%,远低于中等和大型目标。这表明在训练过程中对小目标的有限暴露可能是Swin-T难以检测它们的原因。需要注意的是,Swin-T在四个Backbone中的推理速度最慢。因此,需要在性能和推理速度之间进行权衡。
表6中有趣的是,即使Person Sitting的训练实例数量只有172,其性能也不算太差。这可能归因于Person Sitting的特征与Pedestrian类似,而Pedestrian类的训练实例更多,有助于Backbone提取与Person Sitting相关的特征。因此,检测器可以利用从Pedestrian类中学到的特征来提高对Person Sitting的检测性能,即使训练实例较少。
3.2 nuScenes数据集
nuScenes数据集提供了更多的训练和验证实例。如表7所示,随着训练实例数量的增加,ResNet-50、ResNet-101和Darknet-53之间的性能差距逐渐缩小。与KITTI数据集相比,当训练实例数量增加时,Darknet-53甚至在检测小目标方面优于ResNet-50和ResNet-101。
Res2Net-101仍然是性能最好的基于CNN的Backbone架构。然而,与KITTI数据集不同,对更多实例的训练使Swin Transfer能够更多地关注相关的信息区域,从而在检测小目标方面表现出优于Res2Net-101的性能。
表8显示,Trailer、Construction Vehicles和Road Object是性能最差的类别,可能是因为它们的训练实例数量与其他类别的数量不在同一数量级。
有趣的是,与KITTI数据集中的Person Sitting类似,尽管Bus类的训练实例较少,但其性能并不像Trailer、Construction Vehicles和Road Object那么低。这也可能是因为Bus与Car共享特征,而Car的训练实例更多。
3.3 BDD数据集
如图1所示,BDD数据集具有更高比例的小目标,这可能会使检测更具挑战性。这反映在表9中呈现的性能结果中,其中mAP0.75度量与mAP0.5相比降低了约55%。相比之下,在KITTI数据集中,降低约20%,而在nuScenes数据集中,降低约36%。
正如在nuScenes数据集中观察到的那样,足够多的训练实例可以缩小ResNet-50、ResNet-101和Darknet-53之间的性能差距。类似地,增加小目标的训练实例数量也可以缩小Res2Net-101和Swin Transfer在检测小目标方面的性能差距。
BDD数据集中的Motor、Bike和Rider类别具有最少的训练实例数量,并且与具有大量训练实例的类别不同。这意味着它们无法利用从其他类别学到的特征来提高其检测性能。在这种情况下,尽管训练实例有限,Swin-T在这三个类别上的性能仍优于基于CNN的Backbone。
4. 结论
作者的研究考察了不同Backbone对Deformable DETR在自动驾驶数据集上的检测性能的影响。作者得出以下结论:
- 增加训练实例数量可以减小ResNet在不同卷积层之间以及ResNet和Darknet之间的性能差距。
- 基于Transformer的BackboneSwin-T在几乎所有评估指标上优于基于CNN的Backbone。然而,当训练实例数量有限时,它可能在检测小目标方面表现不佳。此外,在测试的各种Backbone中,它的推理速度最慢。
- 如果训练实例中小目标的比例非常高,Res2Net可以在检测小目标方面达到与Swin-T相当的性能。
- 拥有充足训练实例的类别可以提高具有有限训练实例的类别的检测性能。如果只在通用数据集上进行研究,作者无法探索和研究这些发现。作者希望作者的研究可以为未来希望在自动驾驶条件下利用相关Backbone的研究人员提供有用的参考。
5 参考
[1].THE IMPACT OF DIFFERENT BACKBONE ARCHITECTURE ON AUTONOMOUS VEHICL DATASET.
作者:AI视界引擎
文章来源:AI视界引擎
推荐阅读
DNN 加速器设计——NPU数据流优化
AI加速器 Kernel Computation 计算优化方式
AI加速器关键参数和设计目标
ICCV 2023 | DeformToon3D:玩转3D人脸风格化
更多嵌入式AI干货请关注嵌入式AI专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。