【蒸馏(1)】UniDistill:用于BEV 3D检测的通用跨模态蒸馏框架!

技术趋势洞察:
蒸馏工作反映出两个方向:一是通过蒸馏弥补纯视觉BEV与多模态模型的性能差距(接近LiDAR效果但更低成本);二是将蒸馏从感知层扩展到决策层(如thinktwice的端到端驾驶),这可能成为自动驾驶模型压缩和部署的关键技术。

背景:
几乎所有论文都强调如何将激光雷达(LiDAR)或雷达(Radar)等模态的知识迁移到纯视觉BEV模型中(如BEVDistill、UniDistill)【跨模态蒸馏】,解决视觉模型在深度估计和3D几何理解上的短板。UniDistill"通用"可能指设计了模态无关的蒸馏损失函数,可适配不同传感器组合(如相机+雷达 vs 纯视觉)。

论文:UniDistill: A Universal Cross-Modality Knowledge Distillation Framework for 3D Object Detection in Bird’s-Eye View
发表在:CVPR2023
代码:https://github.com/megvii-research/CVPR2023-UniDistill

Abstract

在本文中,我们提出了一个通用的跨模态知识蒸馏框架 (UniDistill) 来提高单模态检测器的性能。具体来说,在训练期间,UniDistill 将教师和学生检测器的特征投射到 Bird’s-Eye-View (BEV) 中,这是不同模态的友好表示。然后,计算三个蒸馏损失以稀疏对齐前景特征,帮助学生从老师那里学习,而不会在推理过程中引入额外的成本。利用 BEV 中不同检测器的类似检测范式,UniDistill 轻松支持 LiDAR 到摄像机、摄像机到 LiDAR、融合到 LiDAR 和融合到摄像机的蒸馏路径。此外,三个蒸馏损失可以过滤未对齐的背景信息的影响,并在不同大小的物体之间进行平衡,从而提高蒸馏的有效性。在nuScenes上进行的大量实验表明,UniDistill有效地将学生检测器的mAP和NDS提高了2.0%∼3.2%。

1. Introduction

3D 物体检测在自动驾驶和机器人导航中起着至关重要的作用。通常,流行的 3D 检测器可分为 (1) 基于 LiDAR [18, 33, 34, 42, 43] 或相机 [1, 13, 20, 24] 的单模态检测器和 (2) 基于两种模态的多模态检测器 [22, 30, 36, 37]。通过融合两种模态的互补知识,多模态检测器优于单模态检测器。然而,同时处理两种模态的数据不可避免地会引入额外的网络设计和计算开销。更糟糕的是,任何模态的故障都会直接导致检测失败,阻碍这些检测器的应用。

作为一种解决方案,最近的一些研究引入了知识蒸馏,将其他模态的互补知识转移到单模态检测器。在 [6,15,46] 中,如图 1(a) 和 1(b) 所示,对于单模态学生检测器,作者首先对不同模态进行数据转换,以训练结构相同的老师。然后利用老师通过指导学生产生相似的特征和预测结果来传递知识。这样,单模态学生就可以获得多模态知识并提高性能,而无需在推理过程中产生额外成本。

在这里插入图片描述
尽管现有方法可以有效地传递跨模态知识,但由于老师和学生的模态都受到限制,因此其应用受到限制。在 [6] 中,老师和学生的模态固定为 LiDAR 和相机,而在 [15,46] 中,它们被确定为 LiDAR-相机和 LiDAR。然而,3D 物体检测领域的传感器组合导致不同检测器的应用多样化且复杂。由于老师和学生的模态都受到限制,这些方法难以应用于更多情况,例如,[6] 中的方法不适合将知识从基于摄像头的老师转移到基于 LiDAR 的学生。

为了解决上述问题,我们提出了一个通用的跨模态知识蒸馏框架 (UniDistill),帮助单模态检测器提高性能。我们的动机是基于这样的观察:不同模态的检测器在鸟瞰图 (BEV) 中采用类似的检测范式,在将低级特征转换为 BEV 后,BEV 编码器会进一步对高级特征进行编码,检测头会生成响应特征以执行最终预测。

