https://blog.csdn.net/victoriaw/article/details/62416759

ASEF相关滤波器:

Average of Synthetic Exact Filters 
David S. Bolme, Bruce A. Draper, J. Ross Beveridge 
CVPR, 2009

相关滤波器可以用于物体定位。相关滤波器算法的思想是学习一个滤波器hh,然后和图像fifi进行卷积操作

 
$$
f(n) =
\begin{cases}
n/2, & \text{if $n$ is even} \\
3n+1, & \text{if $n$ is odd}
\end{cases}
$$
\( gi=fi∗hgi=fi∗h \)

得到相关信息图,图中值最大的点就是物体的位置。

训练数据中要提供图片对应的相关图gigi,怎么生成呢?最粗暴的办法就是把目标的中心位置设成1,其他为0。本文中作者将gg看作是以目标位置(xi,yi)(xi,yi)为中心的二维高斯分布:

 
gi(x,y)=e(x−xi)2+(y−yi)2σ2gi(x,y)=e(x−xi)2+(y−yi)2σ2

那么现在有了一组图片fifi及相关图gigi,怎么学习hh呢?

我们知道,空间上的卷积操作经过傅里叶变换在频域上就变成按元素相乘的操作(关于卷积)。所以对上式左右两边进行离散傅里叶变换DFT:

 
G(ω,ν)=F(ω,ν)⋅H∗(ω,ν)G(ω,ν)=F(ω,ν)⋅H∗(ω,ν)

这里不知道为什么是H的共轭??????? 
所以对每幅图片就有:

 
H∗i(ω,ν)=Gi(ω,ν)Fi(ω,ν)Hi∗(ω,ν)=Gi(ω,ν)Fi(ω,ν)

这里的除也是按元素相除。 
ASEF最终得到的滤波器为

 
H∗(ω,ν)=1N∑i=1NH∗i(ω,ν)=1N∑iGiFi(1)(1)H∗(ω,ν)=1N∑i=1NHi∗(ω,ν)=1N∑iGiFi
 
h(x,y)=1N∑i=1Nhi(x,y)h(x,y)=1N∑i=1Nhi(x,y)

MOSSE相关滤波器:

Visual objecting tracking using adaptive correlation filters 
David S. Bolme, J. Ross Beveridge, Bruce A. Draper, Yui Man Lui 
CVPR, 2010

这篇文章也出自ASEF的作者之手。本文作者针对的问题是目标跟踪,并且构造滤波器的方法和上文有所差别。 
对一幅图片,仍然有:

 
H∗i(ω,ν)=Gi(ω,ν)Fi(ω,ν)Hi∗(ω,ν)=Gi(ω,ν)Fi(ω,ν)

但是最终的滤波器不是采用平均,而是通过最小化误差平方和:

 
H=minH∑i|Fi⋅H∗−Gi|2H=minH∑i|Fi⋅H∗−Gi|2

怎么求解这个最优化问题?HH的每个元素都是独立的,所以可以单独求解:

 
Hων=minHων∑i|Fiων⋅H∗ων−Giων|2Hων=minHων∑i|Fiων⋅Hων∗−Giων|2

这个误差函数是凸函数,所以有一个最小值,那么可以令:

 
∂∂H∗ων∑i|Fiων⋅H∗ων−Giων|2=0∂∂Hων∗∑i|Fiων⋅Hων∗−Giων|2=0

于是:

 
∂∂H∗ων∑i(Fiων⋅H∗ων−Giων)(Fiων⋅H∗ων−Giων)∗=0∂∂Hων∗∑i(Fiων⋅Hων∗−Giων)(Fiων⋅Hων∗−Giων)∗=0

展开后得到:

 
∂∂H∗ων∑iFiωνF∗iωνHωνH∗ων−FiωνG∗iωνH∗ων−F∗iωνGiωνHων+GiωνG∗iων=0∂∂Hων∗∑iFiωνFiων∗HωνHων∗−FiωνGiων∗Hων∗−Fiων∗GiωνHων+GiωνGiων∗=0
 
∑iFiωνF∗iωνHων−FiωνG∗iων=0∑iFiωνFiων∗Hων−FiωνGiων∗=0
 
Hων=∑iFiωνG∗iων∑iFiωνF∗iωνHων=∑iFiωνGiων∗∑iFiωνFiων∗

于是有

 
H=∑iFi⋅G∗i∑iFi⋅F∗iH=∑iFi⋅Gi∗∑iFi⋅Fi∗
 
H∗=∑iGi⋅F∗i∑iFi⋅F∗i(2)(2)H∗=∑iGi⋅Fi∗∑iFi⋅Fi∗

上式用于在处理一个视频时对滤波器进行初始化,具体做法是对首帧图片,对跟踪窗口做仿射变换得到8个图片fifi,并得到对应的相关图片gigi。而在跟踪的时候,需要不断根据当前帧来调整滤波器,即在线更新:

 
H∗i=AiBi(3)(3)Hi∗=AiBi
 
Ai=ηGi⋅F∗i+(1−η)Ai−1Ai=ηGi⋅Fi∗+(1−η)Ai−1
 
Bi=ηFi⋅F∗i+(1−η)Bi−1Bi=ηFi⋅Fi∗+(1−η)Bi−1

本文取η=0.125η=0.125。训练和测试过程都要进行滤波器初始化和在线更新。

