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. 如何选择mysql存储引擎

    一.MySQL的存储引擎 完整的引擎说明还是看官方文档:http://dev.mysql.com/doc/refman/5.6/en/storage-engines.html 这里介绍一些主要的引擎 ...

  2. Mac突然连不上WiFi

    标签(空格分隔): 杂七杂八的问题 从昨晚开始,Mac突然连不上WiFi了,人又在图书馆,上不了网好焦急.于是搜了很多方法,也不知是哪个起作用了,反正现在可以了. 步骤一 打开"Finder ...

  3. STL 算法中函数对象和谓词

    STL 算法中函数对象和谓词 函数对象和谓词定义 函数对象: 重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象.一个类对象,表现出一个函数的特 ...

  4. MT【120】保三角函数

    评:1.这里处理第三个函数时用到$ab-a-b=(a-1)(b-1)-1$是处理$ab,a+b$之间加减的常见变形. 2.第二个函数$g(x)=sinx,x\in(0,\frac{5\pi}{6})$ ...

  5. 【spring学习笔记二】Bean

    ### bean的三种实例化方式: 1.构造 2.静态工厂 3.实例工厂 其中,工厂就是工厂的概念,工厂函数factor-method会返回她生产出来的产品类. 而构造初始化也可以选择初始化方式和销毁 ...

  6. BZOJ 2724 蒲公英 | 分块模板题

    题意 给出一个序列,在线询问区间众数.如果众数有多个,输出最小的那个. 题解 这是一道分块模板题. 一个询问的区间的众数,可能是中间"整块"区间的众数,也可能是左右两侧零散的数中的 ...

  7. 【IOI 2018】Doll 机械娃娃

    我感觉这个题作为Day2T1,有一定的挑战性.为$Rxd$没有完成这道题可惜. 我觉得这道题,如果按照前几个部分分的思路来想,就有可能绕进错误的思路中.因为比如说每个传感器最多只在序列中出现$2$次, ...

  8. 【Cf #291 B】R2D2 and Droid Army(二分,线段树)

    因为题目中要求使连续死亡的机器人最多,令人联想到二分答案. 考虑如何检验这之中是否存在一段连续的长度为md的区间,其中花最多k步使得它们都死亡. 这个条件等价于区间中m个最大值的和不超过k. 枚举起点 ...

  9. WebSphere概要文件管理工具

    manageprofiles:概要管理命令工具 3.1 模板 位于 <was_home>/profileTemplates.每个模板都由一组提供概要初始设置的文件和概要创建后将采取的操作列 ...

  10. redis动态扩展内存

    需求:将redis内存从1G扩展到3G,不中断服务 1.打开客户端 # redis-cli -p 6391 2.查看当前值 redis 127.0.0.1:6391> config get ma ...