UniDistill 利用相似性构建了通用知识蒸馏框架。如图 1© 所示,在训练期间,UniDistill 将老师和学生检测器的特征投射到统一的 BEV 域中。然后,对于每个地面真实边界框,计算三个蒸馏损失来传递知识:(1)特征蒸馏损失,通过对齐 9 个关键点的低级特征来传递语义知识。(2)关系蒸馏损失,通过对齐 9 个关键点的高级特征之间的关系来传递结构知识。(3)响应蒸馏损失,通过在类高斯掩模中对齐响应特征来缩小预测差距。由于对齐的特征通常由不同的探测器产生,因此 UniDistill 可轻松支持 LiDAR 到相机、相机到 LiDAR、融合到 LiDAR 和融合到相机的蒸馏路径。此外,这三个损失稀疏地对齐前景特征以过滤未对齐的背景信息的影响并在不同尺度的对象之间进行平衡,从而提高蒸馏效果。

总结起来,我们的贡献有三点:

  • 我们在友好的 BEV 领域为单模态 3D 物体检测器提出了一个通用的跨模态知识蒸馏框架 (UniDistill)。通过不同模态知识的迁移,单模态检测器的性能得到了提高,而无需在推理过程中增加额外成本。

  • 得益于 BEV 中类似的检测范式,UniDistill 支持 LiDAR 到相机、相机到 LiDAR、融合到 LiDAR 和融合到相机的蒸馏路径。此外,设计了三个蒸馏损失来稀疏对齐前景特征,过滤背景信息错位的影响并在不同大小的物体之间实现平衡。

  • 在 nuScenes 上进行的大量实验表明,UniDistill 可以有效地将学生检测器的 mAP 和 NDS 提高 2.0%∼3.2%。

2. Related Work

2.1. 3D Object Detection

当前主流的 3D 物体检测器通常可分为两类:(1)基于 LiDAR [23, 25, 27, 32, 43] 或相机 [13, 20, 28, 38–40] 的单模态检测器;(2)同时使用两种数据作为输入的多模态检测器 [14, 22, 30, 44]。其中一类基于 LiDAR 的检测器是基于网格的 [17,26,41,43,47],其中非结构化的 LiDAR 点首先分布到规则网格中。作为开创性的工作,VoxelNet [47] 对点云进行体素化,执行 3D 卷积,将特征重塑为 BEV 特征,然后提出边界框。PointPillars [17] 用柱子代替体素来编码点云,避免了耗时的 3D 卷积运算。 CenterPoint [43] 提出了一种无锚检测头,并获得了更好的性能。

大多数基于相机的检测器都像 2D 检测一样在透视图中执行检测。 在 [38] 中,作者提出了 FCOS3D,它是 FCOS [35] 在 3D 物体检测领域的扩展。 同样,在 [40] 中,继 DETR [2] 之后,作者提出了 DETR3D 以注意模式执行检测。 最近,一些工作 [13, 20] 被提出来通过应用 LiftSplat-Shoot [29] 将图像特征从透视图转换为 BEV 来检测 BEV 中的物体,并取得了令人满意的改进。

通过融合 LiDAR 点和图像的互补知识,基于 LiDAR 相机的检测器优于上述单模态检测器。 利用 2D 检测结果,F-PointNet [30] 获得候选物体区域,收集内部的点,然后执行基于 LiDAR 的检测。 AVOD [16] 和 MV3D [5] 通过 ROI 池化执行与对象提议的模态融合。UVTR [19] 统一了体素空间中的多模态表示,用于基于变换器的 3D 对象检测。最近最先进的检测器 BEVFusion [22] 提出将图像和 LiDAR 特征转换为 BEV,以进行模态融合和结果预测。

我们的工作受到最近检测器在 BEV 中采用类似检测范式的启发。将特征转换为 BEV 后,遵循类似的过程,其中 BEV 编码器进一步编码高级特征,检测头产生预测结果。检测范式的相似性使得在通用框架中进行跨模态知识提炼成为可能。

