DeepCC

Features for Multi-Target Multi-Camera Tracking and Re-Identification

论文地址:https://link.zhihu.com/?target=https%3A//arxiv.org/pdf/1803.10859.pdf

代码地址:https://link.zhihu.com/?target=https%3A//github.com/SamvitJ/Duke-DeepCC


摘要

​ 多目标多摄像机跟踪(MTMCT)通过多台摄像机拍摄的视频跟踪许多人。人员重新识别(Re-ID)从人的图库图像检索类似于人查询图像。通过卷积神经网络,我们学习了MTMCT和Re-ID的良好特性。我们的贡献包括一个自适应加权三重损失训练和硬身份挖掘的新技术。我们的方法在DukeMTMC跟踪基准测试和在Market-1501、DukeMTMC- reid基准测试上都优于最新的技术。

介绍

​ 多目标多摄像机跟踪(Multi-Target Multi-Camera Tracking, MTMCT)是通过多摄像机拍摄的视频流来确定每个人在任何时候的位置。由此产生的多摄像机轨迹可用于包括视觉监视、可疑活动和异常检测、运动员跟踪和人群行为分析在内的应用。近年来,机场、火车站和购物中心的摄像头数量急剧增加,因此有必要对MTMC进行自动跟踪。

​ MTMCT是一个众所周知的难题:为了降低成本,相机通常被放置在很远的地方,而且它们的视场并不总是重叠。这导致遮挡的时间延长,并且跨不同视场的视点和照明发生较大变化。此外,人员的数量通常是事先不知道的,而且要处理的数据量非常大。

​ 人员重新识别(Re-ID)与MTMCT密切相关:给定人员快照(需查询)后,ReID系统会从数据库中检索其他人员快照的列表,这些快照通常是从不同的相机在不同的时间拍摄的 ,并通过降低与查询的相似度对它们进行排名。 目的是将数据库中与查询中的人员相同(即与该人员描述相同的人员)的快照排名提高。

MTMCT和Re-ID有细微区别,但从根本上来说是不同的,因为当MTMCT将一对图像分类为是否相同时,Re-ID将对查询的距离排名,因此它们的性能由不同的度量标准来衡量:Re-ID的性能排名,分类MTMCT的错误率。这种差异似乎表明,用于这两个问题的外观特征必须通过不同的损失函数来学习。理想情况下,reid损失应该确保对于任何查询 a a a,$ a 和 与 其 相 同 的 特 征 之 间 的 最 大 距 离 = = 小 于 = = 和与其相同的特征之间的最大距离==小于== ====a$和与其不相同的特征之间的最小距离。这将保证任何给定查询的正确特征排名。 相反,MTMCT损失应确保任何两个相同特征之间的最大距离小于任何两个不相同特征之间的最小距离,以确保类内和类之间存在一个余量(margin)。【MTMC比较的分类性能,Re-id比较的排列性能】

​ 根据这些标准,MTMCT损失为零将意味着行人重识别损失为零,但是反之不成立。但是,MTMCT类型损失的训练非常昂贵,因为它需要使用所有特征对作为输入。 更严重的是,类内对的数量和类间对的数量之间的严重失衡。 在本文中,我们将Re-ID类型的三重损失函数与基于难例数据挖掘的训练过程结合在一起,并获得了Re-ID和MTMCT的高性能特征。我们的实验还表明,当跟踪适度拥挤的场景时,将Re-ID排名准确性提高到超过特定点会显示MTMCT的收益递减。(并非re-id的rank越高越好)

​ 为了在MTMCT中使用我们的特性,我们组装了一个处理管道,它使用最先进的行人检测器,并且在测试时,使用最先进的基于相关性聚类的数据关联算法来将观察结果分组为身份。为了降低计算复杂度,我们还在我们的跟踪器中加入了标准的层次推理滑动时间窗技术。我们在训练时不包括相关聚类。相反,我们推测高质量的外观特征会产生好的聚类解决方案,并且只训练特征。我们在DukeMTMCT基准测试上的最新实验结果证实了这一猜想。

综上所述,我们作出以下贡献:

  • 我们提出了一种自适应加权三重态损失,与固定权重变量不同,它既准确又稳定。
  • 我们提出了一种廉价的硬身份挖掘方案,可以帮助学习更好的特征。
  • 我们提供有关现有基准上跟踪和排名准确性之间关系的新见解。
  • 我们通过实验证明,我们的功能在MTMCT和Re-ID任务上都能产生最先进的结果。
相关工作

