目标跟踪分为单目标跟踪和多目标跟踪,单目标跟踪较为简单,这里我们只讨论多目标跟踪。
多目标跟踪的遮挡问题
多目标跟踪时特别容易发生目标间的相互遮挡,从而导致严重的预测偏移问题,如下图所示:
红色框的行人在和蓝色框行人交错而过时,由于外观模型的持续更新,红色框就学到了另一个人的外观特征,从而导致跟踪错误。这种情况在多目标跟踪中并不少见,所以如何解决遮挡问题就成了重中之重。
这里介绍一种采用时空注意力机制(Spatial-Temporal Attention Mechanism)来尽可能解决目标间遮挡的深度模型。
Online Multi-Object Tracking Using CNN-based Single Object Tracker with Spatial-Temporal Attention Mechanismarxiv.org模型总体架构
这种时空注意力深度模型的总体架构如下所示:
空间注意力对特征进行加权,从而对每个候选框进行分类,而时间注意力通过调节第t帧样本和历史样本的权重,从而辅助损失函数进行参数更新。
空间注意力
我们接下来具体看一看空间注意力机制如何发挥作用。
输入图片先通过一个共享卷积层,提取高维特征CNN Feature Map,接着各个目标均在此CNN Feature Map上进行预测即可,每个特定目标CNN分支都对应跟踪一个目标,即有多少行人,就有多少CNN分支。
值得一提的是,对于每个目标来说,其候选框BBox由两部分组成,运动模型的预测框和检测模型的检测框组成;接着对此目标的所有候选框进行评分,得分最高的且大于一定阈值的候选框,即为此帧此目标的预测跟踪框。
得到ROI-Pooling特征时注意一个细节:因为BBox框的大小不一样,所以引入ROI池化,统一ROI Features的尺寸,从而保证后序全连接层正常运行。
特定目标分支中,分为空间注意力提取阶段和二分类阶段:
(1)空间注意力使用可视图来得到,ROI-Pooling特征经过卷积层和全连阶层后reshape成可视图,越接近于1即为目标像素,越接近0则为非目标像素,可视化如下:
红色区域为目标,蓝色区域为被遮挡部分。
这里的可视图既辅助产生空间注意力,也在时间注意力中发挥作用,在更新参数时决定使用当前帧的程度;
(2)二分类阶段较为简单明了,每个ROI-Pooling都对应这一个得分,对于一个分支来说,得分最高的且大于一定阈值的ROI-Pooling,即为此帧此目标的预测跟踪框。
时间注意力
时间注意力其实反映的是我们更新参数时,考虑此帧预测跟踪框占总损失的权重。
其中,
总损失也就是由第t帧负样本,第t帧正样本,历史正样本三部分构成,均采用交叉熵损失。
实验结果
消融实验可以得出每个部分都是有效的。
时空注意力机制STAM和其他多目标跟踪方法比,效果确实得到了一定的提升。IDS评价指标最优,也体现出此模型能较好地处理遮挡问题,减少了ID错误切换的频率。
总结归纳:
1.前半部分网络使用共享卷积层,减少了参数量;并且参数固定住,减少反向传播的计算量;
2.引入运动模型,相比起其他只使用Detector的MOT算法,增加了稳定性;
3.使用时空注意力机制,更准确地跟踪遮挡情况。
问题讨论:
一般空间注意力都是全连接层进行全局Softmax实现,大家知道空间注意力的局部连接形式是什么样的吗?