基于无人机跟踪的目标反遮挡算法

2021-05-07 09:42郁,朱
计算机测量与控制 2021年4期
关键词:巴氏均值精度

李 郁,朱 伟

(西安明德理工学院 智能制造与控制技术学院,西安 710124)

0 引言

近年来,随着人工智能和无人机的快速发展和广泛应用,基于无人机的目标跟踪引起了计算机视觉学者的研究热潮。无人机场景中的目标跟踪被广泛应用于各个领域,具有广阔的应用前景和丰富的学术研究价值[1-3]。然而,目前无人机场景下的目标跟踪面临非常多的问题和挑战。如,跟踪目标较小,跟踪精度差;相对速度过快,导致目标丢失;以及在实际中跟踪精度受目标旋转,目标遮挡等因素影响。因此,本文为了解决目标遮挡环境下,跟踪精度不高的问题,提出了一种新的目标跟踪算法(MKBP)。该算法在均值漂移(Meanshift)目标跟踪算法[4]的基础上,采用动态参数选择的方法,将卡尔曼(Kalman)滤波算法[5-6]与轨迹预测函数和BP神经网络算法[7]相结合,解决了运动过程中的目标遮挡问题跟踪;为了提高算法性能,在该算法中增加了目标检测机制,通过PCA-Sift算法检测丢失的目标[8],恢复跟踪目标并继续跟踪。

1 MKBP算法原理

在这一节,将会介绍MKBP算法的原理,以及工作机制。

1.1 均值漂移算法

基于均值漂移的目标跟踪算法通过计算目标区域和候选区域像素的特征值概率,得到目标模型和候选模型的描述,然后利用相似函数来度量初始帧目标模型与当前帧候选模板之间的相似度[9]。使相似函数最大化并得到目标模型的均值漂移向量的候选模型。这个向量是目标从初始位置移动到正确位置的向量。由于均值漂移算法收敛速度快,通过不断迭代计算均值漂移向量,算法最终会收敛到目标的真实位置,从而达到跟踪的目的。

均值漂移目标跟踪算法的相关公式如式(1)所示:

(1)

在初始帧中的跟踪帧中的位置信息由{xi}表示,其中n是帧中的像素总数,x0是中心位置,u是某个特征值(u=1,…,m)。kE(x)是epanechikov核函数,h是带宽,b(xi)是直方图的索引函数,是对应于目标帧中每个像素的RGB值。它是一个Delta函数,用于确定对应于b(xi)的值是否属于特征值u,C是正则化参数。ρ值为巴氏系数,其值在0~1之间,ρ值越大,表示两种模型越相似。在这里Z是每次搜索获得的新位置,wi为权重,m为特征值总数,g(x)=-k/(x)。在每一帧的迭代过程中,候选模板的中心位置y被Z不断更新,直到巴氏系数达到最大值。

1.2 利用预测机制解决目标遮挡问题

该算法利用卡尔曼和BP神经网络的预测机制,通过动态参数法选取相关参数。

1)卡尔曼滤波器是一种估计动态系统状态序列最小均方误差的最优滤波器。它可以预测下一帧跟踪目标的中心位置,并修正当前帧的目标区域。首先,将状态向量X=(xi,yi)T作为X轴和Y轴上的目标位置,测量向量Z=(xi,yi)T是观测目标的位置。然后,状态Xi被初始化。根据卡尔曼滤波算法的原理,建立了状态方程和观测方程。在满足这两个基本假设后,建立了卡尔曼预测阶段和更新阶段的相关方程。在确定相关参数后,利用卡尔曼滤波对下一帧跟踪目标的中心位置进行预测。上述公式如式(2)所示:

(2)

2)BP算法以n个候选目标中心位置的坐标(xk,yk)作为BP神经网络的初始训练样本数据,对下一帧候选目标的中心位置坐标(xk+1,yk+1)进行叠加更新。样本数据,采用trainrp函数作为BP神经网络的训练方法,首先确定输入层、隐层和输出层的节点数分别为2、4和2,然后确定初始学习率,训练次数和训练误差分别为0.01、10和0.5,根据BP神经网络的基本过程,可以预测并输出下一帧跟踪目标的中心位置(x,y)。具体流程如下:

(1)输入跟踪目标中心位置的坐标数据,从输入层神经元到隐层神经元,在隐层动作后传递给输出层神经元神经元。输出变量在外层神经元的作用下产生,即前向传递过程;

(2)将实际输出Yk与期望输出进行比较,得到存在的误差ε。如果误差超过可接受范围,则误差值将沿网络传播。修改连接权值ujk和wij(即误差反向传播过程);

(3)输入另一个跟踪目标中心位置的坐标数据,重复(1)和(2)直到模型输出误差E在可接受范围内或达到设定的训练次数。

上述公式如式(3)所示:

(3)

3)使用通过动态参数法选择相关参数,该算法采用多线程方法同时运行均值漂移,卡尔曼和BP神经网络三种算法,并采用动态参数选择的方法得到3种算法的权重参数(wm|i+1,wk|i+1,wb|i+1),然后根据这3种算法得到的相关参数,对其进行动态参数选择中心位置(Z(xi+1,yi+1),X(xi+1,yi+1),Y(xi+1,yi+1))的候选目标计算最佳中心位置L(xi+1,yi+1)。如式(4)所示:

(4)

式中,ρi+1为候选目标与跟踪目标之间第i-th帧的巴氏系数,wi+1为动态目标选择方法(即通过3种算法得到的候选目标和跟踪值之间的巴氏系数的比例确定动态参数的目标)得到了第i-th帧的权重参数。

均值漂移目标跟踪算法结合了卡尔曼滤波算法和BP神经网络预测机制,结果如图1所示。

图1 解决遮挡问题的预测机制示意图

从图1可以看出,第148帧图像是初始输入图像,第175帧和第181帧图像被部分阻止,第178帧图像被完全阻止。预测机制是卡尔曼滤波和BP神经网络预测算法相结合的均值漂移算法,通过动态参数选择来处理这三种方法所占的不同权重。动态参数选择是根据三种算法的相似性,对候选目标跟踪预测的目标中心位置来选择合适的参数。

1.3 对丢失目标的寻回

通过多目标跟踪实验,发现当目标长时间完全被遮挡时,跟踪的目标会丢失。因此,本文选择了PCA-sift特征提取算法在目标跟踪过程中,启动了判断目标是否丢失的机制,即,候选目标与跟踪目标在时间阈值T处的相似度继续小于相似度阈值S,表明目标已经丢失,然后启动基于Sift的目标检测机制重新获取被跟踪目标,继续跟踪目标。

1.3.1 跟踪目标和当前帧目标的特征提取

首先得到目标模型和当前视频帧的PCA-Sift特征向量。PCA-Sift算法以尺度空间为主要思想。首先构造DoG金字塔,在尺度空间中找到极值点,然后精确地确定关键点的位置和主方向,以保证其尺度和旋转不变性算法.SIFT在高斯(DoG)尺度空间的差分中检测局部极点值。输入图像f(x,y)和高斯滤波器G(x,y,kσ)卷积得到L(x,y,kσ),k=1,2,…,n。接着,DoG-尺度空间可以通过式(5)计算得到:

D(x,y,σ)=[G(x,y,kσ)-G(x,y,σ)]×I(x,y)=

L(x,y,kσ)-L(x,y,σ)

(5)

在这里,D(x,y)是高斯差分图像,G(x,y)是高斯滤波器,L(x,y)是比例。在DoG空间,利用搜索局部极值的方法,可以判断具有相同尺度的潜在兴趣点方向。那个局部极值是第二阶段确定的关键点的候选点。

其次,建立了目标模型和当前视频帧的特征相量描述。以关键点为中心,绘制一个16×16的圆形区域,然后将圆形区域划分为4×4个子邻域,计算子区域梯度直方图。由于梯度方向是一个8维向量,每个点都有一个128维向量来描述它,这就是SIFT特征矢量。它使用梯度振幅m(x,y)和方向θ(x,y)作为描述符中的基本元素,其定义如式(6)~(7)所示:

