赞
踩
论文题目:High-Speed Tracking with Kernelized Correlation Filters
作者主页:http://www.robots.ox.ac.uk/~joao/circulant/
在非线性回归条件下,最终的滤波器解为
α ^ = y ^ k ^ x x + λ (1) \hat \alpha {\rm{ = }}\frac{ { {\bf{\hat y}}}}{ { { { \bf \hat k}^{ {\bf{xx}}}} + \lambda }} \tag1 α^=k^xx+λy^(1)
其中,若采用高斯核,则
KaTeX parse error: Undefined control sequence: \cal at position 144: …ght\|}^2} - 2{ {\̲c̲a̲l̲ ̲F}^{ - 1}}\left…
以下是该公式的推导过程。
该过程包含两个方面:
(1)将线性滤波器的解 w \bf w w1用样本的线性组合来表示
w = ∑ i α i φ ( x i ) (3) {\bf{w}} = \sum\limits_i { {\alpha _i}\varphi \left( { { {\bf{x}}_i}} \right)} \tag 3 w=i∑αiφ(xi)(3)
在这样的条件下,最优化下的变量不再是 w \bf w w,而是 α \bf \alpha α。该表达式是在对偶空间中进行的(此处需要参考SVM相关理论,此处不再赘述)。
(2)用点积进行表示:
KaTeX parse error: Undefined control sequence: \cal at position 74: …}}} \right) = {\̲c̲a̲l̲ ̲K}\left( { {\bf{…
因此,在线性条件下的回归问题: f ( z ) = w T z f\left( {\bf{z}} \right) = { {\bf{w}}^T}{\bf{z}} f(z)=wTz,经过非线性变换后的表达式为
KaTeX parse error: Undefined control sequence: \cal at position 253: …{ {\alpha _i}} {\̲c̲a̲l̲ ̲K}\left( { {\bf{…
其中 n n n表示 n n n个训练样本(参考KCF论文4.2节末尾及5.1节公式(15)相关表述)。
在核函数情况下,岭回归问题的解为
α = ( K + λ I ) − 1 y (6) {\bf{\alpha }} = {\left( {K + \lambda I} \right)^{ - 1}}{\bf{y}} \tag 6 α=(K+λI)−1y(6)
其中, α \bf \alpha α是由各个系数 α i \alpha_i αi组成的向量, K K K是核矩阵,其各个元素的定义是:KaTeX parse error: Undefined control sequence: \cal at position 8: K_{ij}=\̲c̲a̲l̲ ̲K \left( {\bf x…, λ \lambda λ是正则项系数。里面的 x \bf x x和 y \bf y y都是训练集中的数据。公式(6)的推导过程可以参考Max Welling的Kernel ridge Regression,此处不再赘述。
利用循环矩阵的有关特性,对公式(6)进行对角化处理,可以提高计算效率。
训练时,采集一个感兴趣的图像块,将其拉伸为一个列向量作为基础样本(base sample),记作KaTeX parse error: Unknown column alignment: * at position 35: …{\begin{array}{*̲{20}{c}}{
{x_1}}…,现在给定一个置换矩阵(permutation matrix)
KaTeX parse error: Unknown column alignment: * at position 28: …{\begin{array}{*̲{20}{c}} 0&0&0&…
尝试计算 P 0 x {P^0}{\bf{x}} P0x,得KaTeX parse error: Unknown column alignment: * at position 42: …{\begin{array}{*̲{20}{c}}{
{x_1}}….
尝试计算 P 1 x {P^1}{\bf{x}} P1x,得KaTeX parse error: Unknown column alignment: * at position 34: …{\begin{array}{*̲{20}{c}}{ {x_n}}….
尝试计算 P 2 x = P ( P x ) {P^2}{\bf{x}}=P \left( P \bf x \right) P2x=P(Px),得KaTeX parse error: Unknown column alignment: * at position 34: …{\begin{array}{*̲{20}{c}}{ {x_n-1….
…
尝试计算 P n − 1 x = P … ( P x ) {P^{n-1}}{\bf{x}}=P \dots \left( P \bf x \right) Pn−1x=P…(Px),得KaTeX parse error: Unknown column alignment: * at position 34: …{\begin{array}{*̲{20}{c}}{ {x_2}}….
由此可以将上述 x 1 , x 2 , … , x n {\bf x}_1, {\bf x}_2, \dots, {\bf x}_n x1,x2,…,xn向量组合起来,构成一个循环矩阵 X X X.
首先指出该重要结论(即KCF论文中的Theorem 1):假设存在一种核函数KaTeX parse error: Undefined control sequence: \cal at position 1: \̲c̲a̲l̲ ̲K,满足KaTeX parse error: Undefined control sequence: \cal at position 2: {\̲c̲a̲l̲ ̲K} \left( {\bf …,那么相关核矩阵 K K K也是循环矩阵,且 K = C ( k x x ) K=C\left( {\bf k}^{\bf xx} \right) K=C(kxx),其中 M M M是一种置换矩阵(permutation matrix), k x x {\bf k}^{\bf xx} kxx是相关核矩阵 K K K的第一行,现在证明 K = C ( k x x ) K=C\left( {\bf k}^{\bf xx} \right) K=C(kxx).
证明:根据矩阵 K K K的定义KaTeX parse error: Undefined control sequence: \cal at position 8: K_{ij}=\̲c̲a̲l̲ ̲K \left( {\bf x…,其中 x i {\bf x}_i xi表示训练样本集 X X X中的一个移位样本(参考KCF论文4.1节中的表述),可以将矩阵 K K K表示为如下矩阵(假设矩阵有4行4列):
数据内容: | |||
---|---|---|---|
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{12}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{13}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{14}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{21}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{22}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{23}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{24}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{31}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{32}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{33}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{34}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{41}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{42}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{43}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{44}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
同时根据定义, k x x {\bf k}^{\bf xx} kxx(即 k x 1 x 1 {\bf k}^{ {\bf x}_1{\bf x}_1} kx1x1)是核矩阵 K K K的第一行,也可以将 k x x {\bf k}^{\bf xx} kxx表示为如下向量:
数据内容: | |||
---|---|---|---|
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{12}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{13}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{14}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
现在,观察 K 11 K_{11} K11和 K 22 K_{22} K22,从矩阵数据可知,则
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x…
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{22}=\̲c̲a̲l̲ ̲K \left( {\bf x…
而KaTeX parse error: Undefined control sequence: \cal at position 2: {\̲c̲a̲l̲ ̲K} \left( {\bf …,其中 M M M是一种置换矩阵(permutation matrix),因为训练数据集 X X X为循环矩阵(参考线性滤波器的解 w \bf w w1),而在循环矩阵中, x 2 {\bf x}_2 x2可以由一个置换矩阵(permutation matrix)乘以它前面的 x 1 {\bf x}_1 x1得到,也就是 x 2 = M x 1 {\bf x}_2 = M{\bf x}_1 x2=Mx1,从而KaTeX parse error: Undefined control sequence: \cal at position 2: {\̲c̲a̲l̲ ̲K} \left( {\bf ….
另外前面已经做好假设,存在一种核函数KaTeX parse error: Undefined control sequence: \cal at position 1: \̲c̲a̲l̲ ̲K,满足KaTeX parse error: Undefined control sequence: \cal at position 2: {\̲c̲a̲l̲ ̲K} \left( {\bf …,这样可以得出结论 K 11 = K 22 K_{11}=K_{22} K11=K22,同理,还可以得出: K 12 = K 23 K_{12}=K_{23} K12=K23、 K 13 = K 24 K_{13}=K_{24} K13=K24、 K 14 = K 21 K_{14}=K_{21} K14=K21…这样可以得出矩阵 K K K的另一种表示:
数据内容: | |||
---|---|---|---|
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{12}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{13}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{14}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{14}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{12}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{13}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{13}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{14}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{12}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
KaTeX parse error: Undefined control sequence: \cal at position 8: K_{12}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{13}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{14}=\̲c̲a̲l̲ ̲K \left( {\bf x… | KaTeX parse error: Undefined control sequence: \cal at position 8: K_{11}=\̲c̲a̲l̲ ̲K \left( {\bf x… |
观察该矩阵数据,可以发现该矩阵的第二行是第一行的位移,第三行又是第二行的位移…,这就是 C ( k x x ) C\left( {\bf k}^{\bf xx} \right) C(kxx),因此
K = C ( k x x ) (7) K=C\left( {\bf k}^{\bf xx} \right) \tag 7 K=C(kxx)(7)
证明完毕。
进一步结合本笔记2.1节中关于置换矩阵(permutation matrix)的移位作用,我们有
KaTeX parse error: Undefined control sequence: \cal at position 22: …{\bf{xx'}}} = {\̲c̲a̲l̲ ̲K}\left( {
{\bf{…
从核函数角度来看,上式即为
k i x x ′ = ϕ T ( x ′ ) ϕ ( P i − 1 x ) (7.2) k_i^{
{\bf{xx'}}} = {\phi ^T}\left( {
{\bf{x'}}} \right)\phi \left( {
{P^{i - 1}}{\bf{x}}} \right) \tag {7.2} kixx′=ϕT(x′)ϕ(Pi−1x)(7.2)
从前述公式(6)开始,利用2.2节的重要结论,将公式(6)中的矩阵 K K K用 C ( k x x ) C\left( {\bf k}^{\bf xx} \right) C(kxx)代替,得到下式:
α = [ C ( k x x ) + λ I ] − 1 y = [ F d i a g ( k ^ x x ) F H + λ I ] − 1 y (8)
公式(8)中的 C ( k x x ) C\left( {\bf k}^{\bf xx} \right) C(kxx)可以用 F d i a g ( k ^ x x ) F H {F{\rm{diag}}\left( { { { {\bf{\hat k}}}^{ {\bf{xx}}}}} \right){F^H}} Fdiag(
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。