THOR: Tracking Holistic Object Representations
THOR: Tracking Holistic Object Representations
BMVC 2019 Oral
2019-08-04 10:30:09
Paper: https://arxiv.org/pdf/1907.12920
Project: https://sites.google.com/view/vision-thor/
Code: https://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的更多相关文章
- Object Tracking Benchmark
Abstract 问题: 1)evaluation is often not suffcient 2)biased for certain types of algorthms 3)datasets ...
- 基于粒子滤波的物体跟踪 Particle Filter Object Tracking
Video来源地址 一直都觉得粒子滤波是个挺牛的东西,每次试图看文献都被复杂的数学符号搞得看不下去.一个偶然的机会发现了Rob Hess(http://web.engr.oregonstate.edu ...
- (转)Awesome Object Detection
Awesome Object Detection 2018-08-10 09:30:40 This blog is copied from: https://github.com/amusi/awes ...
- ICLR 2014 International Conference on Learning Representations深度学习论文papers
ICLR 2014 International Conference on Learning Representations Apr 14 - 16, 2014, Banff, Canada Work ...
- 9. A Pythonic Object
Thanks to the Python data model, your user-defined types can behave as naturally as the built-in typ ...
- 计算机视觉code与软件
Research Code A rational methodology for lossy compression - REWIC is a software-based implementatio ...
- cvpr2015papers
@http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...
- Metric Learning度量学习:**矩阵学习和图学习
DML学习原文链接:http://blog.csdn.net/lzt1983/article/details/7884553 一篇metric learning(DML)的综述文章,对DML的意义.方 ...
- Self-Supervised Representation Learning
Self-Supervised Representation Learning 2019-11-11 21:12:14 This blog is copied from: https://lilia ...
随机推荐
- 搭建nginx做文件下载服务器
一.安装nginx yum install -y nginx 二.修改配置文件/etc/nginx/nginx.conf user nginx; worker_processes auto; erro ...
- 数据库开发-Django ORM的多对多查询
数据库开发-Django ORM的多对多查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.联合主键问题 CREATE TABLE `employees` ( `emp_no` ...
- PHP中的分支及循环语句
这次实践的都是PHP7的语法. 感觉是以前的5差别不是那么大,只是希望越来越快吧. <?php $looking = isset($_GET['title']) || isset($_GET[' ...
- Linux shell脚本基础学习详细介绍(完整版)一
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Lin ...
- python的信号管理
if __name__ == '__main__': # Make it possible to exit application with ctrl+c on console signal.sign ...
- 决策树——C4.5
-- coding: utf-8 -- """ Created on Thu Aug 2 17:09:34 2018 决策树ID3,C4.5的实现 @author: we ...
- Goexit
package main import ( "fmt" "runtime" ) func test() { defer fmt.Println("cc ...
- RESTful API Design: 13 Best Practices to Make Your Users Happy
RESTful API Design: 13 Best Practices to Make Your Users Happy First step to the RESTful way: make s ...
- 洛谷 P2571 [SCOI2010]传送带 题解
每日一题 day51 打卡 Analysis 这道题是用非常恶心的三分套三分做的,有一个技巧是不要枚举坐标,枚举两条线段构成三角形的相似比就好了. 了解思路就还挺好写的(尽管我还调了三天) #incl ...
- C++函数声明后面加throw()的作用
原文地址:https://blog.csdn.net/to_baidu/article/details/53763683 C++里面为什么有时候在函数声明的时候在后面加throw()关键字? 解释: ...