THOR: Tracking Holistic Object Representations

BMVC 2019 Oral

2019-08-04 10:30:09

Paperhttps://arxiv.org/pdf/1907.12920

Projecthttps://sites.google.com/view/vision-thor/

Codehttps://github.com/xl-sr/THOR

Related Papers: (利用外部记忆网络来动态更新目标模板)

1. Learning Dynamic Memory Networks for Object Tracking, Tianyu Yang, Antoni B. Chan  (ECCV), 2018, pp. 152-167, paper, code

2. Visual Tracking via Dynamic Memory Networks, Tianyu Yang and Antoni B. Chan, T-PAMI 2019, Paper, Code

3. A Memory Model based on the Siamese Network for Long-term Tracking,Lee, Hankyeol, Seokeon Choi, and Changick Kim. (ECCV Workshop). 2018.  Paper

1. Background and Motivation:

现有的基于 matching 方法的跟踪器,很多都是拿 第一帧的目标模板和后续采样的 proposal 进行匹配,从而得到相应得分,得到跟踪结果。问题是,跟踪过程中,目标是动态变化的,所以,作者就想设计一种动态的目标表达方法,来很好的建模 object template 的变化。

本文所提出的跟踪方法示意图如下所示:

2. The Proposed Method:

为了得到一个丰富的 multi-template representation 进行跟踪,本文提出一种由 long-term module (LTM) 和 short-term module(STM)构成的框架。如上图所示,跟字面意思相同,STM 适用于短期更新的模板,而 LTM 适合建模长期的外观变化(represents the tacked objects in diverse conditions, e.g. lighting, shape)。而这种用短期 feature 和 长期 feature 进行跟踪的思想,之前的工作也有探索,但是,本文还是跟他们由区别的,即:特征发现的方法以及用于跟踪的方法(the way features are found and used for tracking)。

2.1 Long-term Module:

该模块的目标是:存储具有最大多样性的跟踪结果。正式的来说, LTM 的目标是最大化由模板构成的 feature vector 的超平形体(我知道很拗口,嗯,还会看原文吧:the goal of LTM is to maximize the volume T(f1, ... fn) of the parallelotope formed by the feature vectors fi of the tempalte Ti)。在深度匹配算法中,给定 template image 的 feature vector 被当做是卷积核。孪生网络将图像映射为 feature,然后用到的卷积操作被当做是相似性度量的方法。在跟踪过程中,template kernel f1 被用于 search image 以得到最高相应的位置。所以,如果我们想要衡量两个 template 之间的相似性,我们可以计算 f1 * f2。用内存中所有的 template 来计算该相似性,我们可以构架一个 Gram matrix:

其中,G 是 n * n marix, n 通常还会比 feature space 小。G 的决定条件,称为:the Gram determinat,is the square of the n-dimensional volume T of the parallelotope constructed on f1, f2, ... fn. 所以,目标函数可以写为:

当某一个模板如果可以提升 Gram determinant,那么就考虑将其替换掉 template 集合中的对应模板。

Lower Bound

由于长期跟踪中存在 model drift 的问题,所以存贮的过程会终止。为了处理这种情况,作者在 |G| 上,设置了一种 upper bound。然而,由于找到这么一个 value 并不是很直接,所以作者考虑用 lower bound on the similarity measure between a candidate tempalte Tc and the base template T1. 新的模板需要满足如下的条件:fc * f1 > l * G11. 参数 l 可以看做是 temperature on the similarity of T1 on itself. 并且可以用于平衡 tracking performance against robustness against drift.

2.2 Short-term Module:

STM 模块的目标是处理 abrupt movements 和 partial occlusion。STM 模块遵循先进先出的方式,slots 的个数设置为固定的 Kst。作者也将 STM 中的 object representation 用于计算 diversity measure。但是,在短期模型中,这种度量方式表现并不好。所以作者计算:

即:作者将 Gram matrix 的上三角部分进行求和,然后用最大值进行归一化。该 \gamma 的范围是 [0-1],越靠近1,则 STM 中的模板越多样化。

