APP下载

一种改进的CamShift运动目标跟踪算法

2015-02-20任世卿

沈阳理工大学学报 2015年2期
关键词:高斯分量运算

薛 桐,任世卿

(沈阳理工大学 信息科学与工程学院,辽宁 沈阳 110159)

一种改进的CamShift运动目标跟踪算法

薛 桐,任世卿

(沈阳理工大学 信息科学与工程学院,辽宁 沈阳 110159)

CamShift算法具有复杂度低,实时性和鲁棒性好等优点,被广泛地应用于目标跟踪领域。但是CamShift算法在运动目标接近与其颜色相近的固定遮挡物时,跟踪会出现明显的偏移。针对这一问题,提出了一种解决与运动目标颜色相近的固定遮挡物对目标跟踪的干扰的方法。首先,运用单高斯背景模型对运动目标进行背景建模;其次,通过背景模型与当前帧的运算,确定与运动目标颜色相近的固定遮挡物所在的位置;最后,利用H分量灰度图计算运动目标所在位置。实验结果显示,该方法在运动目标接近相似颜色固定遮挡物时,能很好地跟踪运动目标。

目标跟踪;CamShift算法;单高斯背景模型;HSV颜色空间模型

计算机视觉中的一个重要研究方向是视频监控,它不但有广阔的应用前景,而且在理论研究上也有很高的价值[1]。其中视频监控涉及的运动目标跟踪一直是一项非常活跃的研究领域,它是计算机视觉技术的核心,同时结合了模式识别、自动控制、图像处理、人工智能等高技术课题。常用的运动目标跟踪算法有Kalman滤波、MeanShift算法、CamShift算法等[2]。范五东等提出了一种基于HSV色彩空间特征与Kalman滤波融合的目标跟踪算法,克服了运动目标表面特征变化带来的目标跟丢现象[3]。赵文倩等将背景差分法与CamShift算法结合,在一定程度上满足了实时性与稳定性的要求[4]。本文针对运动目标在运动过程中接近与其颜色相近的固定遮挡物时跟踪出现偏移这一问题,基于CamShift算法原理,运用单高斯背景模型建立背景[5],经过运算得到相近颜色的遮挡物的位置,进而更准确地计算出运动目标的位置。

1 CamShift算法和单高斯背景模型

1.1 CamShift算法

Bradski针对MeanShift算法的不足,在1998年提出了CamShift算法(Continuously Adaptive Mean-Shift)[6]。算法的主要思想是,首先手动选取运动目标区域,设运动目标区域内像素点用(x,y)表示,提取运动目标区域在HSV颜色空间模型的H分量直方图作为目标特征值,其次通过H分量直方图建立反向投影图H(x,y),再计算得到H(x,y)的零阶矩和一阶矩,最后确定运动目标区域的质心,从而计算出运动目标所在位置的坐标值。零阶矩和一阶矩具体计算如下:

零阶矩:

(1)

一阶矩:

(2)

(3)

通过零阶矩和一阶矩确定搜索窗的质心,用xc表示质心的横坐标,yc表示纵坐标,有

(4)

CamShift算法对于特定色度目标进行跟踪时,只计算搜索窗内的像素的H分量,这样就减少了计算量,而且依据H分量逐帧计算搜索窗的大小,实现了对连续图像序列的跟踪。但也正因为CamShift算法只考虑运动目标的色度H分量为特征,所以当运动目标遇到有相似色度遮挡物时,目标跟踪就会出现偏移,逐渐丢失。本文提出利用背景模型,使目标与相似颜色固定遮挡物区别开,然后修改遮挡物所在区域的H分量特征值,从而实现比较准确的跟踪结果。

1.2 单高斯背景模型

Wren等人[7]把背景图像中的每一个像素点,用单个高斯分布模型表示,具体如下:

(5)

(6)

在生成背景估计图像之后,根据预先设定的阈值T进行判断。

(7)

式中:1代表前景点,0代表背景点;阈值T=D·σt,D为固定值;σt为标准差。在单高斯背景模型更新中,引入学习率α(0<α<1),更新表达式如下:

μt=(1-α)μt-1+αXt

(8)

(9)

运用单高斯背景模型具有计算复杂度低,运算量小等优点。在初始化模型参数时,如果输入图像是背景图像,那么得到的结果是比较理想的。

2 改进的CamShift算法

本文主要改进思想是使运动目标与相似色度固定遮挡物区分开,确定遮挡物的位置。这一思想的核心步骤是怎样准确地定位遮挡物的位置。随着目标的运动,固定遮挡物在目标周围出现的体积大小是由小到大的过程,准确地得到这个从小到大的区域是非常重要的一步,本文提出利用单高斯模型建立背景模型,计算得到相似颜色固定遮挡物的位置,实验结果显示,利用这个方法基本可以确定相似颜色固定遮挡物的位置,再经过后续的运算,可以得到较好的跟踪结果。算法主要过程如下:

