End-to-End Object Detection with Transformers
Abstract
文章提出了一种新方法,将目标检测视为直接集合预测问题。 这样的方法简化了检测流程,有效地消除了对许多手工设计组件的依赖,例如非极大值抑止和锚点生成这些编码先验知识的组件 模型的主要成分称为 DETR(DEtection TRansformer),这是一种基于 Transformer 和直接集合预测二分图匹配损失的编码器-解码器架构。 给定一组固定的可学习的目标查询,DETR 会推理对象与全局图像上下文的关系,然后直接并行输出预测集。
Model
目标检测集合预测损失
DETR 通过解码器的一次传递推断出一组固定大小的 N 个预测,其中 N 设置为明显大于图像中对象的数量。 损失函数在预测对象和地面真实对象之间产生最佳二分匹配,然后优化特定于对象(边界框)的损失。
模型架构
编码器
首先,1x1 卷积将高级激活图 f 的通道维度从 C 减少到更小的维度 d。 创建一个新的特征图 z0 ∈ Rd×H×W 。 编码器接收一个序列作为输入,因此将 z0 的空间维度折叠为一维,从而产生 d×HW 特征图。 每个编码器层都有一个标准架构,由多头自注意力模块和前馈网络(FFN)组成。
解码器 这些输入嵌入是学习的位置编码,我们将其称为对象查询,与编码器类似,我们将它们添加到每个注意层的输入中。 N 个对象查询被解码器转换为输出嵌入。
利用对这些嵌入的自注意力和编码器-解码器注意力,该模型使用它们之间的成对关系对所有对象进行全局推理, 同时能够使用整个图像作为上下文。
预测前馈神经网络 最终预测由具有 ReLU 激活函数和隐藏维度 d 的 3 层感知器以及线性投影层计算。 FFN 预测框的标准化中心坐标、高度和宽度。输入图像,线性层使用 softmax 函数预测类标签。 由于我们预测一组固定大小的 N 个边界框,其中 N 通常远大于图像中感兴趣对象的实际数量,因此使用额外的特殊类标签 ∅ 来表示在槽内未检测到对象。 该类在标准对象检测方法中扮演着与“背景”类类似的角色。
辅助解码损失
我们在每个解码器层之后添加预测 FFN 和匈牙利损失。所有预测 FFN 共享其参数。 我们使用额外的共享层范数来规范化来自不同解码器层的预测 FFN 的输入。