行人检测: MTMC跟踪器依赖于人的检测,一些跟踪器假设给定了单摄像机轨迹。流行的DPM检测器用作MOTChallenge序列和标记Re-ID数据集的公共检测器。自MOT17挑战以来,追踪器利用了依赖深度学习的检测器,显示出了更高的精确度。这些包括Faster R-CNN、SSD、KDNT或基于姿态的检测器。我们使用OpenPose,它表现出了良好的性能。

数据关联: 大多数现有的公式,除了一些例外,都是多维分配问题的特殊情况:输入检测被安排在一个图中,根据其边缘编码相似性,然后其节点被分割成身份。多项式时间解的公式考虑了沿时间连续边的路径的证据,有些则是建立在二分图最大匹配的基础上。使用所有的对偶项,而不仅仅是时间连续项的方法,其准确度明显更高,但NP-Hard(指所有NP问题都能在多项式时间复杂度内归约到的问题,NP是指非确定性多项式)。为了完整性,有时会加入单项。高阶项也被使用过,但收益急剧下降。特征可以联合或迭代优化。我们选择相关聚类来权衡计算成本,以实现公式的简单性和准确性。这个公式考虑了所有配对项的证据,并联合优化特征。一个等价的公式是图多切的公式,它使分歧最小化,而不是使一致最大化。

外观: 通过颜色和纹理描述符描述了人的外观。 可以通过颜色归一化,基于示例的方法或在有或没有监督的情况下学习到的亮度传递函数来解决照明变化。 通过显着性信息或学习特定于身体部位的特征(图像中或反向投影到关节式或整体式3D人体模型中),提高了判别能力。 当前的人员重新识别技术水平依赖于深度学习、难例挖掘、数据扩充、特殊目的的层或分支以及专门的损失函数。 我们使用残差网络和类似技术来学习MTMCT和Re-ID的良好特征。

补充:【难例挖掘hard negative mining:在目标检测中我们会事先标记好ground_truth,接下来在图片中随机提取一系列sample,与ground_truth重叠率IoU超过一定阈值的(比如0.5),则认为它是positive sample,否则为negative sample,考虑到实际负样本数>>正样本数,我们为了避免network的预测值少数服从多数而向负样本靠拢,取正样本数:负样本数大约为1:3。困难负样本是指哪些容易被网络预测为正样本的proposal,即假阳性(false positive),如roi里有二分之一个目标时,虽然它仍是负样本,却容易被判断为正样本,这块roi即为hard negative,训练hard negative对提升网络的分类性能具有极大帮助,因为它相当于一个错题集。】

多摄像机: 摄像机之间的空间关系要么被明确地映射到3D中,通过跟踪已知身份来学习,要么通过比较对摄像机的进出率来获得。 预处理方法可能会融合来自部分重叠视图的数据,而某些系统则依赖于完全重叠且不受阻碍的视图。行人的出入点可以在地面或图像平面上明确建模。旅行时间也被建模,参数化的或非参数化的。 我们使用时间限制来排除不太可能的摄像机间关联。我们使用时间约束来排除不可能的相机间关联。与[57]类似,随着观测值之间时间距离的增加,我们将相关性衰减为零。相关性衰减确保了如果有一连串正相关的观测值将它们连接起来,那么时间上有距离的观测值是相关的。尽管我们没有使用任何阈值或硬约束,但该想法类似于提升式多重切割。

学习跟踪: 有几种尝试以监督方式学习多目标跟踪数据关联的方法,或者是通过递归神经网络对轨迹进行端到端预测,或者是通过通过网络流解决方案进行反向传播来学习数据关联。尽管这些方法尚未突破单机跟踪基准,但它们一直在朝着正确的方向发展。 在我们的方法中,我们无需通过组合优化来测量轨迹质量即可学习相关特征。我们的论点是,如果相关性良好,那么即使贪婪的关联也足够。这个想法已经被证明对人员检测有效,并且隐含在单摄像头跟踪器和Re-ID方法中,这些方法改进了特征以提高准确性。学习良好的关联使训练变得更简单,成本更低。

流程:对于给定的视频流(video streams),首先用行人检测器对视频进行处理,从中提取相应的边界框Bbox。为了进行轨迹推断,特征提取器要从观测中提取运动特征和外观特征。将这些特征将转换成相关性并用相关聚类优化的方式打上标签。最后做一些后处理的工作:对缺失值进行插值处理,去除低置信度的轨迹。

方法

​ 输入的是一组来自不同摄像机的视频 V = V 1 , V 2 . . . V n V={V_1,V_2...V_n} V=V1,V2...Vn,真实值是一组多摄像机轨迹 T = T 1 , . . . T n T={T_1,...T_n} T=T1,...Tn,MTMC可能扮演一个监督学习问题:找到函数 f ( Θ , V ) f(\Theta,V) f(Θ,V)最优参数 Θ \Theta Θ,真正的轨迹以及可能:

