论文:Fully-Convolutional Siamese Networks for Object Tracking
代码:https://github.com/huanglianghua/siamfc-pytorch
我们训练了一个孪生网络以在更大的搜索图像中定位示例图像。 进一步的贡献是相对于搜索图像完全卷积的新颖孪生体系结构:通过计算其两个输入的互相关性的双线性层实现了密集而有效的滑动窗口评估。
Z模板,x搜索区域,ϕ变换函数 特征映射操作,g是简单距离或相似性度量
*代表卷积操作,得到一个17^17的score map,代表着search region中各个位置与模板相似度值。
将17×17的得分图进行双三次插值生成272×272的图像,来确定物体的位置。
算法本身是比较搜索区域与目标模板的相似度,最后得到搜索区域的score map。其实从原理上来说,这种方法和相关性滤波的方法很相似。其在搜索区域中逐个的对目标模板进行匹配,将这种逐个平移匹配计算相似度的方法看成是一种卷积,然后在卷积结果中找到相似度值最大的点,作为新的目标的中心。
上图所画的ϕ其实是CNN中的一部分,并且两个ϕ的网络结构是一样的,这是一种典型的孪生神经网络,并且在整个模型中只有conv层和pooling层,因此这也是一种典型的全卷积(fully-convolutional)神经网络。
离线提取每帧的示例图像和搜索图像,以避免在训练过程中调整图像大小。
φ所对应的特征提取网络采用的是AlexNet
对于z
图像裁切方式为选取紧密边界框 ( w x h ) ,并多选取四周一定范围的像素 p 作为上下文边界, p 的计算方式为 p = ( w + h ) / 4 ,在乘上一个比例参数,变成 A ( 127 x 127 )
对于x
会从整张图片中裁剪出255×255的图片,裁剪的中心为上一帧预测的bounding-box的中心。
当模板图像 z 和搜索图像 x 不够裁剪时,缺少的部分将用平均RGB值填充。