目标跟踪算法MOSSE

David S. Bolme在2010年的CVPR上发表了《Visual Object Tracking using Adaptive Correlation Filters》,简称MOSSE(Minimum Output Sum of Squared Error)。由于其能高速的跟踪目标,开启了相关滤波在目标跟踪领域的研究热潮。其后相继出现了许多优秀的目标跟踪算法,但为了能更容易理解相关滤波在目标跟踪中的作用,还是应该从MOSSE算法开始。
相关滤波
为了利用卷积定理,首先用卷积来表示相关,公式如下
(1)
然后利用卷积定理转换到频域,将卷积操作变为点乘,这也是相关滤波算法高速的原因。
(2)
简写为
(3)
从公式中可以看出,将输入图像(F)和滤波器(H)通过算法变换到频域后,直接将他们相乘,然后再变换回时域(也就是图像的空域)就可以得到响应图。
重点的解释:
(1)输入的图像是指目标搜索区域,可能是像素值也可能是提取的特征(eg.fHog,CN,DeepFeatures等)。
(2)滤波器(或者叫目标模板)的大小和检测区域的大小一样。因为相同大小的矩阵在频率域才可以点乘计算。
(3)当滤波器稍微偏移就会超出输入图像的范围,则需要填充数据(这就是卷积的边界效应)。常用的有三种填充方法,补零、补边界像素、循环图像,matlab中fft默认的是第三种。

MOSSE
为了得到公式3中的响应值,必须求得最佳的滤波模板H,计算方法如下
(4)
利用实际输出和期望值之间平方误差最小的方法来求解,也就是回归的过程。
(5)
化简可以得到以下公式(具体过程参考论文)
(6)
到此为止,MOSSE算法的理论大体介绍完毕,接下来结合代码来方便理解。

F_response=templateGauss(target_sz,im);

首先利用高斯分布得到期望值,如下

离目标越近,响应值越高。

target_box=getsubbox(pos,target_sz,im);

目标搜索区域选取,相当于公式中的F。

newPoint=real(ifft2(F_Template.*fft2(target_box)));
[row, col,~] = find(newPoint == max(newPoint(:)), 1);
pos = pos - target_sz/2 + [row, col];

此处对应公式3,得到这一帧图片的响应值,选取最大值,得到新目标位置。
接下来是滤波模板更新,此处对应公式6更容易理解。

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

目标跟踪算法MOSSE笔记相关推荐

  1. LADCF目标跟踪算法学习笔记(Learning Adaptive Discriminative Correlation Filters via Temporal Consistency prese)

    LADCF论文链接:https://www.researchgate.net/publication/326696472 摘要: 在最近的跟踪基准及比赛中,判别式相关滤波类跟踪器性能优异,然而现有的D ...

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

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

  3. 2017目标跟踪算法综述

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

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

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

  5. 2018目标跟踪算法综述

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

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

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

  7. Staple目标跟踪算法C++代码测试

    一.介绍 Staple综合了局部特征HOG和全局特征颜色直方图用于目标跟踪的算法. 首先作者发现颜色分布不足以将目标和背景区分开来.局部特征这样的模板在应对剧烈形变的时候效果往往很差. 作者针对这两个 ...

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

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

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

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

  10. Siamese-RPN目标跟踪算法

    Siamese-RPN目标跟踪算法 这个比较全:不是具体项目,是个目录 https://github.com/HonglinChu/SiamTrackers 没有预训练: SiamTrackers/4 ...

最新文章

  1. java商城项目性能调优_javaWEB项目性能调优
  2. Java并发编程—Synchronized底层优化(偏向锁、轻量级锁)
  3. linux c之出现warning: implicit declaration of function ‘exit’ [-Wimplicit-function-declaration]这个问题
  4. begintrans返回值_SQL事务回滚 ADO BeginTrans, CommitTran 以及 RollbackTrans 方法
  5. LeetCode(938)——二叉搜索树的范围和(JavaScript)
  6. WDCP控制面板的常用liunx命令集
  7. 一枝穿云箭,千军万马来相见——致2015届电子科大信软学院新生
  8. 74ls20设计半加器_实验二——组合逻辑电路的设计与测试.ppt
  9. 鼎捷T100权限管控设定
  10. matlab算方差std,MATLAB 方差函数 var std
  11. 【车间调度】柔性作业车间调度问题的研究方法
  12. 【动态规划】黑熊过河
  13. 计算机演示文稿实验报告,演示文稿实验报告.doc
  14. 文件上传到云服务器对象存储oos流程
  15. 测验6: 组合数据类型 (第6周) + 练习6: 组合数据类型 (第6周)
  16. chrome密码导出导入
  17. pe怎么安装kali linux,U盘+kali+pe三合一教程!装机,存储,渗透,persistence存储问题解决!...
  18. mysql横竖表转换
  19. 通俗易懂系列 | 设计模式(二):装饰模式
  20. 山科大离散数学期末考试_离散数学期末考试及答案

热门文章

  1. 75道程序员面试逻辑思维题
  2. 阿里巴巴矢量图标库的引入——symbol类型的使用——阿里图标组件封装
  3. 测试耳机的噪音测试软件,测试你的耳机音效,听这十首歌就够了
  4. ssm三个框架分别用来干什么_SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)
  5. SVPWM调制中非零基础矢量的幅值是2/3Udc还是Udc?
  6. m3u8格式转换器android,m3u8视频转换器
  7. Android 自定义带拼音Textview 带音调
  8. 你知道如何提升JSON.stringify()的性能吗?
  9. linux能安装cad快速看图不,ubuntu下能过wine安装cad快速看图
  10. Arcgis实现路线等线方向箭头表示