方法论总结
SORT中使用卡尔曼滤波存在大量ID切换的问题,也就是在遮挡后KF的检测信息就会无法和之前的信息匹配,而创建一个新的跟踪。所以需要尽量用之前已经检测到的外观特征并进行“保存”DeepSORT中采用了一个简单(运算量不大)的CNN来提取被检测物体(检测框物体中)的外观特征(低维向量表示),在每次(每帧)检测+追踪后,进行一次物体外观特征的提取并保存。
- Confirmed状态的更新:多个判断逻辑可以都可以决定是不是unconfirmed状态,可以是unmatched-直接unconfirmed,或者是等一个max_age(k帧)以后再unconfirmed。
- 分配问题:使用了motion和外观特征两种度量。马氏距离可以在没什么遮挡的情况下获得基于motion特征获得相当不错的关联效果,在有遮挡的情况下。这两个度量通过加权结合到一起。并且可以通过超参数控制不同的运动/特征情况下两种度量的比值。
- Matching cascade,主要的筛选器。对比SORT中主要为IOU Match为筛选器,DeepSORT中,IOU Match更多的作为二次矫正增加更长遮挡周期下的识别。Matching cascade由代表运动特征的马氏距离和代表外观特征的Re-ID特征组成。
摘要
在本文中,我们通过整合外观信息来提高SORT的性能。由于这一特性,我们能够在更长的遮挡周期来跟踪对象,从而有效地减少了身份切换的数量。本着原有框架的精神,我们将大部分计算复杂性放在离线的预训练阶段,在那里我们在大规模的人重新识别数据集上学习深度关联度量。在在线应用过程中,我们使用视觉外观空间中的最近邻查询来建立测量到跟踪(measurement-to-track associations )的关联。实验评估表明,我们的改进减少了45%的ID切换,在高帧率下获得了极佳的性能。
1 简介
由于目标检测的最新进展,基于检测的跟踪已经成为多目标跟踪的主导范式。在这个范例中,对象跟踪通常是在一次处理整个视频批次的全局优化问题中找到的。例如,流网络公式[1,2,3]和概率图模型[4,5,6,7]已经成为这类模型的流行框架。然而,由于批处理的原因,这些方法不适用于每个时间步都必须有目标身份的在线场景。更传统的方法是多假设跟踪(MHT)[8]和联合概率数据协会过滤(JPDAF)[9]。这些方法在逐帧的基础上执行数据关联。在JPDAF中,单态假设是通过根据个体测量的关联可能性对它们进行加权而产生的。在MHT中,所有可能的假设都被跟踪,但是为了便于计算,必须应用剪枝方案。这两种方法最近都在通过检测进行跟踪的情况下进行了重新审查[10,11],并显示了令人振奋的结果。然而,这些方法的性能是以增加计算和实现复杂度为代价的。SORT这种简单的方法在高帧率下实现了令人满意的性能。在MOT ChallengeDataSet[13]上,使用最先进的人检测器的排序[14]在标准检测上的平均排名高于MHT,这不仅强调了对象检测器的性能对整体跟踪结果的影响,而且从从业者的角度来看,这也是一个重要的见解。
虽然在跟踪精确度和精确度方面取得了总体良好的性能,但SORT返回的标识选择数量相对较多。这是因为采用的关联度量只有在状态估计不确定性较低时才是准确的。因此,SORT在跟踪遮挡方面存在缺陷,因为它们通常出现在前视图摄影机场景中。我们通过将关联度量替换为结合了运动和外观信息的更具信息量的度量来克服这个问题。具体地说,我们应用一个经过训练的卷积神经网络(CNN)在一个大规模的人重新识别数据集上进行行人识别。通过集成该网络,我们提高了对遗漏和阻塞的鲁棒性,同时保持了系统易于实现、高效和适用于在线场景。我们的代码和一个预先训练的CNN模型是公开提供的,以便于研究、实验和实际应用开发。
2 SORT with 深度关联度量
我们采用传统的单假设跟踪方法,结合递归卡尔曼滤波和逐帧数据关联。
2.1 跟踪处理和状态估计
(还是使用KF进行跟踪,多了一个长宽比(aspect ratio)的变化率,增加了对初始化、新生和小事的界定)
跟踪处理和卡尔曼滤波框架与[12]中的原始公式基本相同。我们假设一个非常普遍的跟踪场景,摄像机没有校准,我们没有可用的自我运动(ego-motion)信息。虽然这些情况对滤波框架构成了挑战,但它是最近的多个目标跟踪基准测试中考虑的最常见的设置[15]。因此,跟踪环境可以用八维状态空间表示
( u , v , γ , h , x ˙ , y ˙ , γ ˙ , h ˙ ) (u, v, \gamma, h, \dot{x}, \dot{y}, \dot{\gamma}, \dot{h}) (u,v,γ,h,x˙,y˙,γ˙,h˙),其中包括包围盒的中心位置 ( u , v ) (u,v) (u,v),纵横比 γ \gamma γ,高度 h h h,以及在图像坐标中对应的速度。我们使用标准的卡尔曼过滤,具有恒速运动和线性观测模型,取边界坐标 ( u , v , γ , h ) (u,v,\gamma,h) (u,v,γ,h)作为对物体状态的直接观测。
消失:对于每个跟踪 k k k都需要对从上一次成功测量的 a k a _k ak后的关联帧数进行进行计数。此计数器在卡尔曼过滤预测期间递增,并在跟踪与测量成功关联时重置为0。超过预定义的最大时间 A m a x A_{max} Amax的跟踪被视为已离开场景并从跟踪集中删除。
初始化:对于不能与现有跟踪相关联的每个跟踪发起新的跟踪假设
新生:这些新跟踪在它们的前三帧中被归类为试探性的。在此期间,我们希望在每个时间步长都能成功进行测量关联。未成功关联到其前三帧内的测量的跟踪将被删除。
2.2 分配问题
用匈牙利算法,除了运动特征,还结合外观特征(CNN中的提取的)计算代价矩阵
解决预测卡尔曼状态和新测量之间关联的传统方法是建立一个可以使用匈牙利算法解决的分配问题。在这个问题的描述中,我们通过结合两个合适的度量来整合运动和外观信息。
无遮挡,运动特征:为了合并运动信息,用**(平方)马氏距离衡量预测到的卡尔曼滤波状态和新获得的测量值(检测框)之间的距离:
d ( 1 ) ( i , j ) = ( d j − y i ) T S i − 1 ( d j − y i ) d^{(1)}(i, j