基于内容感知深度特征压缩的高速视觉跟踪

论文下载:http://cn.arxiv.org/abs/1803.10537
对于视频这种高维度数据,作者训练了多个自编码器AE来进行数据压缩,至于怎么选择具体的网络,
作者又训练了一个基于目标选择具体AE的网络,再根据压缩后的特征图,进行协相关过滤操作追踪目标。
本文有趣的地方在于:
1. 两种加噪声的操作,既增加了鲁棒性,又相当于数据增强。
2. 为了自编码器的平稳训练和防过拟合提出了multi-stage distance loss。
3. 最后移除相应低的通道和自编码器针对通道而不针对图像大小。

摘要

作者提出了一种在实时跟踪领域高速且state-of-the-art表现的基于context-aware correlation filter的跟踪框架。这个方法的高速性依赖于会根据内容选择对应的专家自编码器来对图片进行压缩;context在本文中表示根据要跟踪目标的外观大致分的类。在预训练阶段,每个类训练一个自编码器。在跟踪阶段,根据给定目标选择最佳的自编码器——专家自编码器,并且在下面阶段中仅使用这个网络。为了在压缩后的特征图上达到好的跟踪效果,作者分别在与训练阶段和微调专家自编码器阶段提出了一种去噪过程和新的正交损失函数。多方认证这个方法表现良好且达到了显著的效果,超过100fps。

1. Introduction

视觉跟踪因为深度学习的出现效果提升显著。近年来,跟踪领域主要流行两种方法。一种是持续微调网络来学习目标的改变。虽然网络表现正确率高且具有鲁棒性,但是计算速度不足以满足在线跟踪的要求。第二种是先用深度网络提取特征,再接上correlation filters。但是表示大规模数据的特征如ImageNet,往往是高维度的。这往往也满足不了在线跟踪的速度需求。

本工作中,作者提出了一种基于correlation filter跟踪器,使用了context-aware的深度特征压缩来节省计算时间。这做法的动机是因为相比于分类和检测任务,低层次的特征图能充分表示单目标物体。更具体地说,作者训练了多个自编码器,每个种类一个。我们介绍一种无监督学习来对训练样本进行聚类,再根据每个类别训练一个自编码器。在跟踪阶段,给定特定的目标,context-aware网络会选择一个合适的自编码器。在使用新损失函数微调选定的专家网络后,网络输出压缩后的特征图。压缩的特征图降低了冗余性和稀疏性,并提升了追踪的正确率。

3. Methodology

TRAcker使用多个自编码器来压缩特征(TRACA)。每个专家自编码器根据各自类别对VGG-Net的特征图进行压缩。

3.1 Expert Auto-encoders

Architecture:自编码器提供了一种无监督的方法学习特征。假设有Ne个相同结构的专家自编码器。自编码器堆积了Nl个编码器和解码器,来对通道数进行压缩和解压。。所有卷积层kernel size为3x3 + ReLU。

Pre-training:预阶段分为三部分。首先用所有样本(VGG-Net的输出)训练一个初始自编码器AE0,然后使用AE0的压缩特征图进行聚类来得到Ne个类。训练初始自编码的目的是为了后面更好收敛和更好finetune。为了初始自编码器更具有鲁棒性,作者加入了两个噪声的操作。一是固定数量的特征通道置0。二是交换特征图的一些向量来模拟现实生活中遮挡的情况。

考虑到初始自编码器重输入和最终输出有一段距离不好学,实验也观察到经常出现过拟合和不平稳收敛。作者提出了基于multi-stage距离的损失函数。假设Xj为输入的特征图,AE(X)为一部分的编码和解码层。

其中,第一个求和针对一个mini batch所有样本,m为mini-batch size;第二个求和就是所有特征图和对加噪声的特征图进行不同层数加解码的复原图之间的差。

聚类的时候,首先重复1000次找到2Ne的样本,从中找到他们之间的欧几里得距离最大的初始点,然后聚类。然后减去Ne个拥有最小样本的中心。

3.2 Context-aware Network

Architecture:基于内容的网络根据跟踪的目标选择具体的自编码器。首先加载VGG-M网络,内容网络由{conv1, conv2, conv3}{fc4, fc5, fc6}组成,其中{conv1, conv2, conv3, fc4}加载VGG-M的权重。fc5输出1024,fc6输出类别,使用交叉熵训练。

3.3 Correlation Filter

本部分不熟悉,略。

3.4 Tracking Process

3.4.1 Initial Adaptation Process

Region of interest extraction:首先根据目标所在ROI扩大2.5倍crop。

Initial sample augmentation:对ROI进行多重高斯过滤和翻转进行数据增强。因为数据量少,所以使用前面提到的加噪声操作和协相关过滤器一起的损失函数。

Background channel removal:经过压缩的特征图通过微调的专家编码器得到。然后我们删除掉中对背景相应大的通道。定义Zbb操作为,对所有在bounding box(bb)外的像素点设置为0。定义第k通道的bb响应率(如下),删除响应率低的。

