【目标检测】对DETR的简单理解

【目标检测】对DETR的简单理解

文章目录

  • 【目标检测】对DETR的简单理解
    • [1. Abs](#1. Abs)
    • [2. Intro](#2. Intro)
    • [3. Method](#3. Method)
      • [3.1 模型结构](#3.1 模型结构)
      • [3.2 Loss](#3.2 Loss)
    • [4. Exp](#4. Exp)
    • [5. Discussion](#5. Discussion)
      • [5.1 二分匹配](#5.1 二分匹配)
      • [5.2 注意力机制](#5.2 注意力机制)
      • [5.3 方法存在的问题](#5.3 方法存在的问题)
    • [6. Conclusion](#6. Conclusion)
    • 参考

1. Abs

两句话概括:

  1. 第一个真正意义上的端到端检测器
  2. 最早将transformer应用到计算机视觉领域方法之一

2. Intro

基于Conv目标检测方法,如YOLO,在精度和速度上都已经非常优秀。

但是这些传统算法往往需要prior和post-process流程,导致额外的计算量,需要复杂的代码来部署模型。

prior:例如,YOLOv5使用聚类算法提前计算anchor boxes

post-process:例如,NMS去除多余预测框

DETR则完全不需要这些,从输入到输出,一气呵成,简洁优雅。

3. Method

3.1 模型结构

网络架构如图所示,同样非常简单

  1. 一个backbone:提取特征
  2. 两个transformer
    1. encoder:将特征图展平成序列,加上位置编码,使用self-attn进一步处理,使得每个特征向量关注到合适的特征表示
    2. decoder:cross-attn,query在特征序列上"逐个问询是否存在目标,目标在哪,有多大",使得query学习到目标的位置信息和特征表示
  3. 两个FFN:对query的信息进行"解压",得到预测结果(类别和边界框)。

3.2 Loss

分类:负log损失

bbox:(GIoU)IoU损失 + L1损失

4. Exp

除了AP75和APs,DETR在同样的参数规模下都超过了Faster RCNN,但是计算量和检测速度更慢。

5. Discussion

5.1 二分匹配

匈牙利算法可参考[3]

  • 由于DETR默认使用100个queries,即模型输出100个预测框,而实际目标数量只有几个;
  • 因此,需要通过二分匹配算法得到最终的预测结果;
  • 简单来说,就是要把query和gt一一对应,如果一张图像中有5个gt,则在100个queries中通过匹配算法筛选出5个最接近gt的预测结果。

5.2 注意力机制

如图是decoder的注意力可视化结果,可以看到query更关注于物体的边边角角,为目标定位提供了有效信息。

5.3 方法存在的问题

  1. 使用self-attn,太长的特征序列会导致爆炸的计算量,因此输入图像也不能太大
  2. transformer收敛速度慢,训练时间长
  3. 小目标效果一般

6. Conclusion

DETR为目标检测提供了简洁有效的端到端检测框架,且达到了主流检测器的水平,但仍然有较多改进空间。

参考

1\] https://arxiv.org/abs/2005.12872 \[2\] https://www.bilibili.com/video/BV1ZT411D7xK/ \[3\] https://blog.csdn.net/qq_54185421/article/details/125992305

相关推荐
lili-felicity2 分钟前
CANN性能调优与实战问题排查:从基础优化到排障工具落地
开发语言·人工智能
User_芊芊君子5 分钟前
HCCL高性能通信库编程指南:构建多卡并行训练系统
人工智能·游戏·ai·agent·测评
冻感糕人~6 分钟前
【珍藏必备】ReAct框架实战指南:从零开始构建AI智能体,让大模型学会思考与行动
java·前端·人工智能·react.js·大模型·就业·大模型学习
hopsky8 分钟前
openclaw AI 学会操作浏览器抓取数据
人工智能
慢半拍iii9 分钟前
对比源码解读:ops-nn中卷积算子的硬件加速实现原理
人工智能·深度学习·ai·cann
晚烛10 分钟前
CANN 赋能智慧医疗:构建合规、高效、可靠的医学影像 AI 推理系统
人工智能·flutter·零售
小白|10 分钟前
CANN在自动驾驶感知中的应用:构建低延迟、高可靠多传感器融合推理系统
人工智能·机器学习·自动驾驶
一枕眠秋雨>o<13 分钟前
深度解读 CANN ops-nn:昇腾 AI 神经网络算子库的核心引擎
人工智能·深度学习·神经网络
ringking12313 分钟前
autoware-1:安装环境cuda/cudnn/tensorRT库函数的判断
人工智能·算法·机器学习
●VON14 分钟前
CANN模型量化:从FP32到INT4的极致压缩与精度守护实战
人工智能