《DiffusionDet: Diffusion Model for Object Detection》ICCV2023

摘要

本文提出了一种新的框架DiffusionDet,它将目标检测任务表述为从带噪声的边界框到目标边界框的去噪扩散过程(如图一所示)。在训练阶段,目标边界框逐渐扩散到随机分布,模型学习逆转这一加噪过程。在推理阶段,模型以渐进的方式细化一组随机生成的边界框以输出结果。在标准基准测试(包括MS-COCO和LVIS)上的广泛评估表明,DiffusionDet与以前建立的检测器相比,取得了有利的性能。这项工作在目标检测中带来了两个重要的发现:首先,随机边界框虽然与预定义的锚点或学习到的查询差异很大,但也是有效的目标候选;其次,目标检测这一代表性感知任务可以通过生成方式解决。

图一:将目标检测表述为从噪声框到目标框的去噪扩散过程

拟解决的问题:DiffusionDet旨在解决传统目标检测方法中存在的问题,特别是依赖于固定的一组可学习查询(如图二(a)(b)所示)的问题。作者提出了一个问题:是否有一种更简单的方法,甚至不需要可学习查询的代理?DiffusionDet通过直接从一组随机边界框(如图二(c)所示)检测对象来回答这个问题。

图二

创新之处

  1. 去噪扩散过程:DiffusionDet首次将目标检测表述为生成式去噪过程,这是据作者所知首次将扩散模型应用于目标检测。
  2. 动态边界框:DiffusionDet利用随机边界框作为目标候选,解耦了训练和评估阶段,可以在训练时使用N_{train}个随机边界框,而在评估时使用N_{eval}个随机边界框,N_{eval}可以是任意值,不需要等于N_{train}
  3. 渐进式细化:扩散模型通过迭代细化为DiffusionDet带来了好处,可以通过调整去噪采样步骤的数量来提高检测精度或加快推理速度。

方法

2.1 架构

DiffusionDet框架包含图像编码器和目标解码器两部分。图像编码器从输入图像中提取特征表示,目标解码器接收噪声边界框作为输入并预测类别分类和框坐标。在训练阶段,通过向真实边界框添加高斯噪声来构建噪声边界框。在推理阶段,DiffusionDet通过逆转学习到的扩散过程生成边界框,该过程调整噪声先验分布以适应学习到的边界框分布。

图三:在训练期间,通过将高斯噪声添加到真实框来构建噪声框。在推理中,噪声框是从高斯分布中随机采样的。

将整个模型分为两部分,图像编码器和目标解码器,前者只运行一次,从原始输入图像x中提取深度特征表示,后者将该深度特征作为条件,而不是原始图像,逐步细化来自噪声框zt的框预测。

图像编码器。图像编码器以原始图像为输入,提取其高级特征进行以下目标解码器。我们使用卷积神经网络(如ResNet)和基于transformer的模型(如Swin)来实现DiffusionDet。特征金字塔网络用于在之后为ResNet和Swin主干生成多尺度特征图。

目标解码器。从稀疏R-CNN借用,目标解码器将一组提议框作为输入,从图像编码器生成的特征映射中裁剪RoI-特征,并将这些RoI-特征发送到检测头,得到框回归和分类结果。在之后,我们的目标解码器由 6 个级联阶段组成。我们的解码器与稀疏 R-CNN 中的解码器之间的差异是:(1)DiffusionDet 从随机框开始,而 Sparse R-CNN 在推理中使用固定的学习框集; (2) Sparse R-CNN 将提议框的输入对及其对应的提议特征作为输入,而 DiffusionDet 只需要提议框; (3) DiffusionDet 在迭代采样步骤中重用检测器头,参数在不同的步骤中共享,每个步骤通过时间步嵌入指定到扩散过程,而 Sparse R-CNN 在前向传递中仅使用一次目标解码器。

2.2 训练

在训练过程中,我们首先将ground-truth框的扩散过程构建到有噪声的框中,然后训练模型逆转这个过程。

Ground truth boxes填充。首先将一些额外的框填充到原始Ground truth框,以便所有框加起来等于固定数量的N_{train}。探索了几种填充策略,例如重复现有的地面实况框、连接随机框或图像大小框。这些策略的比较发现,连接随机框效果最好。

Box corruption。将高斯噪声添加到填充的Ground truth框框中。

训练损失。目标解码器以N_{train}损坏的框为输入,预测类别分类和框坐标的N_{train}预测。我们在 N_{train}预测集上应用集合预测损失。通过最优传输分配方法选择成本最低的前 k 个预测来为每个基本事实分配多个预测。

