本发明涉及计算机视觉技术领域域,具体涉及一种基于特征融合与自适应分块的核相关滤波跟踪方法。
背景技术:
目标跟踪被广泛的应用于机器人、视频监控、自动化技术等领域,是计算机视觉领域中是重要的研究热点之一。目标跟踪问题准确的说是单目标短时跟踪的研究问题是给出一个图像序列首帧中目标的位置,包括目标的位置和目标的大小,然后在接下来的图像中跟踪上目标,得出目标的位置和大小。目标跟踪问题所面临的主要困难在于目标在跟踪过程中会同时产生变形,目标被遮挡或者发生剧烈的运动等问题,期间的变换万象,往往很难事先预测。具体来说,有如下几个方面的难点:目标被遮挡、平面内旋转、平面外旋转、快速运动、光照变化、背景混乱、运动模糊、大变化尺度。
目标模型的好坏是跟踪能否成功的关键,因此按照目标建模方式将目标跟踪算法分为生成式模型与判别式模型这两类。生成式模型通过在线学习方式直接描述目标的观测,然后进行目标搜索,寻找样本与目标的联合概率,与目标模型最匹配的图像区域作为当前真实目标的估计来完成目标定位。生成类方法一般是基于模板匹配或基于子空间模型,能较好的利用全局特征对目标进行描述。与生成式模型不同的是,判别式模型充分利用了目标和背景信息,将目标跟踪看作是一个目标前景和背景的二分类问题,通过计算其条件概率来判断是目标还是背景,从而降低算法的复杂度。
基于核相关滤波的跟踪方法属于判别类方法,核相关滤波方法以其良好的跟踪性能和极高的计算效率,成为近年来目标跟踪领域除深度学习方法外最大的研究热点。基于核相关滤波方法一般在跟踪过程中利用从前一帧采集的训练数据集训练分类器,利用分类器去检测目标在当前帧的位置,之后更新训练数据集为当前帧采集的数据集,进而更新分类器。基于核相关滤波的跟踪方法在速度和尺度变化上的表现良好,能实现实时跟踪,但是由于它们都是使用单一特征进行目标表示,并且没有处理目标遮挡的机制,从而影响算法的跟踪精度,在产生背景杂波,目标遮挡等情况下时容易导致跟踪失败。
技术实现要素:
本发明的目的是针对现有技术中存在的不足,而提供一种基于特征融合与自适应分块的核相关滤波跟踪方法。这种方法在满足实时跟踪速度的要求下,能提高对尺度变化、遮挡、目标旋转和背景杂波等问题的处理能力。
实现本发明目的的技术方案是:
一种基于特征融合与自适应分块的核相关滤波跟踪方法,包括如下步骤:
1)获取目标子块的初始尺寸大小和位置:输入跟踪视频的第一帧图像,以确定跟踪目标的尺寸大小和初始位置,设跟踪视频的总帧数为n,根据目标像素比例对目标进行分块,设子块总数为m,利用跟踪目标的初始尺寸大小和位置与各个子块之间的几何关系得到目标子块的初始尺寸大小和位置;
2)对目标子块进行建模和训练:将其余帧的图像输入,通过循环移位后得到目标子块的所有样本,计算目标子块的hog和cn特征的基样本,然后利用多通道技术融合hog特征和cn特征,利用融合后的特征对目标子块进行建模,所建的目标子块模型即为分类器,运用脊回归函数对目标子块模型进行训练;
3)获取当前子块的目标位置:使用高斯核函数计算出目标子块所有的正样本即目标和负样本即背景的核相关矩阵和分类器权重系数来计算得到子块中所有目标位置的最大响应值,检测出最大响应位置,从而得到当前帧中当前子块的目标位置;
4)更新目标子块样本和分类器权重系数:根据当前帧中当前子块的目标位置,对目标子块样本和分类器权重系数进行更新,为下一帧的对应子块的目标位置检测作准备;
5)确定当前帧目标的最终位置:跟踪完所有子块后,对于响应值越大的目标子块赋予越大的权重系数,利用加权平均来确定当前帧目标的最终位置;
6)重复步骤2)~步骤5),直至完成跟踪视频的最后一帧。
步骤1)中所述的根据目标像素比例对目标进行分块,其分块过程为:根据目标像素比对不同的目标进行分块处理,对目标进行分块后,利用matlab对应的工具包读取被跟踪视频的groundtruth文本文件,文本中包含被跟踪视频标定好的真实数据,及每一帧的目标的大小和目标中心位置,然后根据目标初始位置与子块之间的几何关系得到每个子块目标的大小和初始位置,在第一帧中,我们以每个子块的中心坐标作为子块目标的初始位置。
步骤2)中所述的通过循环移位后得到目标子块的所有样本的具体过程为:根据一个向量x,通过向量x的各个元素依次向右移一个位置得到一个行向量,经过n次后,得到n个循环移位向量,将这n个循环移位向量依次排列成一个矩阵,这个矩阵成为x生成的循环矩阵c(x),然后根据子块的中心位置,中心坐标为(x,y)和尺寸大小即子块的长和宽来计算子块目标区域的基样本,对基样本进行循环移位采样后得到子块目标区域的循环样本。
步骤2)中所述利用多通道技术融合hog特征和cn特征具体过程如下:
(1)通过matlab对应的工具包获取目标区域的hog特征和降维后的cn特征,cn特征最终获取到是31维的hog特征和11维的cn特征,利用主成分分析方法对特征cn特征降维,其中降维后的cn特征为2维;
(2)利用多通道技术对31维的hog特征,2维的cn特征和1维的灰度特征进行加权融合得到34维的融合特征,多通道融合公式如下:
其中,
步骤2)中所述的运用脊回归函数对子块目标模型进行训练,其中训练的目的是找一到一个回归函数f(z)=wtz,样本回归的值使误差最小平方,回归函数f(z)求解w的过程如下:
(1)在训练中使用的损失函数为:
其中,x是目标样本,y是回归目标,w是分类器权重系数,λ是正则化参数,f是分类函数,||·||为范数运算
(2)样本线性可分条件下,岭回归求解得:w=(xtx+λi)-1xty,
其中,x使样本数据的循环移位构成的循环矩阵,i为单位矩阵,t代表转置操作;
(3)在傅里叶域中写成:
步骤3)中所述的得到当前帧中当前子块的目标位置的具体过程如下:
(1)对回归函数f(z)的解w用样本x和对偶空间ɑ的线性组合表示为:
因此,回归问题转化为:
其中,k(z,xi)为核函数,本方法选用的核函数是高斯核函数:
其中,z代表检测样本,⊙表示矩阵点乘运算,σ为高斯核函数的带宽,*表示矩阵共轭;
(2)子块响应值具体求解步骤如下:
利用核函数理论和岭回归求解上式的:
α=(k+λi)-1y,
其中k为循环矩阵,对其进行傅里叶变换,求得ɑ在对偶空间的解为:
至此,得到子块最终的响应位置为:
根据公式
步骤4)中所述的对子块目标样本和分类器权重系数进行更新,在更新过程中,每一帧图像都会产生一个分类器,将这个分类器与在步骤2)中已经训练好的分类器进行更新,得到实时训练的分类器:
η表示训练分类器的更新权重,其中η=0.125。
步骤5)中所述的对于响应值越大的目标子块赋予越大的权重系数wi,利用加权平均来确定当前帧目标的最终位置,对于响应值越大的目标子块赋予更大的权重系数wi:
f(z)i是第i个子块最大响应位置,
利用加权平均来确定当前帧目标的最终位置f:
其中
这种方法融合了具有互补性质的hog特征和cn特征,丰富了目标样本的特征,利用目标拆分思想对目标进行分块,通过对有效子块目标位置决策融合来得到最终目标位置,在满足实时跟踪速度的要求下,提高了对尺度变化、遮挡、目标旋转和背景杂波等问题的处理能力。
附图说明
图1为实施例的框架示意图;
图2a为实施例中目标的像素比大于1时目标分块的示意图;
图2b为实施例中目标的像素比小于1时目标分块的示意图;
图2c为实施例中目标的像素比等于1时目标分块的示意图;
图3为实施例中特征融合的示意图。
具体实施方式
下面结合附图和实施例对本发明的内容作进一步的阐述,但不是对本发明的限定。
实施例:
参照图1,一种基于特征融合与自适应分块的核相关滤波跟踪方法,包括如下步骤:
1)输入跟踪视频的第一帧图像,以确定跟踪目标的尺寸大小和初始位置,设跟踪视频的总帧数为n,根据目标像素比对不同的目标进行分块处理,假设目标的像素比经过向上取整后的值为θ,当目标的像素比大于1时,将目标垂直方向分均等分为3×θ块,水平方向均等分为2×θ块,如图2a所示,当目标的像素比小于1时,将目标垂直方向分均等分为2×θ块,水平方向均等分为3×θ块,如图2b所示,当目标的像素比等于1时,在垂直和水平方向各等分为块2×θ,如图2c所示,对目标进行分块后,设子块总数为m,利用matlab对应的工具包读取被跟踪视频的groundtruth文本文件,文本中包含被跟踪视频标定好的真实数据,及每一帧的目标的大小和目标中心位置,根据初始目标跟踪框与子块划分方法之间的几何关系得到每个子块目标的大小和初始位置,在第一帧中,以每个子块的中心坐标作为子块目标的初始位置;
2)将其余帧的图像输入,通过循环移位后得到目标子块的所有样本,即根据一个向量x,通过向量x的各个元素依次向右移一个位置得到一个行向量,经过n次后,得到n个循环移位向量,相当于x乘以一个排列矩阵p,然后将这n个循环移位向量依次排列成一个矩阵,这个矩阵成为x生成的循环矩阵c(x),其中向量x、排列矩阵p和循环矩阵c(x)的表达式分别如下所示:
x=[x1,x2,…,xn]t,
通过对目标子块进行循环移位采样来增加目标子块样本数量,提高目标检测的准确率。然后根据子块的中心位置即中心坐标(x,y)和尺寸大小即子块的长和宽来计算子块目标区域的基样本,对基样本进行循环移位采样后得到子块目标区域的循环样本,然后利用多通道技术融合hog特征和cn特征,特征融合如图3所示,hog特征和cn特征进行融合具体过程如下:
(1)通过matlab对应的工具包获取目标区域的hog特征,最终获取到31维的hog特征,通过matlab对应的工具包获取目标区域的cn特征,cn特征包括红,黄,白,紫,粉,橙,绿,灰,棕,蓝和黑这11维的cn属性,利用主成分分析方法对特征cn特征降维,降维后的cn特征为2维;
(2)利用多通道技术对31维的hog特征,2维的cn特征和1维的灰度特征进行加权融合得到34维的融合特征,多通道融合公式如下:
其中,
利用融合后的特征对子块目标进行建模,所建的目标子块的模型即为分类器,运用脊回归函数对子块目标模型进行训练,假设子块中一共有n个训练样本x=[x1,x2,…,xn],回归目标y=[y1,y2,…,yn],训练的目的是找一到一个回归函数f(z)=wtz,使得样本回归的值误差最小平方,其中回归函数f(z)求解w过程如下:
(1)在训练中使用的损失函数为:
其中,x是目标样本,y是回归目标,w是分类器权重系数,λ是正则化参数,防止过拟合,本例λ取值0.001,f是分类函数,||·||为范数运算;
(2)样本线性可分条件下,对回归函数进行求导,令导数等于0,得到上式权重系数w的封闭解为:
w=(xtx+λi)-1xty,
其中,x使样本数据的循环移位构成的循环矩阵,i为单位矩阵,t代表转置操作;
(3)在傅里叶域中写成:
3)使用高斯核函数计算出目标子块所有的正样本即目标和负样本即背景的核相关矩阵和分类器权重系数,来计算得到子块中所有目标位置的最大响应值,检测出最大响应位置,从而得到当前帧中当前子块的目标位置,在非线性情况时,定义核函数k将输入样本映射到高维空间
对于预测下一子块目标
其中,k(z,xi)为核函数,常规的核函数表达形式为:
其中,z是检测样本,⊙表示矩阵点乘运算,σ为高斯核函数的带宽,*表示矩阵共轭,子块响应值具体求解步骤如下:
利用核函数理论和脊回归求解得到子块响应值的解为:
α=(k+λi)-1y,
其中k为循环矩阵,对其进行傅里叶变换,求得ɑ在对偶空间的解为:
其中,
根据公式
4)根据当前帧中当前子块的目标位置,对有效子块的目标样本和分类器权重系数进行更新,无效子块进行重新定位,
根据子块目标检测区域的响应图的峰值旁瓣比(psr)和当前子块的最大响应值位置与目标的中心坐标位置的欧式距离li来判断子块的有效性:psr计算公式如下:
其中,max(f(z))表示子块的每个候选目标的响应值,也就是第帧中第个子块的最终跟踪结果,μ和σ表示目标子块的均值和方差。
欧式距离li计算公式式如下:
其中,(x1,y1)为目标中心坐标,(x2,y2)为子块目标中心坐标;当子块目标区域的psr的值小于70或当前子块的最大响应值坐标位置和目标的中心坐标位置的欧式距离li大于子块对角线长度的一半时判定为无效子块,
在更新过程中,每一个子块目标都会产生一个分类器,对于判定为有效子的块,我们将这个分类器与在步骤2)中已经训练好的的分类器进行更新,得到实时训练的分类器,更新公式为:
对于判定为无效的子块,我们对它进行重新定位,重定位公式为:
其中,η表示训练分类器的更新权重,本例η=0.125,得到的实时训练的分类器为下一帧的对应子块的目标位置检测作准备;
5)根据步骤2)-步骤4)跟踪完所有子块后,目标子块响应值越大,说明目标子块越可靠,对于越可靠的目标子块赋予更大的权重系数wi:
其中,f(z)i是第i个子块最大响应位置,然后利用加权平均来确定当前帧目标的最终位置f:
其中,
6)重复步骤2)~步骤5),直完成跟踪视频的最后一帧。