DRL-IS:Deep Reinforcement Learning with Iterative Shift for Visual Tracking

发表于ECCV2018,论文链接

亮点:文章把跟踪任务视为基于深度强化学习的目标边界框的迭代移位,并引入actor-critic网络来评估是否更新目标模型、采取什么样的方法进行模型更新。

直接上图:

网络分为3个子网络:

1) the actor network,输出为是否更新,怎么更新(四个action)

2) the prediction network,输出迭代移位

 3) the critic network,输出为前两个网络输出的Q值

如上图所示,它们共享前面的卷积层和一个全连接层。

下面是对整个论文的详细解读(fanyi)~~~~~~~~

1、Abstrct

摘要------视觉跟踪面临着准确而有效地定位目标,以及在线决策是否和如何适应外观模型甚至重新开始跟踪的困境。本文提出了一种用于单目标跟踪的迭代移位深度强化学习(DRL-IS)方法,引入角色批评网络预测目标边界框的迭代移位,并评估移位对是否更新目标模型、是否重新初始化跟踪。由于目标定位是通过迭代移位过程实现的,而不是对许多采样位置进行在线分类,因此所提出的方法鲁棒性强,能够处理大变形和突然运动,并且计算效率高,因为找到目标需要10次移位。在离线训练中,批评网络指导学习如何以端到端的方式对运动估计和跟踪状态联合决策。在变形较大OTB基准上的实验结果使跟踪精度提高了1.7%,并且运行速度比现有技术的竞争方法快5倍。

2、Introduction

图一:对比基于分类法的跟踪(左列)与基于迭代移位的跟踪(右列)示意图:跟踪快速移动的车辆(第一排)并跟踪具有大形变的潜水运动员(第二排)。 给定初始框(绿色),基于分类的方法采样许多proposal,选择具有最高分类分数的框(红色),并收集正(黄色和红色)和负样本(蓝色)以在线微调分类器。 在这些困难的场景中,可能没有足够的正样本用于在线学习。 相反,所提出的迭代移位跟踪逐步调整边界框以定位目标(例如,车辆的3steps和运动员的2steps),并且通过强化学习来有条理地决定何时以及如何更新目标模型。 移位过程通常倾向于更有效,因为评估的候选区域少于基于分类的方法。

分析:何时以及怎样更新目标模型是重点也是难点!(猛点头,jpg,非常同意,击掌(✧∇✧))使用CNN分类器的分类或检测和关联问题[35]。即使强大的观察模型也可能无法捕获目标的所有可能变化,并且需要在跟踪期间即时更新。 然而,在线分类器学习可能容易受到在硬情况下具有模糊标签的样本的影响,例如变形,快速运动和遮挡等,导致模型漂移。 跟踪器需要同时对目标的运动状态和跟踪状态做出决定,即是否以及如何更新观察模型,或者甚至在必要时重新开始跟踪。 这些确实是在线追踪期间做出的艰难决定。

抛出了两个问题:

1、迭代移位逐步调整跟踪框这个方法更符合跟踪这一问题(相比于提候选框再做回归把跟踪视为回归问题的方法)

2、何时以及怎样更新目标模型

为了解决上述问题,我们在VOT中引入了深度强化学习以共同决定目标的运动状态和跟踪器的状态。 采用一个预测网络在有效的迭代移位过程中估计运动状态,即目标边界框的位移和缩放。 而跟踪器的状态也就是:是否或如何更新观察模型以及是否停止和重新开始跟踪,由actor network确定。所提出的方法,被称为具有迭代移位的深度强化学习(DRL-IS),利用了目标的运动估计与当前跟踪状态之间的相关性。 预测网络和actor network是从由critic network引导的大量训练视频序列离线学习的,关于如何在给定当前帧和先前目标位置和表示的情况下采取动作。

也就是说:目标边界框位移和缩放由预测网络的迭代移位来完成;是否或如何更新观察模型以及是否停止和重新开始跟踪,由actor network确定。

相比之下,现有的方法ADNet[52]、EAST[21]和PODP[44]都是强化学习单独进行运动估计或只对对跟踪状态做出决策。

而这篇文章的方法是将运动估计和跟踪器的状态联系在一起

本文的主要贡献有两方面:

1)我们提出了一个Actor-Critic网络来预测目标运动参数并选择跟踪状态的动作,其中不同动作的奖励是根据其影响专门设计的; 2)我们将对象跟踪视为目标框的迭代移位问题,而不是在可能的边界框上进行CNN分类,从而有效且精确地定位目标

那么文章读到这里对作者的立意基本了解了。就是说他把跟踪问题看做目标框的迭代移位(或者说变化)的问题,这部分的工作是由一个预测网络的迭代完成的,那么这个预测网络具体要怎么完成迭代移位的这个工作呢?怎么训练?怎么使用?还有一个比较大的贡献是文章还把模型什么时候更新?怎么更新?什么时候该停止更新,重新初始化?这个问题一起考虑了进去。文章中说是采用了actor-critic网路来同时完成这两部分工作的。(我的想法:预测模型的训练?根据当前帧图像以及前面帧的信息,同时对该帧目标框和模型的动作做出决策。此处模型是指?每一步的奖励机制又是怎样定义的?整个网路是怎么训练的?)

3、Approach

网络分为3个子网络:

1) the actor network,

2) the prediction network,

 3) the critic network,

as shown in Fig.2,它们共享卷积层和一个全连接层

                                      图二(跟随论文)DRL-IS跟踪方法概览

方法概述:

1、给定目标初始的bounding-box,我们先从fc4层提取深度特征f然后将一个候选框的特征f和当前目标特征f^{*}联系起来(文章中用了concatenate这个单词,还有这句话没看懂也没搞懂)

2、利用预测网络产生位移量\delta(后面会有该偏移量的定义)也应用了actor network

3、For action continue,根据预测网络的输出\delta来调整目标的bounding-box

     For action stop and update,停止迭代并更新目标的外观特征和预测网络的参数

     for action stop and ignore,停止迭代并跳过更新

     action restart,此时目标可能已经丢失,因此对bounding-box重新采样

4、在训练阶段,我们采用deep critic network来估计当前actions的Q值,并微调预测网络和actor网络。

 

3.1 Iterative Shift for Visual Tracking

文章中是把目标跟踪任务视为一个iterative shift问题,给定当前帧和之前的跟踪结果,预测网络迭代地变换候选框来对目标进行定位,同时actor network对跟踪状态做出决策,是否更新目标的表示,是否更新预测网络以及是否重新跟踪。

通常给定一个视频,用I_{t}表示第t帧,从第一帧中提取出目标所在区域即l_{1}=\left \{ x_{1},y_{1},w_{1},h_{1}\right \}来初始化跟踪器,目标的外观由特征f_{1}来表示,即共享网络的fc4层的输出。

                                \delta =\psi \left ( f_{t},f_{t-1}^{*} \right )                        (1)

预测网络\psi的输出为\delta,输入f_{t}为第t帧图像根据l_{t-1}^{*} \right  (也就是t-1帧目标框的位置)裁剪区域的特征,   ,f_{t-1}^{*} \right为t-1帧的特征。

                                \delta =\left \{ \Delta _{x}, \Delta _{y}, \Delta _{w}, \Delta _{h} \right \}

                                        

定位过程中需要多次迭代,每次迭代都需要计算一次(2)式。

为了同时对目标的运动状态和跟踪器的状态做出决策,我们采用actor network来生成一系列

服从多项式分布的actions(a_{1},a_{2 },...,a_{K_{t}}):

                      

初始化的状态s_{t,0}=\left \{ I_{t},l_{t-1},f_{t-1}^* \right \}包括图像I_{t},initial locationl_{t,0}=l_{t-1}^{*},and appearance featuref_{t-1}^{*}

上式中的\pi是从antor network的输出中推导出来的

也就是说actor net的输出的如(3)式所示是关于在各种状态下采取各个action的概率。

critic net 的输出是Q\left ( s,a,\delta \right )

3.2 Training the neural networks in DRL-IS

在本小节中,我们通过深度强化学习从大量标记视频序列中详细叙述预测,演员和评论家网络的训练过程。 注意,预测网络是离线预训练的,而在线跟踪期间,预测网络和演员网络都是由演员 - 评论家方法联合更新的。

Learning of the prediction network:我们以端到端的方式预先训练卷积神经网络,以预测目标对象在帧或迭代步骤之间的移位。

网络框架:如图2所示,预测网络使用三个卷积层在预训练期间从目标补丁和当前候选框中提取特征。 然后将这些特征连接起来并馈入两个完全连接的层,以产生估计位置平移和缩放变化的参数。

网络的输入:我们从序列的每两帧之间采样成对的图像块以馈送网络。 第一个图像块是前一帧中的物体位置,第二个是当前帧中位于同一位置的图像块。图像块以固定比例填充到目标的尺度大小,这是由我们在实验中根据经验确定的。 网络接收一对图像块,这些图像块被扭曲成107×107像素来并估计两个相邻帧之间的运动δ。

网络预训练:我们训练了一个完全端到端的网络,直接学习位置转换和变形。并使用标记的视频帧和这些增强的样本,预测网络的训练促进以较少的迭代步骤定位目标。

DRL-IS with Actor-Critic:我们利用actor-critic算法联合训练三个子网络,θ,ψ,φ

首先,我们根据跟踪性能定义奖励。

action continue 的奖励是由ΔIoU而不是IoU定义:

             

即为交并比的差值

对于action stop&update和stop&ignore,奖励由最终的预测和GT的IoU来定义。 为了鼓励跟踪以较少的迭代停止,positive奖励与迭代次数Kt相关。奖励计算如下:

对于action restart,考虑到restart的高计算成本,当最终预测的IoU和gt小于0.4时,奖励是积极的。

然后我们定义每个动作的Q值的计算。action continue Q值的计算则与其他acton的计算完全不同,因为继续的奖励基于IoU的增量,而其他则基于IoU评估的跟踪性能。 动作继续的Q值计算如下:

等式(11)是对当前帧中的 step k的奖励求和,而等式(12)对time step t的奖励求和。 在方程(11)和方程(12)中Q值的不同计算的原因是 action continue是在当前帧t中使用当前模型来定位目标,而其他动作则涉及决定是否要基于先前的跟踪性能来停止跟踪。

critic net 和actor net的优化问题定义为:

没怎么看懂这里优化的定义?????????????吼吼吼

更新定义为:

更新策略还比较常规。。。。。。

速度:10fps

5 Conclusion

在本文中,我们提出了一种用于视觉跟踪的DRL-IS方法,该方法已经证明强化学习是对用于跟踪的艰难决策过程进行建模的有效方式,即同时执行运动估计和改变跟踪状态。 由深度网络实现的新迭代移位比在线分类有效地定位目标,并且很好地应对视频中存在的变形或运动模糊的情况。 对3个公共数据集进行的大量实验验证了所提方法的跟踪鲁棒性和效率的优势。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值