3.4.2 Online Tracking Sequence

对追踪不熟悉,这部分先hold着。(后补)

4. Experimental Result

[CVPR2018] Context-aware Deep Feature Compression for High-speed Visual Tracking的更多相关文章

  1. 论文阅读之:Deep Meta Learning for Real-Time Visual Tracking based on Target-Specific Feature Space

    Deep Meta Learning for Real-Time Visual Tracking based on Target-Specific Feature Space  2018-01-04  ...

  2. 论文笔记:Deep feature learning with relative distance comparison for person re-identification

    这篇论文是要解决 person re-identification 的问题.所谓 person re-identification,指的是在不同的场景下识别同一个人(如下图所示).这里的难点是,由于不 ...

  3. ICLR 2018 | Deep Gradient Compression: Reducing the Communication Bandwidth for Distributed Training

    为了降低大规模分布式训练时的通信开销,作者提出了一种名为深度梯度压缩(Deep Gradient Compression, DGC)的方法.DGC通过稀疏化技术,在每次迭代时只选择发送一部分比较&qu ...

  4. 《Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Neural Networks》论文笔记

    论文题目<Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Ne ...

  5. 《Hyperspectral Image Classification With Deep Feature Fusion Network》论文笔记

    论文题目<Hyperspectral Image Classification With Deep Feature Fusion Network> 论文作者:Weiwei Song, Sh ...

  6. 论文笔记:SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks

    SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks 2019-04-02 12:44:36 Paper:ht ...

  7. 论文笔记: Dual Deep Network for Visual Tracking

    论文笔记: Dual Deep Network for Visual Tracking  2017-10-17 21:57:08  先来看文章的流程吧 ... 可以看到,作者所总结的三个点在于: 1. ...

  8. 【论文阅读】Deep Clustering for Unsupervised Learning of Visual Features

    文章:Deep Clustering for Unsupervised Learning of Visual Features 作者:Mathilde Caron, Piotr Bojanowski, ...

  9. Deep Reinforcement Learning with Iterative Shift for Visual Tracking

    Deep Reinforcement Learning with Iterative Shift for Visual Tracking 2019-07-30 14:55:31 Paper: http ...

随机推荐

  1. 对于一个刚入门的linux运维来说

    干 就完了~ 我觉得 人生的意义在于 不断地学习......

  2. python提示import XX 不存在,如何排查错误

    1.如何确定文件夹是一个包, 检查包中是否有__init__.py 文件, 在python模块的每一个包中,都有一个__init__.py文件(这个文件定义了包的属性和方法)然后是一些模块文件和子目录 ...

  3. webpack----webpack4尝鲜

    安装v4.0.0-beta.0 yarn add webpack@next webpack-cli --dev 或者 npm install webpack@next webpack-cli --sa ...

  4. 2018上C语言程序设计(高级)作业- 第1次作业

    未来两周学习内容 复习指针的定义和引用 指针的应用场景: 指针作为函数参数(角色互换) 指针作为函数的参数返回多个值 指针.数组和地址间的关系 使用指针进行数组操作 数组名(指针)作为函数参数(冒泡排 ...

  5. C语言程序设计(基础)- 第7周作业(新)

    要求一(25经验值) 完成PTA中题目集名为<usth-C语言基础-第七周作业>和<usth-C语言基础-12周PTA作业>中的所有题目. 注意1:<usth-C语言基础 ...

  6. python的Flask 介绍

    Flask 介绍 知识点 微框架.WSGI.模板引擎概念 使用 Flask 做 web 应用 模板的使用 根据 URL 返回特定网页 实验步骤 1. 什么是 Flask? Flask 是一个 web ...

  7. java实现红包的分配算法

    个人推测,微信红包在发出的时候已经分配好金额.比如一个10元的红包发给甲乙丙三个人,其实在红包发出去的时候,已经确定了第一个会领取多少,第二个会领取多少金额. 而不是在领取的时候才计算的.下面贴出实现 ...

  8. JAVA_SE基础——49.多态的应用

    因为多态对以后开发的重要性,因此我在这里专门开个多态的应用来加深讲解,希望想弄懂多态的同学能耐心看完. 了解了对象多态性后,那么这多态到底有哪些用处了? 下面要求设计一个方法,要求此方法可以接受A类的 ...

  9. 第一次制作和使用图标字体-IcoMoon

    开题:之前就有所耳闻,最近两天第一次运用到图标字体.刚开始嘛,一脸懵逼的状态.成功运用之后就来记录一下使用过程咯! 1. 打开在线生成工具:https://icomoon.io/app/#/selec ...

  10. Mego开发文档 - 基础查询

    基础查询 Mego 使用语言集成查询(LINQ)从数据库查询数据.LINQ允许您使用C#(或其他.NET语言)根据派生的上下文和实体类编写强类型查询.将LINQ查询的表示传递给数据库提供者,翻译为数据 ...