那么ASEF是否可以用在跟踪问题上呢?作者告诉你是可以滴。不同之处在于初始化使用的是公式(1),并且在线更新使用的是下面的公式:

 
H∗i=ηGiFi+(1−η)H∗i−1(4)

[转]计算机视觉之跟踪算法——相关滤波器Correlation Filter的更多相关文章

  1. 【目标跟踪】相关滤波算法之MOSSE

    简要 2010年David S. Bolme等人在CVPR上发表了<Visual Object Tracking using Adaptive Correlation Filters>一文 ...

  2. KCF跟踪算法 入门详解

    一.算法介绍 KCF全称为Kernel Correlation Filter 核相关滤波算法.是在2014年由Joao F. Henriques, Rui Caseiro, Pedro Martins ...

  3. 目标跟踪之相关滤波:CF及后续改进篇

    一. 何为相关滤波? Correlation Filter 最早应用于信号处理,用来描述两个信号之间的相关性,或者说相似性(有点像早期的概率密度),先来看定义: 对于两个数据 f 和 g,则两个信号的 ...

  4. 视觉目标跟踪算法——SRDCF算法解读

    首先看下MD大神2015年ICCV论文:Martin Danelljan, Gustav Häger, Fahad Khan, Michael Felsberg. "Learning Spa ...

  5. Video Target Tracking Based on Online Learning—TLD单目标跟踪算法详解

    视频目标跟踪问题分析         视频跟踪技术的主要目的是从复杂多变的的背景环境中准确提取相关的目标特征,准确地识别出跟踪目标,并且对目标的位置和姿态等信息精确地定位,为后续目标物体行为分析提供足 ...

  6. Real-Time Compressive Tracking,实时压缩感知跟踪算法解读

    这是Kaihua Zhang发表在ECCV2012的paper,文中提出了一种基于压缩感知(compressive sensing)的单目标跟踪算法,该算法利用满足压缩感知(compressive s ...

  7. 挑战目标跟踪算法极限,SiamRPN系列算法解读

    商汤科技智能视频团队首次开源其目标跟踪研究平台 PySOT.PySOT 包含了商汤科技 SiamRPN 系列算法,以及刚被 CVPR2019 收录为 Oral 的 SiamRPN++.此篇文章将解读目 ...

  8. 比微软kinect更强的视频跟踪算法--TLD跟踪算法介绍

    转自:http://blog.csdn.net/carson2005/article/details/7647500 TLD(Tracking-Learning-Detection)是英国萨里大学的一 ...

  9. TLD视觉跟踪算法(转)

    源:TLD视觉跟踪算法 TLD算法好牛逼一个,这里有个视频,是作者展示算法的效果,http://www.56.com/u83/v_NTk3Mzc1NTI.html.下面这个csdn博客里有人做的相关总 ...

随机推荐

  1. 初入码田--ASP.NET MVC4 Web应用开发之二 实现简单的增删改查

    初入码田--ASP.NET MVC4 Web应用之创建一个空白的MVC应用程序 初入码田--ASP.NET MVC4 Web应用开发之一 实现简单的登录 2016-07-29  一.创建M002Adm ...

  2. python自动化之读写

    ############################################################################# #############在Windows上 ...

  3. python中文档IO的读写

    首先明确一点,现代计算机的操作系统都不允许程序直接操作磁盘的,所以读取文件和写入文件都是有操作系统提供的提供的接口完成的,每一种编程语言都会把操作系统提供的低级C接口封装起来方便使用,Python也不 ...

  4. 【codeforces 765F】 Souvenirs

    http://codeforces.com/problemset/problem/765/F (题目链接) 题意 给出$n$个数的序列,$m$次询问,每次查询区间$[l,r]$之间相差最小的两个数的差 ...

  5. uoj50【UR#3】链式反应

    题解: 令$a(x)$为破坏死光的$EFG$,$f(x)$为方案的$EGF$:$f(x) = x + \int \  \frac{1}{2} f^2(x) a(x) \  dt$; 注意到$f(0)= ...

  6. win10不能被远程解决方案(开启远程桌面,防火墙仍不能被远程解决方案)

    开启远程桌面,防火墙仍不能被远程解决方案 1.“Win+R”→“gpedit.msc” 2.依次展开“计算机配置”→“管理模版”→“系统”→“凭据分配”→找到“允许分配保存的凭据用于仅NTLM服务器身 ...

  7. CentOS 6.6搭建LNMP环境

    一.安装前 1.关闭linux的安全机制 vim /etc/selinux/config SELINUX=enforcing  改为  SELINUX=disabled 2.关闭iptables防火墙 ...

  8. CentOS7防火墙firewalld使用

    1.firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status f ...

  9. pg删除账号,权限的回收问题

    在pg中删除账号时,一般不能直接删除账号,要先将该账号上所有的对应权限收回,但往往这一步是比较繁琐的,可能当时赋权的对象类型很多,对象也比较多,虽然可以通过sql按照类型来收回针对整个schema的所 ...

  10. C++命名规则 (转载仅作参考)

    如果想要有效的管理一个稍微复杂一点的体系,针对其中事物的一套统一.带层次结构.清晰明了的命名准则就是必不可少而且非常好用的工具. 活跃在生物学.化学.军队.监狱.黑社会.恐怖组织等各个领域内的大量有识 ...