CSR-DCF视频目标跟踪论文笔记(2)——关于滤波器Learning的推导(Augmented Lagrangian方法)

1. 论文基本信息

这篇笔记主要针对滤波器求解的推导过程进行分析(拉格朗日乘子法),主要参考内容是原文的补充材料,关于论文其他部分创新点及其整体思路会在后续文章中进行分析。(笔记1的链接:http://blog.csdn.net/discoverer100/article/details/78182306

2. 滤波器求解目标函数的构建

在多通道情况下,目标函数为

(1)argminhd=1Nd(fdhdg2+λhd2)=argminhd=1Nd(h^dHdiag(f^d)g^d2+λh^d2)

其中,h 表示滤波器,d=1toNd 表示Nd 个通道,g 表示期望的响应输出,λ 表示正则项用于防止过拟合(关于正则项为什么可以防止过拟合可以参考:http://www.cnblogs.com/alexanderkun/p/6922428.html

根据上述(1)式,为简化推导过程,将多通道情况改为单通道情况模式,则目标函数为

(2)argminhfhg2+λh2=argminhh^Hdiag(f^)g^2+λh^2

引入变量hc 并定义约束条件
(3)hchm=0

其中,hmmh ,而m 表示论文中的空间置信图(spatial reliability map),也可以理解为一个mask,具体概念可以参考前面的一篇文章:http://blog.csdn.net/discoverer100/article/details/78182306,上述(3)式中引入的变量hc 可以先不理会其物理意义,它的主要作用是让算法能够收敛(论文原文表述:prohibits a closed-form solution),个人猜测:这里的下标命名为c,可能就是取constrained的第一个字母。

对(2)式引入上述约束条件,并进一步调整,得到最终的目标函数

(4)argminhc,hmh^cHdiag(f^)g^2+λ2h^m2s.t.hchm=0

上述的正则项前面多出了一个系数1/2 ,其主要意图是求导数后系数可以变为1 ,便于公式书写。

这样,公式(4)就是我们推导的起始表达式。

3. 构建Lagrange表达式

根据上述目标函数,以及Augmented Lagrangian方法(参考Distributed optimization and statistical learning via the alternating direction method of multipliers),构建Lagrang表达式,如下

(5)L(h^c,h,I^|m)=h^cHdiag(f^)g^2+λ2hm2+[I^H(h^ch^m)+I^H(h^ch^m)¯]+μh^ch^m2

其中,字母I 表示Lagrange乘数,字母上面的横杠表示共轭矩阵,字母右上方的H 表示共轭转置矩阵,因此有规律:A¯T=AH (后面的推导中可能同时存在两种表示,需要留意)。将上述(5)式进行向量化表示,可得
(6)L(h^c,h,I^|m)=h^cHdiag(f^)g^2+λ2hm2+[I^H(h^cDFMh)+I^H(h^cDFMh)¯]+μh^cDFMh2

不难看出,上述(5)式到(6)式,主要变化就是将变量h^m 的表达式替换为DFMh ,其中F 表示离散傅里叶变换矩阵,它相当于一个常量,DF 的大小(F 是一个D×D 的方阵),M=diag(m)

将上述(6)式简单表述为四个项的和,为

(7)L(h^c,h,I^)=L1+L2+L3+L4

其中,
(8){L1=h^cHdiag(f^)g^2=(h^cHdiag(f^)g^)(h^cHdiag(f^)g^)¯TL2=λ2hm2L3=I^H(h^cDFMh)+I^H(h^cDFMh)¯L4=μh^cDFMh2=μ(h^cDFMh)(h^cDFMh)¯T

4. 开始优化,首先对h_c求偏导数

对上述公式(4)的优化可以表述为下面的迭代过程

(9)h^copt=argminhcL(h^c,h,I^)hopt=argminhL(h^copt,h,I^)

现在看关于变量h^c 的优化,需要令满足h^c¯L0 ,也就是
(10)h^c¯L1+h^c¯L2+h^c¯L3+h^c¯L40

对各个分量求偏导数,有
(11)h^c¯L1=h^c¯[(h^cHdiag(f^)g^)(h^cHdiag(f^)g^)¯T]=h^c¯[h^cHdiag(f^)diag(f^)Hh^ch^cHdiag(f^)g^Hg^diag(f^)Hh^c+g^g^H]=diag(f^)diag(f^)Hh^cdiag(f^)g^H0+0=diag(f^)diag(f^)Hh^cdiag(f^)g^H

(12)h^c¯L2=h^c¯[λ2hm2]=0

(13)h^c¯L3=h^c¯[I^H(h^cDFMh)+I^H(h^cDFMh)¯]=h^c¯[I^Hh^cI^HDFMh+I^Th^c¯I^TDFMh¯]=00+I^T0=I^

(14)h^c¯L4=h^c¯[μ(h^cDFMh)(h^cDFMh)¯T]=h^c¯[μ(h^ch^cHh^cDhHMFHDFMhh^cH+DFMhDhHMFH)]=h^c¯[μ(h^ch^cHh^cDhHMFHDFMhh^cH+DFMhhHMFH)]=μ(h^c0DFMh+0)=μh^cμDFMh

于是,上述公式(10)可以写成

(15)diag(f^)diag(f^)Hh^cdiag(f^)g^H+0+I^+μ(h^c0DFMh+0)0diag(f^)diag(f^)Hh^cdiag(f^)g^H+I^+μ(h^c0DFMh+0)0

回顾公式(6),我们曾将变量h^m 的表达式替换为DFMh ,现在我们将它替换回来,得
(16)diag(f^)diag(f^)Hh^cdiag(f^)g^H+I^+μ(h^c0h^m+0)0

针对h^c 合并同类项,得
(17)h^c[diag(f^)diag(f^)H+μ]=μh^m+diag(f^)g^HI^

于是,
(18)h^c=diag(f^)g^H+μh^mI^diag(f^)diag(f^)H+μ

根据对角矩阵的乘法性质以及相关滤波基础概念,我们可以将上述(18)式的表达进行简化,得
(19)h^c=f^g^+μh^mI^f^f^+μ

由于右上角得星号表示共轭矩阵,为与作者原文表述一致,也可用顶部的横杠表示,有
(20)h^c=f^g^¯+μh^mI^f^f^¯+μ

这样就完成了对变量h^c 的最优化求解,它对应论文官方源码中的变量G(位于create_csr_filter.m中)
G = (Sxy + mu*H - L) ./ (Sxx + mu);

5. 对变量h求解偏导数

前面的公式(10)-(20)都是针对变量h^c 求解偏导数,由于论文提出的Lagrange表达式中含有两个变量,现在还需要针对变量h¯ 求解偏导数,也就是

(21)h¯L1+h¯L2+h¯L3+h¯L40

首先回顾(8)式,也就是L1、L2、L3和L4这四个优化项
(8){L1=h^cHdiag(f^)g^2=(h^cHdiag(f^)g^)(h^cHdiag(f^)g^)¯TL2=λ2hm2L3=I^H(h^cDFMh)+I^H(h^cDFMh)¯L4=μh^cDFMh2=μ(h^cDFMh)(h^cDFMh)¯T

其关于变量h¯ 的偏导数为
(22)h¯L1=h¯[(h^cHdiag(f^)g^)(h^cHdiag(f^)g^)¯T]=0

(23)h¯L2=h¯[λ2hm2]=h¯[λ2mh2]=h¯[λ2(Mh)¯T(Mh)]=h¯[λ2hHMHMh]

观察(23)式,由于其中的M 表示论文定义的mask(也就是Spatial reliability map)的对角线元素,这个矩阵中的所有元素仅为0或者1,它们都是实数,因此(23)式中的MHM 可以简化表示为M ,于是,

(24)h¯L2=h¯[λ2hHMh]=h¯[λ2((hHMh)T)T]=h¯[λ2(hTMTh¯)T]=(λ2(hTMT))T=λ2Mh

2018年8月更新:特别注意,上述公式(24)推导过程有误,应改为如下(此处特别感谢CSDN网友weixin_41660496):

(24)ch¯L2=h¯[λ2hHMh]=h¯[λ2(h¯)TMh]=λ2Mh

(25)h¯L3=h¯[I^H(h^cDFMh)+I^H(h^cDFMh)¯]=h¯[I^Hh^cI^HDFMh+I^Th^c¯I^TDFMh¯]=00+0I^TDFM¯=DI^TF¯M¯=D(I^)T(FH)T(MH)T=D(MHFHI^)T=D(MFHI^)T

2018年8月更新:特别注意,上述公式(25)推导过程有误,应改为如下(此处特别感谢CSDN网友weixin_41660496):

h¯L3=h¯[I^H(h^cDFMh)+I^H(h^cDFMh)¯]=h¯[I^H(h^cDFMh)+I^Hh^c¯I^HDFMh¯]=h¯[I^Hh^cI^HDFMh+I^Th^c¯I^HDFMh¯]=h¯[I^Hh^cI^HDFMh+I^Th^c¯I^HDFMh¯]=h¯[I^Hh^cI^HDFMh+I^Th^c¯I^H¯D¯FMh¯]=h¯[I^Hh^cI^HDFMh+I^Th^c¯I^H¯DFMh¯]=h¯[I^Hh^cI^HDFMh+I^Th^c¯I^H¯DF¯M¯h¯]=00+0(I^H¯D)(F¯M¯)T=00+0(I^H¯D)M¯TF¯T=00+0(I^D)MTFH=DMTFHI^=DMFHI^

上述(25)式中,利用了矩阵D,M 为实数矩阵的性质,所以有M¯=M , D¯=D ,另外M 也是一个对角矩阵,因此MT=M

最后是L4项

(26)h¯L4=h¯[μ(h^cDFMh)(h^cDFMh)¯T]=h¯[μ(h^ch^cHh^cD(F¯M¯h¯)TDFMhh^cH+DFMh(F¯M¯h¯)T)]=h¯[μ(h^ch^cHh^cDhHMFHDFMhh^cH+DFMhhHMHFH)]=0h¯[μh^cDhHMFH]0+h¯[μDFMhhHMHFH]=[hH[μh^cDhHMFH]]T+[hH[μDFMhhHMHFH]]T=[hH[μDh^chHMFH]]T+[hH[μDFMhhHMHFH]]T=μD[(h^c)T(MFH)T]T+μD[(FMh)T(MHFH)T]T=μD[(MFH)T]T[(h^c)T]T+μD[(MHFH)T]T[(FMh)T]T=μDMFHh^c+μDMHFHFMh=μDMFHh^c+μDMHIMh=μDMFHh^c+μD(MM)h=μDMFHh^c+μDMh

上述(26)式末尾利用了MM=M ,这是因为M 表示空间置信图(Spatial reliability map),根据论文中的定义,矩阵M 中的元素要么为1,要么为0,因此MM=M

将上述(22)-(26)式代入到(21)式中,有

(27)λ2MhDMFHI^μDMFHh^c+μDMh=0

对上式中的Mh 进行合并同类项,有
(28)(λ2+μD)Mh=DMFHI^+μDMFHh^cMh=DMFHI^+μDMFHh^cλ2+μDMh=MDFH(I^+μh^c)λ2+μDMh=MDDFH(I^+μh^c)1D(λ2+μD)Mh=M1DFH(I^+μh^c)λ2D+μ

现在简单回顾一下傅里叶逆变换的定义
(29)F1(x^)=1DFHx^

据此,可以将上述(28)式表示为
(30)Mh=MF1(I^+μh^c)λ2D+μdiag(m)h=diag(m)F1(I^+μh^c)λ2D+μmh=mF1(I^+μh^c)λ2D+μ

由于论文中最优化表达式的约束为mmh (这里左边的h 实际上也就是hm ),因此上述(30)式也可以表示为
(31)h=mF1(I^+μh^c)λ2D+μ

上述(31)式就对应论文原文中的公式(10),相应的代码位于create_csr_filter.m中的变量H
H = fft2(real((1/(lambda + mu)) * bsxfun(@times, P, ifft2(mu*G + L))));

6. 小结

论文为求解最优的滤波器值,在原始目标函数的基础上,引入约束条件,利用Augmented Lagrangian方法构造最优化表达式,最后利用偏导数值为0的情况进行求解,这种利用拉格朗日最优化方法进行目标跟踪算法的建模思想值得我们学习,关于(25)式的转置问题,也欢迎大家共同讨论交流。


更多内容,请扫码关注“视觉边疆”微信订阅号

这里写图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章