计算机视觉之目标跟踪

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

一、单目标跟踪

产生候选box方法:
滑动窗口(穷举法)即目标附近所有可能的样本作为候选样本
为了避免匹配整个图像的box,估计物体的运动(通过运动模型),在下一帧物体可能出现的位置处产生候选box。
粒子滤波(Particle Filter)

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

2.判别式(针对前景和背景训练分类器,把跟踪问题视为分类问题,需要计算特征和分类器):
问题就是在下一帧图像如何产生候选box?
传统的目标跟踪方法(在线学习)
仅使用一个图像块来训练分类器(输入正样本和负样本),相对于离线学习来说,仅使用少量的训练集,即先前帧的box。

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

在这里插入图片描述
3.Bag of Patch(使用KNN获取目标位置,不用训练分类器,但依旧使用了前一个帧中的正负样本)
对于预测图像,获取多个patch(根据运动模型在预测位置周围获取),同前序帧的patch和label做KNN,便可得到预测对象出现的位置。
在这里插入图片描述

更新分类器:
仅使用前一帧的跟踪结果来训练分类器有可能跟丢了,提出了anchor方法,使用第一帧目标和当前帧的目标来训练分类器。
在这里插入图片描述

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

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

猜你喜欢

转载自blog.csdn.net/m0_37937932/article/details/86004150