DiffusionDet:Diffusion Model for Object Detection

2023-05-16

Diffusion Model for Object Detection
一种用于目标检测的扩散模型

  • Motivation
    1、如何使用一种更简单的方法代替可查询的object queries
    2、Bounding box的生成方式过去是三种,第一种为sliding windows、第二种anchor box、第三种object queries,这里其实还有一种当时非常非常火的anchor free
    3、本文提出基于生成的的检测方式,主要在目标检测方面的两大发现

  • Innovation
    1、将目标检测表示为从噪声框到对象框的去噪扩散过程。
    2、发现一随机框相比预设锚点、目标检索的方式不同但同样能实现从候选区域找到目标。
    3、发现二目标检测的特征感知提取任务可以通过生成的方式解决。
    4、图1中C的表述为目标检测表示为从噪声框到目标框的去噪扩散逆向过程

  • Contribution
    1、首次将扩散模型用于目标检测,将目标检测过程定义为一个去噪过程
    2、从噪声框到检测框通过动态框的解耦训练和评估阶段及渐进式细化
    3、在两个数据集上的实验证明了这种检测器的有效性

  • Methodology
    方差时间表控制获取噪声框的过程,通过生成技术从随机噪声框中国预测真实框
    将噪声框从骨干编码器输出的特征图中裁剪感兴趣的区域ROI特征
    将ROI特征发送到解码器预测出没有包含噪声的真实值,从而实现从随机框中预测出真实框
    1、目标检测的几种常见范式
    在这里插入图片描述
    2、扩散模型的去噪方法应用
    3、感知任务的扩散模型:参考采用像素比特扩散模型对图像和视频的全景分割,图像通过编码器进行对输入的数据特征提取表示,解码器将噪声框作为输入后预测分类和框坐标。训练过程种,噪声框是通过向真实值添加高斯噪声来构建的。推理过程种,噪声框是从高斯分布种随机采样得到的。
    4、本文的实现方式:x表示输入图像向量;b表示边框矩阵,c表示类别标签矩阵。
    4.1、通过马尔可夫链逐渐向样本数据添加噪音来定向设计扩散过程的前向传播方法,训练过程通过L2范数学习从目标噪音目标到真实目标过程(这个思路本人认为是非常经典的创新),推理阶段是从噪声图像中重建目标图像数据样本思路,由于扩散迭代所以网络结果如下。
    4.2、网络结构:编码器运行从原始输入图像提取特征,解码器逐步细化来自噪声框的真实框得到结果。
    4.3、图像编码器:从原始输入图像提取高级特征,这一部分基于ResNet、Swin的特征金字塔实现。
    4.4、图像解码器:从一组建议噪声框作为输入选举ROI,并对这些ROI借助Sparse R-CNN的6个级联对应到真实框中。
    4.5、训练过程:先从真实框到噪声框扩散生成,然后训练过程反转将额外的框填充到真实的框。
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/54113e7a56bb4b92b237c307a0afc99e.png
    在这里插入图片描述
    4.6推理过程:从噪声框中寻找目标框的采样实现是通过高斯分布采样框开始逐步预测,第一步是解码器预测分类和坐标,第二步是采用DDIM进一步预测坐标,bbox通过随机框过滤恢复框,然后通过高斯分布采用把新随机框预测。

  • Result
    1、在MS-COCO上和LVIS上验证了它的通用性(once for all)
    在这里插入图片描述

  • Application
    AP表现最佳
    对比了Faster R-CNN、Cascade R-CNN、Sparse R-CNN,未来在多目标跟踪、关键点动作识别。
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    相关评论:https://www.zhihu.com/question/567414823/answer/2767617257

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DiffusionDet:Diffusion Model for Object Detection 的相关文章

  • 如何获取Python对象父级?

    所以 我试图获取自定义对象 内部 的对象 这是一个例子 假设 o 是一个对象 无论是什么类型 它都可以存储变量 o Object class Test def init self self parent o This is where I
  • 如何从另一个 Excel 实例引用工作簿

    我相信我的问题相当简单 我有一个工作簿 我正在使用它从另一个软件 SAP 获取一些数据 当我从软件导出数据时 它会自动打开一个 xlsx 文件 然后我需要做的是从该文件复制一些数据 粘贴到我的原始工作簿上 然后关闭该文件 我的代码中给我带来
  • 具有模型目录和AUTH_USER_MODEL

    I have myApp models profiles py代替myApp models py 对相关模型进行分组 你怎么设置AUTH USER MODEL在这种情况下 因为 auth 只接受 foo bar 模式 app label m
  • 如何自动为 Swift 类创建初始化程序?

    UPDATE 使用结构而不是类 struct 在很多方面都更好 它有自己的初始化器 这是我的模型课 是否有可能创建init自动方法 每次我都必须将所有变量一一初始化 这会花费很多时间 class Profile var id String
  • 递归读取任何 java 对象并将复杂类型提取到哈希映射中

    我需要编写一个实用程序 它接受空白 HashMap 和任何对象作为参数并返回 HashMap public HashMap returnMap HashMap map Object parseThisObject logic to stri
  • 在 Objective-C 中获取对象的属性数组

    Objective C 中是否可以获取对象所有属性的数组 基本上 我想做的是这样的 void save NSArray propertyArray self propertyNames for NSString propertyName i
  • 使用循环将对象添加到列表(python)

    我正在尝试使用 while 循环将对象添加到列表中 基本上这就是我想做的 class x pass choice raw input pick what you want to do while choice 0 if choice 1 E
  • Laravel Eloquent ORM 返回 stdClass 而不是实际模型

    我正在做 mymodel MyModel where url domain gt first 这返回了一个 MyModel 对象 现在 不知何故 它返回了一个 stdClass 发生了什么 laravel 有更新吗 我改变了什么吗 Than
  • 为什么对于整数键,“Map”操作比 JavaScript (v8) 中的“Object”慢得多?

    我很高兴使用Map对于在我的 JavaScript 代码库中随处访问的索引 但我刚刚偶然发现了这个基准 https stackoverflow com a 54385459 365104 https stackoverflow com a
  • javascript:检查对象是否具有特定元素或属性的最佳方法?

    假设我有这个 var person name John Doe email email protected cdn cgi l email protection 该对象只有两个元素 称为name and email 有些人还有一个要素age
  • 使用变量“name”不适用于 JS 对象

    该行为可以在这个小片段中看到 将其作为全局脚本执行 var name name FirstName Tom alert name FirstName 警报产生undefined在 Chrome 中 但在 IE 和 Firefox 中工作 当
  • C#中如何将委托转换为对象?

    我正在使用反射类来调用其他 dll 上的一些方法 方法的参数之一是委托类型 我想通过使用反射来调用这个方法 所以我需要将函数参数作为对象数组传递 但我找不到任何关于 如何将委托转换为对象 提前致谢 委托是一个对象 只需像平常一样创建预期的委
  • PHP foreach 数组与 stdClass 对象

    我需要帮助尝试获取数组和 stdClass 对象内的值 仅供参考 我正在使用 foursquare API 我有这样的事情 fsq groups venues gt response gt groups echo pre print r f
  • 将文本文件扫描到对象数组中

    我有一个逗号分隔的文本文件 其信 息格式如下 名字 姓氏 餐1 餐2 餐3 餐4 每个新学生都在新的一行 我有以下学生对象 public class Student private String first null private Str
  • Prism 应用程序中的数据模型位于何处?

    我无法将数据模型放置在 Prism 应用程序中的何处 大多数 如果不是全部 数据将来自网络服务 并且每个模块的网络服务都是唯一的 不幸的是 有些对象需要共享 例如人员 用户对象 我真的很困惑是否将这些服务直接添加到模块中 以便每个服务真正独
  • 如何在 PHP 中对数组和数据进行排序?

    这个问题旨在作为有关 PHP 中数组排序问题的参考 人们很容易认为您的特定案例是独特的并且值得提出新问题 但大多数实际上只是此页面上的解决方案之一的微小变化 如果您的问题因与此问题重复而被关闭 请仅在您能解释为什么它与以下所有问题显着不同的
  • 将 Javascript 对象的属性从 string 更改为 int

    我有一个对象数组 每个对象具有三个属性 年份 总计 人均 例子 0 Object per capita 125 8 total 1007 2 year 2009 这些属性是字符串 我想创建一个循环来遍历数组并将它们转换为 int 我尝试了以
  • WPF 数据绑定到复合类模式?

    我是第一次尝试 WPF 并且正在努力解决如何将控件绑定到使用其他对象的组合构建的类 例如 如果我有一个由两个单独的类组成的类 Comp 为了清楚起见 请注意省略的各种元素 class One int first int second cla
  • 如何从 appsettings.json 文件中的对象数组读取值

    我的 appsettings json 文件 StudentBirthdays Anne 01 11 2000 Peter 29 07 2001 Jane 15 10 2001 John Not Mentioned 我有一个单独的配置类 p
  • 如何在 javascript 中实现映射或排序集

    Javascript 有使用数字索引的数组 john Bob Joe 以及可以像关联数组或 映射 一样使用的对象 允许对象值使用字符串键 john 28 bob 34 joe 4 在 PHP 中 两者都很容易A 按值排序 同时保留密钥 和B

随机推荐