SiameseRPN详解

SiameseRPN

  • 论文来源
  • 论文背景
    • 一,简介
    • 二,研究动机
    • 三、相关工作
  • 论文理论
    • 注意:
    • 网络结构:
    • 1.Siamese Network
    • 2.RPN
    • 3.LOSS计算
    • 4.Tracking
  • 论文的优缺点分析
    • 一、Siamese-RPN的贡献/优点:
    • 二、Siamese-RPN的缺点:
  • 代码流程
    • 一、训练部分:
    • 二、跟踪部分
  • 论文翻译
    • 学术词语知识
    • Abstract
    • 1. Introduction
    • 2. Related Works
    • 2.1. Trackers based on Siamese network structure
    • 2.2. RPN in detection
    • 2.3. One-shot learning
    • 3. Siamese-RPN framework
    • 3.1. Siamese feature extraction subnetwork
    • 3.2. Region proposal subnetwork
    • 3.3. Training phase: End-to-end train Siamese-RPN
    • 4. Tracking as one-shot detection
    • 4.1. Formulation
    • 4.2. Inference phase: Perform one-shot detection
    • 4.3. Proposal selection
    • 5. Experiments
    • 5.1. Implementation details
    • 5.2. Result on VOT2015
    • 5.3. Result on VOT2016
    • 5.4. Result on VOT2017 real-time experiment
    • 5.5. Result on OTB2015
    • 5.6. Discussion
    • 6. Conclusion

论文来源

论文链接:这里
本文参考:
论文阅读:Siam-RPN
【SOT】Siamese RPN论文解读和代码解析
[深度学习] [目标跟踪] Siamese-RPN论文阅读笔记
【论文笔记】目标跟踪算法之Siamese-RPN
论文阅读,目标跟踪 SiameseRPN

论文背景

一,简介

这篇文章是在SiamFC的基础上改进的,其特征提取网络跟SiamFC一模一样,不同的是引入了目标检测领域的区域推荐网络(RPN),通过RPN网络的回归避免多尺度测试,一方面提升了速度,另一方面可以得到更加准确的目标框。另一个强大的地方在于,该算法可以利用稀疏标注的数据进行训练,如Youtube-BB,该数据集不是每一帧都有标注,而是隔几十帧标注一帧,这样极大地扩充了训练数据,大家都知道跟踪届的数据是非常宝贵的。要训练一个好的模型,数据量大是关键啊。

二,研究动机

作者将流行的跟踪算法分为两类,一类是基于相关滤波类并进行在线更新的跟踪算法,另一类是使用深度特征抛弃在线更新的跟踪算法,前者严重限制了跟踪速度,后者没有使用域特定信息(即某个特定的跟踪视频的信息)。

作者提出的网络分为模板支和检测支。训练过程中,在相关特征图上执行proposal extraction、没有预定义好的类别信息;在跟踪过程中使用one-shot检测框架和meta-learning。其中,两个原因使得跟踪算法效果很好:大量数据训练;RPN结构使得跟踪尺度和比例都非常好。

三、相关工作

相关滤波类的跟踪算法:GOTURN、Re3、Siamese-FC、CFNet。后两个没有做回归去调整候选框位置,并且需要多尺度测试,破坏了模型的优雅性。

RPN网络:RPN网络广泛应用在目标检测任务中,从RCNN到Faster-RCNN,RPN网络产生proposals代替了原始的selective search方法,提高了检测速度,后来FPN改进了RPN网络,提高了对微小物体的检测能力,以及后来的PRN的改进版本的使用,像SSD、YOLO等都是非常高效的检测器。

One-shot learning:贝叶斯方法和meta-learning方法。后者用新的神经网络估计目标网络前向传播的梯度。(However, the performance of Learnet is not competitive the modern DCF based methods, e.g.CCOT in multiple benchmarks )

论文理论

注意:

特别注意:RPN首次是从Faster RCNN中引入过来的
如果对其中某些参数不明白,可以参考一文读懂Faster RCNN

网络结构:

  1. Siamese Network
  2. RPN
  3. LOSS计算
  4. Tracking

1.Siamese Network

在这里插入图片描述
Siamese网络用来提取特征。
该孪生网络接受两个输入,一个叫做template frame(模板帧),是从视频第一帧中人为框出来(可以理解为原图中裁剪的一个区域)的物体位置;另一个输入叫做detection frame(检测帧),是被检测的视频段除了第一帧之外的其他帧。该Siamese(AlexNet)网络将这两个图像分别映射为6x6x256大小的特征图z 和22x22x256大小的特征图 x。

2.RPN

在这里插入图片描述
在这里插入图片描述
1、在RPN子网络中需要将z的输出通过不同卷积核resize成4×4×2k×256和4×4×4k×256的尺寸,这里k表示k个anchor,anchor的概念在Faster R-CNN中介绍。本文使用一种尺度的anchor,用五种不同的比例,所以这篇文章中k为5;
2、其中2k中两个通道分别表示这个anchor是正样本和负样本的概率,4k表示anchor和ground-truth之间的差别;

