点击上方“计算机视觉工坊”,选择“星标”
干货第一时间送达
作者丨吃饭机@知乎
来源丨https://zhuanlan.zhihu.com/p/200924181
0. 引言
知识蒸馏是一种在繁琐的模型中提炼知识并将其压缩为单个模型的方法,以便可以将其部署到实际应用中。随着3D目标检测在自动驾驶、虚拟现实等任务中越来越重要,知识蒸馏等模型提炼技术也被证明了有效性。
本文将为大家分享2022 CVPR的论文"PointDistiller:面向高效紧凑3D检测的结构化知识蒸馏",该论文提出了一种结构化的知识蒸馏框架,可以实现更优秀的目标检测。重要的是,算法已经开源。
1. 论文信息
标题:PointDistiller: Structured Knowledge Distillation Towards Efficient and Compact 3D Detection
作者:Linfeng Zhang, Runpei Dong, Hung-Shuo Tai, Kaisheng Ma
来源:2022 Computer Vision and Pattern Recognition (CVPR)
原文链接:https://arxiv.org/abs/2205.11098
代码链接:https://github.com/RunpeiDong/PointDistiller
2. 摘要
点云表示学习的显著突破推动了它们在现实世界应用中的使用,如自动驾驶汽车和虚拟现实。然而,这些应用通常迫切需要不仅准确而且高效的3D物体检测。
最近,知识蒸馏被认为是一种有效的模型压缩技术,它将知识从一个过度参数化的教师转移到一个轻量级的学生,并在2D视觉中实现一致的有效性。
然而,由于点云的稀疏性和不规则性,将以往基于图像的知识蒸馏方法直接应用于点云检测器通常会导致不理想的性能。为了填补这一空白,本文提出了PointDistiller,一种用于基于点云的三维检测的结构化知识蒸馏框架。
具体来说,PointDistiller包括局部蒸馏,通过动态图形卷积和再加权学习策略提取点云的局部几何结构,突出学生对关键点或体素的学习,提高知识蒸馏效率。
在基于体素和基于原始点的检测器上的大量实验已经证明了我们的方法相对于先前的七种知识蒸馏方法的有效性。例如,我们的4×压缩PointPillars学生在BEV和3D对象检测方面分别实现了2.8和3.4的mAP提升,分别比老师高出0.9和1.8的mAP。
3. 算法分析
如图1所示是作者提出的结构化的知识蒸馏框架PointDistiller,该框架使用局部蒸馏来提取点云的局部几何结构中的教师知识,以及通过突出学生在相对更重要的体素上的学习来处理点云稀疏性的重新加权学习策略。具体来说,该方法首先从整个点云中提取相对较关键的N个体素或点进行采样,然后通过动态图卷积提取其局部几何结构,最后以重新加权的方式进行提取。
图1 PointDistiller框架概述
作者的主要贡献总结如下:
(1) 提出了局部蒸馏,首先用动态图卷积编码点云的局部几何结构,然后从教师到学生进行蒸馏。
(2) 提出了重新加权的学习策略来处理点云中的稀疏性和噪声。它通过在知识提炼中给体素更高的学习权重,突出了学生在体素上的学习。
(3) 在基于体素和基于原始点的检测器上进行了大量实验,以证明作者提出的方法优于七种先前方法的性能。
作者提出局部蒸馏,而不是直接提取教师检测器到学生检测器的主干特征,该局部蒸馏首先用KNN对局部相邻体素或点进行聚类,然后用动态图卷积层对局部几何结构中的语义信息进行编码,最后从老师那里提炼给学生。因此,学生检测器可以继承教师理解点云局部几何信息的能力,并实现更好的检测性能。
处理点云的主流方法之一是将其转换为体素,然后将其编码为规则数据。然而,由于点云中的稀疏性和噪声,大多数体素只包含一个点,并且很可能是一个噪声点。因此,与包含多个点的体素相比,这些单点体素中的代表性特征在知识蒸馏中具有相对较低的重要性。受此观察的激励,作者提出了一种重新加权的学习策略,该策略通过给学生更大的学习权重来突出他们在具有多个点的体素上的学习。此外,类似的思想也可以容易地扩展到基于原始点的检测器,以突出对教师检测器的预测具有更大影响的点上的知识提炼。
4. 实验
表1和表2分别显示了使用和不使用PointDistiller对于BEV检测和3D检测的性能,证明了作者提出的方法可以成功实现从老师检测器到学生检测器的知识迁移,并且实现明显且一致的性能提升,具有如下结论:
(1) 对于BEV和3D检测,使用PointDistiller后,所有种类的检测器和所有压缩比的平均精度显著提高。平均而言,对于基于体素和原始点的检测器,可以分别观察到2.4和1.0的mAP提升。在BEV和3D检测上,可以分别获得1.9和1.9的中等mAP改善。
(2) 在PointPillars和SECOND检测器的BEV检测上,用PointDistiller训练的4×压缩和加速的学生胜过他们的老师,分别为0.9和0.9的mAP。在PointPillars和SECOND检测器的3D检测中,使用PointDistiller训练的4×压缩和加速学生分别比他们的老师高出1.8和0.1的mAP。
(3) 在所有困难任务的检测结果中可以观察到一致的平均精度提升。
(4) 在所有类别的检测结果中可以观察到一致的平均精度提升。
(5) 在PointRCNN上,可以在BEV和3D检测上依次观察到平均1.3和1.2的mAP提升,证明PointDistiller也可以应用于原始点检测器。
表1 使用PointDistiller进行BEV物体检测的实验结果
表2 使用PointDistiller进行3D物体检测方法的实验结果
表3所示是使用PointDistiller与其他先前的知识蒸馏方法的对比,具有如下结论:
(1) PointDistiller明显优于其他的先前方法。在BEV和3D检测方面,PointDistiller分别超越了第二优的知识蒸馏方法1.5和1.9的mAP。
(2) PointDistiller在所有困难的所有类别中达到最佳性能。
(3) PointDistiller是唯一一种使学生探测器优于其教师探测器的知识蒸馏方法。
表3 PointDistiller与其他知识蒸馏方法的对比
表4所示是在nuScenes数据集上使用2×和4×压缩的PointPillars的对比结果。结果显示,作者提出的方法对mAP和NDS的平均性能分别提升了0.65和0.5,验证了该方法对大规模数据集的有效性。
表4 在nuScenes数据集上的实验结果
针对PointDistiller的消融实验主要由两部分组成,包括重新加权学习策略(RL)和局部蒸馏(LD)。如表5所示是KITTI上的4×压缩PointPillars学生消融研究。其中:
(1) 仅通过使用重新加权的学习策略来提取BEV检测和3D检测上的主干特征,可以分别获得2.0和1.9的mAP提升。
(2) 在BEV检测和3D检测上不需要重新加权学习的情况下,通过使用局部蒸馏可以分别获得2.3和2.5的mAP提升。
(3) 通过将这两种方法结合在一起,可以在BEV检测和3D检测上分别实现0.5和0.9的进一步mAP提升。这些结果表明,PointDistiller中的每个模块都有其各自的有效性,且相互独立。此外,它们还暗示了作者所提出的局部蒸馏和重新加权学习可以与其他知识蒸馏方法相结合以获得更好的性能。
表5 4×压缩PointPillars学生的消融实验
同时对PointDistiller进行敏感性研究,该实验主要引入两个超参数:K和N,它们分别指示图中用于局部蒸馏的节点的数量和待提取的体素(点)的数量。两个超参数的敏感性研究如图2所示。结果显示,PointDistiller方法在不同的超参数值下始终以大幅度优于基线,表明该方法对超参数不敏感。
图2 KITTI上的4×压缩的PointPillars的超参数敏感性实验
在重新加权的学习策略中,利用每个体素或点的重要性分数来确定它是否应该被提取。PointDistiller中重要性分数的可视化如图3所示。结果显示,它们成功地定位了前景物体和背景物体。
图3 PointDistiller的重要性分数的可视化结果
如图4所示,没有知识蒸馏的学生模型往往有更多的假阳性(FP)预测。相比之下,这个过度的FP问题在用PointDistiller方法训练的学生身上得到了缓解。
图4 经过知识蒸馏和没有经过知识蒸馏训练的学生检测结果的定性比较
5. 结论
在2022 CVPR论文"PointDistiller: Structured Knowledge Distillation Towards Efficient and Compact 3D Detection"中,针对基于点云的目标检测,作者提出了一种结构化知识蒸馏框架PointDistiller。该算法由局部蒸馏和加权学习组成,前者首先将点云中局部几何结构的语义信息编码并提取给学生,后者通过为不同的点和体素分配不同的学习权重来处理点云中的稀疏性和噪声。同时,大量实验证明了PointDistiller的有效性。这项成果属于探索基于点云的三维物体检测的开篇之作,具有建设性的意义。
本文仅做学术分享,如有侵权,请联系删文。
干货下载与学习
后台回复:巴塞罗那自治大学课件,即可下载国外大学沉淀数年3D Vison精品课件
后台回复:计算机视觉书籍,即可下载3D视觉领域经典书籍pdf
后台回复:3D视觉课程,即可学习3D视觉领域精品课程
计算机视觉工坊精品课程官网:3dcver.com
1.面向自动驾驶领域的多传感器数据融合技术
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
9.从零搭建一套结构光3D重建系统[理论+源码+实践]
10.单目深度估计方法:算法梳理与代码实现
11.自动驾驶中的深度学习模型部署实战
12.相机模型与标定(单目+双目+鱼眼)
13.重磅!四旋翼飞行器:算法与实战
14.ROS2从入门到精通:理论与实战
15.国内首个3D缺陷检测教程:理论、源码与实战
重磅!计算机视觉工坊-学习交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~