社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

NextBEV:集成深度学习的轻量级 3D 目标检测技术,大幅提升车载模型性能 !

智驾实验室 • 3 周前 • 44 次点击  

ADAS Laboratory




点击上方蓝字关注 智驾实验室

         加入【智驾实验室】交流群,获取更多内容和资料

理解和环境以及准确地在三维空间中检测物体对于推动自动驾驶技术的发展至关重要。将相机和LIDAR数据进行整合已成为实现高精度三维目标检测模型的有效方法。然而,现有方法往往依赖于计算量大的传统 Backbone 网络。

本文提出了一种新的方法,即将前沿的深度学习技术集成到特征提取过程中,旨在创建更高效的模型而不牺牲性能。

作者的模型NextBEV超越了诸如ResNet50和MobileNetV2等现有的特征提取器。在Kitti 3D单目检测基准测试上,NextBEV的准确性提升了2.39%,并且参数量仅占MobileNetV3的不到10%。

此外,作者对LIDAR Backbone 进行改进,使原始推理时间缩短至10毫秒。通过融合这些轻量级的 Proposal ,基于VoxelNet的模型准确度提升2.93%,基于PointPillar的模型F1分数提高约20%。

因此,本研究有助于建立轻量且强大的模型,无论是单独使用还是融合使用,使其更适合车载实现。

1. INTRODUCTION

地面交通工具的发展显著,从早期简陋的汽车到当今复杂的车辆。结合机器学习和感知技术提高了车辆对环境的理解能力,并推动了许多任务的发展,如语义分割、线检测和目标检测。在这其中,三维目标检测在通过预测物体的空间位置、姿态和尺寸来映射街道上的物体方面尤为突出。

在该领域主要使用两种传感器:激光雷达和相机。由于激光雷达在环境三维理解方面具有较高的准确性,因此被广泛应用,但其在区分形状相似的目标时存在困难,并且成本较高。相比之下,相机传感器能够提供丰富的色彩信息,在多分类任务中表现出色,但缺乏深度测量数据,在低光照条件下表现较差。为了克服这些局限性,3D目标检测领域逐渐向这两种传感器的融合方向发展,结合了激光雷达精确的距离测量与相机详细的视觉信息。激光雷达与相机的融合在3D目标检测中可以实现更准确和可靠的预测。然而,融合模型需要更大的网络结构和更复杂的设计,这导致了更高的计算需求,增加了实时响应的挑战,并对车载实施提出了更高要求。

目前整合传感器数据的主流方法是为每个传感器设计单独的处理路径,提取其特征,将其转换为鸟瞰视图(BEV),然后融合这两种信息以预测三维物体。

在LIDAR路径中,当前的方法利用3D LIDAR测量值,并采用单一架构直接提取特征并转换为BEV [4, 5]。另一方面,由于缺乏深度测量,摄像头路径在BEV参考下预测存在挑战。通常的方法遵循两段架构序列:首先是特征提取(Backbone),随后是BEV转换,这一步的处理时间可能超过500毫秒 [3]。2023年,刘和唐提出了通过并行GPU Kernel 加速BEV转换的方法,显著减少了这一步骤的处理时间 [3]。然而,类似于其他研究工作 [2, 1],他们的摄像头Backbone仍然基于许多参数众多且需要高计算资源的关键架构 [6, 7, 8]。正如BEVFusion作者所指出的 [3],除了提高了准确性之外,摄像头Backbone对增加模型延迟也有重大影响。

在关注轻量级处理网络的研究中,作者的论文重新审视了相机和 LiDAR 的处理路径,并在此基础上提出了一系列改进。在相机处理路径中,作者提出了一种新的模型,该模型通过简洁且高效的方式结合了特征提取和 BEV 转换。这一重新设计考虑了相机 Backbone 网络对模型大小、计算需求以及模型推理时间的影响。

此外,作者还重新审视了标准的 LiDAR  Backbone 网络,提出了轻微但有效的改进措施,以减轻 LiDAR 处理路径的负担。最后,作者将这些优化路径融合起来,最终形成一种轻量级的传感器融合模型。

