CVPR 2017 ADNet:《 Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning》论文笔记

  理解出错之处望不吝指正。

  本文模型叫做ADNet。该模型通过强化学习产生动作序列(对bbox进行移动or尺度变换)来进行tracking。原理如下图(第一列代表初始帧,第二列和第三列代表通过RL产生的动作序列对object进行tracking):

    CVPR 2017 ADNet:《 Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning》论文笔记_第1张图片

 

  •   模型的整体结构如下:

CVPR 2017 ADNet:《 Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning》论文笔记_第2张图片

 

  •   强化学习部分:

  (1)状态:

    状态s_t分为p_td_t两部分。其中p_t代表正在tracking的bbox(当前图片信息,可在上图中看到),d_t则是一个11\times 10=110维的向量,存储的是pervious 10个action,其中11代表的是11种不同的action,使用独热码表示。

  (2)动作:

    动作分为3类共11种。第一类是move,包括上下左右和快速上下左右;第二类是scale,包括放大和缩小;第三类是stop,即终止操作。

     

  (3)状态转移:

    我们定义一个差值(\alpha =0.03):

     

    对于上下左右action(以此类推):

      \left [ x^{(t)}-\bigtriangleup x^{(t)},y^{(t)},w^{(t)},h^{(t)} \right ]

    对于快速上下左右action(以此类推):

      \left [ x^{(t)}-2\bigtriangleup x^{(t)},y^{(t)},w^{(t)},h^{(t)} \right ]

    对于尺度变换action:

      \left [ x^{(t)},y^{(t)},w^{(t)}+\bigtriangleup x^{(t)},h^{(t)}+\bigtriangleup x^{(t)} \right ]

  (4)奖励函数:

    假设action sequence的长度为T,则reward定义如下(即:中间的那些action都不产生reward,只有动作终止了才有reward):

     

    动作的终止有两种触发情况:①.选择了stop action;②.action sequence产生了波动(eg: {left, right, left})。

 

  •   训练部分:

  训练部分包括三部分:

  (1)训练监督学习部分

    这部分训练\left \{ \left. w_1,w_2,...,w_7 \right \} \right.,训练部分的action lable通过以下方法获得:

     

    class lable的判断如下:

     

    损失函数如下:

     

  (2)训练强化学习部分(这部分有点没懂)

    这部分训练\left \{ \left. w_1,w_2,...,w_6 \right \} \right.,我们通过上一步骤的训练得到了当前训练的初始参数W_{RL},这部分就是使用SGD最大化:

     

    其中当在labeled frame中success时,z_{t,l}=1,否则z_{t,l}=-1

    作者提到这部分训练可以采用半监督训练,如下图所示:

      CVPR 2017 ADNet:《 Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning》论文笔记_第3张图片

  (3)在线自适应

    在线更新的时候,只对\left \{ \left. w_4,w_5,...,w_7 \right \} \right.进行更新。每过I帧使用前面J帧中置信分数大于0.5的样本进行微调。

    如果当前的置信分数小于-0.5,说明“跟丢了”,需要进行re-detection。

你可能感兴趣的:(目标跟踪,#,2017年论文,目标跟踪,CVPR2017,ADNet,强化学习)