Minimum Output Sum of SquaredError(MOSSE)

是第一篇将correlation filter(CF)引入object tracking的论文,是CSK和DAT等算法的基础。

在信号处理中,有这么一个概念——相关性(correlation),用来描述两个因素之间的联系。而相关性又分为cross-correlation(互相关,两个信号之间的联系)和auto-correlation(自相关,本身在不同频域的相关性)。

首先我们来看一下CF的概念,

假设有两个信号f和g,则两个信号的相关性(correlation)为:

(f⊗g)(τ)=∫−∞∞f∗(t)g(t+τ)dt
(f⊗g)(n)=∑−∞∞f∗[m]g(m+n)

其中f∗表示f的复共轭。correlation的直观解释就是衡量两个函数在某个时刻相似程度

相关滤波的思想:越是相关的两个目标相关值越大,也就是视频帧中与初始化目标越相似,得到的相应也就越大。

卷积定理:时域的卷积相当于频域相乘,频域卷积相当于时域相乘。


作者提出的滤波器叫做Minimum Output Sum of Squared Error filter(MOSSE)(误差最小平方和滤波器)。按照前面的思路,就是找到一个滤波器h,使其在目标上的响应最大。则如下公式:

g=f⊗h

其中g表示响应输出,f表示输入图像,h表示滤波模板。 
显然,我们要是想获得比较获得响应输出,只需确定滤波器模板h即可。上式的计算是进行卷积计算,这在计算机中的计算消耗时很大的,因此作者对上式进行快速傅里叶变换(FFT),这样卷积操作经过FFT后就变成了点乘操作,极大的减少了计算量。上式变成如下形式:

F(g)=F(f⊗g)=F(f)⋅F(h)∗

为了方便描述,将上式写成如下形式:

G=F⋅H∗

有了上面的式子,那么后面跟踪的任务就是找到 H∗ 了:

H∗=GF

但是在实际跟踪的过程中我们要考虑到目标的外观变换等因素的影响,所以需要同时考虑目标的m个图像作为参考,从而提高滤波器模板的鲁棒性,所以作者就提出了MOSSE这个模型,其模型公式入下:

minH∗=∑i=1m|H∗Fi−Gi|2

因为上式的操作都是元素级别的,因此要想找到,只要使其中的每个元素(w和v是H中每个元素的索引)的MOSSE都最小即可。因此上式可转换为如下形式:

minH∗wv∑i=1m|H∗wvFwvi−Gwvi|2

H8

要想得到最小的H**wv,只需要对上式求偏导,并使偏导为0即可。即:

0=∂∂H∗wv∑i|FiwvH∗wv−Giwv|2

复数域求导和实数域求导时不一样的,其求导过程如下: 

上面得到是H中每个元素的值,最后得到H为:

H=∑iFi⋅G∗i∑iFi⋅F∗i

上式就是滤波器的模型公式。

但是在跟踪中该怎么得到滤波器H呢? Fi 和 Gi 又该怎么获取? 
在作者的文章中,其对跟踪框(groundtruth)进行随机仿射变换,获取一系列的训练样本 fi,而 gi 则是由高斯函数产生,并且其峰值位置是在 fi的中心位置。获得了一系列的训练样本和结果之后,就可以计算滤波器h的值。注意:这里的f,g,h的size大小都相同。 作者为了让滤波器对与形变、光照等外界影响具有更好的鲁棒性,采取了如下的模板更新策略:

作者将滤波器的模型公式分为分子和分母两个部分,每个部分都分别的进行更新,更的参数为 η 。其中 At 和 At−1 分别表示的是当前帧和上一帧的分子。

部分代码

%产生高斯形状的理想响应

F_response=templateGauss(target_sz,im);

%目标框区域和滤波器卷积得到响应值

newPoint=real(ifft2(F_Template.*fft2(target_box)));

%其中响应值最大值对应的坐标即为新目标的位置

[row, col,~] = find(newPoint ==max(newPoint(:)), 1);

%以新目标为中心选择目标框

F_im=fft2(getsubbox(pos,target_sz,im));

%求解滤波器模板

F_Template=conj(F_im.*conj(F_response)./(F_im.*conj(F_im)+eps));

