当前位置: 首页 > news >正文

Detrs beat yolos on real-time object detection

Abstract

然而,我们观察到nnms对yolo的速度和准确性产生了负面影响。最近,端到端基于变压器的检测器(DETRs)为消除NMS提供了一种替代方案。然而,高昂的计算成本限制了它们的实用性,阻碍了它们充分发挥排除NMS的优势。在本文中,我们提出了实时检测变压器(RT-DETR),这是我们所知的第一个解决上述困境的实时端到端对象检测器。我们在先进的DETR基础上分两步构建RT-DETR:首先我们专注于在提高速度的同时保持精度,其次是在提高精度的同时保持速度。具体而言,我们设计了一种高效的混合编码器,通过解耦尺度内相互作用和跨尺度融合来快速处理多尺度特征,以提高速度。

网络架构图

RT-DETR概述。我们将主干最后三个阶段的特征输入到编码器中。高效混合编码器通过基于注意力的尺度内特征交互(AIFI)和基于cnn的跨尺度特征融合(CCFF)将多尺度特征转化为图像特征序列。然后,最小不确定性查询选择选择固定数量的编码器特征作为解码器的初始对象查询。最后,具有辅助预测头的解码器迭代优化对象查询以生成类别和框。

results

我们的RT-DETR-R50实现了53.1%的AP和108 FPS,而RTDETR-R101实现了54.3%的AP和74 FPS,在速度和精度上都优于最先进的类似规模的YOLO探测器和相同骨干的detr。

method

文件中提出的方法是用于实时物体检测的实时检测变换器 (RT-DETR)。RT-DETR 由主干、高效混合编码器和带有辅助预测头的 Transformer 解码器组成。该方法包括将主干中的特征输入编码器,采用不确定性最小查询选择来初始化解码器的物体查询,并优化物体查询以生成类别和框[T3]。此外,RT-DETR 通过调整解码器层数来支持灵活的速度调整,以适应各种场景而无需重新训练[T2]。

conclusion

在这项工作中,我们提出了一种实时端到端检测器,称为RT-DETR,它成功地将DETR扩展到实时检测场景,并实现了最先进的性能。RT-DETR包括两个关键的增强功能:快速处理多尺度特征的高效混合编码器,以及提高初始对象查询质量的最小不确定性查询选择。此外,RT-DETR支持灵活的速度调整,无需重新训练,消除了两个NMS阈值带来的不便,便于实际应用。RTDETR及其模型缩放策略扩展了实时目标检测的技术方法,为各种实时场景提供了超越YOLO的新可能性。我们希望RT-DETR能够付诸实施。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 大模型笔记3 Longformer for Extractive Summarization训练
  • 351_C++_自定义list容器的sort排序规则sortFileName,函数调用运算符 operator() 的重载,它使得一个对象可以像函数一样被调用
  • 支付通道安全:应对黑客攻击的策略与实践
  • 【SC05B】触摸芯片-高灵敏度、强抗干扰能力和稳定性
  • Matlab 判断直线上一点
  • Vue项目中禁用ESLint的几种常见方法
  • SSLRec代码分析
  • 从概念到完成:Midjourney——设计思维与AI技术的完美结合
  • 桃园南路上的红绿灯c++
  • C#身份证核验、身份证查询API、身份认证接口
  • 使用pip或conda离线下载安装包,使用pip或conda安装离线安装包
  • Django ORM中ExpressionWrapper的用途
  • 期货量化交易客户端开源教学第八节——TCP通信服务类
  • 线程安全(二)synchronized 的底层实现原理、锁升级、对象的内存结构
  • 精通Postman响应解析:正则表达式的实战应用
  • Java的Interrupt与线程中断
  • jquery ajax学习笔记
  • JSDuck 与 AngularJS 融合技巧
  • js算法-归并排序(merge_sort)
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • PHP的类修饰符与访问修饰符
  • Redux 中间件分析
  • Vim Clutch | 面向脚踏板编程……
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 产品三维模型在线预览
  • 初探 Vue 生命周期和钩子函数
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • ​ArcGIS Pro 如何批量删除字段
  • ​ssh免密码登录设置及问题总结
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • ​什么是bug?bug的源头在哪里?
  • ###C语言程序设计-----C语言学习(3)#
  • #stm32整理(一)flash读写
  • #ubuntu# #git# repository git config --global --add safe.directory
  • #Z0458. 树的中心2
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • $ git push -u origin master 推送到远程库出错
  • $nextTick的使用场景介绍
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (Redis使用系列) SpringBoot 中对应2.0.x版本的Redis配置 一
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (十)T检验-第一部分
  • (转)memcache、redis缓存
  • (轉貼) 寄發紅帖基本原則(教育部禮儀司頒布) (雜項)
  • .bashrc在哪里,alias妙用
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .NET COER+CONSUL微服务项目在CENTOS环境下的部署实践
  • .net MySql
  • .net 微服务 服务保护 自动重试 Polly
  • .NET 中让 Task 支持带超时的异步等待
  • .NET开源、简单、实用的数据库文档生成工具
  • .NET框架
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • @ 代码随想录算法训练营第8周(C语言)|Day53(动态规划)