Joint Feature Learning and Relation Modeling for Tracking: A One-Stream Framework (OSTrack)
1.OSTrack核心问题
- 传统的 Siamese 网络跟踪框架通常采用双流结构
- 一路处理 模板(Template)
- 一路处理 搜索区域(Search Region)
- 两路特征分别提取后,再进行跨图像的关系建模(如相关性计算)
这种设计导致特征提取和关系建模两个阶段是分离的,信息交互较晚,表达能力受限。
-
主流跟踪采样双流两阶段(模板/搜索区分别提取→再做关系建模)当前主流跟踪器通常通过共同的两流两阶段流水线来解决这个问题(分而治之的思想),这意味着模板和搜索区域的特征分别提取(双流),整个过程分为两个顺序步骤:特征提取和关系建模(两阶段),存在两大缺陷
-
传统情况下每张图片提取的特征在离线训练后便已确定,用为模板区域和搜索区域之间不存在交互。这与目标持续变化且形态任意的特性相悖,导致目标与背景的区分能力有限。
-
双流两阶段框架易陷入性能与速度的两难困境。 目前有两种常用的策略
- 策略一(快但是不准)
- 做法:用简单算子 做特征融合,比如互相关(cross-correlation) 、判别相关滤波(DCF)。
- 缺点:只是线性操作 ,会丢失大量判别性信息 ,导致跟踪精度不够高。

- 策略二(准但是慢)
- 做法:用复杂的非线性交互 做关系建模,比如Transformer的交叉注意力、迭代优化。
- 缺点:参数量大、迭代计算多,速度很慢

- 特征无目标感知,目标 - 背景判别力弱,小样本 / 零样本跟踪表现差;
- 轻量建模精度低、重型建模速度慢,陷入性能 - 速度两难
2.OSTrack核心思想(比传统的两个策略效果更好)
论文提出将模板图像和搜索区域图像拼接(concat)后一起送入同一个 ViT(Vision Transformer),让两者在网络的每一层都进行交互(通过 Self-Attention 机制),实现特征学习(Feature Learning) 和 关系建模(Relation Modeling) 的联合优化
通过统一的单流单阶段跟踪框架来解决问题。单流框架的核心思路是在早期阶段(即原始图像对阶段)在模板区域与搜索区域之间建立自由的信息流动,从而提取面向目标的特征并避免判别性信息的丢失。具体而言,将展平的模板区域与搜索区域拼接起来,输入到堆叠的注意力层中(选用ViT) 生成的搜索区域特征可以直接用于目标分类与回归,无需进一步匹配。堆叠的自注意力机制操作实现了模板与搜索区域之间额迭代特征匹配,从而为面向目标的特征提取提供了相互引导。因此模板与搜索区域的特征均能以较强的判别能力被动态提取,让性能与速度之间实现了良好的动态平衡。
3.OSTrack中ViT的逐层交互机制
1. 输入拼接(Token Concatenation)
在 OSTrack 中,模板图像和搜索区域图像首先被切分成 patches,然后转换为 token 序列:
模板图像 → [T₁, T₂, ..., Tₙ]
搜索区域 → [S₁, S₂, ..., Sₘ]
拼接后输入 ViT:
[T₁, T₂, ..., Tₙ, S₁, S₂, ..., Sₘ]
2. Self-Attention 的跨图像交互
ViT 的核心是 Multi-Head Self-Attention (MHSA) ,计算公式:
Attention(Q, K, V) = softmax(QK^T / √d) · V
关键点 :当模板和搜索区域的 tokens 一起输入时:
- Q(Query) 可以来自模板, K(Key) 可以来自搜索区域(反之亦然)
- 这意味着 每个 token 都能"看到"所有其他 token ,无论它来自模板还是搜索区域
- 模板中的目标特征会直接与搜索区域中的对应区域产生注意力关联
3. 逐层交互的累积效应
Layer 1: 模板和搜索区域开始初步交互
↓
Layer 2: 基于 Layer 1 的交互结果,进一步细化关系
↓
Layer 3: 更深层次的语义对齐
↓
...
Layer N: 最终输出高度融合的特征表示
每一层的 Self-Attention 都会重新计算所有 token 之间的关系,随着网络加深:
- 浅层 :学习低级特征对应(如边缘、纹理)
- 深层 :学习高级语义对应(如目标类别、姿态)
4. 与传统双流架构的对比
阶段 双流 Siamese OSTrack (单流) 特征提取 模板和搜索区域 独立 通过 CNN/ViT 一起 通过 ViT,逐层交互 关系建模 在特征提取 之后 单独进行(如互相关) 在特征提取 过程中 自然完成 信息流 单向:特征提取 → 关系建模 双向:特征和关系 联合学习
5. 可视化理解
想象 Self-Attention 的注意力热力图:
模板区域: [目标] [背景]
搜索区域: [背景] [目标] [背景]
Attention 权重矩阵:
T_目标 T_背景 S_背景1 S_
目标 S_背景2
T_目标 0.1 0.05 0.1
0.7 0.05
T_背景 0.05 0.6 0.2
0.1 0.05
S_目标 0.7 0.05 0.05
0.15 0.05
...
可以看到: 模板中的目标 token 会高度关注搜索区域中的目标 token ,这种对应关系是在网络内部自动学习到的。