计算机视觉之目标跟踪

跟踪定义:
在一系列的图像中,标注出关于运动物体的可能位置。

一、单目标跟踪

产生候选box方法:
滑动窗口(穷举法)即目标附近所有可能的样本作为候选样本
由于两帧图像之间目标的位移不会发生明显的变化,因而,可以估计在下一帧物体可能出现的位置,在附近产生多个候选box。
粒子滤波(Particle Filter)

如何为候选样本评分:
三种方式!
1.生成式:模板匹配(需要估计运动模型的),得到patch描述(可以是灰度像素值,梯度方向直方图,HOG),估计下一帧图像可能出现的位置,得到一系列的patch并获取其描述,计算相似度。

2.判别式(针对前景和背景训练分类器,把跟踪问题视为分类问题,需要计算特征和分类器):

在线学习
仅使用一个图像块来训练分类器(输入正样本和负样本),相对于离线学习来说,仅使用少量的训练集,即先前帧的box。

多示例学习(Multiple Instance Learning)
构造正样本包!即用确定的目标box和在其周围像素进行采样得到的patch来形成包(由于包含确定目标的box,肯定是正样本包啦),通过正样本包和负样本来训练分类器。通过构造样本包可以有效地防止形变、遮挡、位置偏移的问题

计算机视觉之目标跟踪_第1张图片
3.Bag of Patch(使用KNN获取目标位置,不用训练分类器,但依旧使用了前一个帧中的正负样本)
对于预测图像,获取多个patch(根据运动模型在预测位置周围获取),同前序帧的patch和label做KNN,便可得到预测对象出现的位置。
计算机视觉之目标跟踪_第2张图片

更新分类器:
仅使用前一帧的跟踪结果来训练分类器有可能跟丢了,提出了anchor方法,使用第一帧目标和当前帧的目标来训练分类器。
计算机视觉之目标跟踪_第3张图片

二、多目标跟踪
核心问题:
 Data association
Assignment problems
Discrete combinatorial optimization

具体来说,有两种方法:
ABT(association based track)和CFT(category free track)
计算机视觉之目标跟踪_第4张图片
ABT依赖的是预训练好的detector,用在知道对象是什么(且对象类型属于同一种)的跟踪上,在之后的帧中进入新的物体,也能跟踪。而且对于每个跟踪的物体会形成一个轨迹。
CFT需要在第一帧进行标注,在后续帧上找到一个Object,是单目标的跟踪的扩充,相比单目标跟踪会考虑到多个目标的关系,如果在之后帧加入物体,无法追踪。
关于两种方法的比较:
计算机视觉之目标跟踪_第5张图片当前帧检测的对象o4对应于上一帧的哪个对象呢?从下图中方形和三角形的得分差不多,该如何匹配?(每个对象在不同的帧位置形成一个track)
计算机视觉之目标跟踪_第6张图片
可以使用贪心算法分配分类器,但最好的是Hungarian算法,能获得获得全局最优。
计算机视觉之目标跟踪_第7张图片计算机视觉之目标跟踪_第8张图片

你可能感兴趣的:(计算机视觉,计算机视觉)