(1)确定初始搜索窗口

使用手动选择运动目标,并将窗口大小固定为初始选择的窗口大小。

(2)取运动目标周围得到一张小图像

为便于计算背景模型减少计算量,以运动目标为中心向四周扩展一定大小,将此部分单独拿出来作为一张小图像代替整帧参与计算。这样不仅可以减少计算量,而且可以避免背景的一些变化对背景建模的干扰。得到小图像的计算量远小于整帧图像参与背景建模的计算量。扩展的大小根据不同图像序列和一系列实验而定。本文中该大小取为向四周扩展20个像素值。

(3)得到背景模型

此步骤得到的背景模型必须是不包含遮挡物的,这样当目标靠近遮挡物时,用当前帧与背景模型运算时才能更好地得到遮挡物的位置。先利用单高斯背景模型,对前5帧小图像进行背景建模,得到背景模型二值化图像img1,如图1所示。

图1 背景模型

(4) 确定遮挡物的位置

① 将背景帧img1和当前帧img2进行运算。运算的目的是得到一个只包含运动目标信息的图像,以便获取固定遮挡物的位置。运动目标在每一帧中的位置是不同的,但是在相邻帧中目标所在的位置会有重叠的部分。同样的,建立的背景模型在每一帧图像中都有重叠的部分,所以将背景模型与每一个当前帧进行与运算,即img1&img2,提取二者的公共部分,再用当前帧和公共部分相减,即img2-(img1&img2),得到与公共部分有差异的区域,并将此结果重新赋给img1,如图2所示。

图2 运算过程图

② 对建模结束后的每一帧图像,取小图像,提取H分量灰度图并重新赋给img2;

③ 利用图3b和图3c再次计算img2-(img2&img1),若当前帧img2中没有出现相似色度遮挡物,则此结果不会改变目标特征H分量各像素点的值;若当前帧中出现遮挡物,则基本可以确定其在img2中的位置,如图3d所示(结果图中白色区域为相似色度遮挡物)。

图3 确定相似色度遮挡物位置过程图

(5) 获取新的运动目标H分量特征图

由得到的遮挡物位置,对应到当前帧H分量灰度图中的位置,将其值置0,重新得到当前帧H分量灰度图(如图4所示),用重新得到的H分量灰度图进行后续CamShift算法的运算。

图4 H分量灰度图

如果相似色度的遮挡物体积远大于运动目标,除了考虑对运动目标运动方向上的干扰,还要防止对运动目标其他方向的干扰,例如,上方和下方,如图5所示。此时,对上一步得到的位置,根据情况,对该位置的其他有干扰方向的位置上的值,一并置0,这样得到新的运动目标H分量特征值进行后续CamShift算法的运算。

(6) 背景模型更新

判断运动目标是否被半遮挡,若遮挡,则更新背景模型,转到(3)开始执行,否则转到(4)继续下一帧。

(7) 直到所有帧结束。

3 实验结果及分析

通过视频图像序列对传统CamShift算法和改进的CamShift算法性能进行分析。正在跑步的人慢慢地靠近一根电线杆,电线杆的颜色和人的衣服颜色相似。另外,随着目标的运动,固定遮挡物在目标周围出现的体积大小是由小到大的过程,对运动目标跟踪的干扰由在运动方向上逐渐扩展,包括运动方向的右上方、左下方等。本文的实验环境为Matlab2012a软件,操作界面如图6所示。

图5 相似色度遮挡物对运动目标跟踪的干扰

图6 仿真软件操作界面图

在运动目标离遮挡物稍远时,跟踪结果比较准确。在运动目标刚刚接近相似颜色遮挡物时,传统CamShift算法就失效了,跟踪出现了偏移,如图7所示。其中,目标与相似颜色遮挡物的灰度值对比如表1所示(X、Y分别表示横坐标和纵坐标)。通过确定相似颜色遮挡物的位置,忽略相应位置上像素值对后续CamShift算法运算的干扰,得到更准确的运动目标位置。实验表明,该方法有效地解决了相似颜色遮挡物对运动目标跟踪的干扰,跟踪效果明显优于原算法的跟踪效果,如图8所示。

表1 目标与遮挡物灰度值对比表

图7 原CamShift算法的跟踪结果

图8 改进的CamShift算法的跟踪结果

图9 原CamShift算法的跟踪结果

图10 运动方向上改进的跟踪结果

图11 加入其他方向上的改进的跟踪结果

