本发明属于目标跟踪的技术领域,具体涉及一种融合cuckoo搜索和kcf的突变运动目标跟踪方法,实现目标的持续性跟踪,尤其涉及目标在视频相邻图像帧间产生运动突变情况下的状态空间搜索机制和目标持续跟踪能力。
背景技术:
受到跟踪环境、目标自身和摄像机成像等因素的影响,兴趣目标在被跟踪过程中往往会出现运动突变的异常现象,这使传统基于运动平滑性假设条件提出的众多跟踪算法难以适应而导致失败。目标的突变运动已经成为一个算法能否实现持续性跟踪的重要因素之一,必须在传统目标跟踪框架下设计能够自适应运动突变问题的新方法,保证目标跟踪算法的鲁棒性。
视频目标跟踪算法研究主要分为两类:基于概率方法和基于决策方法。基于概率方法将跟踪过程视为贝叶斯框架下的状态评估问题,其中代表性算法是基于粒子滤波的视频目标跟踪方法,其能够处理非线性和多模态等问题,获得好的跟踪效果。然而,当面临目标运动突变时,基于概率方法往往通过扩大粒子数目以完全覆盖状态空间的方式提高跟踪的性能,这将导致较大的计算代价,难以满足目标跟踪的实时性要求。基于决策方法通过在每帧图像中采用迭代搜索方式寻找与真实目标最近似的区域实现目标定位,往往将跟踪过程转换为求解最优化问题来解决。为了使算法适应运动突变的问题,全局优化方法被引入视频目标跟踪框架,如退火粒子滤波方法、基于粒子群最优化的跟踪方法,基于马尔可夫蒙特卡洛采样的跟踪方法等。上述方法存在两个明显的问题:(1)在每帧内实现最优化过程,均需要全局搜索以获得目标定位,显然算法运行效率难以提高;(2)启发式优化策略包含较多参数调节,这使得跟踪算法针对较强,难以泛化。
因此,必须寻找一种既能利用全局优化方法适应目标运动突变问题,又能保证算法的运行效率,同时,优化策略应具有较少的模型调节参数以提高算法的通用性。
技术实现要素:
针对现有运动目标跟踪方法运行效率不高、通用性差的技术问题,本发明提出一种融合cuckoo搜索和kcf的突变运动目标跟踪方法,将布谷鸟(cuckoo)搜索策略引入到核相关滤波跟踪器(kcf)设计中,依据置信度阈值确定产生基样本图像的方式,以增强评估突变运动状态的能力;将空间域中的回归问题等效为相关滤波操作,将耗时的卷积运算用点乘运算代替,提高了算法的运行效率,最终实现能够适应突变运动的视频目标跟踪方法。
为了解决上述的技术问题,本发明的技术方案是:一种融合cuckoo搜索和kcf的突变运动目标跟踪方法,其步骤如下:
步骤一:初始化目标状态参数、cuckoo搜索机制和kcf跟踪方法的初始参数;
步骤二:利用kcf跟踪方法获得前k帧的k个最大响应值,计算置信度阈值初始阈值;
步骤三:依据当前帧最大响应值与置信度阈值的关系,确定不同的基样本图像产生方式:当大于置信度阈值,随机选取基图像样本,执行kcf方法跟踪目标;当小于置信度阈值,采用cuckoo搜索机制获取全局最优的目标预测状态,产生新的基图像样本,执行kcf方法跟踪目标;
步骤四:采用新的最大响应值动态更新置信度阈值,重复上述操作实现突变运动目标的有效跟踪。
所述目标状态参数为:读取第一帧图像的数据信息,确定目标在第一帧图像内的状态参数[px,py,width,high],其中,(px,py)为目标左上角像素点的坐标值,width为目标宽度,high为目标高度;cuckoo搜索机制的参数为:初始图像块位置数num,位置发现概率pa,迭代优化次数iter;kcf跟踪方法的参数为:候选区域与目标区域的比例因子γ,设置计算置信度阈值的集合元素长度len。
所述kcf跟踪方法实现的步骤为:
a、依据基样本图像构造循环矩阵x;
候选区域的宽和高分别为γ*width和γ*high,γ>1,将目标拉成列向量x=[x1,x2,…xn]t作为基样本向量,n=width*high,依据基样本向量的循环移位操作产生其他的候选样本,基样本向量和其产生的n-1个候选样本形成循环矩阵:
依据循环矩阵能够通过离散傅里叶变换实现对角化的性质,循环矩阵等价为:
b、跟踪问题的时域-频域转化,实现分类问题的求解;
xi为第i个训练样本,yi是其对应的回归值,训练的目标是求最小化平方误差下的权值w,从而获得决策函数f(z)=wtz,z是观测样本或称为测试样本;将跟踪的目标样本从候选样本中分离,权值w通过下式获得:
其中,λ控制过度拟合的正则化因子;在复数域下权值w解的向量描述形式为:
w=(xhx+λi)-1xhy,
其中,循环矩阵x的每行由训练样本xi形成,y是回归值yi的其中任意一个,i为识别矩阵,xh是共轭转换xh=(x*)t,x*是循环矩阵x的复共轭矩阵;
将循环矩阵的频域表示形式带入线性求解公式:
则上式改写成:
其中,
利用核技巧将一个线性问题的输入映射到非线性的特征空间
其中,kxx是核循环矩阵k=c(kxx)的第一行元素,^代表向量的傅里叶变换;
c、获得最大响应值,确定跟踪目标;
通过上式获得向量α的值,得到线性回归问题中的权值w,然后通过分类器的分类方式实现目标检测,选取候选样本z,则:
其中,kxz是基样本向量x和观测样本z的核相关性,f(z)是一个向量、维度和回归值y一样,将所有候选样本和目标样本依据相关性大小排序,选择最大的值作为目标在该帧图像中获得的最大响应值response,其相对应的候选目标被确定为跟踪结果;
d、依据前k帧的最大响应值,计算置信度阈值初值:
如果k<len,则返回步骤二重新执行;
如果k=len,依据获得的k个最大响应值,计算初始置信度阈值
其中,median(·)表示对集合的元素取中间值;
如果k>len,依据第k,k-1,k-2,k-3,k-4帧获得的最大响应值动态更新集合rk={responsek,responsek-1…responsek-4},则第k帧的置信度阈值为:
所述确定不同的基样本图像产生方式的方法是:当k+1帧图像到来时,如果
所述布谷鸟搜索的策略为:
a、产生初始位置,构造目标函数:随机选取num个初始化鸟窝,在各个位置上选取图像块,大小和跟踪目标相同,构造优化过程采用的目标函数;目标图像块和候选图像块分别用tx和cy表示,将它们作为随机变量,计算它们的相似性度如下:
其中,d(·)表示方差,cov(·)表示协方差,m和n分别是目标图像块tx和候选图像块cy的hog特征,目标函数定义为:
e=2+2*ρ(tx,cy);
b、预测位置的产生机制:布谷鸟搜索方法采用莱维飞行准则对每个初始化的位置产生一一对应的新位置,px=[px,py]位置的更新公式为:
其中,
β=u/|v|2/3,
其中,u和v分别是服从正态分布的随机数;
依据莱维飞行规则对初始化的num个起始位置产生新的位置ssum=(s1,s2…snum),计算新位置上图像块与目标图像的相似度量函数值,保留函数值最大的新位置smax,然后比较新解、旧解位置上图像块的能量函数值,将目标函数e值大的解作为新位置保留,确定新位置的集合元素;
c、依据发现概率pa,更新新的位置:依据布谷鸟搜索理论,如果新解被发现rand≥pa,则预测的位置被废弃,需要按照高斯噪声形式随机产生新位置更新原来的位置;如果rand<pa,则预测的位置继续保留,这里rand表示随机数产生函数;
d、依据所有新位置和目标计算获得的能量值,确定最优的位置作为本次迭代的最优输出值
e、一次迭代完成,判断是否达到最大的迭代次数iter,达到终止条件结束,输出最优的位置作为基样本图像块;否则,进入下次迭代转到b步。
本发明的有益效果:采用全局最优的运动状态预测机制,获得有效的基样本图像,保证循环矩阵能够覆盖目标状态空间,以弥补传统跟踪方法无法适应运动突变的问题;利用空间域和频率域处理数据的特征,在频率域实现候选目标样本响应值的确定,提高了运行效率;依据置信度阈值自适应选择不同跟踪模式,能够适应运动突变问题的同时也兼顾运行效率,避免传统方法因采用全局优化方法解决运动问题而带来计算代价过大的现象,能够很好适应目标的运动突变问题,后续对跟踪目标的识别、理解和分析具有重要意义。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图理解算法的本质。
图1为本发明的流程图。
图2为本发明与其他算法的距离精度比较示意图。
图3为本发明与其他算法的重叠率比较示意图。
图4为本发明与其他算法的跟踪效果示意图。
具体实施方式
下面将结合本发明实施中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种融合cuckoo搜索和kcf的突变运动目标跟踪方法,将布谷鸟(cuckoo)搜索机制引入kcf跟踪问题中,提出能够适应平滑和突变两种运动模式的新型跟踪框架;提出全局性的运动评估机制,能够对目标的不确定性运动状态进行预测,提高基样本图像的获取能力;利用置信度阈值切换不同的模型,通过信息的交互提高循环矩阵的可靠性,能够适应目标在图像帧间存在的运动突变问题。
本发明的思想在于:(1)将布谷鸟搜索技术引入到kcf跟踪问题中,给突变运动目标跟踪方法研究指出一个新的研究思路;(2)基于布谷鸟搜索机制能够利用多元启发提高搜索效率和利用莱维飞行避免局部陷入问题的优点,提出能够有效评估目标突变运动的运动模型;(3)建立一种新的跟踪算法框架,能够兼顾平滑和突变两种运动模式下的目标持续性跟踪。
本发明用于实施的硬件环境为:intel(r)core(tm)i3cpu3.2g计算机、4gb内存、1g显卡,运行的软件环境是:matlabr20012a和windows7,使用的数据为实验室拍摄的视频和吴毅老师公布的数据库。
如图1所示,本发明实例提供了一种融合cuckoo搜索和kcf的突变运动目标跟踪方法,其步骤如下:
步骤一:初始化目标状态参数和cuckoo搜索方法的参数。
读取第一帧图像的数据信息,确定目标在第一帧图像内的状态参数[px,py,width,high],其中,(px,py)为目标左上角像素点的坐标值,width为目标宽度,high为目标高度。设置cuckoo搜索的初始图像块位置数num,位置发现概率pa,迭代优化次数iter;设置kcf跟踪方法中候选区域与目标区域的比例因子γ=1.3,设置计算置信度阈值的集合元素长度len=5。cuckoo搜索初始鸟窝数目即图像块位置数num=250,位置发现概率pa=0.5,迭代优化次数iter=100。
步骤二:利用kcf跟踪方法获得最大响应值,确定跟踪目标。
当新的图像到来时,采用kcf跟踪方法获得最大响应值,依据最大响应值定位目标。kcf方法实现主要分为三步:
a、依据基样本图像构造循环矩阵x。
基样本图像依据上一帧目标图像在当前帧映射的位置进行随机性采样。目标的宽和高分别为width和high,候选样本图像块和目标的尺寸一样。候选区域的宽和高分别为γ*width和γ*high,这里γ>1。将目标拉成列向量x=[x1,x2,…xn]t,n=width*high,将其作为基样本向量,依据基样本向量的循环移位操作产生其他的候选样本,候选样本集合包含了基样本向量和其产生的n-1个候选样本,形成的循环矩阵如下:
循环矩阵x的第一行是基样本向量的转置xt。依据循环矩阵能够通过离散傅里叶变换实现对角化的性质,循环矩阵可以等价为:
其中,f是离散傅里叶矩阵,是个常量矩阵,
b、跟踪问题的时域-频域转化,实现分类问题的求解。
目标跟踪过程可以视为目标样本和候选样本持续分类的操作。已知xi为第i个训练样本,yi是其对应的回归值,训练的目标就是求最小化平方误差下的权值w,从而获得决策函数f(z)=wtz,z是观测样本或称为测试样本。将跟踪的目标样本从候选样本中分离,权值w通过下式获得:
其中,λ控制过度拟合的正则化因子。这个线性回归问题具有封闭解,在复数域下解的向量描述形式为:
w=(xhx+λi)-1xhy
其中,循环矩阵x的每行由基向量和其经过移位操作形成的所有候选样本的向量组成,xi表示任意一个候选样本,i表示候选样本的索引。y是回归值yi的其中任意一个值。i为识别矩阵,xh是共轭转换xh=(x*)t,x*是循环矩阵x的复共轭矩阵。对于实数的情况xh=(x)t。
为了获得权值w,上式需要矩阵求逆,在大规模视频运算中,复杂度很大,运算耗时,将时域复杂运算转换到频域处理以提高运行效率。
将循环矩阵的频域表示形式带入线性求解公式:
定义逐元素的点乘操作符号为⊙,则上式改写成:
代入到权值w的向量求解表达式中,获得其频率域内的表达式如下:
其中,
时域中的求逆转换成频率域中逐元素除法效率大大提高,通过反傅里叶变换很容易获得权值w。实际跟踪中很多问题属于非线性求解问题,利用核技巧用x的非线性组合来表示权值
其中,α是αi的系数组成的向量。kxx是核循环矩阵k=c(kxx)的第一行元素,^代表向量的傅里叶变换。于是目标跟踪的分类问题转换到频率域中对向量α的求解,然后经反傅里叶变换获得时域中决策函数形式,实现高效的目标跟踪过程。
c、获得最大响应值,确定跟踪目标。
通过上式获得向量α的值,相当于在线性回归问题中获得了权值w,然后通过分类器的分类方式实现目标检测。选取候选样本z,其和目标样本x的维度相同,依据公式:
其中,kxz是基样本向量x和观测样本z的核相关性,f(z)是一个向量、维度和回归值y一样,获得最大响应值response的候选样本,确定为跟踪结果,即目标被再次定位。
步骤三:依据目标的最大响应值,确定置信度阈值。
如果k<5,则返回步骤二重新执行;
如果k=5,则按如下规则确定初始置信度阈值
依据获得的k个最大响应值,构造集合rk={response1,response2…responsek},计算初始置信度阈值
其中,median(·)表示对集合的元素取中间值;
如果k>5,依据第k,k-1,k-2,k-3,k-4帧获得的最大响应值动态更新集合rk={responsek,responsek-1…responsek-4},则第k帧的置信度阈值为:
步骤四:依据当前帧的最大响应值与置信度阈值的关系,确定不同的基样本图像产生方式。
当k+1帧图像到来时,依据最大响应值responsek+1与置信度阈值
如果
a、产生初始位置,构造目标函数。随机选取250个初始化鸟窝,即并行迭代优化方法的初始位置。在各个位置上选取图像块,大小和跟踪目标相同,构造优化过程采用的目标函数。在本发明中,目标图像块和候选图像块分别用tx和cy表示,将它们作为随机变量,计算它们的相似性度如下:
其中,d(·)表示方差,cov(·)表示协方差,m和n分别是目标图像块tx和候选图像块cy的hog特征。目标函数被定义如下:
e=2+2*ρ(tx,cy)。
目标函数的函数值即能量值表征两个图像块的相似性,其值越大说明越相似。
b、预测位置的产生机制。布谷鸟搜索方法采用莱维(levy)飞行准则对每个初始化的位置产生一一对应的新位置,也就是沿着能量值降低的方向进行迭代,px=[px,py]位置的更新公式为:
其中,
β=u/|v|2/3,
其中,u和v分别是服从正态分布的随机数。依据莱维飞行规则对初始化的num个起始位置产生新的位置ssum=(s1,s2…snum),计算新位置上图像块与目标图像的相似度量函数值,保留函数值最大的新位置smax,然后比较新解、旧解位置上图像块的能量函数值,将目标函数值e大的解作为新位置保留,确定新解的集合元素。依据莱维飞行规则获得250个新解的位置,分别与迭代前位置上的图像块进行能量函数值e比较,保留能量值的位置作为最终的新位置,即重新确定250个较优的新位置。
c、依据位置发现概率,更新新的位置。依据布谷鸟搜索理论,如果新解被发现rand≥pa,则新解被废弃,需要按照高斯噪声形式随机产生新位置更新原来的位置;如果rand<pa,则预测的位置继续保留,这里rand表示随机数产生函数。
d、依据所有新位置和目标计算获得的能量值,确定一个最优的位置作为本次迭代的最优输出值
e、一次迭代完成,判断是否达到最大的迭代次数,达到终止条件结束,输出最优的位置作为基样本图像块。否则,进入下次迭代转到b步。
如果
使用更新的基样本图像块构造循环矩阵x,采用kcf跟踪方法获得最大响应值,实现对突变目标的有效跟踪。
步骤五:依据最大响应值,确定新的基图像样本,返回步骤二,确定跟踪目标。
重复二-五步实现突变运动目标的跟踪。
本发明的实施步骤如下:初始化目标状态参数和优化模型参数;采用kcf跟踪方法获得目标前几帧内的最大响应值,计算置信度阈值初始值;依据当前帧最大响应值与置信度阈值的关系,确定不同的基样本图像产生方式:当大于置信度阈值,随机选取基图像样本,执行kcf方法跟踪目标,当小于置信度阈值,采用cuckoo搜索机制获取全局最优的目标预测状态,产生新的基图像样本,执行kcf方法跟踪目标;采用新的最大响应值动态更新置信度阈值,重复上述操作实现突变运动目标的有效跟踪。本发明对动态摄像机下目标存在帧间突变运动时能够有效地实现持续性跟踪,实现了帧间存在运动突变的目标的精确跟踪,提高了在复杂场景下跟踪方法的适应能力。
采用定性和定量两种评价方式来评价本发明的有效性。定性评价方式采用本发明方法和各种代表性方法在部分帧内的跟踪效果图如图4所示。图4分别是deer、face2、fhc和zt四个视频在部分帧内的跟踪效果图,其中,第一个和第二个视频中,目标在水平方向的帧间运动位移分别达到38和88个像素的大位移运动,第三个和第四个视频中目标在垂直方向上的帧间运动位移达到188和256个像素,这些突变运动而产生的帧间大位移使得其它跟踪算法表现出不适应,本发明提出的方法获得了好的跟踪效果。定量评价方式采用中心位置误差率和目标重叠率来评价,距离精度dp是指依据设定的阈值图像序列中能够成功跟踪目标的帧数与总帧数的比值。其中,阈值是通过跟踪结果与真实结果的中心误差值确定的,本发明设置阈值为0.5。中心误差是通过计算跟踪目标的中心位置和真实位置之间的欧氏距离,一般其值越小说明跟踪结果比较优。目标重叠率op是指跟踪结果与真实目标区域面积与操作和并操作的比值,其值越大,说明跟踪结果越好。图2展示了本发明与代表性跟踪算法csk、dsst、fct、kcf和stc的距离精度dp值比较结果,图3展示相应跟踪算法的目标重叠率op值的比较结果。综合图4结果表示,本发明提供的目标跟踪方法能够很好地解决目标突变的运动问题,获得了较好地跟踪表现。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。