2.2. Knowledge Distillation

知识蒸馏最初是在 [10] 中提出的,用于模型压缩,其主要思想是将学习到的知识从教师网络转移到学生。不同的作品对知识有不同的解释,包括输出层 [10] 的软目标和中间特征图 [31]。由于知识蒸馏的有效性,它已在各种计算机视觉任务中得到广泛研究,例如 2D 物体检测 [7, 9, 45] 和语义分割 [11, 21]。

最近,它被引入到 3D 物体检测中,用于将知识转移到单模态检测器。在 [6] 中,作者提出通过使用投影到透视图的 LiDAR 来训练另一个基于摄像头的老师,将 LiDAR 点的深度知识转移到基于摄像头的学生检测器。在 [15, 46] 中,PointPainting [36] 老师被用来指导 CenterPoint 学生产生类似的特征和反应。

虽然这些方法对于知识转移是有效的,但老师和学生的模态受到限制。然而,不同检测器的多样化和复杂应用将限制它们的应用。相反,我们提出的 UniDistill 将检测器的特征投射到 BEV,并支持 LiDAR 到相机、相机到 LiDAR、融合到 LiDAR 和融合到相机的蒸馏路径。

我们注意到最近的一项工作 BEVDistill 也在 BEV 中执行跨模态蒸馏。然而,它也对老师和学生的模态施加了限制,导致应用受限。此外,它们的主要蒸馏损失是为基于变压器的检测器设计的。不同的是,我们的 UniDistill 旨在提高基于 CNN 的检测器的性能

3. Methodology

在本节中,我们详细描述了我们提出的 UniDistill。在第 3.1 节中,我们简要介绍了 BEV 中不同检测器的类似检测范式,其中一些低级 BEV 特征是通过视图变换获得的,并进一步编码为高级特征和响应特征。在第 3.2 节中,我们描述了用于跨模态知识蒸馏的 UniDistill 框架。对于教师和学生检测器,在 BEV 中获得其特征后,计算三个对齐前景特征的蒸馏损失以执行知识转移。

3.1. Preliminary

最近的检测器在 BEV 中采用了类似的检测范式,主要区别在于获取低级 BEV 特征的方法。

对于 [13, 20] 中提出的基于相机的检测器,在逐像素深度估计之后,通过 [29] 中提出的视图变换操作将图像特征从透视图投影到 BEV 中,以形成低级 BEV 特征Fc.

对于 [17, 43, 47] 中提出的基于 LiDAR 的探测器,非结构化点云首先分布到规则的体素或柱子上。然后提取体素或柱子的特征,并通过将同一列中的体素特征连接起来,将其重塑为低级 BEV 特征 Fl

在[22]中,作者提出构建一个激光-相机 的检测器,通过融合低级别低级 BEV的Fc和Fl。通过全卷积网络去处理融合后的特征Ffuse.

本研究的方案。一个BEV编码器是把低级别特征,作为输入,进行更远的编码 得到高级别特征Fhigh.然后检测器头去计算分类和回归heatmaps

3.2 蒸馏

利用 BEV 中上述类似的检测范式,我们提出了一个通用的跨模态知识蒸馏框架 (UniDistill),它可以轻松支持 LiDAR 到相机、相机到 LiDAR、融合到 LiDAR 和融合到相机的蒸馏路径。UniDistill 的概览如图 2 所示。在训练期间,将不同模态的老师和学生的低级特​​征转换为 BEV 后,计算三个蒸馏损失。最终将损失与原始检测损失相结合以训练学生。通过这种方式,学生可以模仿老师学习跨模态知识,从而获得更好的检测结果,而不会在推理过程中引入额外的成本。

将老师和学生的模态分别表示为 MT 和 MS,这三个蒸馏损失可以解释如下:
(1)第一个损失“feature distillation”,语义知识 F M T F_{MT} FMT, F M S F_{MS} FMS</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hali_Botebie

文中错误请不吝指正!!!!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值