SiamBAN论文学习
SiameseBAN
- 论文来源
- 论文背景
- 主要贡献
- 论文分析
- 网络框架
- 创新点一:Box Adaptive Head
- 创新点二:Ground-truth
- 创新点三:Anchor Free
- 论文流程
- 训练部分:
- 跟踪部分
- 论文翻译
- Abstract
- 1. Introduction
- 2. Related Works
- 2.1. Siamese Network Based Visual Trackers
- 2.2. Anchor-free Object Detectors
- 3. SiamBAN Framework
- 3.1. Siamese Network Backbone
- 3.2. Box Adaptive Head
- 3.3. Multi-level Prediction
- 3.4. Ground-truth and Loss
- 3.5. Training and Inference
- 4. Experiments
- 4.1. Implementation Details
- 4.2. Comparison with State-of-the-art Trackers
- 4.3. Ablation Study
- 5. Conclusions
论文来源
论文来源:http://xxx.itp.ac.cn/pdf/2003.06761v2.pdf
开源项目:https://github.com/hqucv/siamban
参考文献:
SiamBAN详细分析,一看就懂!
[阅读笔记][CVPR2020][SiamBAN] Siamese Box Adaptive Network for Visua
论文背景
SiamBAN是今年CVPR中效果最好的跟踪器之一,研究它的原理更加能够很好的帮助我们掌握目前跟踪器发展的趋势。
SIamBAN,按照意思分析是孪生自适应框。“孪生”,说明该跟踪使用了Siamese网络架构;而“自适应框”,则是该跟踪器采用了anchor-free的策略,不预先设定anchor框的尺寸,使得框拥有更大强大的自由度。
通过分析论文和代码,我认为SiamBAN就是一个优化版的SiamRPN++,最大的创新点在于anchor-free的引用,去掉了预定义的anchor,从而使得模型整体的参数下降,使得速度得到进一步的提升。
对于SiamBAN的原理分析,我准备采用三个方面:网络框架、训练、跟踪。
主要贡献
- 新的框架:SiamBAN,实现使用深度卷积神经网络的end-to-end的离线训练
- anchor-free的架构,no-prior box的设计避免了与候选框相关的超参数,使跟踪器更加灵活和通用。
- 不仅达到了最先进的效果,并且在多个数据集达到40FPS(VOT2018,VOT2019,OTB100,NFS,UAV123,和 LaSOT)。
论文分析
网络框架
与SIamRPN++相似,或者说网络框架基本相同。不过不同点在于SiamBAN中引入了空洞卷积的原理,经过实验证明,空洞卷积能够增大感受野,提升跟踪性能。
SIamBAN的网络框架如下图所示:
创新点一:Box Adaptive Head
对于每一个分类图P cls w×h×2或回归图P reg w×h×4上的每个位置,我们可以将其映射到输入搜索patch。例如,与搜索片上的位置相对应的位置(i,j)为[⌊wim2⌋+(i-⌊w 2⌋)×s,他2⌋+(j−h 2⌋)× s](表示为(pi,pj)。wim和他代表输入搜索补丁的宽度和高度,s代表网络的总跨度),它是位置(i,j )。对于回归,基于锚的跟踪器[21、52、20]将位置(pi,pj)作为锚框的中心,然后回归位置(pi,pj),宽度aw和高度ah。也就是说,对于位置(i,j),回归可以调整其所有偏移值,但是分类仍然在原始位置执行,这可能导致分类和回归中的不一致性。因此,我们不调整位置(pi,pj),仅计算其到边界框的偏移值。另外,由于我们的回归目标是正实数,因此我们在回归模块的最后一级应用exp(x)将任何实数映射到(0,+∞)。
大概的理解是anchor-base的方法中对于特征图上的每一个位置(i,j),将其映射到搜索patch上为(pi,pj),回归分支中将这个位置作为anchor的中心去预测偏移量,这时候回归出来的结果已经改变了其中心位置,而分类分支依然在原始的中心位置进行,可能会导致分类和回归的不一致。
创新点二:Ground-truth
如果位置(pi,pj)落在椭圆E2内,则用正号标记,如果它落在椭圆E1以外,则为其分配负号,并且落在椭圆之间。 E2和E1,请忽略它。
创新点三:Anchor Free
论文流程
训练部分:
- 将搜索补丁和模板补丁输入对应的网络分支,在第4、5个卷积模块中添加空洞卷积,膨胀因子分别设置为2和4。
- 分别取出搜索分支和模板分支中第3、4、5卷积模块的卷积结果。为了减少计算量,作者只选取了模板分支卷积结果的7 × 7 区域。因为当输入补丁的尺寸为127 × 127,输出的特征图的尺寸为15 × 15,这时候选取[4:11]的区域,完全可以代表模板中选定的物体。
- 将相对应的卷积结果进行互相关操作。比如,搜索分支第3卷积模块的卷积结果应该与模板分支第3卷积模块的卷积结果进行互相关,其中模板分支的卷积结果作为卷积核。那么,最后获得了三份互相关的特征图。
- 将这三份互相关特征图合并为一张。SiamBAN在代码中使用的方法是取平均,即一个位置的三个值相加除以三。最后得到了一份互相关特征图。
- 实际上,当运行到第4步的时候,就可以发现其实网络运行就可以结束了。但是作者为了能够减少计算量, 将互相关图的维度减少到256.(neck)
跟踪部分
- 输入跟踪视频
- 划定需要跟踪的目标
- 跟踪器初始化(第一帧的处理)
- 截取模板补丁(方法与SiamRPN相同)
- 将模板补丁输入网络,得到第3、4、5层的卷积结果,并且对卷积结果进行处理(降维和模板特征图截取7x7区域)
- 进行跟踪
- 截取搜索补丁(方法与SiamRPN相同)
- 将搜索补丁输入网络,得到第3、4、5层的卷积结果
- 与模板补丁的三个卷积结果进行相关卷积,并且将得到的三个互相关特征图进行加权平均,得到分类特征图和偏差坐标图。
- 利用上述公式(回归训练中),将得到的偏差坐标图转换成多个预测框
- 施加平移惩罚和尺度惩罚,从多个预测框中获得最佳跟踪框,从而实现跟踪。
论文翻译
Abstract
1. Introduction
2. Related Works
2.1. Siamese Network Based Visual Trackers
2.2. Anchor-free Object Detectors
3. SiamBAN Framework
3.1. Siamese Network Backbone
3.2. Box Adaptive Head
3.3. Multi-level Prediction
3.4. Ground-truth and Loss
3.5. Training and Inference
4. Experiments
4.1. Implementation Details
4.2. Comparison with State-of-the-art Trackers
4.3. Ablation Study
5. Conclusions
SiamBAN论文学习相关推荐
- 动态环境下的SLAM:DynaSLAM 论文学习笔记
动态环境下的SLAM:DynaSLAM 论文学习笔记 这篇文章 论文摘要 系统流程 相关环节的实现方法 神经网络检测图中动态物体(Mask R-CNN) Low-Cost Tracking 使用多视图 ...
- 单目相机 svd 从图像恢复3维位置_论文学习——VINSMono:一种鲁棒且通用的单目视觉惯性系统...
点击上方"视觉部落",选择"星标"公众号 精选作品,第一时间送达 文章同步首发于知乎用户yikang专栏 Part 1. 基本信息 本文提出了一种基于紧耦合滑动 ...
- 识别和追踪主题层次的影响力者(来自2018 Machine Learning 论文学习笔记)
本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com . 以下内容是个人的论文阅读笔记,内容可能有不到之处,欢迎交流. 未经本人允许禁止转载. 文章目录 论文来源 论 ...
- High Performance Visual Tracking with Siamese Region Proposal Network 论文学习
文章目录 论文阅读总结 Translation Abstract 1 Introduction 2 Related Works 2.1 Trackers based on Siamese networ ...
- [论文学习]TDN: An Integrated Representation Learning Model of Knowledge Graphs
[论文学习以及翻译]TDN: An Integrated Representation Learning Model of Knowledge Graphs 文章主要内容 摘要 前言 相关工作 基于T ...
- 论文学习-Stochastic Sparse Subspace Clustering
论文学习-Stochastic Sparse Subspace Clustering Note Stochastic Sparse Subspace Clustering,随机稀疏子空间聚类论文精读. ...
- 论文学习笔记 POSEIDON: Privacy-Preserving Federated Neural Network Learning
论文学习笔记 POSEIDON: Privacy-Preserving Federated Neural Network Learning NDSS 2021录用文章 目录 论文学习笔记 POSEID ...
- ## 论文学习—用一个可接受的的剪枝策略来加速动态时间规整聚类的算法
论文学习-用一个可接受的的剪枝策略来加速动态时间规整聚类的算法 "Accelerating Dynamic Time Warping Clustering with a Novel Admi ...
- 【论文学习笔记-2】高分辨率3D深度重建
[论文学习笔记-2] 高分辨率3D深度重建 背景介绍 模型 目标 Related Works 背景介绍 应用场景广泛:桥,电缆etc 高分辨率图像的特点:像素多,potential disparity ...
最新文章
- 为什么黑客用python-为什么黑客都用Python
- 深度linux腾讯视频,在UOS/Deepin 20/Ubuntu 18.04下安装腾讯视频Linux版的方法
- 第二次周考题目答案整理
- android源码settings中显示所有正在运行进程流程分析
- CodeActivity基本使用
- logback日志模板与详解
- linux windows 丢失,Win10预览版9879硬盘丢失的Linux解决方案
- mysql8修改密码
- 继承性(HTML、CSS)
- 30分钟用flex测试FDS
- 74-SSM项目实战前端开发
- 如何高效录制和分享教学视频?我尝试了芦笋
- “茴”字有四种写法,广发有三种分期;你都知道吗?
- 一个接近90岁的维族老大爷用酒把我撂倒了
- 报表工具使用教程-FineReport决策报表导出Plus
- ASP.NET MVC #8211; 视图
- 路由器和交换机有什么区别
- 【数据结构】节点和结点,到底怎么区分?
- idea 如何合并其他分支的指定文件或代码块到当前分支
- Spark数据分区(partitionBy分区、partitioner获取分区方式、自定义分区)
热门文章
- 【Linux系统编程学习】 GDB调试器的简单使用
- Redis面试复习大纲在手面试不慌,讲的明明白白!
- Daily scrum 10.15
- 软件工程——结对编程第二次作业
- 【动态规划】Vijos P1313 金明的预算方案(NOIP2006提高组第二题)
- powershell开源新闻及简介
- 一个电脑同时运行 64bit 和 32bit 的eclipse 如何匹配 jdk环境
- java.sql.SQLException: ORA-01438: 值大于此列指定的允许精确度
- count慢的问题解决
- 快速理解binary cross entropy 二元交叉熵