Object Tracking: A Survey

这篇文章是一篇经典的有关目标跟踪的review paper,由于最近在看相关的文献,把这篇文章找出来看一看,顺便写写相关的总结。
download

Introduction

目标跟踪是计算机视觉领域重要的一个任务,在视频分析中有三个重要步骤:感兴趣的运动物体检测,运动物体的跟踪以及根据运动分析行为。目标跟踪的应用点有基于运动的目标识别,智能监控,视频索引,人机交互,交通监控,车辆导航。

目标跟踪问题面临的挑战包括:3D物体向2D投影的信息损失,图像噪声,目标运动复杂,非刚性物体的跟踪,目标会出现遮挡,目标形状复杂,场景光照变换以及实时跟踪的需求。

目标跟踪问题一般都会有一定的假设来简化问题,比如假设目标运动是平滑的或者加速运动是均匀的,或者目标的数量是确定的。

Object Representation

目标表示形式有很多种:

Shape Representations

  1. ,把目标表示成一个点或者一系列点,这种方法适用于跟踪小范围的目标。
  2. 几何形状, 把目标表示成一个长方形或者是椭圆等等,这种时候,目标运动就可以表示成这种几何形状的平移、旋转、仿射变换等等。这种表示方式适合简单的刚性物体,也可以用于跟踪非刚性物体。
  3. 目标的轮廓,用目标轮廓来确定目标的范围,在轮廓内部的称为目标的剪影,这种表示方法适合于简单的非刚性物体。
  4. 铰链式的形状模型,通过把目标分成一个个部分,连接各个部分来表示一个目标,比如人体就可以分成头、胳膊、手掌、脚等部分,而各个部分之间通过运动模型来相互关联。
  5. 骨骼模型,目标的骨骼模型可以用于建模有关节的和刚性目标。

Object representation

Appearance Representations

  1. Probability densities of object appearance,The probability densities of object appearance features (color, texture) can be computed from the image regions specified by the shape models (interior region of an ellipse or a contour).
  2. Template,用简单的几何形状或者是剪影合成Template,但是Template只适合目标姿势变化不是很大的情况。
  3. Active appearance models, 对目标形状和外观同时建模可以得到Activce appaerance models, 目标的形状一般是a set of landmarks,对于每一个landmark,表示成颜色、纹理或是梯度的一个向量。
  4. Multiview appearance models,组合多个角度的目标信息。 One approach is to generate a subspace from the given views, 可以通过PCA和ICA实现。 Another approach is by training a set of classifiers。

Feature selection for tracking

最佳的特征是可以将目标很容易分辨出来的特征,特征选择和目标的表示密切相关,例如在使用直方图表示目标时,一般使用颜色特征;在使用目标的轮廓来表示目标时,一般使用目标的角点来作为特征。

  1. 颜色, 有RGB、LUV、LAB、HSV等颜色空间可以选择,但是颜色特征比较容易受到噪声影响。
  2. ,边的一个重要性质就是不易受到光照变化的影响,而且比较容易实现。
  3. 光流,光流假定光照不变,定义了区域内每个像素的位移量。一般光流用在分割和跟踪问题中。
  4. 纹理,纹理用来表示物体表面的平滑性和规则性。和颜色特征相比,产生纹理特征需要多一步处理的过程。和边特征类似,纹理特征也对光照变化比较鲁棒。

Object Detection

目标跟踪需要一个目标检测工具,一般的目标检测算法使用单帧中的信息,也有一些算法使用时间信息来减少错误检测,比如计算连续帧之间的差值,在连续的帧之中高亮那些变化的区域。

Point Detectors

点检测器有Harris、KLT、SIFT等。一篇关于点检测器的论文A Performance Evaluation of Local Descriptors
Harris角点用了一阶微分作为特征$(I_x,I_y)$,用下面的式子表示一个pixel的值。
Harris
详细的Harris角点的资料可以在网上找找。
还有KLT角点和SIFT角点也很常用。

Background Subtraction

背景减除的过程描述:建立背景模型,对于每帧计算偏差,变化较大的区域就是移动的目标。
Background Subtraction
可以用GMM对每个像素点建模,分离前景和背景。还可以结合其他信息,比如纹理信息,以应对光照变换等情况。还有使用HMM建模,用特征值分解等方法。以上的这些方法都是针对静止背景的。对于Time-vary background,有一种ARMA的模型可以用来解决。

Segmentation

分割的任务是把图片分成一些类似的区域。对分割算法,最重要的是分割结果的评价和分割的方法。

Mean-shift Clustering

用mean-shift分割的思想来进行tracking。
Mean-shift

Image Segmentation Using Graph-Cuts

用过minimum cut来做segmentation,graph的weight是根据color similarity决定的
,这个方法的问题在于可能出现oversegmentation, Normailized cut可以解决这个问题。

Active Contour

对一个能量函数的优化得到目标区域的轮廓。
Active Contour

Supervised Learning

用监督学习的方式学习分类器,将目标和非目标的物体分离开,有很多样的方法,神经网络、决策树、adaboost、SVM等。对于数据那个小的问题,可以用联合学习的方式解决。文章详细介绍了adaboost和SVM。

Object Tracking

Object Tracking taxonomy

  1. Point Tracking,目标用点表示,这种方法需要另外的检测方法。
  2. Kernel Tracking,Kernel refers to the object shape and appearance。目标跟踪一般通过带参的形变,比如平移、旋转和仿射变换。
  3. Silhouette Tracking,估计目标区域来进行跟踪,一般用区域内的信息,表示形式有appearance density和shape models。

Point Tracking Methods

Point Tracking Methods

Kernel Tracking

inlcude two subcategories: templates and density-based appearance models, and multiview appearance models.

Tracking Using Template and Density-Based Appearance Models

  • single object, 1)template matching, a brute force search method.由于搜索代价比较大,所以一般搜索空间限定在上一帧位置附近。2)mean-shift。3)多个模块结合的跟踪器。4)光流法。
  • multiple objects, 1)Tao et al. [2002] propose an object tracking method based on modeling the whole image as a set of layers。为整个图像建立多层模型,背景和各个目标都有自己的模型。2)Isard and MacCormick [2001] propose joint modeling of the background and foreground regions for tracking,用混合高斯模型作为前景和背景的模型。

Tracking Using MultiviewAppearance Models

上面的方法是用直方图、templates这样的模型来表示目标,在相邻帧之间如果出现比较大的变化,模型可能就不可靠了。使用离线学习的multiview的模型可以克服这个缺点。
文章举了两个例子,一种方法是用PCA,一种是用SVM。

Kernel Tracking Methods

Silhouette Tracking

不能用一般的形状表示的物体,可以用Silhouette来精确刻画。可以把Silhouette tracking分为shape matching approaches和contour tracking approaches。


Object Tracking: A Survey
http://yoursite.com/2016/06/05/Object-Tracking-A-Survey/
Author
John Doe
Posted on
June 5, 2016
Licensed under