3.LOSS计算

SiameseRPN使用的损失函数与faster rcnn的损失函数一样。在分类上使用了softmax,回归bounding box使用了smooth L1损失。这里只简单介绍回归的损失。
首先来看看什么是smooth L1损失函数。
借用一下知乎尹博的图
在这里插入图片描述
从图中可以看到,在远离坐标原点处,图像和L 1 L1L1 损失很接近,而在坐标原点附近,转折十分平滑,不像L 1 L1L1损失那样有个尖角,因此叫做smooth L 1 L1L1损失。
smoothL 1 L1L1损失函数的数学表达式为:
在这里插入图片描述
在这里插入图片描述
(偷偷说一下,代码中的权重为5)

4.Tracking

1.One-shot跟踪:
one-shot检测:
该篇文章是第一次将one-shot策略用在跟踪任务中,这篇文章是讲如何实现one-shot learning的。最核心的思想方法就是通过离线训练的方法得到一个了learner net(文章里简称为learnet),然后通过在线的方式动态生成一个pupil net的参数,而且learnet只需要一张样本就可以生成pupil net的网络参数。Pupil net可以为分类器或者其他任务。为了简单起见,参数为动态生成的只有其中一层或者两层,如图所示,*代表有参数的层,红色的代表参数由learnet动态生成的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.proposals选择策略:
在这里插入图片描述

论文的优缺点分析

一、Siamese-RPN的贡献/优点:

  1. 提出siamese region proposal network(Siamese-RPN)用于解决目标跟踪问题。该网络可利用“图片对”进行端到端地离线训练;

  2. 该模型可将在线跟踪任务转换为one-shot检测任务,而不是使用低效费时的多尺度测试(multi-scale test);

  3. 该模型将SiameseFC和Faster R-CNN巧妙结合起来,让RPN的计算变成并行,大大降低了运行时间,在保证准确率的同时,达到了较高的速度。

二、Siamese-RPN的缺点:

  1. 使用第一帧作为模板匹配,对目标巨大变化不具有鲁棒性;

  2. 与SiameseFC相比,这篇文章的方法需要对输入图片resize,丢失一些信息。

代码流程

一、训练部分:

9.在这里插入图片描述
9.9日更新:新推两篇文章在这方面讲的也非常好!
RPN的功能实现(流程与理解)
RPN的深度理解(实现层面)

二、跟踪部分

在这里插入图片描述

论文翻译

学术词语知识

对于文章的一些学术词语:
one-short Learning:
参考什么是One-shot Learning 、Zero-shot Learning?
meta-learning:
参考:什么是meta-learning?
affine transformation:
参考:仿射变换(Affine Transformation)
ground truth:
参考:机器学习里经常出现ground truth这个词,能否准确解释一下?
还有我找到了一个比较好的关于卷积公式的解释:
在这里插入图片描述

Abstract

在这里插入图片描述

1. Introduction

在这里插入图片描述

2. Related Works

在这里插入图片描述

2.1. Trackers based on Siamese network structure

在这里插入图片描述

2.2. RPN in detection

在这里插入图片描述

2.3. One-shot learning

在这里插入图片描述

3. Siamese-RPN framework

在这里插入图片描述

3.1. Siamese feature extraction subnetwork

在这里插入图片描述

3.2. Region proposal subnetwork

在这里插入图片描述

3.3. Training phase: End-to-end train Siamese-RPN

在这里插入图片描述

4. Tracking as one-shot detection

在这里插入图片描述

4.1. Formulation

在这里插入图片描述

4.2. Inference phase: Perform one-shot detection

在这里插入图片描述

4.3. Proposal selection

在这里插入图片描述

5. Experiments

在这里插入图片描述

5.1. Implementation details

在这里插入图片描述

5.2. Result on VOT2015

在这里插入图片描述

5.3. Result on VOT2016

在这里插入图片描述

5.4. Result on VOT2017 real-time experiment

在这里插入图片描述

5.5. Result on OTB2015

在这里插入图片描述

5.6. Discussion

在这里插入图片描述

6. Conclusion

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/389247.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据可视化 信息可视化_可视化数据操作数据可视化与纪录片的共同点

数据可视化 信息可视化Data visualization is a great way to celebrate our favorite pieces of art as well as reveal connections and ideas that were previously invisible. More importantly, it’s a fun way to connect things we love — visualizing data and kicki…

python 图表_使用Streamlit-Python将动画图表添加到仪表板

python 图表介绍 (Introduction) I have been thinking of trying out Streamlit for a while. So last weekend, I spent some time tinkering with it. If you have never heard of this tool before, it provides a very friendly way to create custom interactive Data we…

Python--day26--复习

转载于:https://www.cnblogs.com/xudj/p/9953293.html

SiameseRPN++分析

