DiffusionDet: Diffusion Model for Object Detection

paper: https://arxiv.org/abs/2211.09788

code:https://github.com/ShoufaChen/DiffusionDet
 

  • 探索了扩散模型在非生成类任务(目标检测)中的应用。相较于传统Coarse-to-fine方法,基于扩散思路训练有两个特点:1)随机性:结果具有一定的随机性,可用于Ensemble;2)迭代次数:不受训练时迭代次数限制。
  • 比较遗憾的是提升较为有限。对第一个特性:300 bboxes -> 4000 bboxes,提升1.1 AP;对第二个特性:1 step -> 9 steps,提升1.2 AP。
  • 比较惊喜的是增加bboxes数量,对推理速度影响不大。

目录

Motivation

Method

Architecture

Training

 Inference

Experiment

Setting

Main Properties

Benchmarking

 Ablation Study


Motivation

  • 对于目标检测,如何设计候选目标至关重要。现有方法包括:1)Empirical object priors,特点是候选目标的形状和数量是固定的,例如:sliding windows,region proposals,anchors等;2)Learnable object quires,特点是候选目标是需要学习的,且数量固定,例如:DETR。
  • 本文考虑能否进一步简化候选目标,例如不需要Learnable quires。进一步,本文提出noise-to-box paradigm,即从随即框中逐步恢复出目标框。

DiffusionDet: Diffusion Model for Object Detection_第1张图片

Method

Architecture

由于去噪过程存在多步采样,为了节省推理时间,将模型解耦为Image Encoder和Detection Decoder。

DiffusionDet: Diffusion Model for Object Detection_第2张图片

  • Image Encoder. 目标是提取图片特征,结构包括:ResNet + FPN / Swin + FPN。
  • Detection Decoder. 目标是基于随机框得到的RoI特征,计算目标框和分类结果,结构式类似DETR的decoder。RoI特征的提取参考了Faster R-CNN系列,通过随即框大小,选择对应FPN层提取特征。

Training

DiffusionDet: Diffusion Model for Object Detection_第3张图片

  • Ground truth boxes padding. 目标是将GT框数量填充到固定数量,例如100/300等。最佳策略是填充基于高斯分布随机生成的框;
  • Box Corruption. 目标是基于GT框和随机扩散时间t生成噪声框。其中为了增大信噪比,会先放大GT框的值。然后基于扩散规则加噪:

  • Training Losses. 和DETR类似的匹配损失:set prediction loss。

 Inference

DiffusionDet: Diffusion Model for Object Detection_第4张图片

  • Sampling step. 目标是基于DDIM的采样规则,更新结果。DDIM相较于DDPM:1)新增参数σ控制去噪过程。在特殊情况下,DDIM可以等价于DDPM,同时,当σ=0时,扩散结果和初始高斯噪声一一对应。2)加速采样:采样步数可以是完整步数的子集。DiffusionDet基于DDIM进行采样,使得DiffusionDet的预测结果由初始随即框决定,同时推理时,可使用任意采样步数。
  • Box Renewal. 目标是去除与训练数据分布不一致的预测结果。具体来说,会将低于阈值的预测结果替换为基于高斯分布的随机框。
  • Once-for-all. DiffusionDet的特点在于仅需一次训练,模型即适用于多种测试设定:1)任意数量的预测框;2)任意数量的采样步数。

Experiment

Setting

  • Datasets. 1)MS-COCO:118K训练数据,5K测试数据,80类目标;2)LVIS v1.0:100K训练数据,20K测试数据,1203类目标。
  • Inference details. MS-COCO选择分数前100的预测;LVIS选择分数前300的预测;后处理:集成每个采样步的结果,经过NMS处理后作为最终输出。

Main Properties

测试once training for all inference cases的两个应用

  • Dynamic boxes. 增加测试框数量,可以提高检测效果;对于DETR:1)当N_eval < N_train,选择前N_eval个作为输出;2)当N_eval > N_train,其余结果来自随机queries;

DiffusionDet: Diffusion Model for Object Detection_第5张图片

  • Progressive refinement. 增加采样步数,可以提高检测效果。

DiffusionDet: Diffusion Model for Object Detection_第6张图片

 

Benchmarking

DiffusionDet: Diffusion Model for Object Detection_第7张图片DiffusionDet: Diffusion Model for Object Detection_第8张图片

 Ablation Study

DiffusionDet: Diffusion Model for Object Detection_第9张图片

  • 1. Signal scale:考虑到框数据维度低,远小于image-to-image任务,因此需要增大信噪比;
  • 2. GT boxes padding:基于高斯分布的随机框效果最佳;
  • 3. Sampling strategy:DDIM和box renewal效果近似,同时使用效果最佳;
  • 4. Matching between:N_eval = N_train时效果最佳;
  • 5. Accuracy vs. speed:框数量从100增加到300,FPS仅减少了0.3;但是step从1增加到4,FPS减少了18.9;
  • 6. Random seed:训练了5个模型,并基于10组随机种子测试。实验发现:1)随机种子对测试结果影响较小,震荡范围在0.1-0.3之间;2)随机种子对模型训练结果影响小,均值在45.0附近。

DiffusionDet: Diffusion Model for Object Detection_第10张图片

 

你可能感兴趣的:(目标检测,人工智能,计算机视觉)