基于张量秩一分解的多目标跟踪方法

基于张量秩一分解的多目标跟踪方法

读‘X. Shi, H.Ling, J.Xing, W.Hu, Multi-target Tracking by Rank-1 Tensor Approximation[J],CVPR,2014’笔记

这篇文章利用了张量的秩一分解建模了多目标跟踪中的data association问题。

首先我们了解下张量的基本知识

张量

张量是向量的推广,1027162-20161023152111779-270243196.png阶张量表示为1027162-20161023152112373-143401387.png,每一个元素表示为1027162-20161023152112888-425962142.png.

张量的n模积:张量1027162-20161023152113232-771562532.png与矩阵1027162-20161023152113685-1971543866.png的n模积表示为1027162-20161023152114092-889255510.png,得到的是新的张量1027162-20161023152114420-1117436004.png.

1027162-20161023152114810-947538952.png

显然,当张量与向量进行n模积时,新的张量的阶数就减少一阶。

秩一张量:如果一个K阶张量能够表示成K个向量的外积,那么该向量称为秩一张量,即

1027162-20161023152115498-1035878526.png

张量的近似秩一分解:对于K阶张量1027162-20161023152115826-1028014700.png,寻找K个单位向量1027162-20161023152116185-1840993757.png和尺度因子1027162-20161023152116467-218679518.png,使重构误差

1027162-20161023152116732-23702522.png

最小,则称之为张量近似秩一分解。

1027162-20161023152117029-1106644366.png,那么上述最小化问题转化为

1027162-20161023152117310-620348318.png

因为1027162-20161023152117638-899037690.png都是单位向量,所以1027162-20161023152117967-309371024.png,于是1027162-20161023152118232-327265795.png.
那么1027162-20161023152118623-1856294442.png等价于1027162-20161023152118904-69052510.png

1027162-20161023152119295-1485087475.png

这里1027162-20161023152119560-1702753080.png表示点乘.

所以张量1027162-20161023152119842-24057055.png的近似秩一分解问题就转化为下面的最大化问题

1027162-20161023152120107-753482148.png

Multi-Dimensioanl Assignment (MDA)

那么张量和多目标跟踪有毫子关系呢?我们先来看看多维数据关联的目标式

1027162-20161023152120545-817304981.png

这里面呢1027162-20161023152120826-1840420134.png其实是用来给不同的轨迹标号的,1027162-20161023152121060-2106655058.png表示第一帧中的第1027162-20161023152121420-1465605002.png个目标在该轨迹上。

将轨迹线1027162-20161023152121717-1269541606.png表示成下面的形式更容易理解

1027162-20161023152122138-489747700.png

1027162-20161023152122388-1787151386.png就表示前后两帧中目标的关联,1027162-20161023152122763-713180799.png

考虑到关联匹配中都是非负变量,我们将(2)式写成类似于(1)式的形式

1027162-20161023152123201-1727367083.png

这里的1027162-20161023152123763-844703682.png是对两帧之间的关联进行的重新编号,如下图所示。

enter description here

1477145036424.jpg

所以(3)式和(1)式的不同点就在于约束条件的不同,张量的秩一分解中要求是单位向量,而(3)式中要求得到的1027162-20161023152124513-2138270812.png满足对应的关联矩阵的每行每列的1027162-20161023152125029-1548788322.png单位范数。

文中给出了一种1027162-20161023152129717-1281435469.png单位范数约束的张量近似迭代算法,如下

enter description here

1477145485732.jpg

并且给出了算法的收敛性证明,我觉得这点很重要~

enter description here

1477145603758.jpg

enter description here

1477145652159.jpg

而(3)式中要求的是行列分别1027162-20161023152133045-535837916.png单位化,所以这里对算法进行稍微的修改,在每一次更新后对1027162-20161023152133638-2015090345.png所对应的矩阵进行行列的1027162-20161023152134045-760126076.png单位化,下面给出了具体算法,其实能发现算法5和算法4除了归一化方式不一样,其他都一毛一样。

enter description here

1477146182293.jpg

这里 1027162-20161023152135154-1368466495.png对应着第n个关联集合中的第 1027162-20161023152135529-1814849506.png个关联。对应的是 1027162-20161023152135795-1221371237.png, 1027162-20161023152136404-1746074178.png对应的是 1027162-20161023152136654-1183093575.png所对应的关联矩阵。


基于张量近似的多目标跟踪算法

在实际应用中,对视频进行分批处理,当然批之间存在部分时间重叠,每一批使用算法5得到轨迹段,然后通过重复的点实现轨迹段的串接,形成更长的轨迹。

