APP下载

基于角点的稀疏子空间粒子滤波跟踪算法

2018-09-26王旭阳朱志林

计算机应用与软件 2018年9期
关键词:角点向量模板

王旭阳 朱志林

(兰州理工大学计算机与通信学院 甘肃 兰州 730050)

0 引 言

在信号处理领域,视觉跟踪是一类非常重要的研究课题,对它的研究具有重要的研究意义和巨大的应用价值。尽管经过近半个世纪的发展,视觉跟踪仍有许多问题没有彻底解决,比如目标快速变化、目标遮挡、背景复杂等[1-2]。

针对以上问题,基于子空间的目标跟踪方法能够较好地解决目标快速变化、目标遮挡和背景复杂的问题而受到了广泛关注。子空间跟踪方法的首次提出是基于主成分分析的思想,但是不能适应目标外观变化。为了能够实现对目标准确跟踪,Ross等[3]提出基于增量子空间的目标跟踪方法(IVT算法),通过对子空间增量更新较好地解决了目标外观变化与光照变化的问题,但是对目标遮挡与快速运动问题敏感。Kalal等[4]提出一种新的单目标长时间目标跟踪方法TLD(Tracing-Learning-Detection),将跟踪与检测结合的思想,在形变与部分遮挡问题具有鲁棒性。Babenko等[5]提出建立样本集,至少有一个正样本的样本集标签设为正,否则为负,提高了样本更新的精确度,很好地解决了在线跟踪漂移的问题。Zhang等[6]提出通过稀疏测量矩阵去提取前景目标和背景的特征,作为在线学习更新分类器的正样本和负样本,然后使用该朴素贝叶斯分类器去分类下一帧图像的目标待测图像,并在线更新分类器,对多种跟踪问题具有鲁棒性。王栋等[7]提出了基于稀疏原型的方法,将稀疏表示方法中的遮挡模板与PCA基向量结合,有效地解决PCA基向量对目标遮挡敏感和稀疏表示方法实时性差的问题,但琐碎模板会受到目标背景影响,长时间跟踪后会降低精确度。文献[8]提出联合模型的思想,将目标外观模型同时用原始目标模板与当前帧部分粒子构成的联合模板稀疏表示构建一个联合目标函数,将跟踪问题通过迭代转化为求解最优化问题,但算法的复杂度较高。文献[9-13]提出对目标先进行状态判断,对目标不同的情况自适应采用不同的跟踪策略。状态判断并自适应跟踪的方法提高了跟踪准确度,降低了图像维数与字典搜索复杂度,但在复杂环境下状态判断方法单一或不同状态的跟踪策略不当会导致跟踪漂移。

本文在传统稀疏子空间的基础上,提出基于角点的稀疏子空间粒子滤波跟踪方法。首先通过Huber函数及求当前帧与基向量均值偏移值结合的方法计算相似度,更准确地得到目标的相似性,从而对目标状态进行判断。然后提出通过Shi-Tomasi角点[14]的方法提取特征点,选择其中特征点最多的图像块建立琐碎模板,与基向量目标模板结合组成字典,设定阈值,对相似度高的仅采用基向量对候选目标进行误差运算,增量更新基向量子空间,否则将正交基向量结合琐碎模板组成字典进行误差计算,并更新琐碎模板,实现对目标的准确跟踪。

1 相似度测量

相似度测量采用Huber函数对误差值鲁棒性估计与计算当前帧与当前训练集均值模板夹角结合的方法,对目标当前状态实现更加准确的判断。

当目标的粒子滤波最大似然估计结果与子空间的目标模型相似度越高,即重构误差值越小,说明目标变化平缓,否则,目标发生突变。计算相似度来判断目标状态,通过Huber函数对重构误差进行鲁棒性估计。

(1)

式中:ei是第i个像素的重构误差;σ是重构误差高斯分布的标准差;c为常量,用来控制异常像素。当满足条件|ei|≤cσi,则判定第i个像素为异常像素。

同时采取计算当前帧y与当前训练集均值模板的相似度x,采用两者归一化向量之间的夹角表示它们的相似度,即:

x=angle(y,Ti)

(2)

当x大于相似度阈值σ1时,说明当前帧与训练集有偏差,设定当前帧为异常情况,否则为正常情况。

2 粒子滤波框架

粒子滤波方法是在贝叶斯学习和蒙特卡罗模拟的基础上提出的一种滤波方法。其主要分为两个部分,分别是预测和更新。首先通过前一帧的位置参数预测当前帧的位置,也就是先验信息,之后根据当前帧的预测结果进行处理获得目标的位置参数的后验信息,对位置参数进行更新成为下一帧的先验信息。若已知状态的初始概率密度函数为p(x0/z0)=p(x0),则状态预测方程为:

(3)

状态更新方程为:

(4)

最后选择权值最高的粒子作为目标的t时刻的状态,即:

(5)

在每一帧跟踪完成,还要根据粒子的权值进行重采样,防止粒子退化。

3 本文算法

3.1 改进的稀疏子空间

根据相似度测量得到的结果判断选用的观测模型,当目标状态为正常状态时选用正交基向量U计算与原始图像的重构误差,否则加入琐碎模板进行测量。

3.1.1 正常状态基向量

在PCA中,假设εi~(0,σ2),σ表示数值很小方差。

(6)

z的似然函数为l(z)=P(y|z),将上式代入求z的最大似然估计,通过公式转换成求最小重构误差值,并对z求导。

(7)

对z求导:

(8)

z=UTy就是z的最大似然估计,U为正交矩阵时,ε=y-Uz。

3.1.2 异常状态子空间

在异常状态时引入琐碎模板,首先假设目标能够被引入琐碎模板的字典表示,通过基向量来适应目标外观的变化,琐碎模板表示噪声情况。观测目标表示为:

(9)

式中:y表示一个观测向量,U表示PCA基向量,x为基向量U的表示系数,I为琐碎模板,e为琐碎模板系数。由于基向量集U是正交的,系数x是非稀疏的,而e是稀疏的。

在似然估计函数中加入一个权值ωi,ωi的表达式如下:

ω1=exp(i-m)/τi=1,2,…,m

ω2=exp(j-n)/τj=1,2,…,n

ωi=[ω1ω2]

(10)

式中:m为基向量的列数,n为琐碎模板的列数,τ为衰落系数。ω1为基向量权值,ω2为琐碎模板的权值,将ω1、ω2结合组成ωi,通过先对琐碎模板按特征点排序,之后给一个由高到低的权值,更好地体现出特征点的影响。

通过表1迭代算法求出x、e的值,同时将权值ωi代入下面的观测似然函数中。

(11)

表1 计算最优x和e的迭代算法

3.2 改进的琐碎模板方法

通过使用Shi等提出Shi-Tomasi角点检测法提取特征点。窗口在平滑区域时没有变化,角点检测就是找出窗口在各个方向都有变化的特征点。通过这种物理现象,根据判断窗口在各个方向的变化程度,确定角点。在Harris角点的基础上,Shi-Tomasi角点方法加入了强角点,对很多复杂情况具有更强的适应性。

将图像窗口平移[uv]产生灰度变化E(u,v)。

(12)

由I(x+u,y+v)=I(x,y)+Ixu+Iyv+ο(u2,v2)得:

(13)

Ix、Iy和Ixy分别表示图像水平、垂直以及对角方向梯度与一加权循环窗函数的卷积。

R=min(ρ1,ρ2)

(14)

式中:ρ1、ρ2是一组结构化张量的特征值,如图1所示,先找出目标区域,然后通过Shi-Tomasi角点检测法中像素点的最小特征值大于周围像素的特征值,则该点是角点,最后根据特征点选取出图像块,形成琐碎模板。

将目标划分成N个图像块I={I1,I2,…,IN},尺寸为dx×dy,比较各图像块中特征点,选取出特征点最多的M个图像块组成琐碎模板。

4 更新方法

跟踪过程中如果采用固定不变的字典模板,则当目标外观或姿态发生变化、光照不均以及出现遮挡时往往会导致跟踪失败。然而如果字典模板更新太频繁,误差将会累积最终会导致跟踪器发生漂移,因而需要设计一种合理的模板更新方法。

当目标遭遇遮挡时,通常的子空间更新方法通过设立阈值比较重构误差的大小判断当前帧是否处于异常状态,从而决定是否将其更新到模板集中,这种更新方法对遮挡情况有良好的效果,但是对其他异常情况不能很好的处理。本文提出根据相似度测量的相似度设定两个阈值σ1和σ2来界定更新模板的方法。当相似度小于σ1时,认为目标没有异常,设置为正常情况,将观测图像样本存放到正常模板集。当相似度大于σ2时,认为目标出现严重异常,直接丟弃观测图像样本不更新模型。当重构误差处于两个阈值之间时,认为目标处于少量异常状态,我们将观测样本中异常的像素利用均值向量对应的像素进行替换,然后将替换后的样本进行存储到异常模板集中。

5 实验结果与分析