其中损失函数 L L L可以由多摄像头跟踪精度测量IDF1得到。

​ 然而,端到端训练需要通过一个执行数据关联的组合优化层来反向传播损失,这很昂贵。我们通过注意到,如果对相同对的相关性为正,对不同对的相关性为负,则组合优化将是微不足道的,从而避免了这种复杂性。因此,我们的目标是在训练时学习产生良好相关性的特征,而在测试时,我们采用相关聚类来最大化潜在错误相关性之间的一致性。

​ 训练期间的另一个困难来源是模型深度,因为权重更新可能无法传播回负责行人检测的浅层。如果网络是整体的,训练却只有一个损失,则训练就会变得更加困难。

1.学习外观特性

​ 给定一个带标签的行人的快照集合,我们使用自适应加权三元组损失学习外观特征。对于样本锚点 x a x_a xa,正样本 x p ∈ P ( a ) x_p \in P(a) xpP(a),负样本 x n ∈ N ( a ) x_n \in N(a) xnN(a),我们将其最一般形式的三元组损失改写为:

其中 m m m为给定的人与人之间的分隔距, d d d为外观距离, [ ⋅ ] + = m a x ( 0 , ⋅ ) [\cdot]_+=max(0,\cdot) []+=max(0,), 这种改进有两个优点:首先,它通过使用所有的样本而不是选择样本,避免了三元组生成的组合过程。相反,学习好特征的挑战是给困难的正负样本分配更大的权重。其次,通过在权重分布中反映,可以很容易地处理正/负的等级不平衡。

​ Hermans et al和Mischuk et al提出了内置难例挖掘的批处理困难三元组损失【Batch Hard: 对于每一个anchor, 选择距离最大的d(a, p) 和 距离最大的 d(a, n)】。方程2的批困难损失权重是二元的方法,因为损失只考虑最困难的正负样本:

其中 [ ⋅ ] [\cdot] []表示艾佛森括号(如果方括号内的条件满足则为1,不满足则为0)。这种损失比具有均匀权重的原始三元组损失产生更好的结果,因为后者会洗掉难例样本的贡献,并被容易的样本驱使恶化更小的局部最小值。 另一方面,均匀加权损失对异常值更为稳健,因为它们不会影响权重。

​ 我们是否可以定义权重,以使L3收敛到至少与批处理困难损失一样好但对异常值仍然健壮的参数?我们的第一个改进涉及到同时实现高准确度和训练稳定性的权重。 公式3-4将最大权重分配给每个锚点的最困难的正/负样本,同时忽略其余的正样本和负样本。相反,我们使用softmax/min权重分布分配自适应权重:

​ 方程5中的自适应权值对简单样本不太重要,而强调最困难的样本。当一批样品中出现困难样品时,它们都是得到他们应有的权重。这不同于公式3-4的硬性权重分配,它给予单一样本中困难样本的更多重要性。当一批样本中最困难的样本是一个异常值时,自适应权重是很有用的,因为还有其他困难的样本可以学习。这种情况下的实验证明了自适应权重的有利特性。

​ 在训练过程中,我们利用了Hermans等人也引入的 P K PK PK批次的思想来进行批量构建。对于P个身份每批中有K个样本图像。这种方法在基于相似性的排名方面表现出了非常好的性能,它避免了生成三元组的组合数量的需要。在训练时期,依次选择每个身份,其余的P-1批次身份被随机采样。然后,还随机选择每个身份的K个样本。

​ 我们的第二个改进是选择困难身份的程序。 随着训练集的大小增加,随机采样P -1身份很少会挑选最困难的负样本,从而减轻了批处理难度。 这种效果也可以在最少量的训练中观察到,当批处理中的许多三元组为零损失时。

​ 为了增加看到困难负样本的机会,我们构造了两组身份样本(gallery中一半从难例身份池中选择,另一半随机身份池中采样)。困难身份池由给定锚的H个最困难的身份组成,而随机身份池由剩余的身份组成。然后在一个锚身份的PK批中,我们以相等的概率从硬身份池或随机身份式池中抽取剩余的P - 1身份。这种技术更频繁地对困难负例进行采样,然而批处理通过抽取随机身份部分地保留了数据集统计信息。池可以在对网络进行几个迭代的训练后构建,也可以在预先训练好的网络中进行计算。在实验部分,我们展示了使用困难身份挖掘方案的好处。

2.MTMC Tracker

