基于多特征融合的尺度自适应KCF目标跟踪算法

2020-07-08 05:43周正松陈虹君
关键词:特征向量尺度阈值

周正松, 陈虹君, 周 红

(四川大学锦城学院, 成都611731)

1 引 言

近些年,针对特定目标的跟踪方法受到不少学者的关注和深入研究[1-3],而在实际应用中,仍然会遇到不少问题,如目标受到的光照、姿态、遮挡和背景复杂等情况.近几年,基于判决模型的目标跟踪算法取得了较好的效果,该类算法的基本思想是把目标跟踪问题看作是目标与背景进行分类的问题.该类算法通过对大量的目标和背景样本进行分类学习,再通过分类器对当前输入图像进行分类,找出目标,其中很典型的算法就是核相关滤波(KCF,Kernelized Correlation Filters)目标跟踪算法[4-8].

2014年,Henriques等人提出了一种非常有效的运动目标跟踪算法,即KCF算法[4],该算法是一种判别式跟踪,通过训练样本去训练出一个判别分类器,从而能够快速的判断跟踪到的是目标还是背景,该算法使用循环矩阵对样本进行采集,用岭回归训练判别分类器,并利用循环矩阵在变换域的对角化性质,将复杂的矩阵运算转化为简单的向量运算,即元素之间的乘积,从而简化了计算,提高了运算效率,使得算法满足应用的实时性要求.然而,KCF算法也存在一些不足,如提取外观特征单一,不能自适应尺度变化和模型更新因子,因此,本文对其理论进行了详细的推导,并针对KCF算法的不足进行了改进.

2 KCF算法理论

2.1 一维岭回归

设训练样本集(xi,yi),其中,xi为样本,yi为样本标签,其回归表达式为f(xi)=wTxi,列向量w是样本xi的权重系数,可通过最小二乘法求解

(1)

其中,λ是正则化参数,也称为岭系数,用于控制系统的结构复杂性以保证分类器的泛化性能.将式(1)写成矩阵形式为

g(w)=‖Xw-y‖2+λ‖w‖2

(2)

w=(XTX+λI)-1XTy

(3)

由于后面将进行傅里叶矩阵变换,牵涉到复数矩阵,所以将式(3)扩展到复数域中的形式为

w=(XHX+λI)-1XTy

(4)

其中,XH表示复共轭转置矩阵.

2.2 循环矩阵

KCF算法中所有的训练样本都是由目标样本循环移位得到的,向量的循环可由排列矩阵得到,如一维向量初始排列为:x=[x1,x2, …,xn]T,排列矩阵为

它的一次循环移位为

Px=[xn,xn-1, … ,x1]T.

对于二维矩阵图像,可以看成是在两个维度方向分别对目标样本进行循环移位得到的. 如:

二维图像初始排列为

排列矩阵为

则移位后为

从而对于一个n维向量,可经过与排列矩阵进行不同次数的乘积,产生n个不同次数的移位向量,把它们按列排列构成一个矩阵,就得到了由x所产生的循环矩阵,记为C(x).

图1 一维向量得到的循环矩阵Fig.1 Cyclic matrix from one-dimensional vector

图2 二维图像不同循环次数后的移位Fig.2 Shift of two-dimensional image after different cycles

2.3 循环矩阵傅氏空间对角化

循环矩阵X可在傅氏空间中使用离散傅里叶矩阵进行对角化,如下式.

(5)

(6)

2.4 傅氏对角化简化的岭回归

w=(XHX+λI)-1XTy

(7)

(8)

由于对角矩阵求逆等于对角元素求逆,则化简得

(9)

其中,·表示点乘,即对应元素相乘;分数线表示点除,即对应元素相除.

因为循环矩阵乘向量等价于生成向量的逆序和该向量作卷积,又可进一步转化为傅里叶变换相乘.即

(10)

(11)

于是

(12)

(13)

因此,就可以使用向量的点乘、点除运算取代矩阵运算,特别是求逆运算,大大地提高了计算速度.

2.5 分类器更新

跟踪目标时,由于目标的旋转、姿态变化甚至遮挡等原因,常常会改变目标的外观.因此,需要在每帧跟踪后立即更新分类器的系数a和目标外观模型x.更新公式为

(14)

其中,η为的更新率.

3 基于多特征融合的尺度自适应核相关滤波(MFSA_KCF)目标跟踪算法

