位置: IT常识 - 正文

目标检测DiffusionDet: Diffusion Model for Object Detection(目标检测选SSD还是YOLO)

编辑:rootadmin
目标检测DiffusionDet: Diffusion Model for Object Detection

推荐整理分享目标检测DiffusionDet: Diffusion Model for Object Detection(目标检测选SSD还是YOLO),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:目标检测选SSD还是YOLO,目标检测yolo算法,目标检测算法,目标检测算法,目标检测算法,目标检测数据集,目标检测map达到多少比较好,目标检测选SSD还是YOLO,内容如对您有帮助,希望把文章链接给更多的朋友!

先贴一张流程图:

github:GitHub - ShoufaChen/DiffusionDet: PyTorch implementation of DiffusionDet (https://arxiv.org/abs/2211.09788)

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

Abstract: 本文提出了一个新的框架DiffusionDet,将目标检测问题构建为一个从带噪框到目标框的降噪扩散过程。在训练阶段,目标框从GT框扩散到随机分布,模型学习如何逆转这个噪声过程;在推理阶段,模型将一系列随机的框逐步改善为输出结果。在MS-COCO和LVIS数据集上,DiffusionDet和已有的目标检测器相比具有较好的性能。本文在目标检测方面带来了两个重要发现:1. 随机的框虽然和预设的anchors或者学习好的queries有很大的不同,但也是有效的目标候选者;2. 目标检测这种代表性的感知任务,也可以通过生成方式解决。

1. Introduction

目标检测的背景:目标检测旨在预测一组边界框和目标的相关类别标签。做为一项基础的视觉识别任务,他已经称为许多相关任务的基石,如实例分隔,位姿估计,行为识别,目标跟踪,视觉关系检测等。

现有的目标检测方法:近年来目标检测方法随着目标候选的发展而不断改进,从经验对象先验(empirical object priors)到可学习目标查询(learnable oject queries)。具体地,大多数检测器通过对基于经验设计的目标候选定义一个代理回归模块(surrogate reegression)和一个分类模块来解决检测问题,比如滑动窗口(sliding windows),区域建议(region proposals),锚框(anchor boxes),和参考点(reference points)等。最近,DETR提出可学习的目标查询(learnable oject queries)来避免很多手动设计的网络模块并提出了一个端到端的检测pipeline,在基于查询的检测范式上吸引了大量的关注。

已有方法的缺点和本文动机:尽管以上这些检测方法有着简单且有效的设计,但他们还是依赖于a fixed set of learnable queries. 因此,本文提出一个问题:是否存在一个简单的方法不需要the surrogate of learnable queries?

本文核心思想:本文设计了一个新颖的检测框架,从一系列随机框中直接检测目标。随机的目标框不包含任何可学习的参数,即在训练阶段不用优化它,本文期盼渐进地改善这些框的位置和尺寸直到他们很好地覆盖了目标。这种noise-to-box的方法不需要任何启发式的目标先验或者可学习的queries,进一步简化了目标候选并推动目标检测的发展。如下图所示,noise-to-box的思想在降噪扩散模型中类似于noise-to-image的过程,noise-to-image是一类基于概率的模型通过可学习的降噪模型来逐渐移除噪声从而生成图像。扩散模型已经在许多生成任务上取得了巨大的进展,并开始在感知任务上探索。然而,扩散模型还从未在目标检测任务上成功应用。

DiffusionDet流程:本文提出DiffusionDet, 将目标检测任务看作是目标框在位置(center coordinates)和尺寸(widths and heights)上的生成任务。在训练阶段:向GT框添加由a variance schedule控制的高斯噪声;然后这些带噪的框在backbone encoder得到的特征图上裁剪RoI区域的特征,继而进行训练以预测无噪的GT框。通过该训练阶段,DiffusionDet能从任意的框中预测到GT框。在推理阶段,DiffusionDet通过逆转扩散过程生成边界框,其调整了噪声先验分布到边界框的分布上。

DiffusionDet的两大优势:DiffusionDet的noise-to-box的流程具有once-for-all的优势:可以仅训练网络一次,用相同的网络参数在推理阶段的各种各样的设置。

Dynamic boxs: 将随机框做为目标候选,DiffusionDet可以用N_{train}任意的框训练同时用N_{eval}任意的框测试,这里N_{eval}是任意的不需要等于N_{train}。Progressive refinement: 扩散模型帮助DiffusionDet迭代地改善,可以挑战降噪采样的步数来提升检测精度或者加速推理。因此,DiffusionDet非常灵活可以是应用各类对精度和速度需求不同的检测场景。

实验结果:在MS-COCO数据集上对DiffusionDet进行测试,ResNet-50做为backbone, DiffusionDet使用单采样步骤实现了45.5的AP,比Faster-RCNN(40.2 AP)和DETR(42.0 AP), Sparse R-CNN (45.0 AP)明显更好。此外,增加DiffusionDet的采样步数可将其AP值增加至46.2。现存的其他技术就没有这样的改善属性而且以迭代地方式评价时性能会显著下降。此外,在LVIS上进行了测试,DiffusionDet对长尾数据集的性能也很好,在Swin-Base backbone下实现了42.1的AP。

本文的贡献如下:

将目标检测构建为生成式降噪过程,这是第一个应用扩散模型到目标检测任务的研究;这种noise-to-box的检测范式有一些非常好的特性,比如对于动态框和渐进改善的过程解耦了训练和评价阶段;在MS-COCO和LVIS数据集上进行了实现,效果良好。2. Related Work

Object detection. 大部分现在的目标检测方法在经验目标先验(empirical object priors, 如proposals, anchors, points)上执行框回归和类别分类。近期,Carion提出DETR通过一些列固定的learnable queries来检测目标。自此,基于query的检测范式吸引了大量地关注。本文中通过DiffusionDet推动目标检测范式的发展,DiffusionDet和其他类型的检测方法的对比如下图。

目标检测DiffusionDet: Diffusion Model for Object Detection(目标检测选SSD还是YOLO)

 Diffusion model. 做为一类深度生成模型,扩散模型从具有随机分布的样本开始并通过逐渐降噪过程恢复数据。扩散模型最近在计算机视觉、自然语言处理、语音处理、扩学科领域已经实现了显著的结果。

Diffusion model for perception tasks. 扩散模型在图像生成已经展示了巨大的成功,启用于鉴别式任务的潜力还未被探索。一些之前的工作试图将扩散模型用于图像分割任务,比如,Chen使用Bit扩散模型用于图像和视频的全景分隔。尽管这个想法很有趣,但是还没有研究成功地将生成式扩散模型用于目标检测中,其进展明显滞后于分割任务。作者猜想可能是因为分分割任务以image-to-image的形式处理,其在概念上更接近图像生成任务,而目标检测任务是一个集合预测问题,他需要分配目标候选到GT目标上。

3. Approach3.1 Preliminaries

Diffusion model. 扩散模型受到非平衡态热力学启发,是一类likelihood-based模型。这些模型以马尔科夫链定义了扩散前馈过程,向样本数据中逐渐添加噪声。前馈的加噪过程,训练过程,推理过程展示如下:

3.2 Architecture

因为扩散模型以迭代的方式重建样本,它需要在推理阶段运行网络多次。但是,在每个迭代步骤中直接将网络应用于原始图像在计算上是难以处理的。因此,本文将这个模型分为了2个部分:image encoder和detection decoder。前者只运行一次用于从原始图像中提取深度特征,后者将深度特征做为条件,渐进地改进目标框预测。

Image encoder. 用ResNet, Swin, Feature Pyramid network

Detection decoder. 借鉴Sparse R-CNN, 检测解码部分将一系列建议框裁剪的ROI特征送入检测头中获得框的回归和分类结果,本文的检测解码部分包括了6个级联阶段。本文和Sparse R-CNN的区别在于:

DiffusionNetSparse R-CNN在推理阶段,从多个随机框开始在推理阶段,用了一个learned boxes的固定集合只需要建议框以建议框和对应的特征为输入对以迭代采样的方式重利用检测头只在前馈阶段使用检测编码部分一次3.3 Training

训练过程的伪代码如下图所示,即加噪并训练模型来恢复数据

3.4 Inference

推理过程的伪代码如下图所示,即降噪得到目标框

Sampling step. 在每个采样步骤中,随机框或者上一次采样的估计框被送入检测解码器中来预测目标类别和框的坐标。在获得当前步骤的框时,DDIM用于估计下一步的框。此外,不使用DDIM也行,但性能会大大下降。

Box renewal. 在每次采样后,预测框可被粗糙地分为2类:desired 和undesired预测。desired预测包含了正确定位对应物体的框,undesired预测是随机分布的。直接将undesired预测送入下一次采样不会带来任何好处,因为他们的分布在训练过程中没有被构建。为了使得推理过程和训练过程更对应,本文提出box renewal通过用随机框替代他们来拯救这些undesired预测。具体地,先通过阈值过滤出undesired预测,然后通过新的随机框和剩下的框级联。

4. Experiments4.1 Implementation Details

ResNet和Swin backbone分别用ImageNet-1K和Image-22K预训练;

用Xavier初始化检测解码部分;

AdamW优化器, 初始lr=2.5x10^-5, weight decay=10^-4;

8 GPUs上训练,mini-batch size为16;

4.2 Main Properties

4.3 Benchmarking on Detection Datasets

 

4.4 Ablation Study

5. Conclusion and Future Work
本文链接地址:https://www.jiuchutong.com/zhishi/299133.html 转载请保留说明!

上一篇:Windows11去掉桌面快捷方式箭头 Windows11怎么去掉快捷方式箭头(win11永久关闭桌面弹出广告)

下一篇:老师,不干了,被偷家了,SAM分割任何事物模型,0样本分割了我研究一个月的数据(老师不干了可以从事什么行业)

  • 世人对袁隆平的评价句子(名人对袁隆平评价的句子)(世人对袁隆平的评价语)

    世人对袁隆平的评价句子(名人对袁隆平评价的句子)(世人对袁隆平的评价语)

  • 支付宝核酸采样码在哪里查询(支付宝核酸采样码在哪里找)

    支付宝核酸采样码在哪里查询(支付宝核酸采样码在哪里找)

  • 如何在excel中加入一个文件(如何在excel中加入选择项)

    如何在excel中加入一个文件(如何在excel中加入选择项)

  • 微信一进入就卡死怎么办(打开微信老是卡)

    微信一进入就卡死怎么办(打开微信老是卡)

  • icloud已满删除的照片还有吗(icloud满了删除的照片怎么恢复)

    icloud已满删除的照片还有吗(icloud满了删除的照片怎么恢复)

  • 华为710f处理器什么水平(华为710f处理器相当于骁龙什么处理器)

    华为710f处理器什么水平(华为710f处理器相当于骁龙什么处理器)

  • 诺基亚n97上市时间(诺基亚n97上市时间价格)

    诺基亚n97上市时间(诺基亚n97上市时间价格)

  • 苹果11a2223型号是什么意思(苹果11a2223型号和苹果11有什么区别)

    苹果11a2223型号是什么意思(苹果11a2223型号和苹果11有什么区别)

  • 抖音可以用抖音号登录吗(抖音可以用抖音号登录方式)

    抖音可以用抖音号登录吗(抖音可以用抖音号登录方式)

  • 机械键盘直接放水里洗会坏吗(机械键盘可以直接拔吗)

    机械键盘直接放水里洗会坏吗(机械键盘可以直接拔吗)

  • 千兆网线和万兆网线有什么区别(千兆网线和万兆网线对网速有影响吗)

    千兆网线和万兆网线有什么区别(千兆网线和万兆网线对网速有影响吗)

  • ios12有什么(ios12有什么不可以用了)

    ios12有什么(ios12有什么不可以用了)

  • ps钢笔路径怎么描边(ps钢笔路径怎么变成线)

    ps钢笔路径怎么描边(ps钢笔路径怎么变成线)

  • word2007生成目录怎么弄(word2003如何生成目录)

    word2007生成目录怎么弄(word2003如何生成目录)

  • 计算机的存储器是指(计算机的存储器分为什么和什么两级)

    计算机的存储器是指(计算机的存储器分为什么和什么两级)

  • 背景在什么选项卡(背景格式在哪个选项中)

    背景在什么选项卡(背景格式在哪个选项中)

  • 手机wps文件打包发送(手机wps文件打包在哪里)

    手机wps文件打包发送(手机wps文件打包在哪里)

  • 华为手机有量尺功能吗(华为手机有量尺功能吗mate30)

    华为手机有量尺功能吗(华为手机有量尺功能吗mate30)

  • vue怎么把照片合并视频(怎样用vue制作照片和视频的合集)

    vue怎么把照片合并视频(怎样用vue制作照片和视频的合集)

  • 拼多多消费账单在哪(怎么查看拼多多消费账单)

    拼多多消费账单在哪(怎么查看拼多多消费账单)

  • 微信如何发说说到朋友圈(微信如何发说说文字)

    微信如何发说说到朋友圈(微信如何发说说文字)

  • 上划线怎么打(电脑字母上划线怎么打)

    上划线怎么打(电脑字母上划线怎么打)

  • Linux dpkg-query 命令用法详解(Debian Linux中软件包的查询工具)

    Linux dpkg-query 命令用法详解(Debian Linux中软件包的查询工具)

  • 怎么结转未交增值税
  • 应交所得税的计税依据
  • 借款发生的利息费用
  • 小规模开票多少不用交税
  • 下列各项中免征增值税的有
  • 只有费用没有收入成本怎么填所得税
  • 医院企业所得税怎么征收的
  • 发票多开了一张怎么处理?
  • 配件的出口是否可以免抵退?
  • 营改增之后对企业的影响
  • 增值税普通发票需要交税吗
  • 结转销项税额至未交增值税的结转系数
  • 半成品转成品会计分录
  • 河道费怎么计算
  • 小规模企业的企业所得税怎么交
  • 叉车车船税每年都要交吗
  • 开给学校的发票要税号吗
  • 关于开票时纳税的规定
  • 应付利润是会计科目吗
  • 暂估原材料已领用还红冲吗
  • 外币报表折算差额怎么算
  • 逾期往来账款怎么处理?
  • 商业汇票的目的
  • 哪些发票公司可以抵扣
  • 税控盘管理费会计分录
  • 控制上网速度的软件
  • 购买方已抵扣申请红票,销售方为开具 购买方如何作废
  • 将原材料变成成品的过程
  • 员工两处取得的荣誉
  • 游戏不能全屏幕
  • 免征的增值税需要纳税调整吗
  • php字符串函数大全
  • 预付下年度广告费会计分录
  • 单位春节发的过生日红包
  • 社保比例调整后多久生效
  • 达尔文岛在地图上位置
  • 卡拉公路
  • vscode写前端代码,如何运行
  • 归还本金和利息的分录
  • echartsgrid属性
  • reset=target
  • 发票跨月发现开错该怎么办?
  • 其他应付款的账户结构
  • 增值税不超过10万免征
  • springcloud分布式微服务组件
  • 可转债可以不卖吗
  • 减值准备为什么不影响影响资产余额
  • 员工探亲路费报销入哪个科目
  • mongodb修改数据库名称
  • 今年发放去年的工资怎么入账
  • 自产货物用于抵偿债务
  • 基本社会保险制度范围
  • 地税发票丢失怎么办?
  • 企业购买的汽车可以抵税吗
  • 从工程款中扣除质保金
  • 增值税期末留抵退税什么意思
  • 建筑企业包工包料业务的发票开具和涉税处理
  • 社保如何做分录报销
  • 企业自建厂房需要有资质吗
  • 电子产品多少金额要交税
  • WINDOWS操作系统最新版本
  • windows8怎么用
  • linux用户是什么意思
  • windows11内测版
  • windows7桌面背景怎么设置
  • linux内核配置文件
  • win10mobile更新出错
  • win10预览版绿屏重启解决
  • cocos2d面试题
  • unity的ugui
  • unity shader lerp
  • linux读出文件
  • js展示
  • javascript入门教学
  • JavaScript为事件句柄绑定监听函数实例详解
  • python flask debug
  • python怎么自定义函数
  • 国税纳税申报表打印
  • 深圳市国家税务局赵雨婷
  • 电脑有网为什么不能用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设