在相机路径中,受到3D单目目标检测模型MonoNext [9]的启发,作者的模型利用最新的技术改进了轻量化、速度和准确性之间的平衡,并超越了传统的特征提取模型,如ResNet50、MobileNet以及单目目标检测方法。作者的方式使用不到MobileNetV2一半的参数量和FLOPS就实现了更高的准确性。因此,NextBEV为车载实现提供了准确性和计算需求之间的权衡。另一方面,在LIDAR路径中,通过基于深度可分离卷积块的结构,作者对两个传统主干进行了轻量化改造。所提出的修改意味着推理阶段减少了10毫秒,这在追求实时预测的车载实现中是一个重要的因素。最终,通过将两种处理路径的贡献整合到一个传感器融合模型中,作者相对于依赖单一传感器的方法提高了F1分数20%。这种集成使得模型不仅轻量化且准确,还能有效减少预测中的假阳性与假阴性。

作者的贡献可以总结如下:

  1. 作者介绍了一种全新的端到端方法,可以直接将相机图像转换为BEV特征张量。该网络基于单目检测和最先进的图像特征模型。
  2. 作者分析了激光雷达 Backbone 网络模型,并提出了一些修改来减少架构大小、计算需求和推理时间,而不牺牲准确性。
  3. 作者详细介绍了该方法在结合激光雷达-相机框架中的实现,并强调了其在可靠性和性能方面相较于单一传感器解决方案的优势,以及更快的推理速度。

2. RELATED WORK

2.1 Camera-based 3D Object Detection

基于相机的方法旨在仅通过二维图像来估计三维空间中的物体而不依赖深度信息。立体视觉模型依靠相同物体的不同视角,从而在三维空间中更好地估计检测的深度。许多研究提出了各种融合相机信息的方法[10]。其中,Stereo RCNN [11] 扩展了Faster R-CNN以适应立体视觉输入,并将左图像和右图像中的目标关联起来,以实现高精度的检测。Pseudo-LIDAR [12] 将基于图像的深度图转换为伪LIDAR表示形式,从而使使用立体视觉的LiDAR等效三维检测成为可能。除了由于采用不同视角带来的优异性能外,立体视觉模型需要较高的计算能力来处理所有图像,这会导致较慢的推理时间。

另一方面,单目模型展示了从单张二维图像中快速提取详细三维信息的潜力。尽管这种方法无法达到立体模型的相同准确性,但它提供了使用轻量级、更快且成本更低的技术进行三维估计的解决方案。在单目模型领域,多项研究提出了不同方法来进行三维估计。例如,MoVi3D 引入了一种基于单阶段深度架构的方法,利用几何信息创建虚拟视角,对物体的外观进行归一化处理,使其与距离相关[15]。为了解决单目三维目标检测中遮挡物体的挑战,MonoPair 提出了一种新颖的方法来考虑目标对之间的空间关系。这种方法提高了检测精度,尤其是在处理困难样本方面,并确保了运行时的效率[16]。最近,MonoNext 作为一种基于 ConvNext 的网络的简单实现而出现[17],通过小空间网格来提取特征并映射物体[9]。

大多数提及的方法依赖于两步检测策略,首先使用一个熟知的相机主干网络,然后进行图像到鸟瞰图(BEV)的转换。这类模型利用或借鉴了文献中已有的主干网络,例如ConvNext [17]、MobileNet [6, 7] 或 ResNet [8],之后通过另一个神经网络将特征转化为格网表示。本项工作提出了将这两步整合为一步的方法。此外,作者还将作者的方法的特征提取能力与知名的主干网络和单目模型进行了对比分析。

2.2 LIDAR-based 3D Object Detection

3D目标检测方法利用激光雷达(LIDAR)经历了多种策略的发展,每种策略都有其独特的优势和挑战。基于点的方法直接处理来自LIDAR的原始点云数据。PointNet [18] 是这一领域的先驱框架,它引入了一种全新的神经网络方法,可以直接从点云数据进行分类和分割任务。此后的方法在此基础上进行了拓展,寻求在处理效率和准确性上的提升 [19]。尽管利用未经处理的点云数据可以实现直接的学习,但这些方法往往受到高计算资源需求的限制。相比之下,基于 Voxel 的方法将原始点云转换为3D Voxel 网格,简化了数据表示。VoxelNet [4] 引领了这种方法,通过3D卷积层提取 Voxel 化数据的特征,提高了处理效率。然而, Voxel 化步骤可能会导致重要数据细节的丢失,可能影响模型捕获数据相关特性的能力。为解决这一问题,其他研究行人 [20] 注重改进基于 Voxel 的方法以保留更多细节并增强整体性能。