2.3 推理 

DiffusionDet的推理过程是一个从噪声到目标盒的去噪采样过程。从高斯分布中抽样的box开始,模型逐步改进其预测。

抽样步骤。在每个采样步骤中,将随机box或上次采样步骤的预测box送入目标解码器,以预测类别分类和box坐标。在得到当前步骤的box数后,采用DDIM估计下一步的盒数。将没有DDIM的预测框发送到下一步也是一种可选的渐进优化策略。

box更新。在每个采样步骤之后,预测框可以大致分为两种类型,期望和不期望的预测。期望的预测包含适当地位于相应对象的框,而不期望的预测则是任意分布的。直接将这些不需要的box发送到下一次采样迭代不会带来好处,因为它们的分布不是由训练中的box损坏构建的。为了使推理更好地与训练一致,我们提出了box更新策略,通过将这些不需要的box替换为随机的box来恢复这些box。具体来说,我们首先过滤掉得分低于特定阈值的不需要的框。然后,我们将剩余的box与从高斯分布中抽样的新随机box连接起来。

Once-for-all。由于随机box的设计,我们可以用任意数量的随机box和采样步数来评估DiffusionDet,而不需要等于训练阶段。相比之下,以前的方法在训练和评估过程中依赖于相同数量的处理box,并且它们的目标解码器在前传过程中只使用一次。

结论

DiffusionDet通过将目标检测视为从噪声边界框到目标边界框的去噪扩散过程,提出了一种新的检测范式。这种噪声到框的管道具有动态框和渐进式细化等吸引人的特性,使得我们可以使用相同的网络参数在不同的推理情况下获得所需的速率-精度权衡,而无需重新训练模型。在标准检测基准上的实验表明,DiffusionDet与建立的检测器相比具有有利的性能。未来的工作可能会将DiffusionDet应用于视频级任务,例如目标跟踪和动作识别,或者将DiffusionDet从封闭世界扩展到开放世界或开放词汇目标检测。

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

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

相关文章

ISAAC SIM踩坑记录--ROS2相机影像发布

其实这个例子官方和大佬NVIDIA Omniverse和Isaac Sim笔记5:Isaac Sim的ROS接口与相机影像、位姿真值发布/保存都已经有详细介绍了,但是都是基于ROS的,现在最新的已经是ROS2,这里把不同的地方简单记录一下。 搭建一个简单的场景&a…

outlook邮箱关闭垃圾邮件——PowerAutomate自动化任务

微软邮箱反垃圾已经很强大了非常敏感,自家的域名的邮件都能给扔到垃圾邮箱里,但还是在本地增加了一层垃圾邮箱功能,然后垃圾邮箱并没有提示,导致错过很多通知,本身并没有提供关闭的功能,但微软有个Microsof…

「Py」Python基础篇 之 Python都可以做哪些自动化?

✨博客主页何曾参静谧的博客📌文章专栏「Py」Python程序设计📚全部专栏「Win」Windows程序设计「IDE」集成开发环境「UG/NX」BlockUI集合「C/C」C/C程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「UG/NX」NX定…

candence: 原理图生成网表时报错:Duplicate Pin name “xxx“

原理图生成网表时报错:Duplicate Pin name “xxx” 这个错误的意思是,原理图中管脚命名重复 解决这个问题的方法: 1、绘制元件的时候不要用相同的管脚名,比如GND等的,就稍加个后缀做区分2、就是将管脚属性修改为 &qu…

Diffusion Policy——斯坦福机器人UMI所用的扩散策略:从原理到其编码实现(含Diff-Control、ControlNet详解)

前言 本文一开始是属于此文《UMI——斯坦福刷盘机器人:从手持夹持器到动作预测Diffusion Policy(含代码解读)》的第三部分,考虑后Diffusion Policy的重要性很高,加之后续还有一系列基于其的改进工作 故独立成本文,且写的过程中 …

计算机网络学习笔记-3.2介质访问控制

文章目录 介质访问控制静态划分信道 动态分配信道轮询访问介质访问控制随机访问介质访问控制ALOHA协议简介ALOHA协议的工作原理 介质访问控制 介质访问控制(MAC,Medium Access Control),质访问控制的目的是确保多个设备能够高效、…

GitCode光引计划有奖征文大赛

一、活动介绍 GitCode平台汇聚了众多杰出的G-Star项目,它们犹如璀璨星辰,用各自的故事和成就,为后来者照亮前行的道路。我们诚邀广大开发者、项目维护者及爱好者,共同撰写并分享项目在GitCode平台上托管的体验,挖掘平…

