APP下载

基于改进Kalman滤波与Camshift结合的嵌入式跟踪系统设计

2023-12-18邱晓欢郑尚坡刘俊峰徐诗康廖丁丁

计算机时代 2023年11期
关键词:跟踪目标树莓鲁棒性

邱晓欢 郑尚坡 刘俊峰 徐诗康 廖丁丁

关键词:目标跟踪;Camshift 算法;Kalman 滤波;目标遮挡;状态向量;嵌入式系统

中图分类号:TP391.41 文献标识码:A 文章编号:1006-8228(2023)11-41-06

0 引言

目标跟踪技术作为机器视觉领域重要的研究课题及热点,在智能视频监控、自动驾驶、军事国防、智能交通系统和无人机等领域得到了广泛应用。

目标跟踪算法根据不同的方法和策略可以分为基于轮廓、特征、区域和模型的四类方法。基于轮廓的跟踪算法[1]以目标的边缘轮廓作为跟踪模板,具有较好的实时性能,然而在跟踪目标被遮挡时,该算法会面临跟踪丢失的挑战;基于模型的跟踪算法[2]通过构建目标的二维或三维模型进行跟踪,具有较高的鲁棒性,但由于模型的构建需要耗费时间,实时性表现较差;基于区域的跟踪算法[3]利用图像的全局描述信息进行跟踪,适用于没有尺度变化或遮挡的情况,但在背景干扰或目标遮挡的情况下,该算法定位目标位置困难,鲁棒性较差。

基于特征的跟踪算法[4]是通过提取目标某些不变的特征(如颜色、SIFT、Harris Corners 等)来实现跟踪,主要代表算法有SIFT[5]、SURF[6]、Meanshift、Camshift[8]等。其中Meanshift 算法是基于颜色概率分布图作为特征,通过反复迭代寻优找到概率分布的极值来定位目标,具有计算量小、实时性较强等优点,但该算法在目标形变情况下较难跟踪目标。Camshift 算法则是对Meanshift 的改进,该算法能根据跟踪目标的形状大小自动调整搜索跟踪框的大小有效解决目标形状变化和旋转的问题[9]。文献[10]通过Camshift 算法对运动目标进行跟踪,该算法能够解决目标旋转和形变问题,但当目标受到遮挡或背景干扰情况下无法有效跟踪目标。文献[11]通过改进Camshift 算法,引入H,S,V 分量组成三维直方图作为模板进行跟踪,提高了跟踪准确度和鲁棒性,但是该方法只考虑了颜色直方图信息,未考虑目标的运动和空间分布特征,较难处理遮挡问题。文献[12-13]通过在Camshift 算法基础上引入Kalman 滤波器,成功解决了遮挡问题,但他们所用到的Kalman 滤波器状态变量均为四维,未考虑目标大小信息,并且其输出的跟踪框无法适应目标大小变化,跟踪准确度和鲁棒性都有待提高。

本研究针对前述文献的不足之处,提出了一种基于改进Kalman 滤波与Camshift 结合的目标跟踪算法,通过改进Kalman 滤波器算法方程,将原有的4 维度的状态变量扩展为8 维,综合考虑了目标的位置、大小以及它们对应的速度信息;同时,通过引入Bhattacharyya距离[14]和遮档率α 来判断目标是否受到遮挡,当运动目标受到遮挡时,将Kalman 输出的预测值作为观测值进行更新,以更新输出的最优状态估计值代替Camshift 输出值作为跟踪框实现对受遮挡目标的有效跟踪。此外,为实现系统的小型化,使其能够适用于资源受限的情况,本研究在树莓派4B 平台打造了基于改进Kalman 滤波与Camshift 相结合的目标跟踪系统,在保证实时性的同时,具有高准确度和鲁棒性。

1 基于改进Kalman 滤波与Camshift 相结合的目标跟踪算法

1.2 改进Kalman 滤波与Camshift 结合的跟踪算法

Camshift 算法该算法是基于颜色概率分布图进行跟踪的,具有计算量小、实时性高等优点,但存在遮挡情况下无法有效跟踪目标的问题,跟踪准确率较低,该算法流程如图1 所示。

Kalman 滤波包括两个部分:预测和校正。预测过程用来预测系统当前的状态变量和误差协方差值;校正过程负责卡尔曼滤波增益、状态值和误差协方差的更新[15]。Kalman 滤波器的主要作用是对当前时刻的观测变量和前一时刻的状态预测值来去更新对状态变量的估计,求出当前时刻的最优状态估计变量并对其进行输出[16],Kalman 滤波器算法流程如图2 所示。

本研究提出一种基于改进Kalman 滤波与Camshift相结合的目标跟踪方法,能够有效解决跟Camshift跟踪过程中产生的遮挡干扰问题,实现对物体的持续跟踪。

基于Kalman滤波的Camshift改进算法有以下步骤。

⑴ 通過树莓派读取视频序列,通过鼠标选取第一帧目标的跟踪区域并以该区域的中心位置和大小初始化搜索窗口。

⑵ 初始化Kalman 滤波器,并以初始搜索窗口的大小和中心位置初始化状态变量X?0。

⑶ 将图像从RGB 颜色空间转换为HSV 空间,并计算搜索窗口内H 通道的颜色直方图,并对其进行反向投影得到颜色概率分布图[17]。

⑷ 利用MeanShift 跟踪算法求出最优候选区域,并计算出搜索窗口的质心位置和窗口大小。

