基于相关性滤波器算法的物体位置追踪方法转让专利

申请号 : CN201910168996.X

文献号 : CN110009660B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任重张家玄

申请人 : 浙江大学

摘要 :

本发明公开了一种基于相关性滤波器算法的物体位置追踪方法。本发明利用Kalman滤波器构建运动学预估器来预测目标物体位置。结合目标物体先前的运动情况对当前时刻的位置进行预估,再结合相关性滤波器算法所产生的测量结果对预估位置进行修正,从而能够产生更为平滑的运动轨迹,大大减弱了噪声干扰。本发明采用响应质量评估模型来衡量相关性滤波器算法物体追踪结果的可靠性,在不可靠的情况下直接采纳运动学预估器的估计结果,不对底层相关性滤波器进行更新,避免了相关性滤波器算法的退化问题。本发明具有很好的精确性及鲁棒性,可靠性高,能够有效地在二维图像中实现对任意物体的位置追踪。

权利要求 :

1.一种基于相关性滤波器算法的物体位置追踪方法,其特征在于,包括以下步骤:

(1)使用Kalman滤波器作为运动学预估器,根据目标物体之前的运动状态预测其在当前图像帧中的二维位置,即为估计位置;

(2)以估计位置为中心点,在邻近的矩形局部区域内计算提取多个维度的图像视觉特征;每一个学习率数值对应一组相关性滤波器,每组相关性滤波器中滤波器的数目与图像视觉特征的维度数目相等;

(3)按照基本相关性滤波器算法或者相关性滤波器改进算法,结合提取得到的图像视觉特征,计算相关性滤波器响应结果;

(4)根据响应质量评估模型,对于步骤(3)每一个响应结果计算其响应得分数值,数值越大则代表响应结果越可靠;

(5)将所有的响应得分数值归一化,作为每个响应结果的权重,再将所有的响应结果加权求和作为最终响应结果;根据响应质量评估模型,计算最终响应结果的得分数值作为最终响应得分;

(6)在最终响应结果上寻找峰值点,为相关性滤波器算法计算得到的物体位置,即为测量位置;

(7)根据当前图像帧之前邻近多个图像帧的最终响应得分计算响应阈值;如果当前图像帧的最终响应得分小于响应阈值,则认为相关性滤波器算法计算得到的测量位置不可靠,将步骤(1)中预测得到的估计位置作为物体的最终位置;如果当前图像帧的最终响应得分不小于响应阈值,则认为相关性滤波器算法计算得到的测量位置可靠,将其输入Kalman滤波器修正步骤(1)中的估计位置,并且将修正结果作为物体的最终位置;

(8)如果相关性滤波器算法计算得到的测量位置不可靠,则结束本图像帧的处理工作;

对于下一个图像帧重新从步骤(1)开始执行;如果相关性滤波器算法计算得到的测量位置可靠,则按照基本相关性滤波器算法或者改进相关性滤波器算法,根据不同的学习率数值分别更新每组相关性滤波器;之后再进入下一个图像帧的处理工作,重新从步骤(1)开始执行。

说明书 :

基于相关性滤波器算法的物体位置追踪方法

技术领域

[0001] 本发明涉及一种机器视觉中的物体追踪技术,尤其涉及一种基于相关性滤波器算法的实时物体追踪技术。

背景技术

[0002] 物体追踪是机器视觉领域中一个非常有挑战性的研究问题。给定目标物体在初始图像帧中的位置信息,通过一定的数学模型及算法分析来求解其在后续每一图像帧中的位置信息。物体追踪在安全监控、无人飞行器跟踪、自动驾驶、交通流控制、智能机器人系统、增强现实以及人机交互等方面都有着巨大的应用价值。相关性滤波器算法是一种频域中的在线训练分类器模型,近年来被成功应用于物体追踪问题,其底层数学原理简单,运行速度快,追踪精度高。CSRDCF算法进一步解决了普通相关性滤波器算法的边界效应问题以及通道权重问题,有着非常优秀的物体追踪效果。然而,相关性滤波器算法不能够判断出追踪结果的好坏,这会带来严重的误差积累问题。其次,在被追踪物体发生遮挡或严重形变的情况下,相关性滤波器算法会直接产生错误的追踪结果,并直接对后续的物体追踪产生影响。此外,相关性滤波器算法采用单个学习率数值来更新底层模型,对目标物体和周围环境变化的适应能力较差,在复杂场景下不能够产生理想物体追踪结果。可以构建追踪质量评估系统来实时判断当前追踪结果的好坏,通过Kalman运动学预估器来在追踪失败的情况下估计目标物体新的位置,并且采用多个预定义的学习率数值来动态更新相关性滤波器模型,从而提升物体追踪结果精确性和鲁棒性。相关性滤波器算法可以参考文献“David S.Bolme,J.Ross Beveridge,Bruce A.Draper,Yui Man Lui:Visual object tracking using adaptive correlation filters.CVPR 2010:2544-2550”,改进相关性滤波器算法可以参考文献“Alan Lukezic,Tomas Vojir,Luka Cehovin Zajc,Jiri Matas,Matej Kristan:Discriminative Correlation Filter with Channel and Spatial Reliability.CVPR 
2017:4847-4856”,Kalman滤波器算法可以参考文献“Bishop,Gary,and Greg Welch.An introduction to the Kalman filter.Proc of SIGGRAPH,Course 8.27599-3175(2001):
59.”。

