学习笔记18--SiamRPN

论文High Performance Visual Tracking with Siamese Region Proposal Network

本文主要提出Siamese region Proposal Network(Siamese-RPN),包含siamese子网络用于特征提取,以及候选区域生成网络(region proposal subnetwork)用于分类和回归。

一、先了解siamese网络--Fully-Convolutional Siamese Networks for Object Tracking

网络结构为上下两分支,共享卷积层参数(相同的特征提取网络φ,孪生网络含义)。模板分支z用来提取第一帧特征,检测分支x在当前帧上根据上一帧结果裁剪出search region。然后将模板z提取的特征图作为卷积核在x的特征上进行卷积操作,即图中的*部分,最终得到一个分数图score map,表示搜索区域各个位置与模板z之间的相似度,相应最大的点即为目标位置。

二、Siamese-RPN框架

 1、Siamese feature extraction subnetwork

类似于SiameseFC网络,采用无填充的全卷积网络,上分支输入为模板帧,即第一帧的bounding box。下分支是待检测的帧,即当前帧。两条分支经过同一个CNN之后得到了两个feature map(ϕ(z)和ϕ(x)),该CNN使用除去了conv2和conv4两层AlexNet。

2、Region proposal subnetwork

受Faster R-CNN中的RPN的启发,分为分类分支和回归分支。在两个分支上分别对模板帧和检测帧的特征做卷积运算,在x上使用经过处理的z作为卷积核进行卷积操作。

损失函数即RPN中的损失函数,由Lcls和Lreg两部分组成,Lcls使用交叉熵损失,Lreg使用smooth L1 loss。

3、训练

成对给网络feed图片,由于跟踪前后连续帧的目标形变较小,anchor采用一种尺度,5种不同的长宽比[0.33, 0.5, 1, 2, 3]。

正负样本的选取,Iou>0.6为正样本和Iou<0.3为负样本。

4、 Tracking as one-shot detection

希望找到使预测函数ψ(x; W)的平均损失L最小的参数W。而one-shot学习目的在从感兴趣类别的单个模板z中学习W。 discriminative one-shot learning的挑战是找到一种将类别信息整合到学习者中的机制,即learning to learn。为解决这一挑战,文中提出了一种从单个模板z学习预测变量参数W的方法。元学习过程。

one-shot detection:借用了meta learning的思想,预训练模版分支,通过模版帧学习到检测分支RPN的网络参数。具体来说,模板分支使用第一帧来预测检测分支上区域提出子网核的权重(灰色部分)。 然后剪掉模板分支,只保留检测分支,因此将框架修改为局部检测网络。