DiffusionDet: Diffusion Model for Object Detection

news2025/7/22 16:25:51

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,即从随即框中逐步恢复出目标框。

Method

Architecture

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

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

Training

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

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

 Inference

  • 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;

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

 

Benchmarking

 Ablation Study

  • 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附近。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/35594.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络编程/计算机网络

目录 一、网络基本概念 1.网络 2.互联网 3.ip地址 4.MAC地址 5.端口号Port 6.网络协议 二.网络分层模型 1.数据链路层 2.网络层 3.传输层 4.应用层 三、网络应用程序通信流程 四、socket 网络编程 1.主机字节序列和网络字节序列 2.套接字地址结构 &#xff08…

离群点检测和新颖性检测

引言 在异常检测领域中&#xff0c;我们常常需要决定新观测点是否属于与现有观测点相同的分布&#xff0c; &#xff08;则称它们为inlier),或被认为是不同的(outlier). 在这里&#xff0c;必须做出两个重要的区别&#xff1a; 异常值检测&#xff1a;outlier detection 训练…

List接口与实现类

目录 一、List接口 1.特点&#xff1a; 2.方法&#xff1a; 二、List接口的使用 三、List实现类 1.ArrayList&#xff08;重点&#xff09; &#xff08;1&#xff09;特点 &#xff08;2&#xff09;示例 &#xff08;3&#xff09;源码分析 2.Vector &#xff08;1…

Python列表推导式——List

目录 遍历列表 range函数 列表推导式(★★★★★)五星技能点 五万次【列表推导式】与【for】遍历计算消耗时间对照表&#xff1a; 列表推导式逻辑判断 遍历列表 通过for in循环来遍历集合列表 range函数 我们基础range函数是参数范围是range(start,stop)&#xff0c;在下…

利用天翎知识文档+群晖NAS搭建企业知识库,享用智能检索

编者按&#xff1a;检索是知识文档管理中常见切十分重要的功能&#xff0c;搭建企业知识库必不可少。本文分析了智能检索的特点&#xff0c;并介绍了其在知识文档管理系统中的实现。 关键词&#xff1a;智能检索&#xff0c;移动端&#xff0c;群晖NAS 知识管理中的检索功能 …

基于Java+SpringBoot+Mybaties+Vue 在线问卷调查系统设计与实现

一.项目介绍 本项目 可支持注册、登录 创建问卷、设置问卷内容&#xff08;支持单选、多选、问答题&#xff09; 分享问卷链接、分析问卷 查看问卷库、以及填写问卷内容 等功能 该项目采用 Springboot Mybaties Vue element UI 框架实现 二.环境需要 1.运行环境&#xff1…

教育科技创新即将崛起

随着“双减”政策的不断落实&#xff0c;真正具有创新精神和懂得教育科技的人&#xff0c;他们所创造的新模式、新生态即将崛起&#xff0c;属于教育科技和创新的春天即将到来。 那么&#xff0c;教育科技化和创新在不同的教育场景有什么体现呢&#xff1f; 我们先来看看目前…

【雷达通信】雷达探测项目仿真(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客 &#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜…

OCR-paddleocr

PaddleOCR 分为 Detection&#xff08;文本检测&#xff09;、Direction classifier&#xff08;方向分类器&#xff09;和 Recognition&#xff08;文本识别&#xff09;三部分&#xff0c;因此需要三个模型。一、介绍 PaddleOCR是一款超轻量、中英文识别模型目标是打造丰富、…

【软件测试】测试人填坑?测试工作中的坑成长经历,填着填着就成了神......

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 小刘&#xff1a; 之…

深度强化学习DRL现存问题和训练指南(D3QN(Dueling Double DQN))

目录 强化学习 问题 好用的算法标准 表现好 减小学习曲线的波动 On-Policy和off-Policy区别 学习方式 采样数据利用 学习本质 优缺点 DQN 创新点 优点 缺点 MDP和POMDP 结果图 DQN DDQN Dueling DQN 参数 iteration episode epoch Batch_Size Experime…

全新电商版本答案——全民拼购,越拼越得,白嫖产品不是梦

根据国家市场监督管理总局自2020年12月1日起发布的《规范促销暂行规定》第十二条的规定&#xff0c;为了推广自己的平台商城或商品&#xff0c;获取流量&#xff0c;采用新购买模式运营的平台通过附带给未被选中的参与者一定的奖金或者其他利益&#xff0c;属于有奖销售。 在此…

RS编码译码误码率性能matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 纠错编码技术在卫星通信、移动通信及数字存储等领域已获得了广泛的应用。RS码作为其中最重要的码类之一,具有优良的纠随机错误和突发错误的能力,被空间数据系统咨询委员会(CCSDS)作为一种…

记录安装Cytoscape的过程

一、安装前的准备工作 1、先java 看了大佬们的安装教程&#xff1a; 看到说先要安装对应的Java才能下载相应的cytoscape&#xff0c;因cytoscape是基于java的软件。 cytoscape安装教程1 cytoscape安装教程2 然后&#xff0c;自查了自己电脑上的Java版本,应该为jdk 11&#x…

【js】【爬虫】fetch + json-server 快速搭建爬虫服务器环境及数据后续处理(突破session缓存大小限制)

文章目录导读需求开发环境json-server使用安装json-server创建数据文件db.json运行服务器修改默认端口json-server提供的线上服务&#xff08;不推荐&#xff09;fetch上传数据到json-server服务器通过fetch新增数据报错Error: Insert failed, duplicate id数据后续处理打开导入…

ShellBrowser Delphi,Delphi组件功能和工具

ShellBrowser Delphi,Delphi组件功能和工具 ShellBrowser基本上被描述为集合的一部分&#xff0c;它能够为用户和开发人员提供Delphi的程序员&#xff0c;以便轻松灵活地访问windows shell性能。ShellBrowserComponents Delphi的使用基本上是能够模拟windows资源管理器的变体。…

阅读源码时:idea中如何使用todo标记、活动模板 (史上最全)

接下来&#xff0c; 尼恩要带大家 完成一个 超级牛逼的 大厂offer 收割机项目—— 100Wqps 三级组件 实操&#xff0c; 实操中&#xff0c;用到 caffeine 并且&#xff0c;尼恩要带大家 穿透式 、起底式的 学习 caffeine 的源码和架构&#xff0c; caffeine 的源码 特别复杂…

Linux之service服务-实现程序脚本开机自启

一、什么是.service文件&#xff1f; Linux中.service文件是某项服务对应的配置文件&#xff0c;可用于systemd管理和控制的服务的设置。 .service 文件通常包含3个模块&#xff1a; [Unit] 控制单元&#xff0c;表示启动顺序和依赖关系。[Service] 服务&#xff0c;表示…

LeetCode HOT 100 —— 23.合并K个升序链表

题目 给你一个链表数组&#xff0c;每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中&#xff0c;返回合并后的链表。 思路 在做本题之前&#xff0c;先考虑一下&#xff0c;如何合并两个有序链表&#xff0c;见 21.合并两个有序链表 最直接的思路就是&am…

聊跨境:一年增长60%!人人都说跨境电商难做,但红利仍在(Starday)

随着经济全球化的发展&#xff0c;互联网的普及和跨境运输网络的日益发达&#xff0c;世界各国之间的贸易往来越来越频繁&#xff0c;跨境电商已然成为时代的主题。 近年来国家出口跨境电商利好政策的连续出台&#xff0c;加上《电商法》的保驾护航以及跨境电商从业者的积极推…