最后,Hybrid 基础方法结合了之前技术的优点。PointPillar 引入了一步将点云编码为伪图像的方法 [5]。这一混合方法允许在结构化的 2D 网格中详细表示点数据,进而可以高效地使用 2D 卷积网络进行处理。这种方法在计算效率和准确性之间达到了平衡。随后,其他研究也采用了类似的方法来提升其目标检测能力 [21]。

2.3 LIDAR-Camera Fusion for 3D Object Detection

LIDAR 和摄像头数据的融合突显了两者传感器的互补优势,以提升三维目标检测的性能。它结合了LIDAR精确的距离信息和摄像头图像中的详细色彩信息,从而提高检测的精度和鲁棒性。这两种传感器的结合通常在Early阶段[22]或Late阶段[21, 23]进行。在Early Fusion中,原始传感器测量值被直接结合并通过单一架构处理,这一过程能够实现快速且稳健的检测,但牺牲了一定的精确度。相反,在Late Fusion中,每个传感器分别处理并生成预测,然后将这些预测融合起来,这种方式虽然提高了检测精度,但由于采用了并行网络架构,增加了计算成本。

近年来,有研究提出了中间融合策略,其中来自两个传感器的数据通过一个小而独立的特征提取器(Backbone)处理。最终网络通过细化结合的信息来提高预测准确性。TransFusion利用了Transformer架构,提出了一种鲁棒的融合方法,并引入了一种软关联机制,以减轻像光照差和传感器对齐不良等不良图像条件的影响[1]。另一方面,BEVFusion则摒弃了传统的点级融合方式,通过在一个共享的BEV表示空间中统一多模态特征,有效地保留了几何和语义信息[3]。与单目模型类似,这些融合模型中的相机分支采用了已知的重相机Backbone(如SwinT或ResNet50),并随后进行图像到BEV的转换。尽管在准确性和鲁棒性方面有所提升,但相机路径的实现带来了计算需求,这在车载实施中会导致快速检测性能的下降。

3. METHOD

3.1 Camera processing path

作者介绍了NextBEV,这是一种新颖的图像到鸟瞰视图转换模型,旨在提升单目检测和传感器融合应用中的相机处理路径。作者的方法受到MonoNext模型的启发,该模型利用复杂的卷积块来提取图像特征并预测3D物体特性。然而,MonoNext的高计算需求使其难以进行车载实现。相比之下,基于MobileNet的架构通过使用深度可分离卷积、较少的通道数以及简单的激活函数,在图像特征提取方面实现了大小、速度和准确性的平衡。鉴于此,作者的模型结合了修改后的MonoNext模型与MobileNet最近实施的技术[6, 7, 24]。如图1所示,NextBEV的整体架构被结构化为五个单元格(C1至C5),每个单元格包含一个由3x3 Kernel 卷积层、组归一化[25]和H-swish激活函数组成的序列。卷积分别使用2, 2, 2, 1, 2 的步长和16, 24, 40, 48, 96的通道数。此外,除了初始部分外,后续四个单元格呈现相似的深度可分离块,其中第二个单元格重复1次,第三个和第四个单元格分别重复3次。深度可分离块包含一个序列,包括深度可分离卷积( Kernel :3,步长:1)、组归一化、将通道数扩展4倍的点卷积、H-swish激活以及额外的一次点卷积以返回原始通道数。序列的输出与深度可分离块输入相加。然后,张量通过转置卷积( Kernel :3,步长:2)上采样,并与第三和第四部分的输出连接起来,最终形成一个的张量。输出进一步进行类似的上采样和与第二部分输出的集成。最后,再次进行上采样并与第一单元格连接。

对于3D预测,NextBEV的输出被送入一个多任务学习头(Head),将其输入张量分割成五个具有64通道和1x1卷积核的卷积路径。每条路径为各自的预测实现不同的激活函数,其中置信度使用sigmoid函数,分类使用softmax函数,位置、大小和旋转则使用ReLU函数。根据Qiao等人的研究[26],Group Normalization(GN)[25]与Weight Standardization(WS)的结合在性能上显著优于传统的Batch Normalization方法。因此,在所有CNN中实施了WS以优化其性能。

