SORT:
论文地址:http://arxiv.org/pdf/1602.00763.pdf
代码地址:https://github.com/abewley/sort
deep-SORT:
论文地址:https://arxiv.org/pdf/1703.07402.pdf
代码链接:https://github.com/nwojke/deep_sort
SORT篇
文章方法
将tracking对象状态传播到未来的帧中(主要使用卡尔曼滤波以及线性速度的假设),将当前的检测与现有的对象相关联,并管理被跟踪对象的age。
1. 目标检测
使用Faster-RCNN进行detection,文章通过对比来说明detection的质量对后续的tracking至关重要。(我们可以使用yolo以及ssd等网络进行目标检测,以提高速度以及精度)
2. 估计模型
当检测与目标相关联时,检测到的边界框用于更新目标状态,其中速度分量通过卡尔曼滤波框架最优地求解;
如果target没有跟detection相连,就用线性速度模型对taeget进行预测;(线性速度模型的预测错误率较高)
3. 数据组合
在将detection分配给现有track时,通过预测其在当前帧中的新位置来估计每个目标
使用每个detection和所有预测的bonding box的IOU距离来计算assignment cost matrix;
小于IOU阈值的assignment 会被拒绝,源码中阈值设置为0.3;
文章指出使用IOU distance 可以解决 tracking 中的短暂遮挡问题,这是由于IOU distance更倾向于检测相交尺寸,在图片有部分遮挡的情况下,IOU变化不是很大,但遮挡面积很大时,必然有影响。如果遮挡时间较长会重新分配track,造成出错。