m(x,y)=

(6)

θ(x,y)=arccos

(7)

然后,利用主成分分析(PCA)原理对128维特征向量进行约简,最后将其简化为20维特征向量。

1.3.2 将跟踪目标的特征与当前帧的目标相匹配

最后,对目标模型和当前视频帧进行PCA-Sift特征描述符匹配。首先,将当前视频帧划分为多个候选区域,然后逐个进行匹配。然后,计算PCA-Sift特征向量与二者之间的欧几里德距离,求出欧几里德距离的最小值和最小值,求出两者之间的比值。如果它小于设定的阈值,则匹配是成功的。最后对候选区域进行匹配,建立候选帧,作为检测到的目标位置。

当跟踪的目标丢失时,立即启动目标检测机制。为了确定跟踪是否丢失,设置丢失阈值l。如果当前帧的丢失系数小于l,则不丢失目标;否则,考虑目标丢失了。MKBP算法利用PCA-Sift特征提取算法从视频图像中提取特征点向量,构造PCA-Sift特征描述子,最后在视频图像中匹配目标模板PCA-Sift特征描述子,得到相似度最高的目标模板。定位目标位置,确定候选目标模板,最后将候选模板传递给均值漂移算法,启动目标跟踪过程,如图2所示。

图2 丢失目标寻回示意图

从图2可以看出,第3 031帧中的目标没有被阻断并且被精确地跟踪。第3 173帧中的目标被部分阻断并被精确跟踪。第3 216帧中的目标被完全阻断,但跟踪时间过长。失败。该过程的详细描述是:利用本文提出的方法对输入的连续视频帧进行跟踪,利用目标丢失判断机制检测目标在跟踪过程中是否丢失,并在目标跟踪重新获取丢失跟踪目标允许的情况下,启动基于PCA-Sift的目标检测继续跟踪目标。

因此,整个MKBP算法的具体执行过程如算法1所示。

算法1:MKBP算法

Input: The current frame

Output:L(xi+1,yi+1)

While 当前帧是有效的 do

Thread1:

Z(xi+1,yi+1)=Meanshift(xi,yi);

Thread2:

X(xi+1,yi+1)=Kalman(xi,yi);

Thread3:

Y(xi+1,yi+1)=BP(xi,yi);

Thread4:

l = Get Target Loss Threshold(frame);

if l > t do

Retrieve Target = Detect Based PCA-Sift(frame);

else

wm,wk,wb=Dynamic Parameter Selection (Z,X,Y);

L(xi+1,yi+1)=wmZi+1+wkXi+1+wbYi+1;

end if

用L(xi+1,yi+1)作为迭代数据;

读取下一帧;

End

2 实验与评估

2.1 实验设置

本实验的测试平台是VS2015,它使用了计算机视觉开源库OpenCV3.41。所有实验都是在英特尔酷睿i5-4210U,4 GB内存的Windows8.1 64位PC系统上进行的。数据集采用的是UAV123公开数据集[10]。

2.2 实验结果

图3是5种传统目标跟踪算法和MKBP对WhiteCar视频序列的跟踪。第一幅图像是无人机对目标的无遮挡跟踪,这6种跟踪算法的跟踪帧与目标非常一致。因此,在目标无障碍的情况下,这6种算法的跟踪精度都很高。第2和第3张是无人机跟踪目标部分遮挡。MKBP跟踪帧与目标基本吻合,说明MKBP算法的跟踪精度较高,而Moss帧与目标的重合度不高,说明Moss算法对遮挡非常敏感,跟踪精度不高。第4张是无人机跟踪目标被完全遮挡。MKBP跟踪帧与目标趋势一致,其他跟踪帧基本与目标不一致,说明MKBP算法的跟踪精度较高,同时也说明其他5种算法完全是遮挡非常敏感,跟踪精度不高。第5幅图像为部分遮挡,第6幅图像为未遮挡,其余5幅跟踪帧均已脱离目标,说明这5种算法都已失去跟踪目标,同时说明MKBP算法在遮挡情况下鲁棒性和稳定性都很高。

图3 对WhiteCar的追踪结果