3. Experiments:

最后作者提到了一些可以继续改善的地方:

1. Siamese Tracker 对参数很敏感,所以,本文的方法也对超参数有点敏感,毕竟是基于 Siamese Network 做的;

2. 作者也考虑将 Siamese tracker 和 THOR 进行端到端的训练。

==

THOR: Tracking Holistic Object Representations的更多相关文章

  1. Object Tracking Benchmark

    Abstract 问题: 1)evaluation is often not suffcient 2)biased for certain types of algorthms 3)datasets ...

  2. 基于粒子滤波的物体跟踪 Particle Filter Object Tracking

    Video来源地址 一直都觉得粒子滤波是个挺牛的东西,每次试图看文献都被复杂的数学符号搞得看不下去.一个偶然的机会发现了Rob Hess(http://web.engr.oregonstate.edu ...

  3. (转)Awesome Object Detection

    Awesome Object Detection 2018-08-10 09:30:40 This blog is copied from: https://github.com/amusi/awes ...

  4. ICLR 2014 International Conference on Learning Representations深度学习论文papers

    ICLR 2014 International Conference on Learning Representations Apr 14 - 16, 2014, Banff, Canada Work ...

  5. 9. A Pythonic Object

    Thanks to the Python data model, your user-defined types can behave as naturally as the built-in typ ...

  6. 计算机视觉code与软件

    Research Code A rational methodology for lossy compression - REWIC is a software-based implementatio ...

  7. cvpr2015papers

    @http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...

  8. Metric Learning度量学习:**矩阵学习和图学习

    DML学习原文链接:http://blog.csdn.net/lzt1983/article/details/7884553 一篇metric learning(DML)的综述文章,对DML的意义.方 ...

  9. Self-Supervised Representation Learning

    Self-Supervised Representation Learning 2019-11-11 21:12:14  This blog is copied from: https://lilia ...

随机推荐

  1. SQL Server 用一张表的数据更新另一张表的数据(转载)

    文章一:SQL Server中如何基于一个表的数据更新另一个表的对应数据的SQL语句脚本 https://codedefault.com/2017/sql-server-update-from-a-s ...

  2. Java Excel报表导出Demo

    /** * 一级权限数据导出 * @return */ @RequestMapping(value = "/getExportData", method = RequestMeth ...

  3. Linux命令——screen

    参考:linux 技巧:使用 screen 管理你的远程会话 How to use GNU screen - the terminal multiplexer - linux

  4. kubernetes存储之GlusterFS

    目录 1.glusterfs概述 1.1.glusterfs简介 1.2.glusterfs特点 1.3.glusterfs卷的模式 2.heketi概述 3.部署heketi+glusterfs 3 ...

  5. VUE--404页面

    <一 404 动态页面> <!-- 2017/5/26- yyy-404页面--> <template> <section class="page_ ...

  6. The Sum of the k-th Powers(Educational Codeforces Round 7F+拉格朗日插值法)

    题目链接 传送门 题面 题意 给你\(n,k\),要你求\(\sum\limits_{i=1}^{n}i^k\)的值. 思路 根据数学知识或者说题目提示可知\(\sum\limits_{i=1}^{n ...

  7. C# 退出应用程序的几种方法

    Application.Exit();//好像只在主线程可以起作用,而且当有线程,或是阻塞方法的情况下,很容易失灵 this.Close();//只是关闭当前窗体. Application.ExitT ...

  8. 后台返回的Json为null的字段不显示的方法

    如果引入的是谷歌的gson的话,需要引入依赖: <dependency> <groupId>com.fasterxml.jackson.core</groupId> ...

  9. C++中的hash_map和map的区别

    hash_map和map的区别在哪里?构造函数.hash_map需要hash函数,等于函数:map只需要比较函数(小于函数). 存储结构.hash_map采用hash表存储,map一般采用红黑树(RB ...

  10. 爬虫 - 请求库之selenium

    介绍 官方文档 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的 ...