1.目标跟踪综述
一般包含:特征表达、跟踪模型、搜索策略
跟踪方法分类
2.特征表达
2.1传统特征
表达主要包括HOG、LBP、Harr-like、SIFT和颜色统计
1.HOG:图像局部区域梯度加权直方图,一般针对灰度图像,对背景光照变化和目标微量性形变具有不变性
2.LBP:局部二值化
3.Haar-like:基于哈尔小波变换所设计,采用积分图进行快速运算,早期常用于进行人脸特征提取
4.SIFT特征:它是一种多尺度的、基于梯度方向特征的特征点提取方法,是传统特征的集大成者,对旋转、尺度变化、光照变化具有不变性,是一种非常稳定的局部特征,缺点是计算速度较慢。
5.颜色统计特征:指的是 RGB、HSV、Lab 等颜色空间的统计值(如平均),常用于超像素的特征表达。
2.2深度学习特征
目标跟踪对于定位精度要求很高,因此不会采用太深的网络用作特征提取,一般会从基础网络中图区中间层的输出作为目标特征,或者采用多层特征融合的方法,主要因为越深层的网络感受野越大,分辨率越低,对应的下采样间距越大,这会降低目标的定位精度,同时增加网络层数会提高算法计算复杂度。
1.AlexNet
AlexNet 的网络总层数为 8 层,包含 5 个卷积层和 3 个全连接层,相对于传统 CNN网络使用的 sigmoid 或 tanh 激活函数,这里采用线性整流函数 (Rectified Linear Unit,ReLU)作为激活函数,大大提高了网络训练的收敛速度。AlexNet 采用局部响应归一化函数,提高了网络的泛化能力,公式如下:
其中,N 表示核的数量;aix,y表示第 i 个通道图像中 (x, y) 位置处的元素值;k、n、α、β为固定的超参数。
相对于传统卷积神经网络中采用的池化操作,AlexNet 使用了覆盖的池化操作,使用池化窗口大小为 3,步长为 2,实验证明这种方法可以减小模型误差,降低训练模型过拟合的概率。
2.VGG
VGG 网络相比于 AlexNet 的主要改进点是采用多层 3 × 3 的卷积层代替核较大 (11 ×11, 7 × 7, 5 × 5) 的卷积层,这种方法在保证同样感受野的前提下减少了网络参数,而且多层卷积层可以学习更加复杂的映射函数。VGG 的整体网络结构非常简洁易懂。
3.GoogLeNet
GoogLeNet 的基础网络单元如图所示,采用不同大小的核进行并行运算并相加可以对不同尺度的特征进行融合,而采用 1×1 大小的卷积是为了减少网络的参数量,其原理和 VGG 中采用多层小卷积核代替一层大卷积核的思路相同。把多个基础网络单元进行深度方向堆叠就得到了 GoogLeNet 的整体结构,网络最后采用平均池化层(Average Pooling)代替了第一个全连接,使得其网络参数量大幅降低,最后采用 Softmax 激活函数。
4.Resnet
5.RetinaNet
3.跟踪模型
3.1传统方法
1.均值偏移 Mean-shift
其最早用于聚类,表示每一个点都有一个指向局部密度最大点的向量,向量基本形式如:
2.随机森林
随机森林算法会根据给定训练数据学习得到一颗决策树,决策树的每一个顶点都表示以一个分类函数,输入的特征会从最上边的根节点开始向下进行多次分类,知道抵达最下方的子节点为止,然后把子节点的分类结果进行融合作为目标特征,最后采用简单的线性分类器或者其他更为复杂的分类器进行最终的分类,公式如:
3.支持向量机 SVM
其常被用作于分类、识别任务,在跟踪任务中,SVM模型的作用是平滑的二分类函数,其输出值是一个置信度评分,评分高表明是目标的概率越大,反之是背景的概率越大。
4.稀疏表达
5.贝叶斯推断及粒子滤波
贝叶斯推断是采用贝叶斯公式求取目标后验概率,并使用最大化来预测目标当前状态的方法。
6.提升
7.相关滤波
3.2深度学习方法
1.相关滤波
相对于传统方法中的相关滤波模型,网络化的相关滤波模型需要考虑的核心问题是推导滤波器模型的梯度传导公式,CFNet算法首次实现了这个目标,其网络结构如下所示,网络化的相关滤波模型可以通过端到端的训练学到最佳的特征表达,这是他的最大优点。
2.CNN
基于CNN的跟踪模型采用多个卷积层提取目标特征,并利用多个全连接层进行目标分类,其思路和目标检测、识别和分类完全相同。MDNet是早期基于CNN的跟踪算法的集大成者,其网络架构如下,核心思想是采用多域(Multi-Domain)的网络分支来拟合不同的目标物体,每个域分支对应与一个目标,即每个目标都有独立的分类网络,并采用难负样本挖掘的方法来采样分类难度较高的样本,最后通过外接框回归(Bounding Box Regression)的方法计算最终结果
3.RPN
区域生成网络(Region Proposal Network,RPN)最早出现在目标检测网络Faster RCNN中,用于快速提取不同尺度、长宽比的候选区域。参考这种思路,SiamRPN构造了基于孪生网络的RPN结构,如图所示,模板图像和搜索区域采用完全相同的卷积网络提取特征图,然后通过两个独立的网络分支进行分类和回归,根据分类值来确定目标所在的位置和大小,再通过回归结果对外接框进行优化。RPN结构的优点是通过并行计算和卷积过程自带的滑动窗口功能对不同大小、不同位置的候选区域进行同时运算,提高了网络的运算效率,跟踪的最终输出结果为:
4.FCN
全卷积网络(Fully Convolutional Networks,FCN)是语义分割中的经典网络结构,所有网络层均采用卷积层,最后通过上采样层(反卷积)回复原图大小,使输出分割图像尺寸和输入图像尺寸完全相同。跟踪算法D3S采用类似的网络结构进行目标的分割和跟踪,通过这种方法,目标分割和跟踪可以放在同一个框架下进行。
4.搜索策略
下图 给出了跟踪方法中常用的六种目标搜索策略。最早的模板匹配跟踪方法采用的就是滑动窗口的搜索策略,这种方法会对目标周围所有位置区域进行检测,相当于遍历搜索,定位精确度高,但由于过于耗时,目前很少跟踪方法采用这种策略,值得一提的是,卷积神经网络采用滑动窗口进行卷积操作,其本质和这种策略是一样的,但是由于多次进行下采样,多层卷积网络的采样步长较大,定位准确度不高。粒子滤波方法中常采用随机采样的方法,这个方法按照给定的概率分布进行采样,
图 2.11b 中采用以目标为中心的高斯分布进行采样,这种采样方法有可能会漏掉目标所在区域,因此并不严谨。相关运算采用循环结构来近似候选区域采样,由于存在边界效应,一般把图像特征与一个同样大小的汉宁窗相乘,这种方法只需要一次运算就可以得到所有候选区域的分类评分,但因为这是一种近似采样,其采样特征离目标中心位置越远,效果越差。基于分割的目标搜索策略在理论上是最完美的方法,它不仅可以得到目标的外接矩形框,同时还能得到目标的外形轮廓,这对于准确构建目标模型有很大的帮助。基于 RPN 的跟踪方法均采用 Anchorbased搜索策略,这种方法会在每个位置处定义不同大小和长宽比的搜索框,通过深度网络的并行运算同时完成所有搜索工作。Anchorfree 的搜索策略是 Anchorbased 策略的简化版,这种方法首先确定目标所在的位置,然后根据回归网络的输出得到目标边界与目标位置之间的距离,直接计算出目标外接矩形框的中心和大小。
参考:视觉单目标跟踪算法研究 2021