【KnowledgeBase】目标追踪模型MOTR论文简要理解

MOTR是基于DETR的目标检测框架的扩展,它引入了DetectQuery和TrackQuery概念,用于端到端的多目标跟踪。TrackQuery在时间上连续,通过QueryInteractionModule(QIM)和Tracklet-AwareLabelAssignment(TALA)策略更新,确保对已检测目标的持续跟踪。QIM模块处理DetectQuery和TrackQuery的输出,过滤并传递给下一时刻,形成动态的TrackQuery集合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系列文章目录


前言

简单讲一下《MOTR: End-to-End Multiple-Object Tracking with Transformer》这篇文章的理解。
论文:https://arxiv.org/abs/2105.03247
代码:https://github.com/megvii-model/MOTR


一、主要思想

大家应该都熟悉目标检测器DETR,DETR通过将一些object query经过Decoder来进行预测,得到一些output query
MOTR在DETR的基础上更进一步,(如下图所示)将T1时刻得到的output query重新经过Decoder的预测,得到T2时刻的更新的updated object query

在这里插入图片描述


二、整体架构

首先需要明确一下下图中的一些符号

  • Enc:编码器Encoder;
  • Dec:解码器Decoder;
  • q d q_d qd:Detect Query,类似于输入到DETR里的Decoder的query,数量是固定的,假设有n个query;
  • q t r N q_{tr}^N qtrN:Track Query,上一个时刻通过QIM模块得到的query;
  • QIM:Query Interaction Module。用来对当前时刻的预测输出的Query进行过滤,再将这些Query输出给下一个时刻,作为Track Query。

整体过程:

  1. T 1 T_1 T1时刻,图片经过Encoder和Decoder,同时输入固定长度的Detect Query进行检测,此时Track Query是一个空的Set,得到输出 Y 1 Y_1 Y1
  2. T 1 T_1 T1时刻得到的所有预测的Query经过一个QIM模块进行提取;
  3. 将提取后的Query送给下一个 T 2 T_2 T2时刻,作为该时刻的Track Query;
  4. 同时, T 2 T_2 T2时刻也有一个固定长度的Detect Query输入;
  5. 一直进行下去,直到片段停止。
    在这里插入图片描述

二、细节

1.Detect Query和Track Query

两种Query分别是:(下图右图)

  1. Detect Query:每一个时刻都有固定数量n个object query输入,跟DETR的query输入一样;
  2. Track Query: T n T_n Tn时刻的Track Query是 T n − 1 T_{n-1} Tn1时刻上一个Decoder预测得到的query(QIM模块输出的query),数量是会变化的。而且第一个时刻 T 0 T_0 T0空的set
    在这里插入图片描述

2.Tracklet-Aware Label Assignment(TALA)

这一块简单理解,类似于目标检测里的样本分配,也就是来解决让哪个query来预测哪个Ground Truth的问题。
首先,要明确一下,我们得到的Query包括两种:

  1. 固定长度的Detect Query,用于检测新出现(new born)的目标;
  2. 可变长度的Track Query,用于继续检测上一帧已经存在的目标。

因此,两种Query在分配的过程中,不能混为一谈。而DETR的分配策略会将这两种所有的object query分配给所有的目标Target,没有指向性。所以这里提出了Tracklet-Aware Label Assignment(TALA),如下图的公式,将固定长度的Detect Query分配给new born物体。
在这里插入图片描述
下图的公式说明的是,当前时刻的Track Query是上一最近的时刻的Detect Query与Track Query的并集。
在这里插入图片描述

3. QIM模块

流程应该是这样的吧:

  1. 当前时刻的输入有上一个时刻输出的Track Query,与当前时刻设置的Detect Query;
  2. 将上面这两种Query经过Decoder后,得到预测的Query;(需要注意,这些预测后的Output Query知道是哪种Query##Detect Query/Track Query##转变而来的)
  3. 其中Output Track Query会额外经过一个TAN模块;
  4. 最后,将过滤后还剩下的所有Query作为下一个时刻的Track Query输入。
    在这里插入图片描述

总结

以上只是MOTR的大致理解,内容比较简略,如有错误还请指出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Prymce-Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值