3.2 LIDAR processing path

作者使用PointPillar和VoxelNet方法来提取激光雷达传感器特征并预测3D目标特性。这两种方法均包含可以通过当前深度学习技术优化的卷积神经网络(CNN)模块。PointPillar结构包括一个Pillar特征网络,用于将点云转换为伪图像。接着,该输出进入由3×3卷积层、批量规范化和ReLU激活函数构建的2D CNN。结果随后传递给 Head 模块进行3D预测。另一方面,VoxelNet采用了类似的方法,点云首先输入其特征学习网络,然后依次通过3D CNN和具有相似模块的2D CNN。这两种2D特征提取方法都建立在可以使用作者提出的小型化模块进行优化的2D CNN块上。基于此,作者用扩展系数为1的深度卷积块替换这些模块,并结合 GroupNorm 和H-swish激活函数替代批量规范化和ReLU激活函数。

3.3 Fusion step

将通过激光雷达和摄像头处理路径转换成BEV特征网格后,作者使用Cross-Attention (CA)方法进行融合。受到Transformer的启发,Cross-注意力是一种熟悉的融合不同类型信息的方法,比如文本和图像[27],并在其他工作中证明了这种方法能够很好地融合这些传感器的数据[28, 29]。

LIDAR 的特征用作 Query,而 Camera 的特征作为 Key 和 Value。通过 Query 张量与 Key 张量转置的乘积计算注意力机制,然后对该乘积进行归一化处理(归一化因子为张量大小的平方根),并通过 Softmax 函数得到表示两个传感器特征之间相关性的注意力分数。这些注意力分数用于加权 Value 张量,强调与两个 Backbone 网络相关的特征。Cross-attention 步骤的输出被加到 LIDAR 特征张量上,创建一个跳接连接,利用 Cross-attention 强调其相关的特征。在作者的方法中,作者使用了六个 Cross-attention 头并将它们拼接成一个最终张量。该输出进入一个多任务学习头(HEAD),以预测 3D 目标的特性。

4. EXPERIMENTS

4.1 Dataset and Metrics

数据集:作者使用KITTI数据集[30]对作者的方法进行了基准测试,该数据集包含来自相机和Velodyne HDL-64E激光雷达传感器的数据。数据集包含7481帧用于训练和测试的相机和激光雷达测量值。作者将训练数据分为两部分:训练集(3741帧)和验证集(3740帧)[31]。该数据集包含不同类型物体的标签,例如汽车、货车、行人和自行车。在本文中,作者仅评估检测汽车的模型。

评价指标与实现细节:作者使用3D平均精度(AP)和40个召回阈值来评估模型。具体而言,精确率、召回率和F分数计算如下:精确率 ,召回率  和  分数 。当IoU大于0.7时,进行评估。此外,作者还使用0.1的IoU阈值来验证模型识别正确区域中的物体的能力。检测难度分为三个 Level :easy、moderate和hard,分别对应完全可见、部分遮挡和大部分遮挡的目标。

为了保证公平比较,推理时间通过20次测量取平均值,在一致的计算环境中进行,并包含一个预热阶段。检测范围(水平、垂直和深度轴)对于PointPillar和单目模型标准化为[-40, 40;-2, 6;0, 80],而VoxelNet及其融合使用的范围为:所有模型使用的Anchor尺寸为宽度1.6米、高度1.5米和长度3.9米。实验在一块RTX2080ti GPU上进行,单目模型的批量大小为8,而激光雷达和传感器融合模型的批量大小为2。模型训练共进行180个epoch,选择验证损失最小的权重作为最终模型。作者使用AdamW优化器,初始学习率为2e-4,并采用ReduceLROnPlateau策略进行调整,耐性为3,减少因子为0.8,最小学习率为1e-8。对于损失函数,使用Focal loss进行置信度估计,使用SmoothL1 loss进行回归任务,这与PointPillar中的做法相同。

4.2 Results and Discussion

Camera-based Detection