发明内容

[0003] 本发明的目的在于针对现有技术的不足,提供一种基于相关性滤波器算法的高效物体追踪方法,本发明实现了在CPU端对任意物体的高精度实时追踪。
[0004] 本发明的目的是通过以下技术方案来实现的:
[0005] (1)使用Kalman滤波器作为运动学预估器,根据目标物体之前的运动状态预测其在当前图像帧中的二维位置,即为估计位置。
[0006] (2)以步骤1中预测的估计位置为中心点,在邻近的矩形局部区域内计算提取多个维度的图像视觉特征。每一个学习率数值对应一组相关性滤波器,每组相关性滤波器中滤波器的数目与图像视觉特征的维度数目相等。
[0007] (3)按照基本相关性滤波器算法或者相关性滤波器改进算法,结合步骤2中得到的图像视觉特征,计算相关性滤波器响应结果。每组相关性滤波器产生的响应结果为一个二维图像。
[0008] (4)根据响应质量评估模型,对于步骤3中所得到的每一个响应结果计算其响应得分数值,数值越大则代表响应结果越可靠。
[0009] (5)将所有的响应得分数值归一化,作为每个响应结果的权重,再将所有的响应结果加权求和作为最终响应结果。根据响应质量评估模型,计算最终响应结果的得分数值作为最终响应得分
[0010] (6)在最终响应结果上寻找峰值点,为相关性滤波器算法计算得到的物体位置,即为测量位置。
[0011] (7)根据当前图像帧之前邻近多个图像帧的最终响应得分计算响应阈值。如果当前图像帧的最终响应得分小于响应阈值,则认为相关性滤波器算法计算得到的测量位置不可靠,将步骤1中预测得到的估计位置作为物体的最终位置。如果当前图像帧的最终响应得分不小于响应阈值,则认为相关性滤波器算法计算得到的测量位置可靠,将其输入Kalman滤波器修正步骤1中的估计位置,并且将修正结果作为物体的最终位置。
[0012] (8)如果相关性滤波器算法计算得到的测量位置不可靠,则结束本图像帧的处理工作。对于下一个图像帧重新从步骤1开始执行。如果相关性滤波器算法计算得到的测量位置可靠,则按照基本相关性滤波器算法或者改进相关性滤波器算法,根据不同的学习率数值分别更新每组相关性滤波器。之后再进入下一个图像帧的处理工作,重新从步骤1开始执行。
[0013] 本发明的有益效果是:本发明采用Kalman滤波器构建运动学预估器,结合目标物体先前的运动情况对当前时刻的位置进行预估,再结合相关性滤波器算法所产生的测量结果对预估位置进行修正,从而能够产生更为平滑的运动轨迹,大大减弱了噪声的干扰。采用响应质量评估模型来衡量相关性滤波器算法物体追踪结果的可靠性,在不可靠的情况下直接采纳运动学预估器的估计结果,不对底层相关性滤波器进行更新,避免了相关性滤波器算法的退化问题,尤其适用于目标物体被遮挡或者半遮挡的情形。本发明应用多个不同数值的学习率来同时更新多组相关性滤波器,能够保持对目标物体的短期记忆和长期记忆,减弱了物体形变对追踪结果的影响。本发明可以集成到基础相关性滤波器算法以及其他多种改进相关性滤波器算法,应用空间巨大,追踪结果具有很好的精确性及鲁棒性,可靠性高,能够有效地在二维图像中实现对任意物体的位置追踪。

附图说明

[0014] 图1为二维图像上物体位置追踪示意图,图中,M为整个图像,B为进行图像特征提取的邻近矩形区域,p为运动学预估器计算得到的物体估计位置,q为相关性滤波器算法计算得到的物体测量位置,r为采用运动学预估器结合测量位置q来修正估计位置p所产生的物体最终位置;
[0015] 图2为本发明进行物体位置追踪的处理流程图;
[0016] 图3为多学习率加权计算最终响应结果和最终响应得分的处理流程图,其中以3个学习率为例进行展示,本发明支持任意数量学习率的加权计算。

具体实施方式

