[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers

2022年1月

https://arxiv.org/abs/2201.05047v3

https://github.com/SJTU-LuHe/TransVOD.

DETR《End-to-End Object Detection with Transformers》

Deformable DETR《Deformable Transformers for End-to-End Object Detection》

TransVOD 《End-to-End Video Object Detection with Spatial-Temporal Transformers》

标题一脉相承

本文笔记基于2021.5版本,比较老;新版的论文加入了TransVOD++,在此并未详述。

1 简介

DETR和Deformable DETR用于Object Detection,可以在减少人工设计的组件(非最大抑制、Anchor生成)的情况下仍然取得较好的效果。

下图为DETR示意图

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第1张图片

而TransVOD就是将这种思想运用到VOD(video object detection)中,减少人工设计组件的数量,例如光流、RNN以及关系网络等。另外,本文的方法不需要进行后处理。

2 网络结构

对于当前帧,使用一系列视频帧作为输入,输出当前帧的检测结果。

在DETR的基础上加上一个Temporal transformer。

Temporal transformer由三个部分构成, Temporal Deformable Transformer Encoder (TDTE) ,Temporal Query Encoder (TQE) ,and Temporal Deformable Transformer Decoder (TDTD)。对于每一帧,这几个模块都是共享的,并通过端到端的方式进行训练。

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第2张图片

网络整体结构由以下四部分组成:

  • Spatial Transformer

使用Deformable DETR作为静态图片的检测器,包括Spatial Transformer Encoder和Spatial Transformer Decoder,将每一帧编码成Spatial Object Query Qt和Memory Encoding Et。

  • Temporal Deformable Transformer Encoder (TDTE)

编码时空信息,为最后的decoder输出提供位置信息。

使用Temporal Deformable Attention采样部分有效信息,在时间维度上连接Memory Encodings Et,并抑制背景噪声。

Temporal Deformable Attention的核心思想是只关注少部分关键的采样点,从而实现更加高效的特征聚合。

下图中的详细解释与Deformable DETR原文基本一样,唯一的区别是l从指代输入特征层改为指代视频帧:

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第3张图片

  • Temporal Query Encoder (TQE)

将当前帧与其他参考帧的spatial object queries进行关联,利用参考帧来增强当前帧的输出。

结合所有参考帧的spatial object queries,标记为Qref,以coarse-to-fine的方式来进行打分和筛选。利用一个额外的FFN来预测类别,然后计算

根据p值对参考点进行排序,从这些参考点中选出top-k值。

这些选出的值将会被送入feature refiners,与从不同帧中提取出的object queries进行交互,计算与当前帧输出的co-attention。

将带有cross-attention模块的decoder层作为feature refiner,迭代地更新每个Spatial Transformer的输出queries,最后得到temporal object query,作为TDTD的输入。

Tip:

TopK是一种计算准确率的方法,在多分类任务中经常出现,如 cifar100 这个100分类任务中,衡量预测是否准确可以:

1、Top1 准确率:直接对比网络计算得到的output中概率最高的那个类别和标签类别是否一致,如果一致则判断正确,否则错误。

2、Top5 准确率:对比output中概率前五的类别中是否有标签的类别,有则判断正确,否则就是判断错误。

很明显,K越大对于网络的评价标准越宽容。

  • Temporal Deformable Transformer Decoder (TDTD)

TDTD以TDTE(fused memory encodings)和TQE(temporal object queries)的输出作为输入,输出当前帧最终的检测结果。

下图中的具体解释与Deformable DETR原文完全一样:

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第4张图片

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第5张图片

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第6张图片

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第7张图片

损失函数

原始的DETR避免了后处理,并采用一个one-to-one的标签规则。

用Hungarian 算法来match ground truth 和 TDTD的预测结果

因此Spatial Transformer的训练过程与原始DETR一致。

Temporal Transformer使用相似的损失函数。

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第8张图片

3 对比

[Transformer] TransVOD: End-to-End Video Object Detection with Spatial-Temporal Transformers_第9张图片

你可能感兴趣的:(Transformer,backbone,transformer,目标检测,深度学习)