在本节中,作者使用不同的 Backbone 网络评估了作者提出的特征提取器。与作者的模型类似,这些 Backbone 网络均接收单张图像作为输入,并使用相同的HEAD(第3.1节)预测车辆的3D特性。此外,作者的评估还包括将模型的有效性与文献中所提到的单目3D目标检测模型的车辆检测能力进行比较。

在表1中,作者展示了流行特征提取器与NextBEV的比较。NextBEV凭借其轻量级和简化的设计脱颖而出,仅需120万参数(不到MobileNetV3架构的10%)。这种资源需求的减少,加上其较低的GPU内存分配(1.1 GB),使NextBEV成为高效率模型,表明其有可能在车载环境中部署而不牺牲计算能力。NextBEV受到MobileNet模型的启发,作者可以在推理时间和GPU内存分配方面观察到相似之处。

尽管 NextBEV 显著减少了参数数量和文件大小,但推理时间并未同比例减少。作者可以通过参数数量来关联模型的文件大小。然而,这些参数并不直接影响推理时间。某些层,如深度可分离卷积,呈现出更为复杂的处理过程,这比推理时间对参数数量的影响更大。尽管如此,NextBEV 在关键评估指标上取得了最高分,其平均交并比(IoU)为 0.2519,平均平均精度(mAP)为 13.41%,从而在识别任务中以 54.55% 的成功率显示了其实效性。因此,NextBEV 在效率与准确性之间达到了良好的平衡,定位为一种用于实时应用的传感器融合模型潜在工具。

除了在文献中的 Backbone 网络中脱颖而出,作者还将NextBEV与3D单目目标检测器进行了比较。如表2所示,作者的模型表现出了竞争力,分别在Easy、Moderate和Hard场景下得分19.58%、9.17%和11.50%,平均得分为13.41%。特别是与MonoNext相比,作者的模型以更少的参数和更快的推理时间实现了相似的准确性。

LIDAR-based detection

为了评估作者对基于LIDAR的检测模型性能所做的修改的影响,作者在PointPillar和VoxelNet架构的默认版本上进行了比较分析。在此次评估中,作者考虑了它们的参数量、计算需求、速度以及准确性。

在表3中,更新后的PointPillar模型,名为PointPillar Light,在复杂性上实现了显著减少。这一较轻版本仅需100万参数和75.93 GFlops,降低了计算需求的同时,大约保持了原有的准确性。此外,较轻版本将推理时间减少了10毫秒,这是自主驾驶车辆寻求实时处理的一个重要因素。同样地,VoxelNet的更新也展示了显著的效率提升。其参数数量少于原模型的一半,减少到仅200万,GFlops也大幅降低至94.48。与PointPillar类似,VoxelNet的修改也减少了其推理时间,而不会严重影响模型原始的准确性。

Sensor-Fusion Detection

在表4中,作者展示了仅LIDAR模型、PointPillar和VoxelNet及其与NextBEV集成的轻量级版本之间的比较。值得注意的是,与原始LIDAR主干模型相比,融合了NextBEV的轻量级LIDAR版本仍然具有更少的参数量。PointPillar Light  NextBEV模型,参数量减少至,F1分值从0.4950提高到0.6941。另一方面,VoxeINet  NextBEV带来了更大的改进。尽管参数数量减少了2M,但融合后的模型达到了,并将F1分值提升了0.1。这些改进表明,融合方法能够在不牺牲模型大小的情况下提高鲁棒的精确召回平衡。

5. CONCLUSION

在本研究中,作者提出了一种全面的方法来精炼3D目标检测的传感器融合架构,重点在于增强图像和LIDAR特征提取路径。作者的新型架构NextBEV简化了将相机图像转换为顶视图(BEV)特征的过程,不仅提高了准确性,还显著减少了计算开销。

此外,作者更新了知名LIDAR Backbone 网络的设计,生产出既轻量级又快速且保持精准检测能力的模型。通过将这些改进整合到统一的传感器融合架构中,作者展示了与传统单传感器方法相比更为优越的可靠性和准确性。这些增强标志着朝着实现自主系统所需高效和高速检测迈出的重要一步。

参考


[0]. A Light Perspective for 3D Object Detection  .





扫描下方二维码,添加AI驾驶员

获取更多的大模型多模态等信息


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/180690
 
44 次点击