SiamRPN论文来源论文背景什么是目标跟踪什么是孪生网络结构Siamese的局限解决的问题论文分析创新点一:空间感知策略创新点二:ResNet-50深层网络创新点三:多层特征融合创新点四:深层互相关代码分析整体代码简述(1&#…

Lockdown Wheelie项目

“It’s Strava for wheelies,” my lockdown project, combining hyper-local exercise with data analytics to track and guide improvement. Practising wheelies is a great way to stay positive; after all, it’s looking up, moving forward.我的锁定项目“将Strava运…

api地理编码_通过地理编码API使您的数据更有意义

api地理编码Motivation动机 In my second semester of my Master’s degree, I was working on a dataset which had all the records of the road accident in Victoria, Australia (2013-19). I was very curious to know, which national highways are the most dangerous …

SiamBAN论文学习

SiameseBAN论文来源论文背景主要贡献论文分析网络框架创新点一:Box Adaptive Head创新点二:Ground-truth创新点三:Anchor Free论文流程训练部分:跟踪部分论文翻译Abstract1. Introduction2. Related Works2.1. Siamese Network Ba…

实现klib_使用klib加速数据清理和预处理

实现klibTL;DRThe klib package provides a number of very easily applicable functions with sensible default values that can be used on virtually any DataFrame to assess data quality, gain insight, perform cleaning operations and visualizations which results …

MMDetection修改代码无效

最近在打比赛,使用MMDetection框架,但是无论是Yolo修改类别还是更改head,代码运行后发现运行的是修改之前的代码。。。也就是说修改代码无效。。。 问题解决办法: MMDetection在首次运行后会把一部分运行核心放在anaconda的环境…

docker etcd

etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库,用于配置共享和服务发现 etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现。 etcd作为服务发现系统,有以下的特点&…

SpringBoot简要

2019独角兽企业重金招聘Python工程师标准>>> 简化Spring应用开发的一个框架;      整个Spring技术栈的一个大整合;      J2EE开发的一站式解决方案;      自动配置:针对很多Spring应用程序常见的应用功能&…

简明易懂的c#入门指南_统计假设检验的简明指南

简明易懂的c#入门指南介绍 (Introduction) One of the main applications of frequentist statistics is the comparison of sample means and variances between one or more groups, known as statistical hypothesis testing. A statistic is a summarized/compressed proba…

Torch.distributed.elastic 关于 pytorch 不稳定

错误日志: Epoch: [229] Total time: 0:17:21 Test: [ 0/49] eta: 0:05:00 loss: 1.7994 (1.7994) acc1: 78.0822 (78.0822) acc5: 95.2055 (95.2055) time: 6.1368 data: 5.9411 max mem: 10624 WARNING:torch.distributed.elastic.agent.server.api:Rec…

0x22 迭代加深

poj2248 真是个新套路。还有套路剪枝...大到小和判重 #include<cstdio> #include<iostream> #include<cstring> #include<cstdlib> #include<algorithm> #include<cmath> #include<bitset> using namespace std;int n,D,x[110];bool…

云原生全球最大峰会之一KubeCon首登中国 Kubernetes将如何再演进?

雷锋网消息&#xff0c;11月14日&#xff0c;由CNCF发起的云原生领域全球最大的峰会之一KubeConCloudNativeCon首次登陆中国&#xff0c;中国已经成为云原生领域一股强大力量&#xff0c;并且还在不断成长。 毫无疑问&#xff0c;Kubernetes已经成为容器编排事实标准&#xff…

分布分析和分组分析_如何通过群组分析对用户进行分组并获得可行的见解

分布分析和分组分析数据分析 (DATA ANALYSIS) Being a regular at a restaurant is great.乙 eing定期在餐厅是伟大的。 When I started university, my dad told me I should find a restaurant I really liked and eat there every month with some friends. Becoming a reg…

python 工具箱_Python交易工具箱:通过指标子图增强图表

python 工具箱交易工具箱 (trading-toolbox) After a several months-long hiatus, I can finally resume posting to the Trading Toolbox Series. We started this series by learning how to plot indicators (specifically: moving averages) on the top of a price chart.…

PDA端的数据库一般采用的是sqlce数据库

PDA端的数据库一般采用的是sqlce数据库,这样与PC端的sql2000中的数据同步就变成了一个问题,如在PDA端处理,PDA端的内存,CPU等都是一个制约因素,其次他们的一个连接稳定及其间的数据传输也是一个难点.本例中通过在PC端的转化后再复制到PDA上面,这样,上面所有的问题都得到了一个有…

bzoj 1016 [JSOI2008]最小生成树计数——matrix tree(相同权值的边为阶段缩点)(码力)...

题目&#xff1a;https://www.lydsy.com/JudgeOnline/problem.php?id1016 就是缩点&#xff0c;每次相同权值的边构成的联通块求一下matrix tree。注意gauss里的编号应该是从1到...的连续的。 学习了一个TJ。用了vector。自己曾写过一个只能过样例的。都放上来吧。 路径压缩的…

商米

2019独角兽企业重金招聘Python工程师标准>>> 今天看了一下商米的官网&#xff0c;发现他家的东西还真的是不错。有钱了&#xff0c;想去体验一下。 如果我妹妹还有开便利店的话&#xff0c;我会推荐他用这个。小巧便捷&#xff0c;非常方便。 转载于:https://my.osc…