为了评估本文算法跟踪的性能,在当前OTB-100[15]的100个视频集中进行跟踪测试,因为视频序列过多,选取其中5个具有代表性的视频序列做详细说明。IVT算法首次将增量学习的思想引入子空间,对目标外观变化具有鲁棒性;TLD算法将跟踪与检测结合,对目标的形变与部分遮挡等问题具有适应性,可以用来做形变与部分遮挡方面的对比;MIL算法对光照变化与剧烈形变具有鲁棒性,可以做光照变化与剧烈形变的比对实验;CT算法通过稀疏矩阵提取图像前景与背景特征,并在线更新分类器正负样本,是以稀疏感知理论为基础的算法,与本文算法思想有一定的相关性。根据上述原因,将本文算法与当前的经典跟踪IVT算法[3]、TLD算法[4]、MIL算法[5]和CT算法[6]进行比较。视频序列挑战因素包含目标遮挡、旋转变化、运动模糊、快速形变等。实验平台配置为酷睿4.0 GHz的CPU、8.0 GB内存的PC机,在MATLAB2013a中进行实验。整个实验设置正则化常数在每个视频序列中,对目标跟踪的第一帧通过手动选择,并将每一帧的观测图像归一化成32×32像素。图2为跟踪结果。

(a) Deer序列

(b) sylvester序列

(c) woman序列

(d) car11序列

(e) david indoor序列

图2 各挑战序列跟踪结果

5.1 定性评估

1) 严重遮挡 我们的算法在有长时间遮挡的woman视频集中,相对于其他算法实现了很好地跟踪效果。我们的跟踪器能够精确跟踪目标的原因:一方面是将通过角点特征生成的琐碎模板与基向量集结合更好的对遮挡的目标实现跟踪;另一方面,对琐碎模板在检测出异常情况时进行更新,能够很好地将遮挡的目标情况加入模板集中。在woman序列第89帧的时候本文算法与其他算法都实现了对目标的跟踪。第126帧以后,目标发生了遮挡,其他算法不能适应目标遮挡,都出现跟踪丢失的情况,而本文算法仍然能够跟踪目标。

2) 光照变化 在sylvester序列与david indoor序列中显示了明显的光照变化,以及姿态改变的情况的跟踪结果。在跟踪结果中,我们的算法与TLD算法能够对目标进行较好的跟踪,而MIL算法、IVT算法与CT算法则跟踪效果不好,出现了漂移的情况。在sylvester序列中的第620帧、703帧,目标出现光照变化、姿态改变的情况,可以看出其他算法发生了偏移,但我们的算法因为基向量集能够很好适应光照变化,琐碎模板能够适应目标姿态改变,所以一直对目标实现了精确跟踪。

3) 背景杂波 在Deer序列、car11序列中,具有明显背景杂波的情况,同时,Deer序列中还包含快速运动,car11序列包含光照变化。通过跟踪结果表明,我们的算法对目标实现了较好的跟踪,TLD算法刚开始不能实现对目标跟踪,后面又重新找回了目标,MIL算法前期能够实现对目标的跟踪,而后期不能适应目标的快速运动,丢失了目标。IVT算法与CT算法跟踪的效果不好。

5.2 定量评估

表2 平均重叠率

在图3中显示了本文算法与TLD算法、CT算法、MIL算法,以及IVT算法在OTB-100所有测试集中的跟踪成功率和跟踪精确度的统计图。在图3(a)、图(d)中可以看出在视频集在OTB-100视频集中的成功率与精确度的整体情况,我们的算法要优于TLD等其他算法。在图3(b)-(f)中可以看出在遮挡与快速运动情况下,我们的算法的成功率和精确度与其他几种算法比较要更具鲁棒性。

(a) 跟踪成功率统计图

(b) 遮挡跟踪成功率统计图

(c) 快速运动跟踪成功率统计图

(d) 跟踪精确度统计图

(e) 遮挡跟踪精确度统计图

(f) 快速运动跟踪精确度统计图图3 所有跟踪算法在所有视频集中的跟踪性能

6 结 语

本文提出一种将目标状态判断与稀疏子空间方法结合的目标跟踪方法。在粒子滤波的框架下,首先对目标状态进行判断,区分正常状态与异常状态的粒子。然后,通过Shi角点提取特征点,选出特征点包含较多的图像块建立琐碎模板,与基向量集结合组成过完备字典,实现对目标的精确跟踪。最后,根据目标状态对基向量集或琐碎模板进行增量更新。与其他算法比较,通过实验结果以及评估统计说明本文算法可以对目标遮挡、快速运动、光照变化及外观变化精确跟踪,但对目标跟踪的实时性还有待提高。

猜你喜欢

角点向量模板
高层建筑中铝模板系统组成与应用
铝模板在高层建筑施工中的应用
向量的分解
特高大模板支撑方案的优选研究
多支撑区域模式化融合角点检测算法仿真
聚焦“向量与三角”创新题
Inventors and Inventions
角点检测技术综述①
基于灰度差预处理的改进Harris角点检测算法
基于FAST角点检测算法上对Y型与X型角点的检测