从MOSSE到KCF,核化相关滤波器的历程

开山鼻祖—-MOSSE

  MOSSE算法开启了相关滤波器的大门,提出以滤波器求相关的形式来获取输出响应,进而获得最大响应处的位置也即我们期望跟踪的目标中心位置。


这里写图片描述

上式中F为输入图像,G为输出响应,H*为我们需要训练得到的滤波器模板。
   我们先拿第一帧来说,第一帧会给出我们所有的信息,包括要跟踪目标的bounding box.这个时候如果输入的是bounding box,我们期望的输出是图像块中心的响应最大。为了满足这个目的,我们选取以图像块中心输出为峰值的高斯函数为我们的期望输出,这样就保证了中心的响应最大。也就是中心的特征使我们最想要的。有了F,有了G,接下来就是求解H*了。

这里写图片描述

  上式就是对应的目标函数,让Fi与H*的点乘结果尽可能的接近期望输出Gi。这个地方如果仅仅以第一帧给定的bounding box为训练样本就过于单一,容易产生过拟合。于是,作者这里通过对groundtruth中的bounding box进行随机仿射变换产生8个样本进行训练,对上式进行最小值求解获得最终的H*,如下式。

这里写图片描述

   对于训练好的滤波器,我们就可以拿来对下一帧进行目标位置检测了。对于下一帧,我们以第一帧的groundtruth的中心为中心在第二帧中取对应大小的待检测区域,然后用训练的H对其进行响应输出,响应最大处就是我们这一帧的target中心,接着以这个点为中心画出bounding box。第三帧再以上一帧检验出的中心接着框出待检验区域,同时更新H后进行响应输出,如下图所示。

从MOSSE到KCF,核化相关滤波器的历程_第1张图片

   模型的更新策略如下:其中的η为一个经验值。

从MOSSE到KCF,核化相关滤波器的历程_第2张图片

不足:
1.特征输入为原始灰度像素,过于简单。
2.没有考虑目标尺度的变化
3.不够鲁棒,对于简单的视频流可以跟得上,比较难的就容易跟丢。

承上启下CSK

相比于MOSSE算法,CSK算法主要在以下几个方面有了实质性进展。

1.CSK提出了稠密采样,对于整张图的特征利用更加充分,但是也难免会有很多冗余信息。我们可以从移动基样本也即目标的角度去看这个采样过程,是不是基样本的循环移位操作可以近似采样窗口的位移。这就提供了采样样本与循环矩阵进行结合的渠道。


从MOSSE到KCF,核化相关滤波器的历程_第3张图片

2..结合 核函数将原来的线性空间问题映射到非线性空间,解决了低维线性不可分问题。

这里写图片描述
这里写图片描述
从MOSSE到KCF,核化相关滤波器的历程_第4张图片
其中K为核相关矩阵,y为期望输出。公式中含有求逆的过程,这个计算是比较复杂的,为了简化运算,提高跟踪速度。我们将其转换到频域中,并结合循环矩阵的性质得到频域中的解。

这里写图片描述

可以看到等式中完全消除了求逆这种运算,求解系数阿尔法的过程变得简便很多。这也为以后的KCF打下数学上的基础。最后的输出响应如下图,点乘后变回时域。

这里写图片描述

画龙点睛KCF

   相比上面的算法,KCF是在特征选取和多通道特征核相关方面做出了贡献。CSK的特征输入任然是单通道的灰度像素,而KCF利用的是HOG多通道特征,核函数利用的是高斯核函数。其中由单通道特征拓展到多通道特征这一点应用价值很大,因为很多有用的特征比如:hog,cn都是多通道特征。这些特征对于跟踪的效果会有很大的改善。因此,CSK和KCF的结合才是完整的核化相关滤波器的演变过程,既有循环矩阵傅里叶对角化的利用来简化计算,又有对单通道特征应用的拓展,可以适应更多优秀的特征描述子。这才有了以后那么多基于相关滤波器的种种优秀算法。最后拿网上一个图解释一下,核化相关滤波器的跟踪过程。


从MOSSE到KCF,核化相关滤波器的历程_第5张图片

左图:
   假设左图为 第一帧,红色虚线为给定的boundingbox,红色实线是人为框定的特征提取区域,也即待检测区域。其它各种颜色的实线就是循环移位采样的各个框。对于第一帧来说肯定红色实线框对应最大的输出响应值 ,其他颜色的框对应的输出响应值就是框中心对应的高斯分布值。什么意思呢?就是我们以红色实线框的中心为中心对红色实线框区域按照高斯函数对每个像素点标注对应的值,然后红色实线框就对应框中心的高斯值也即是label,白色实线框就业对应自己框中心对应的值,肯定没红色的大。
右图:
   当下一帧图像读入之后,首先在预测区域内(红色实线框内)进行区域内采样,然后对该采样进行循环移位得到周围的候选区域框,其实这些候选框和上一帧循环移位产生的样本很相似,所以使用分类器对这些候选框计算响应,显然这时候白色框响应最大,因为和前一帧中的红色实线框一样,而相对来说蓝色框的响应值就和上一帧移位到这个未知的样本响应值很接近,最后通过白色框的相对移位就能推测目标的位移了。

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