在恶劣天气(如雾、雨等)条件下,运动物体(飞机、汽车等)与机场地面的背景几乎没有区别.只有利用方向梯度直方图(HOG,Histogram of Oriented Gradient)的特征来区分它们,很难取得好的效果.同一运动目标在不同(方位、距离等)视角下,其尺度也有很大差异,KCF不能满足自适应尺度变化的要求.运动目标也可能被部分遮挡,这就要求模型更新因子发生变化,否则会导致错误信息的学习和较大的错误.

为了解决上面可能遇到的问题,本文在KCF算法的基础上,提出了一种更有效的MFSA_KCF算法.为了更好地区分运动目标和背景,除了HOG特征外,还提取了区分性的色彩描述子(DD,Discriminative Color Descriptor)特征[9];为了解决运动目标的尺度变化和局部遮挡问题,分别采用了自适应尺度变化和自适应模型更新方法.通过采用多种方法进行对比实验,验证了本文提出的MFSA_KCF算法的有效性.

3.1 多特征融合

KCF算法只采用单一HOG[10]特征,由于单一特征所提取的外观模型往往不具有很好的区分性,当目标发生较大形变或出现遮挡时不能很好地表征目标外观模型,容易导致跟踪漂移.颜色特征已经成功地应用在很多计算机领域,区分性的色彩描述子(DD)是khan在2013年提出的一种紧凑、高效的颜色特征,他们根据分类问题中的区分能力,将信息理论方法用于颜色描述和聚集颜色值.本文将联合HOG特征和DD特征来共同表征目标外观模型,其中HOG特征能很好地提取局部梯度特征和边缘特征,捕捉运动目标的局部轮廓信息,对光照变化有很好的适应性,DD特征能很好的提取全局颜色特征,对目标的旋转变化有很好的适应性.

提取HOG特征的主要步骤如下.

(1) 标准化颜色空间和Gamma空间.先把彩色图像转化成灰度图,再用平方根Gamma矫正,Gamma压缩公式为:I(x,y)=I(x,y)Gamma,其中,Gamma取为1/2.

(2) 计算图像梯度.在经过颜色空间归一化后的图像中,先在水平和垂直方向对每个像素点的梯度进行计算,再对该像素点的梯度大小和方向进行计算.若训练样本为三通道的彩色图像,可以先分别计算这个像素点在R,G,B三个独立通道的梯度大小和方向,再选取其中梯度幅值最大的通道作为该像素点的值.

(3) 计算每个cell的HOG特征.在得到每个像素点的梯度大小和方向后,就可以计算每个cell的HOG特征.

(4) 计算每个block的HOG特征.将多个cell的特征向量进行串联就可以得到block的特征向量.

(5) 计算图像的HOG特征向量.提取图像中每个block窗口内的HOG特征,然后将这些HOG特征进行串联就得到整个图像的HOG特征向量.

提取DD特征的主要步骤如下.

(1) 输入信息:RGB图像image,映射矩阵Mat.

(2) 计算图像image在像素坐标(x,y)处的 DD特征索引值index.

(3) 根据步骤(2)中计算得到的像素点坐标(x,y)的索引值index,在映射矩阵中找到其对应的列,获得对应的行向量Mat(:,index),则该行向量即为该像素的DD特征向量.

(4) 输出信息:由步骤(3)中计算得到的RGB图像image中每个像素的DD特征向量,再由这些特征向量组成该图像的DD特征向量.

在提取到HOG特征和DD特征后,就可得到高维的融合特征,并将其作为相关滤波的输入.

3.2 自适应度更新

跟踪运动目标时,对同一运动目标的不同视角,其尺度变化很大,KCF不能满足自适应尺度变化的要求,这将导致较大的目标跟踪误差.本文采用基于Shi-Tomasi角点特征检测的自适应尺度方法.具体步骤如下.

3.3 外观模型实时更新

在运动过程中,由于姿态或遮挡的变化,目标的外观往往会发生变化,这对实时更新运动目标的外观模型是非常必要的,因此需要实时采集运动目标的训练样本.然而,当运动目标被严重遮挡时,错误的目标训练样本会导致错误的目标分类结果,进而导致目标丢失.现有的经典跟踪算法大多采用常数学习率,难以应用于物体外观模型的快速变化,尤其是难以处理严重遮挡的情况.为了解决这些问题,本文提出了一种新的外观模型实时更新方法.具体为:

记fmax(z)为运动目标的最大匹配数,如果fmax(z)超过一定的阈值thr,则认为运动目标不存在严重遮挡或姿态变化等情况,更新率不变;如果fmax(z)没有达到thr,则判断有无出现遮挡情况,如果无遮挡,则提高更新率,如果有遮挡,则保持原来的外观模型,并将学习率减小为0.用公式表示即为:

(15)

确定目标遮挡的具体方法是:若目标的最大匹配数fmax(z)超过阈值thr,则认为无遮挡;若fmax(z)没有达到thr,则怀疑存在遮挡,如果存在遮挡,则可信特征点的数目M会减小,可以用M与上一帧中可靠的角点特征N的比值来判定当前目标是否真的出现遮挡, 具体表示为:

(16)

也就是说,λ=1认为真出现遮挡,λ= 0认为没有出现遮挡;θ称为遮挡阈值,通过实验反复验证,取θ=0.4时判定遮挡效果较好.

4 实验测试结果与分析

为了对所提出的运动目标跟踪算法的有效性进行验证,在CVPR2013上的Object Tracking Benchmark(OTB)[11]中选取5段复杂环境下的视频序列,同时选取5段来自某机场场面的视频段,对这10段视频序列(见表1)进行测试.由于特定目标跟踪需要手动指定第一帧中的待跟踪目标矩形框的位置,对于机场视频,在第一帧中手动标记出目标初始位置矩形框,对于标准库采用数据集本身提供的初始目标位置矩形框,在对比实验中,将本文提出的目标跟踪算法与经典的目标跟踪算法CSK、KCF、DSST[12]和sKCF[13]的跟踪结果作多角度对比,其中CSK是经典的核相关滤波目标跟踪算法,KCF是融合了多通道HOG特征的CSK,且提高了算法运算速度,DSST是增加了尺度滤波器的KCF,sKCF是增加了自适应高斯窗口函数和尺度估计的KCF,且提高了算法运算速度.

本文将上述各个算法在以上十段视频序列中进行实验测试,并进行定量分析.

为了分析各个算法的性能,本文采用中心位置误差(CLE)、距离精度(DP)和重叠成功率(OS)来定量分析跟踪的结果.其中:CLE是目标跟踪中心到目标真实中心的距离,CLE越小,跟踪精度越高;DP是CLE未达到一定阈值的帧的比例,DP越大,跟踪效果越好;OS是跟踪目标和真实目标重叠区域面积与跟踪目标和真实目标合并区域面积的比值超过一定阈值时的帧的比例,OS越大,跟踪效果越好.

表1 实验测试视频

表2 中心位置误差(单位:像素)

由表2可知,CSK算法跟踪的平均中心误差最大,其误差为26.99,KCF算法、DSST算法和sKCF算法的误差分别为16.97、13.32和14.22,本文算法的平均中心误差为9.42,较KCF算法、DSST算法和sKCF算法分别下降了46.0%、29.3%和33.76%.

表3为中心位置误差阈值为20时的距离精度,可知CSK算法的距离精度较低,KCF算法、DSST算法和sKCF算法的距离精度要好于CSK算法,本文算法的距离精度要明显高于其他三种算法.

表3 距离精度

表4 重叠成功率

表4为重叠率阈值为0.5时的重叠成功率.可知,KCF算法的重叠成功率要比CSK算法好,因为CSK算法只采用了灰度特征,KCF算法采用了多通道HOG特征.DSST算法和sKCF算法在KCF算法的基础上增加了尺度自适应策略,从表中可以看出DSST算法和sKCF算法的重叠成功率要好于KCF算法.本文提出的算法相较DSST算法和sKCF算法分别提高了6.8%和8.4%.

最后,给出各个跟踪算法在十段测试视频中的精度曲线图和成功率曲线图.其中,精度曲线图的距离精度阈值范围为0~50,成功率曲线图的重叠阈值范围为0~1.

图3 精度曲线图Fig.3 Accuracy curve

图4 成功率曲线图Fig.4 Success rate curve

由图3中的精度曲线图可知,在不同距离精度阈值下,本文提出的MFSA_KCF算法的精度要高于其它对比算法.由图4中的成功率曲线图可也知,在不同重叠阈值下,MFSA_KCF算法的成功率也要高于其它对比算法.

5 结 论

通过对比实验表明,相较于常见的目标跟踪算法,本文提出的基于多特征融合、尺度自适应以及在线模型更新因子的核相关滤波目标跟踪算法,跟踪精度更高,且对目标尺度发生较大变化和遮挡情况下的跟踪具有较强的鲁棒性.

猜你喜欢
特征向量尺度阈值
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
克罗内克积的特征向量
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
采用红细胞沉降率和C-反应蛋白作为假体周围感染的阈值
财产的五大尺度和五重应对
三个高阶微分方程的解法研究
宇宙的尺度
辽宁强对流天气物理量阈值探索统计分析
9