⑸ 根据窗口的像素值来综合调整窗口大小,并将搜索窗口的中心位置移动到质心处,如果移动距离大于阈值,则跳转到第⑷步继续往下执行;如果搜索窗口中心移动到质心的距离小于设定的阈值,则满足收敛条件,继续向下执行。

⑹ 采用巴氏距离d (y)和遮挡率α来判断目标是否受到遮挡,d (y)、α 的计算公式分别如式⑴和式⑵所示,当d (y)大于0.65或α 小于0.3时,则判断为目标受到遮挡;反之,则未受到遮挡。

其中,d (y)可以用来比较两个颜色直方图的相似度,它的取值范围在[0,1]之间,值越小表示两个直方图越相似;式⑾中Current_area 为当前Camshift 算法输出的搜索窗口大小,Origin_area为初始搜索窗口的大小。

⑺ 如果目标未受到遮挡,以Camshift 算法输出的最优搜索窗口中心位置和大小作为跟踪框标注出目标在视频当中的位置,并以该值作为观测变量Zk,用Zk 来更新Kalman 滤波器,得到k 时刻的目标质心位置和大小的最优状态估计值X?k,并以该值初始化下一帧搜索窗口的大小和中心位置。

⑼ 最后判断视频序列是否结束,若未结束则继续执行下一帧的目标跟踪。

2 实验测试及分析

为了验证所提算法的有效性,本研究通过在Raspbian 操作系统上使用Python 语言结合OpenCV 库来编写程序,分别实现基于Camshift 的目标跟踪算法与基于Camshift 与Kalman 结合的改进目标跟踪算法,对目标进行跟踪,并设置多次实验对两种算法进行性能对比和分析。

2.1 实验运行环境

目标跟踪系统硬件环境主要由树莓派4B 主板构成,本研究通过Win32 Disk Imager 工具将镜像文件写入SD 卡中,配置树莓派连接手机热点,并使计算机通过MobaXterm_Personal 软件远程连接树莓派,然后在树莓派系统中搭建Python 3.7.2 环境,安装pip 指令库,使用pip 指令安装Numpy(1.21.5),OpenCV(4.5.5)等必要库,完成在树莓派上软件环境的配置。

2.2 评估指标

本研究采用BH 距离和有效帧率r 用来衡量目标跟踪算法的准确性与鲁棒性,有效帧率计算式为:

r = valid_frame/all_frame ⑶

其中,valid_frame 为检测到的有效帧数,all_frame 为视频序列的总帧数。

2.3 测试结果

为了验证所提改进算法的有效性,本研究通过树莓派读取测试视频序列进行跟踪实验,分别将改进Kalman 滤波算法与Camshfit 算法跟踪效果进行比较,跟踪效果如图3 和图4 所示。

由图3 可知,视频序列当中存在一个遮挡物,当目标未经过遮挡物时,Camshift 算法能够有效跟踪目标,当目标在第98 帧被部分遮挡时,Camshift 通过缩小输出的搜索窗口大小能够对目标进行跟踪,但在第133 帧,目标被完全遮挡,颜色信息完全丢失,导致Camshift 算法输出的搜索窗口无法与物体匹配上,跟踪失败。由图4 可知,改进的Kalman 滤波算法输出的跟踪框能够自适应匹配Camshift 算法输出的搜索窗口大小,当目标在第133 帧受到遮挡时,通过自适应改变a 和h 参数进行预测和更新来扩大输出的跟踪框大小,并标注出遮挡目标在视频当中的位置,从而实现对其持续有效的跟踪。

本研究分别对基于传统的Camshift 跟踪算法和改进的Camshift 与Kalman 滤波跟踪算法相结合在树莓派上进行100 次实验,分别得到了这两种算法的平均有效帧率和BH 距离,并进行性能对比分析,实验结果见表1 和图5。

根据表1 的结果显示,本文所提改进算法有效帧率高达85.4%,显著高于传统Camshift 算法42.6%,平均BH 距離为0.78,相较于传统Camshift 算法降低了0.27,具有较高的精度和鲁棒性。从图10 可以看出,传统Camshift 算法在遇到遮挡物后BH 距离基本在0.9左右,表明搜索窗口与跟踪目标的匹配度很低,然而,改进算法在遇到遮挡物后,BH 距离会有所提升,但是当目标越过遮挡物之后,BH 距离会快速下降至0.45左右,更证明了改进算法能够有效跟踪被遮挡后的目标,相较于原算法具有更好的跟踪性能。

3 结论

本研究在树莓派4B 上设计了一种嵌入式目标跟踪系统,该系统采用了一种改进Kalman滤波与Camshift算法相结合的策略极大改进了原始Camshfit 算法在目标跟踪上的缺陷,并解决了传统Kalman 滤波器未考虑目标大小信息无法输出跟踪框的问题。实验结果表明,所提改进算法能够在遮挡干扰下稳定地跟踪目标,在存在遮挡干扰的情况下具有较高的鲁棒性和准确度。此外,该系统在嵌入式平台上实现,适用于资源受限的环境,具备较大的应用潜力和实际价值。

猜你喜欢

跟踪目标树莓鲁棒性
核相关滤波与孪生网络相结合的目标跟踪算法
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
基于确定性指标的弦支结构鲁棒性评价
基于树莓派的骑行智能头盔设计
基于树莓派的远程家居控制系统的设计
基于图割理论的尺度自适应人脸跟踪算法
连续同色调背景下运动目标自适应跟踪
基于非支配解集的多模式装备项目群调度鲁棒性优化
非接触移动供电系统不同补偿拓扑下的鲁棒性分析
响应面法优化红树莓酒发酵工艺