本文基于Siamese network网络结构,加入了注意力机制(包括Residual Attention、General Attention和通道注意力),这项注意力机制作为一个layer嵌入到Siamese network网络中,缓解了深度网络训练中的过拟合问题,还提升了网络的判别能力和适应性。
相关滤波跟踪的目标函数(岭回归):
从上述求解公式可以看出,传统相关滤波算法在建模过程中并没有考虑到目标物体图像特征的学习(主流相关滤波方法基本采用了HOG特征、CN特征,或者预训练好的CNN特征,严格来说,对于跟踪算法本身而言,没有特征学习的过程),而仅仅考虑了判别器的在线学习。
小结。传统相关滤波方法的特点:隔断了特征表示与判别学习。
Siamese网络tracking方法的总体结构图如下所示:
基本公式建模:
从上述公式(4)可以看出,与相关滤波方法不同,Siamese网络需要在函数 φ(⋅) φ ( ⋅ ) 中同时进行特征学习和判别学习,其判别结果体现在 f(z,x) f ( z , x ) ,另一方面,结合示意图可和公式以看出,Siamese网络的训练,只利用了单一样本 z z 。
小结。传统Siamese网络跟踪方法的特点:
为了解决传统Siamese网络的少样本容易形成过拟合问题,CFNet在Siamese网络中引入循环矩阵(虚拟的多样本),并且借助循环矩阵的优势提升计算性能。但是和标准相关滤波方法类似,CFNet中也不可避免地带来了边界效应(boundary effect)。
小结。CFNet跟踪方法的特点:
为了更好地解决过拟合问题,本文基于Siamese网络,将特征学习与判别学习分离。如何分离?通过多种注意力机制的cross correlation来进行分离。
从上图可以看出,本文基于Siamese网络进行改进,且本文最重要的创新点对应于图中的三个部分:① Residual Attention;② General Attention;③ Channel Attention,各个部分的作用如下所示:
论文用 ρ~ ρ ~ 表示Residual Attention,它是一个二维的map,本质上是某种置信图,用于估计目标的共同(全局)特征。
论文原文:The intuition behind this idea is that any one estimation might not capture both the common characteristics and distinctions of targets in different videos while a superposition of estimations might. The residual attention encodes the global information of the target and has low computation complexity. (from Section 3.3)
个人对Residual Attention作用的理解:由于物体形状可能不是特别规范,难以简单粗暴地用一个矩形框来进行描述,因此在进行图像采样时,很容易就将背景图像也一并包含进来了,这样就对跟踪器的训练产生困扰,这些边边角角的图像成分究竟是不是物体?然而我们能够想到一种规律或者称为一种假设:物体在持续运动过程中,其自身特征成分应该是稳定的(色彩啊纹理啊什么的),背景部分很可能千变万化,如果我们能够想到将这种共同的部分提取出来,那么算法也就能够大体得到物体的形状轮廓了。如下图所示:
论文的解决思路是利用Residual Attention,将众多帧中采样图像的共同部分提取出来,形成较为稳定的形状轮廓,这部分也是本文最大的亮点。联想到之前的CSR-DCF算法(可以参考本文之前的文章https://blog.csdn.net/discoverer100/article/details/78182306),本文在这方面期望达到的目的与之类似,但个人感觉本文的思路更进了一步,CSR-DCF通过颜色成分来确定物体的形状轮廓,在处理颜色不太单一的目标时可能会出现不理想(这只是本人初步理解,具体还需要进行真实测试才能完全下结论),本文通过多帧画面中的共同成分来进行轮廓分析,理论上更优越一些。
值得注意的是,论文在计算Residual Attention时,用到了沙漏网络(Hourglass Networks),这种网络最明显的特点是:先对图像进行下采样,再对图像进行上采样,因此呈沙漏形。关于这种网络结构,可以参考论文Stacked hourglass networks for human pose estimation(Newell, A., Yang, K., & Deng, J. (2016, October). Stacked hourglass networks for human pose estimation. In European Conference on Computer Vision (pp. 483-499). Springer, Cham.) 在线阅读:https://arxiv.org/pdf/1603.06937.pdf
论文用 ρ¯ ρ ¯ 表示,该变量也是一个二维矩阵,表示空间区域中的某种置信分布,其物理意义与相关滤波中基于高斯分布的期望输出比较类似,两者的区别在于:传统相关滤波中的期望输出通常为固定数值的二维矩阵,而本文的general attention是通过学习得到的。
这个没什么好说的,dual attention ρ ρ 就是将上述residual attention和general attention进行叠加:
两种Attention进行叠加的示意图下所示:
Dual Attention的实际效果如下图所示:
在上图中,图(a)描述General Attention的学习状况,可以发现,迭代次数达到50次后,效果可以达到最好。
一般情况下,经过卷积神经网络提取的特征通常都包含很多channel,其中每一层channel都代表了某种特定的模式,在不同的场景下,不同的channel可能具有相异的显著性(重要性),因此可以通过引入注意力机制对各个channel进行选择(这部分思想的出发点与CSR-DCF比较接近)。该部分的示意图如下所示:
这里,论文用 i i 表示channel层号,第 i i 层的特征输出为
该融合思路,可以认为:首先将Residual Attention和General Attention进行“叠加”,得到Dual Attention,然后将Dual Attention与Channel Attention进行加权相乘。以下是论文的公式:
其中, ρ ρ 表示Dual Attention, β β 表示Channel Attention, z z 表示模板图像, x x 表示搜索图像。
在论文中,这样的融合思想就是Weighted Cross Correlation,其中weighted就体现在论文创新的Attention机制。
回顾本博客中的公式(4)——SiamFC跟踪算法的基本建模:
通过比较可以发现,论文所做的工作主要是:基于SiamFC,在模板图像中增加了注意力机制处理,以解决边界效应,实现更加鲁棒的目标跟踪方法。
首先回顾SiamFC网络的loss function,下面是一个样本对的损失函数:
从图中可以看出,论文选择了8帧画面,对于SiamFC算法而言,一个training pair可能随机地包含了两帧画面,比如,#1和#4就有可能被选择为一组training pair,然而#4是目标处于完全遮挡下的状态,用这种方式来训练会导致过拟合,降低跟踪器的性能。
基于SiamFC跟踪算法的上述不足,论文采用了一种类似加权的思路进行改进,以下是论文中所有样本对的loss function:
其中,
表示时间上的有效性权重,其基本思想是:两帧之间隔得越远,权重就越低。如此,就可以很大程度上避免SiamFC算法存在的上述训练过拟合问题。
论文在Siasmes Network基础上,通过引入了三种注意力机制(Residual Attention、General Attention和Channel Attention),进一步描述了目标物体的外观轮廓,优先选择了更加强有力的特征通道,并对它们进行加权融合,作为一个layer嵌入到Siamese Network中进行end-to-end训练,最终取得了良好的效果。
更多内容,欢迎扫码关注“视觉边疆”微信订阅号