参考:
http://blog.csdn.net/autocyz/article/details/48136473
https://zuciwang.com/q/320/xabndexae.html

http://blog.csdn.net/fengying2016/article/details/72598720

MOSSE目标跟踪算法的理解相关推荐

  1. 2017目标跟踪算法综述

    转自  https://www.zhihu.com/question/26493945 作者:YaqiLYU 链接:https://www.zhihu.com/question/26493945/an ...

  2. 2016年之前目标跟踪算法总结

    作者:YaqiLYU 链接:https://www.zhihu.com/question/26493945/answer/156025576 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权, ...

  3. 2018目标跟踪算法综述

    转自  https://www.zhihu.com/question/26493945 作者:YaqiLYU 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 相信很多来这里的人和 ...

  4. 计算机视觉中,目前有哪些经典的目标跟踪算法

    首先来一个跟踪算法的大杂烩: VOT2016 Trackers repository 以下是转载内容 ------------------------------------------------- ...

  5. 深度长文:计算机视觉中,目前有哪些经典的目标跟踪算法?

    第一部分:目标跟踪速览 先跟几个SOTA的tracker混个脸熟,大概了解一下目标跟踪这个方向都有些什么.一切要从2013年的那个数据库说起..如果你问别人近几年有什么比较niubility的跟踪算法 ...

  6. 计算机视觉中,目标跟踪算法的综述

    作者:YaqiLYU 链接:https://www.zhihu.com/question/26493945/answer/156025576 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权, ...

  7. 基于MeanShift的目标跟踪算法及实现

    from: http://blog.csdn.net/jinshengtao/article/details/30258833 一.简介 首先扯扯无参密度估计理论,无参密度估计也叫做非参数估计,属于数 ...

  8. 目标跟踪算法综述与分析

    本人硕士期间研究过10个月左右的目标跟踪算法,刚入门时苦于没人指点,自己每天乱看文章,后来发现看的好多文章都是没有意义的(ps....看了一大堆meanshift,kalman啥的......),做了 ...

  9. 几种自动目标跟踪算法的比较研究

    摘 要:复杂背景目标跟踪是近年来自动目标识别(ATR)领域的一个研究热点,在军事.医疗.安全等多个领域具有广泛的应用前景.ATR的研究内容主要包括目标的检测分类.特征提取和目标定位识别等.本文对当前流 ...

最新文章

  1. 在windows sever 2008系统中如何添加桌面体验功能
  2. hdu 1722 Cake 数学题
  3. 【翻译】使用Ext JS设计响应式应用程序
  4. Kaggle 官方教程:嵌入
  5. 启用DHCP中继代理程序 实现跨子网服务
  6. drawio流程图软件_Win10 一般软件个人收集
  7. linux安装chrome浏览器(中标麒麟+龙芯CPU)
  8. FLV格式转换成MP4格式使用什么软件好
  9. P2123 皇后游戏
  10. 微信java转盘抽奖代码_jquery手机端抽奖代码_微信jquery实现大转盘抽奖代码特效...
  11. Appium基础 — uiautomatorviewer定位工具
  12. 计算机加密解除,pdf文件加密怎么解除?解除加密pdf文件的教程
  13. 函数的调用(传值调用和传址调用)
  14. 【SLAM】VINS-MONO解析——回环检测和重定位
  15. 查看oracle版本及补丁,查看oracle版本和补丁
  16. 闪电网络一周热点回顾-AToken研究院
  17. OriginPro常用配置
  18. 智慧校园与数字校园的区别是什么?
  19. 软件测试人员面试指南(一)-测试简历如何编写
  20. 读王坚博士的《在线》有感

热门文章

  1. 这5个要点让你看清“Salesforce+AWS”
  2. spring源码分析,聊聊PropertyPlaceholderConfigurer
  3. LUA: lua基础.
  4. 1.JasperReports学习笔记1-了解JasperReports
  5. iOS开发-开发总结(四)
  6. junit的使用说明
  7. PHP 全局变量global详解
  8. mysql query browser的使用_影响MySQL性能的配置参数
  9. 一元二次方程python脚本_Python实现求解一元二次方程的方法示例
  10. 小区物业费信息管理系统设计c++_没有入住需要交物业费吗?有没有办法不交物业费呢?法律专家解读...