​ 给定一个k维度的检测数组 O d O_d Od作为输入,跟踪器输出一个(k+1)× o t o_t ot o t o_t ot检测的数组 O t = f t ( Θ t , O d ) O_t=f_t(\Theta_t,O_d) Ot=ft(Θt,Od)。增加的维度是分配给输入观测的身份标签。在我们的设计中,跟踪器首先计算所有输入观测值 o d o_d od的特征,然后估计所有特征对之间的相关性,最后解决相关性聚类问题,为观测值分配身份。两个后处理步骤,插值和剪枝,插值检测填补空白和删除低置信轨迹。因此,输出检测的数量 o t o_t ot可能与输入检测的数量 o d o_d od不同。

检测器

​ 我们采用了现有的OpenPose行人检测器,取得了良好的性能。这个检测器学习部分亲和字段来捕捉身体部分之间的关系,并应用贪婪的解析将部分亲和力结合成边界框。在训练过程中,它是直接监督部件亲和性而不是边界框的准确性。

外观特征

​ 我们使用在ImageNet上预先训练过的ResNet50模型,并跟随它的pool5层通过一个包含1024单元、批处理归一化和ReLU的稠密层。另一个稠密的层产生128维的外观特征。我们训练模型自适应加权三元组损失,数据增加,硬身份挖掘。我们定义两个检测之间的外观相关性为 w i j = t a − d ( x i , x j ) t a ( a ≤ 1 ) w_{ij}=\frac{t_a-d(x_i,x_j)}{t_a}(a\leq 1) wij=tatad(xi,xj)(a1),其中阈值 t a = 1 2 ( μ p + μ n ) t_a=\frac{1}{2}(\mu_p+\mu_n) ta=21(μp+μn)分离了所有训练对的正负样本距离 μ p \mu_p μp μ n \mu_n μn的平均值。

数据增强

​ 我们通过裁剪水平翻转来增强在线训练图像,以补偿检测器定位误差,并获得一定程度的视点/姿态不变性。为了保证光照不变性,我们还在图像上应用了对比度归一化、灰度和颜色倍增效果。对于分辨率不变性,我们应用不同σ的高斯模糊。 对于额外的视点/姿态不变性,我们应用了视点变换和轻微失真。 我们还隐藏了小的矩形图像块以模拟遮挡。

运动相关

​ 我们使用一个线性运动模型来预测运动相关性。由于前后预测误差 e m = e f + e b e_m=e_f+e_b em=ef+eb为非负值,因此我们使用训练集中的轨迹来学习一个将正负证据分开的阈值 t m t_m tm,并学习一个缩放因子 α \alpha α,将误差转换为相关性 w m = α ( t m − e m ) w_m=\alpha(t_m-e_m) wm=α(tmem)。不可能的关联得到相关性为 w m = − ∞ w_m=-∞ wm=

优化

​ 一个矩阵 W = ( W a + W b ) ⊙ D W=(W_a+W_b)⊙D W=(Wa+Wb)D收集了外观和运动相关,并且矩阵 D D D指定折扣 = e − β Δ t ∈ [ 0 , 1 ] =e^{-\beta \Delta t }\in[0,1] =eβΔt[0,1]随着观测之间的时滞∆t的增加,相关性衰减为零。 D D D确保时间距离轨迹的关联,只有当有一个链的关联与正例相关才连接他们。选择参数 t m 、 α 、 β t_m、\alpha、\beta tmαβ来最大限度地提高训练集子集的跟踪精度。

​ 我们通过相关聚类的方法来建立相同身份。给定一个加权图 G = ( V , E , W ) G=(V,E,W) G=(V,E,W),如果解中的二元变量 x i , j = 1 x_{i,j}=1 xi,j=1,则两节点 v i 和 v j v_i和v_j vivj是同一身份。相关聚类定义为:

方程6使簇内(间)正(负)相关性最大化,方程7中的约束条件强制求解中的转折性。

多层次的推理

​ 该方法通过在三层上分层推理,减少了计算量。第一层计算一秒长的轨迹,第二层将轨迹关联为单摄像机轨迹,第三层将单摄像机轨迹关联为多摄像机轨迹。

​ 轨迹在不相干的一秒长窗口中被发现。轨迹是在一个与前一个窗口重叠50%的滑动时间窗口中在线计算的。所有在窗口中至少有一个检测的轨迹都会被重新考虑关联。我们将单摄像头轨迹的窗口宽度设置为10秒,多摄像头轨迹的窗口宽度设置为1.5分钟。

实验

数据集:DukeMTMC、DukeMTMC-reID、Market-1501

训练时P=18,K=4,m=1 分辨率256乘128。迭代15000, lr=0.0003=>迭代25000,lr=0.000001,H=50

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值