TRAJECTORY FACTORY: TRACKLET CLEAVING AND RE-CONNECTION BY DEEP SIAMESE BI-GRU FOR MULTIPLE OBJECT TRACKING
论文重点针对对象识别重叠的画面可能造成的跟踪错误,对tracklet进行三步处理:生成——截断——重连接;使用Deep Siamese Bi-GRU 完成截断和重连接模型的训练;GRU是LSTM的变体,效果相似但GRU更易于计算,参数少,少了一个“门控”;
Generating
使用Siamese-CNN network生成tracklet;
检测到的包围盒表示(t时刻帧的第k个包围盒)
检测到的候选者表示
使用匈牙利算法匹配包围盒和候选者,偶图左侧为候选者,右侧为包围盒;
追踪到的对象定义如下,分别为时间(帧),tracklet的id,包围盒中心(x,y),包围盒的宽w、高h,状态s={‘tracked’,‘lost’,‘quitted’}
到此可以得到整个视频帧序列的tracklet集
优化图表示为
其中S(x,y)为成本函数
外观特征由CNN得到,计算包围盒和对象的欧氏距离并进行L2归一化,得到的结果来表示包围盒和跟踪对象的相似度
其中L2归一化:归一化后特征分布在一个超球面上,目的是为了减少光照对特征的影响;
L2范式
L2归一化
预测位置信息有LSTM输出,这个输出取决于前期输入的历史位置;
位置信息为4维,[x,y,w,h];计算预测和侦测位置的距离:
Cleaving
目的:识别由上一步得到的tracklet集中,不是同一个对象的tracklet,并截断;预训练模型是re-connection的一半;
整体架构如下
- 首先将图片输入CNN,提取出图像特征
;
- 然后将特征输入双向GRU(Gated Recurrent Unit,门循环单元),所有的GRU共享权重系数,输出为
正i为前向输入的输出,负i为反向输入的输出;
- 计算相邻向量(前向和后向对应的向量)的距离(即L与-L),得到一个Lk维的向量;
计算过程中找到向量中最大的那个数即为最佳的截断点,输出此截断点;如果向量中所有数都小于一个阈值,则说明此tracklet属于同一个对象,不需要截断;
Re-connection
整体框架图
结合多种损失函数来减少类内距离,增大类间距离;每一个GRU输出时有一个损失函数
分别为全局损失函数和局部损失函数;
全局损失计算
其中对比函数E(x,y)
多分类交叉熵函数F(x)
GRU的输出经过全连接层、ReLU层输出为
;
每个GRU的输出经过时间池化
局部损失
局部验证损失类似于三重态损失,包括同一条轨迹头尾、不同轨迹头、不同轨迹尾三个区别计算;
局部识别损失
状态的设置:
超过一帧不匹配该节点则设置为“lost",直到下一帧匹配该节点则更改为“tracked”,节点位置超出边界则设置为“quitted”;
踪迹连结:
放弃状态为quitted的tracklet;
重连接网络连接满足时空限制的tracklet;
最后,重连接输出满足约束的tracklet。
约束为
B(x)为bounding box;其中
论文使用AdamOptimizer训练网络。重连接后使用多项式曲线拟合填补tracklet之间的缝隙,并使用平滑函数平滑每一个tracklet。