深入理解接口测试:实用指南与最佳实践5.0(三)

✨博客主页: https://blog.csdn.net/m0_63815035?typeblog 💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 📢博客专栏: https://blog.csdn.net/m0_63815035/cat…

使用electron-egg把vue项目在linux Ubuntu环境下打包并安装运行

electron-egg一个入门简单、跨平台、企业级桌面软件开发框架https://www.kaka996.com/electron-egg 跳转地址 1,使用 git下载代码到本地,如果没有git需要进行安装 # gitee git clone https://gitee.com/dromara/electron-egg.git # github git clone https://github.com/dro…

DAY112代码审计PHP开发框架POP链利用Yii反序列化POP利用链

一、pop1链的跟踪 1、路由关系 2、漏洞触发口unserialize(base64_decode($data)); 2、__destruct(),魔术法方法调用close函数方法 3、未找到利用链,尝试__call魔术方法 4、逆推找call_user_func 函数 第一部分 namespace yii\db; class BatchQueryResu…

Maven 构建项目

Maven 是一个项目管理和构建工具,主要用于 Java 项目。它简化了项目的构建、依赖管理、报告生成、发布等一系列工作。 构建自动化:Maven 提供了一套标准化的构建生命周期,包括编译、测试、打包、部署等步骤,通过简单的命令就可以执…

任务调度中心-XXL-JOB使用详解

目录 详解 调度中心 执行器 原理 快速入门 源码仓库地址 1.初始化数据库 2.配置调度中心 1.解压源码 2.需改配置文件 3.启动调度中心 3.配置执行器 1.引入pom依赖 2.修改配置文件 3.执行器组件配置 4.部署执行器项目 4.开发第一个任务 BEAN模式(类…

ROM修改进阶教程------安卓14 安卓15去除app签名验证的几种操作步骤 详细图文解析

在安卓14 安卓15的固件中。如果修改了系统级别的app。那么就会触发安卓14 15的应用签名验证。要么会导致修改的固件会进不去系统,或者进入系统有bug。博文将从几方面来解析去除安卓14 15应用签名验证的几种方法。 💝💝💝通过博文了解: 1💝💝💝-----安卓14去除…

批量规范化与ResNet-paddle

批量规范化与ResNet——paddle部分 本文部分为paddle框架以及部分理论分析,torch框架对应代码可见批量规范化与ResNet import paddle print("paddle version:",paddle.__version__)paddle version: 2.6.1批量规范化 批量规范化(Batch Norma…

从零开始快速构建Vue3项目

一、技术选型 组件大类 具体插件 vue3插件 相关插件开发文档 基础架构搭建 初始项目搭建、打包构件工具:vite开始 | Vite路由管理及菜单权限封装vue-router介绍 | Vue Router状态管理Pinia介绍 | Pinia 中文文档API请求及异常封装axiosUI框架 element-uihttps…

74HC245

74HC245:典型的CMOS型缓冲门电路 在这里用于增加电压

BFS 算法专题(三):BFS 解决边权为 1 的最短路问题

目录 1. 迷宫中离入口最近的出口 1.1 算法原理 1.2 算法代码 2. 最小基因变化 ★★★ 2.1 算法原理 2.2 算法代码 3. 单词接龙 3.1 算法原理 3.2 算法代码 4. 为高尔夫比赛砍树 (hard) 4.1 算法原理 4.2 算法代码 1. 迷宫中离入口最近的出口 . - 力扣(…

「数据要素」行业简报|2024.11.上刊

纵观数据要素行业动态,洞察行业风向,把握行业脉搏! 一、政策发布 1、《山东省公共数据资源登记管理工作规范(试行)》公开征求意见 11月7日,为认真贯彻落实《中共中央办公厅 国务院办公厅关于加快公共数据资源开发利用的意见》《…

有什么好用的 WebSocket 调试工具吗?

在开发和测试 WebSocket 应用程序时,确保客户端能够正确地与服务器建立连接、发送和接收消息是非常重要的。 市面上有许多通用的 API 测试工具,它们大多专注于 HTTP 请求,而对于 WebSocket 的支持则显得较为有限。这种局限性使得开发者在寻找…

MQTT协议解析 : 物联网领域的最佳选择

1. MQTT协议概述 1.1 MQTT协议是什么 MQTT : Message Queuing Telemetry Transport 模式 : 发布 / 订阅主题优点 : 代码量小、低带宽、实时可靠应用 : 物联网、小型设备、移动应用MQTT 常用端口 : 1883 MQTT是一个网络协议,和HTTP类似,因为轻量简单&…