enter description here

1477146432065.jpg

张量的构建

算法已经有了,现在问题就是张量1027162-20161023152138029-709821518.png的构建问题了,其元素项1027162-20161023152138342-262387883.png表示由连续的两帧轨迹假设组成的全局关联假设所对应的能量。

文中给了两种组织形式,分别类似于两帧匹配问题和网络流优化问题。

如果将轨迹的全局能量表示成局部两帧关联的能量之和,那么求解问题就转化为求解K个两帧匹配问题的最优解

1027162-20161023152138592-1992990288.png

其中1027162-20161023152138904-1988106362.png表示第i帧中目标的个数。

如果将轨迹的全局能量表示成局部两帧关联的能量之积,那么求解问题就和网络流的优化形式相似。

1027162-20161023152139435-1511725914.png

关联假设的产生

实际应用中相邻帧之间的目标往往距离较近的才可能存在关联关系,所以为了降低张量的大小,可以对关联加上区域约束,即目标仅可能与一定范围内的下帧中目标产生关联。

对于目标的遮挡、进入和离开问题,论文中引入了虚拟目标的概念。虚拟目标没有实际的物理意义例如位置、表观等,其作用是将孤立的目标引导出去,避免干扰存在真实关联的目标。对每一帧中每个目标的检测,都在相邻帧中设置一个对应的虚拟目标。

算法的初始和终止

三种初始方案:

  1. 所有的局部关联1027162-20161023152139779-1832677903.png均等

  2. 权值初始化,按照关联的强度赋予不同的权重

  3. 决策初始化,先用匈牙利算法进行两帧关联,然后对结果进行扰动(这里要保证1027162-20161023152140232-1447490538.png, 0-1将使算法陷入静态点)
    初始化之后必须行列1027162-20161023152140529-150728085.png规范化

两种终止方案:

  1. 满足最大迭代次数

  2. 相邻迭代能量变化微小

后续处理:
因为最终输出要求是0-1值,所以要对近似张量分解得到的结果进行二值处理,这个时候可以采用匈牙利算法寻找使全局轨迹概率最大的轨迹。

分析与总结

论文的主要创新点在于将MDA(multi-dimensional association)问题放到了张量的近似秩一分解的框架中,通过对张量的分解来获得相邻帧之间的关联关系。

由于标准的张量秩一分解中基向量要求1027162-20161023152140967-589194785.png规范化的,而在MDA问题中的约束是对应的关联矩阵行列都是1027162-20161023152141201-322792715.png规范化的,所以论文中给出了一种迭代算法,并通过证明算法每一步都能够使目标函数上升推断出算法是收敛的(单调有界)。

接下来我们来看一看该模型是怎么包括MTT中待解决的几个要素的。

  1. 观测变量与状态变量。该模型直接使用的是观测变量,也就是说仅仅是将检测到的变量进行MDA,并不能保证跟踪结果的光滑等特性

  2. 动态模型。这部分内容主要包括运动的惯性问题,体现在张量的构建中,论文中给出的1027162-20161023152141842-1496595397.png体现了这部分内容

1027162-20161023152142060-889759169.png

其中

1027162-20161023152142310-790747936.png

其中1027162-20161023152142873-145810939.png分别表示该轨迹上k,k+1帧目标的速度矢量,显然第一项表示速度方向差异,第二项表示速度大小差异。

  1. 表观模型。显然相邻帧中同一目标应该是变化缓慢的,(4)式中1027162-20161023152143467-241836665.png则表示的是表观相似性。

1027162-20161023152143935-170361706.png

其中第一项计算的是直方图的交,第二项刻画的关联目标的面积大小相似性。

  1. 遮挡

  2. 轨迹开始与终止
    论文中仅仅在两帧关联时添加了一个虚拟节点,用来处理遮挡、轨迹开始和轨迹终止。
    个人觉得这里处理的太粗糙,没有考虑到目标被遮挡程度的问题,也没有说明什么情况下认为是漏检,什么情况下是轨迹终止,更重要的是没有说明什么情况下认为是轨迹的开始,因为不能保证第t帧结束的轨迹与第t+1帧的虚拟目标和第t+1帧新进入的目标谁的关联性更大。

Note. 论文中的算法可以并行处理。且算法中将1027162-20161023152144201-1065059238.png的行列1027162-20161023152144482-1248734082.png规范化松弛成1027162-20161023152144873-41996038.png规范化进行软决策,能够减少引入关联误差的风险。

转载于:https://www.cnblogs.com/YiXiaoZhou/p/5990097.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值