由于遮挡物体积远大于目标的体积,在目标运动过程中,当目标进入半遮挡时,遮挡物对目标跟踪的影响不仅仅出现在目标的运动方向上。本图像序列中的遮挡物对目标跟踪的影响还出现在上方、右上方、下方、右下方。对改进的算法进一步细化,在确定遮挡物位置时对增加考虑其它有影响的方向,进而得到其它有影响的方向的位置具体实验结果如图9、图10、图11所示。

通过图7至图11的对比可以看出,针对本图像序列,原CamShift算法在第37帧时,跟踪出现偏差,在接下来的图像帧中,跟踪出现丢失。图12以目标实际位置的中心的横纵坐标为基准,表达了原算法与改进算法跟踪窗口质心的横纵坐标与基准坐标的偏差,进一步说明当目标接近相似颜色固定遮挡物时,原算法与改进算法的跟踪效果。本文提出的通过背景模型计算相似颜色固定遮挡物的位置的方法,使跟踪结果明显好转。但随着目标移动,离遮挡物越来越近,只考虑运动方向上的因素,跟踪效果也出现了偏差。经过进一步改进,增加其他方向上的影响因素,使跟踪结果越来越好。

图12 跟踪窗口质心坐标误差对比

4 结论

综上所述,改进的算法采用原图像的小图像参与运算,减少了复杂背景对目标跟踪的影响,并且在一定程度上减少了计算量。运用单高斯背景模型建立背景,通过对背景模型与当前帧图像的运算,最终确定与运动目标颜色相似的固定遮挡物位置的方法,基本解决了相似颜色对目标跟踪的影响,取得了较好的跟踪结果。

对于本图像序列来说,它既包含相似颜色遮挡物对运动目标跟踪的干扰,同时也包含运动目标被完全遮挡的情况。由于遮挡物的体积远大于运动目标的体积,随着目标的移动,目标与固定遮挡物的位置由靠近,遮挡一小部分,半遮挡,到全遮挡,再到慢慢走出遮挡。所以对CamShift算法已做的改进,更适合于有相似颜色固定遮挡物对运动目标半遮挡的情况。对于具有相似颜色固定遮挡物对运动目标全遮挡的情况,还须进一步完善、改进。

[1]尹宏鹏.基于计算机视觉的运动目标跟踪算法研究[D].重庆:重庆大学,2009.

[2]刘俊.运动目标的检测与跟踪算法研究[D].武汉:武汉科技大学,2011.

[3]范五东,周尚波,幸培宸.HSV颜色空间特征与Kalman滤波融合的目标跟踪[J].计算机工程与应用,2011,47(13):169-173.

[4]赵文倩,匡逊君,李明富.基于改进的Camshift运动目标跟踪算法的研究[J].信息技术,2012,(7):165-169.

[5]陈雪莹.基于混合高斯的背景建模与更新算法的研究与实现[D].沈阳:东北大学,2009.

[6]Bradski G R.Real Time Face and Object Tracking as a Component of a Perceptual User Interface[C].IEEE Workshop on Applications of Computer Vision,1998:214-219.

[7]Wren,Christopher R,Ali Azarbayejani,et al.Real-Time Tracking of The Human Body[J].In IEEE Transactions on Pattern Analysis and Machine Intelligence,1997,19(7):780-785.

(责任编辑:马金发)

An Improved CamShift Moving Target Tracking Algorithm

XUE Tong,REN Shiqing

(Shenyang Ligong University Shenyang 110159,China)

CamShift algorithm has low computing complexity,good real-time performance and robustness,so it is widely applied in target tracking.But the tracking appears shift when moving target is closing the fixed occlusion which has similar color with it.In order to solve this problem,a solution is proposed to solve this kind of occlusion.Firstly,single Gaussian algorithm is adopted to build the background model;Then,the position of similar color fixed occlusion is located by the background model calculation and the current frame;Finally,H component grayscale is applied to calculate the moving object position.The experimental results show that this solution can track the target better while the fixed occlusion has similar color with the closing target.

target tracking;CamShift algorithm;single Gaussian background model;HSV color space model

2014-07-10

薛桐(1990—),女,硕士研究生;通讯作者:任世卿(1975—),男,副教授,研究方向:图像处理与计算机视觉.

1003-1251(2015)02-0028-07

TN911

A

猜你喜欢

高斯分量运算
重视运算与推理,解决数列求和题
帽子的分量
有趣的运算
一物千斤
数学王子高斯
天才数学家——高斯
论《哈姆雷特》中良心的分量
“整式的乘法与因式分解”知识归纳
从自卑到自信 瑞恩·高斯林
基于瞬时对称分量法的三相四线制D-STATCOM控制研究