其他分享
首页 > 其他分享> > MonoDistill 阅读笔记 ICLR2022

MonoDistill 阅读笔记 ICLR2022

作者:互联网

标题:

MONODISTILL: LEARNING SPATIAL FEATURES FOR MONOCULAR 3D OBJECT DETECTION
文章链接:https://arxiv.org/abs/2201.10830
代码链接:https://github.com/monster-ghost/MonoDistill

创新点:

  1. 借助创新的蒸馏框架,在推理阶段不引入任何额外成本的情况下,将深度信号引入单目3D检测器,提升检测性能;

网络框架:

MonoDistill 框架图
MonoDistill主要包含了以下三个部分的蒸馏:

  1. 特征空间 Scene-level Distillation(场景层蒸馏):
    - 作用:场景级知识可以通过编码特征的相对关系、保持知识结构和缩小模态差距来帮助单目三维检测器对给定图像建立高层次的理解
    - 将结构高维信息通过Affinity map进行建模和学习,而不是通过特征本身
    - Affinity map(AM)的构造函数(下图), f i f_i fi​和 f j f_j fj​表示第i和第j个特征向量, f i T f j f_i^Tf_j fiT​fj​相乘后得到AM matrix,然后L2正则化了一下
    - A t A^t At代表teacher网络中特征的AM, A s A^s As代表student网络的AM,算了一个L1的蒸馏loss,并进行了归一化,得到第一个场景蒸馏loss: L s f \mathcal{L}_{sf} Lsf​
    - Trick:由于AM的计算和存储复杂度与k成二次幂相关,为了降低开销,作者提出将所有特征分组到几个局部区域,并使用局部区域的特征相似性图(affinity map)来解决开销问题
  2. 特征空间 Object-level distillation(物体层蒸馏):
    - 直接使用特征进行蒸馏,但是特征图存在背景噪声,背景区域占据比重较多但是有效信息量少,这里使用gt_2d_bbox_mask( M o f M_{of} Mof​)抠出前景来消除背景噪声,计算蒸馏loss L o f \mathcal{L}_{of} Lof​的公式如下, F s F_s Fs​, F t F_t Ft​ 分别是student和teacher的特征图, N p o s N_{pos} Npos​是有效特征向量的数量
  3. 预测空间 Object-level distillation(物体层蒸馏):
    - 将teacher的输出作为soft label来监督student,只取前景预测,背景预测多是false-positive,区别前背景则使用bbox的中心点区域(ref: CenterNet),下图:左-将框的中心点作为前景区域,右-基于中心点和框的大小生成2D高斯中心点区域
    - L o r \mathcal{L}_{or} Lor​是蒸馏L1损失, M o r M_{or} Mor​是正负样本mask,N是样本总量
  4. 最后将三部分loss进行一个加权求和,则得到了最终的loss,这里的student网络使用的是MonoDLE, L s r c \mathcal{L}_{src} Lsrc​则是MonoDLE的loss

实验指标:

消融实验:
在这里插入图片描述
Kitti test set Car指标:
在这里插入图片描述

总结

本文作者提出了一种基于单目图像的基于知识蒸馏的三维目标检测方法。基于单目图像的3D 物体探测器通过从 LiDAR-based teacher模型中提取知识,在inference阶段,该模型不需要任何中间深度预测就能检测出三维物体,具有创新性。

标签:loss,ICLR2022,蒸馏,特征,AM,笔记,单目,MonoDistill,mathcal
来源: https://blog.csdn.net/weixin_38210977/article/details/122750707