为了评价跟踪算法的精度,采用巴氏相似系数来评价跟踪算法的精度。结果如图4所示。

图4 巴氏系数比较结果

从图4可以看出,在WhiteCar视频序列的1442到1514帧中,被跟踪的目标处于未包含状态。在1 515~15 26帧,被跟踪目标处于部分阻塞状态。在1 527~1 538帧,跟踪目标处于完全阻塞状态;在1 539~1 600帧,被跟踪目标处于非阻塞状态。在1 442~1 514帧,由于目标没有被遮挡,6种跟踪算法的巴氏相似系数相差不大,基本上都大于0.90。在1 515~1 526帧中,由于目标部分被遮挡,而Moss的部分分块不鲁棒,巴氏相似系数急剧下降,而其他4种算法和MKBPS对部分遮挡有一定的鲁棒性,因此巴氏相似系数降低的速度慢得多;在1 527~1 538帧中,由于目标完全被遮挡,巴氏相似系数急剧下降,基本在0.55以下;在1 539~1 600帧,目标没有被遮挡,但由于其他5种跟踪算法,跟踪目标丢失,因此巴氏相似系数小于0.55,对于具有目标检测机制的MKBP,由于重新捕获,巴氏相似系数急剧上升以跟踪目标。

图5是通过5种传统的目标跟踪算法和MKBP对BlackCar视频序列的跟踪。第一张图片是无障碍无人机跟踪目标。这6种跟踪算法的跟踪帧与目标非常一致。因此,这6种算法的实时性要求都很高。第2张图片是无人机跟踪目标的部分遮挡。MKBP跟踪帧与目标基本吻合,说明MKBP算法具有较高的跟踪精度,而Moss帧与目标没有高度重叠,说明Moss算法对遮挡非常敏感,跟踪精度不高。第3张图是无人机跟踪目标被完全遮挡MKBP跟踪帧与目标趋势一致,其他跟踪帧与目标趋势基本不一致,说明MKBP算法的跟踪精度较高,而且其他5种算法对完全遮挡敏感,导致跟踪精度较低。第4幅图像是部分遮挡,其余五帧跟踪帧都偏离了目标,说明这5种算法已经失去了对目标的跟踪,同时也说明了MKBP算法在遮挡下的鲁棒性和稳定性。

图5 对BlackCar追踪结果

从图6可以看出,6种跟踪算法的精度都随着误差阈值的增大而提高,但MKBP算法的精度提高幅度最大,当误差阈值为10时,其精度系数高于其他5种跟踪算法,从成功图可以看出,6种跟踪算法的成功率随着符合阈值的增加而逐渐降低,但MKBP算法的下降幅度相对较小,从这两幅图可以看出,MKBP算法的性能优于其他5种跟踪算法。

图6 对BlackCar的跟踪精确度比较

3 结束语

本文针对无人机目标被遮挡时均值漂移算法鲁棒性差的问题、卡尔曼误差积累问题和无人机目标丢失问题,提出了一种无人机抗遮挡目标跟踪算法MKBP,主要是基于均值漂移跟踪算法,并结合了卡尔曼的预测机制。同时,采用BP神经网络解决卡尔曼误差积累问题,提高了跟踪性能。目标检测机制用于恢复丢失的跟踪目标并继续跟踪。实验结果表明,与传统的跟踪算法相比,MKBP目标跟踪算法在目标运动速度快、视频像素低、目标遮挡时间长、多次出现的复杂场景下,具有良好的跟踪速度和准确的跟踪效果。

猜你喜欢
巴氏均值精度
基于不同快速星历的GAMIT解算精度分析
数字化无模铸造五轴精密成形机精度检验项目分析与研究
巴氏钝绥螨对普通大蓟马的功能反应及田间防效
浅谈巴氏鲜奶的发展现状
均值—方差分析及CAPM模型的运用
均值—方差分析及CAPM模型的运用
近似边界精度信息熵的属性约简
均值不等式的小应用
释放巴氏钝缓螨防治柑橘红蜘蛛应用技术
浅谈ProENGINEER精度设置及应用