目标跟踪算法
一.互相关运算
给你一张我的正脸照(没有经过美颜处理的),你该如何在人群中找到我呢?一种最直观的方案就是:“谁长得最像就是谁”。但是对于计算机来说,如何衡量“长得像”,并不是个简单的问题。这就涉及一种基本的运算——互相关(cross-correlation)。互相关运算可以用来度量两个信号之间的相似性。在离散的图像空间中,它的数学定义是这样的:
h和 f分别为核和图像,代表着要搜索的目标模版和存在要搜索的目标的图像。如果这个公式对你来说有点难以理解,那你又能否记起离散图像空间卷积运算的定义:
从公式看,它俩不就是把 h水平、垂直分别翻转一下的关系嘛!实际上,在很多机器学习库的实现中,所谓的“卷积”就是通过互相关运算来实现的——反正卷积核中的所有参数都是通过优化得到的、物理意义不明的值,它要做的仅仅是“在卷积核合适的位置学习合适的值”。严格使用卷积运算学习得到的核,等价于使用互相关运算学习到的核的180度翻转。
互相关运算让得以衡量 h与 f的相似度,互相关得到的响应图中每个像素的响应高低代表着每个位置相似度的高低。假设目标存在于新一帧图像
f中的话,那么在 h和 f对得最齐的地方就应该是目标中心的位置了!
一些难点:目标的形状、大小甚至身处的环境都是在不断发生变化的。在考虑这些变数的同时,如何学习目标不变的那些特性,从而准确地进行定位呢?或者说,如何让核
h能够通过与 f的互相关运算来最有效地得到响应呢?这也就是单目标跟踪主流方法所尝试的思路。
定义则是响应图的ground truth。因为处理的是一个连续的图像序列,所以还存在下标
i通过对上式中的 h对整个图像序列进行优