[0017] 下面结合附图以及具体实施方式对本发明做进一步说明。
[0018] 如图2所示,本发明基于相关性滤波器算法进行物体位置追踪,具体步骤如下:
[0019] 1、如图1所示,M为当前输入的图像帧。采用标准Kalman滤波器构建运动学预估器来预测目标物体在当前图像中的二维位置p,称其为估计位置。Kalman滤波器的状态变量包括目标物体的二维位置坐标以及在图像横轴和竖轴方向上的运动速度,Kalman滤波器的测量变量为目标物体的二维位置坐标。在预估计算的过程中,认为目标物体的运动为线性运动。
[0020] 2、如图1所示,以估计位置p为中心,认为当前时刻目标物体的实际真实位置位于邻近矩形B的内部。仅仅对于矩形区域B提取视觉特征,而不是对整个图像M提取视觉特征。可以按照多种方式来提取多个维度的图像视觉特征,包括但不限于梯度直方图特征,颜色名称特征,灰度特征,红绿蓝颜色特征以及神经网络卷积特征等,一共有D个维度的视觉特征。
[0021] 3、本发明包含N个不同的学习率数值,每个学习率数值对应一组相关性滤波器,每一组相关性滤波器中所包含的滤波器数量与步骤2中所提取的视觉特征维度数量相等,即为D个。每一组的相关性滤波器在后续步骤中都会按照其所对应的学习率数值采用线性插值的方法进行动态更新。
[0022] 4、如图3所示,对于每个学习率所对应的D个相关性滤波器,可以按照标准的多通道相关性滤波器算法来计算响应结果。步骤2从区域B中一共提取了D个维度的视觉特征,与D个相关性滤波器一一对应。将每个相关性滤波器与其对应维度的视觉特征进行圆周卷积操作可以得到一个单通道响应结果,再将D个单通道响应结果加权求和即可得到一组相关性滤波器的多通道响应结果。N个学习率数值对应N组相关性滤波器,能够得到N个多通道响应结果。在加权求和计算多通道响应结果的过程中需要计算单通道响应结果的权重数值,本发明支持任意的权重数值计算方式。
[0023] 5、如图3所示,步骤4中得到了N个多通道响应结果,可以根据响应质量评估模型计算每个多通道响应结果的得分数值。响应质量评估模型的输入为一个多通道响应结果,输出为一个得分数值,本发明支持任意的得分数值计算方式。将N个多通道响应结果依次输入响应质量评估模型,可以得到对应的N个响应得分。将N个响应得分归一化作为每个多通道响应结果的权重数值。将N个多通道响应结果加权求和作为最终响应结果H,将最终响应结果H输入响应质量评估模型得到最终响应得分Z。
[0024] 6、在最终响应结果H中寻找峰值像素点位置,这就是相关性滤波器算法求解得到的物体位置q,称其为测量位置。如图1所示,测量位置q位于矩形区域B内部,与估计位置p不相同。
[0025] 7、根据当前图像帧之前相邻J个图像帧的最终响应得分计算当前图像帧的响应阈值T。本发明支持任意的响应阈值计算方式,输入为J个最终响应得分,输出为一个响应阈值。例如,可以取J个最终响应得分的平均值K,定义缩放因子a位于0到1之间,最后令响应阈值T为缩放因子a与平均响应得分K的乘积即可。
[0026] 8、将当前的最终响应得分Z与当前的响应阈值T进行比较。如果Z小于T,则认为相关性滤波器算法计算得到的测量位置q不可靠,直接令物体的最终位置r等于物体的估计位置p。如图1所示,在Z小于T的情况下,最终位置r与估计位置p重合。之后直接跳转至步骤11,不执行步骤9和步骤10。
[0027] 9、将当前的最终响应得分Z与当前的响应阈值T进行比较。如果Z不小于T,则认为相关性滤波器算法计算得到的测量位置q可靠。将测量位置q输入按照Kalman滤波器所构建的运动学预估器,按照标准的Kalman滤波器算法修正估计位置p,修正结果即为目标物体的最终位置r。如图1所示,最终位置r不同于估计位置p。
[0028] 10、以最终位置r为中心,在紧邻的矩形区域内提取D个维度的图像视觉特征,按照基本相关性滤波器算法或者改进相关性滤波器算法求解D个新相关性滤波器。每个学习率数值对应D个旧相关性滤波器。新相关性滤波器与旧相关性滤波器一一对应,在D个新相关性滤波器和每一组D个旧相关性滤波器之间按照该组所对应的学习率数值进行线性插值,产生D个更新后的相关性滤波。本发明共有N个学习率数值,对用N组相关性滤波器,共有N乘D个相关性滤波器。本步骤完成了对所有相关性滤波器的更新工作。
[0029] 11、物体追踪方法输出最终位置r作为当前图像帧的追踪结果,并结束本图像帧的处理工作。之后进入下一个图像帧的处理流程,重新从步骤1开始执行。这样就可以实现在二维图像上对任意目标物体位置的高效追踪,本发明的物体追踪方法对于每一个图像帧的处理流程完全相同。