引言

近些年的目标跟踪算法都在往做大做强的方向发展,比如更深的网络和更复杂的模块。尽管性能越刷越高,但是却很少考虑效率问题,以至于几乎无法在边缘设备上实时运行部署,实用性较低,因此研究轻量化的目标跟踪算法是非常必要的(另外一个原因也可能是做大做强上能水论文的点越来越不好找了 / 狗头保命)。本篇博客总结了三篇最近研究跟踪模型轻量化的工作。

LightTrack

详细解读:【极市直播】严彬:CVPR 2021-LightTrack:基于网络结构搜索的超轻量级跟踪模型设计

LightTrack 使用神经架构搜索(NAS)来设计更轻量级和高效的目标追踪器。实验表明,LightTrack 与手工设计的 SOTA 跟踪器(如 SiamRPN++ 和 Ocean)相比,可以实现更优越的性能,而需要的计算量和参数要少得多。此外,当部署在资源受限的移动芯片上时,也能以更快的速度运行。

LightTrack 采用 one-shot NAS 的方法搜索结构,流程如图 2 所示。整个过程训练与搜索是解耦的,首先训练超网(随机采样路径进行训练),然后用进化算法从超网中寻找最优子结构。

最后搜索到的 LightTrack-Mobile 结构如图 3 所示,具有如下特点:

  1. backbone 中有将近一半使用 7×7 的卷积核大小,可能是因为这样能在较浅的 backbone 中尽量提升感受野;
  2. 搜索架构选择了倒数第二个 block 作为特征输出,可能是因为跟踪网络并不倾向太高级的语义特征;
  3. 分类分支需要的网络层数比回归分支要少,可能是因为粗目标定位比精确的边框回归更容易。

实验可以看到三个版本 mobile,largeA,largeB 在性能、计算量和参数量上都具有优势。在骁龙 845 中,LightTrack 运行速度比 Ocean 快 12 倍,参数量减少 13 倍,计算量减少 38 倍。作者称这种改进可能会缩小学术模型和工业部署在物体跟踪任务中的差距。

Exemplar Transformer

本文对 transformer 架构进行轻量化,提出了一种高效的 Exemplar Transformer 来替代卷积。E.T.Track 在 CPU 上速度达到 47FPS,比其他基于 transformer 的跟踪器快 8 倍,作者称这是目前唯一的实时 transformer-based 的跟踪器。

Exemplar Transformers

transformer 中 self-attention 计算如公式 2:

Q,K 的序列长度均为图像尺寸,公式 2 计算复杂度为图像尺寸的平方,这样带来较大计算负担。作者认为,对所有特征之间的关联在机器翻译中是必要的,但是在视觉任务中是不必要的。因为机器翻译中每个特征都代表一个特定的单词或标记,而视觉任务中相邻的空间通常表示相同的物体。因此在视觉任务中,可以减少特征向量的数量,构建一个更粗略更具描述性的视觉表达,从而显著降低计算复杂度。

作者首先提出了两个假设:

  1. 一个小的 exemplar value 集合可以在一个数据集之间共享;
  2. 一个粗略的查询具有足够的描述性来利用这些 exemplar value。

为此,作者在构建 query 时首先将输入特征图 𝑋∈𝑅𝐻×𝑊×𝐶 通过平均池化压缩成空间维度为 S 的大小,再经过线性映射得到 Q。

其中 S=1,即将 query 映射成一个向量,这样可以使效率最大化。作者认为对于单目标跟踪,一个查询就足够了。

对于 Key,作者学习了一小组捕获数据集信息的范例表示,而不是一个细粒度的特征映射和仅仅依赖于样本内部的关系。 Exemplar keys 可以表示成 𝐾=𝑊^𝐾∈𝑅𝐸×𝐷,数量从 HW 降为 E。这个 Key 与输入特征是无关的,是从整个训练数据集中学习出来的一个变量。

对于 Value,采用卷积操作在局部层面进行操作。

其中 𝑊𝑉∈𝑅𝐸×𝐾×𝐾。整个 exemplar attention 可以表示为:

exemplar attention 和传统的 self-attention 对比如图 2 和 3 所示,本文方法利用卷积处理局部特征,利用相似性度量处理全局特征。

计算复杂度分析如表 1 所示,其中 Key 的数量 E=4,所以 Exemplar Attention 的计算量和卷积是同一个量级的。

E.T.Track Architecture

上述提出的 Exemplar Transformer layer 可以作为卷积的替代,作者将 LightTrack 的预测头分支所有卷积换成了 Exemplar Transformer,构建新的跟踪器 E.T.Track 如图 4 所示。

实验

FEAR

本文的目的是设计快速、高效、准确、鲁棒的跟踪器,提出两个轻量化模型,dual-template module 和 pixel-wise fusion block。前者使用一个可学习的参数集成了时域信息,而后者使用更少的参数编码了更有判别性的特征。使用复杂的 backbone,本文方法 FEAR-M 和 FEAR-L 在速度和精度上超过大多数算法;而使用轻量 backbone 的版本 FEAR-XS 比目前的 Siamese 跟踪器快 10 倍以上的跟踪速度,同时保持接近的精度。FEAR-XS 比 LightTrack 小 2.4 倍,快 4.3 倍,且具有更高的精度。此外,本文引入能耗和速度来扩展模型效率的定义。

方法

整体方法如图 2 所示,跟经典 siamese 方法的差别在于输入增加了一个动态模板,将静态和动态模板进行线性插值后再与搜索特征进行融合。

特征提取部分使用轻量的 FBNet,特征融合部分设计了像素级别的融合,如图 3 所示,这个和 PGNet,CGACD 等方法的操作是一样的。

Dynamic Template Update

初始模板 𝐹𝑇 和动态模板 𝐹𝑑 通过可学习的参数 𝜔 进行线性融合。

动态模板的选择如图 4 所示

将搜索特征与分类分数相乘后池化得到向量 𝑒𝑠,动态模板进行池化得到向量 𝑒𝑡,计算二者的余弦相似度。推理阶段从每 N 个历史搜索帧中选择相似度最大的帧裁剪更新动态模板。训练时还额外增加了负样本 𝑒𝑇 构建三元损失。

实验

实验除了常规的 benchmark 性能测试还专门做了效率分析。作者引入了 FEAR Benchmark 来评估跟踪算法对移动设备电池和热状态的影响,以及随着时间的推移对处理速度的影响。如图 5 所示,随着运行时间的增加,其他算法均出现了速度下降、电量下降,温度升高的现象,但本文的 FEAR-XS 在这些指标上均能保持稳定(高速、耗电少、温度低)。

速度上在多款手机处理器上均大幅超过了 LightTrack。

Logo

加入社区!打开量化的大门,首批课程上线啦!

更多推荐