基于点对矢量场的动态背景下运动目标跟踪算法研究

2016-12-02 06:43:14
现代计算机 2016年30期
关键词:梯度方向光流角点

彭 端

(西华大学计算机与软件工程学院,成都 610039)

基于点对矢量场的动态背景下运动目标跟踪算法研究

彭 端

(西华大学计算机与软件工程学院,成都 610039)

动态背景下的运动目标跟踪算法一直是计算机视觉领域的研究热点。针对动态背景下的运动目标跟踪,提出一种基于点对矢量场的运动目标跟踪算法。首先,提取出运动目标身上的点对特征点。然后根据灰度、梯度方向差和点对距离的一致性对运动目标的特征点进行匹配,并根据匹配点对构建点对矢量场。最后,根据点对矢量场实现对运动目标的跟踪。实验结果表明,该算法对动态场景下的运动目标跟踪具有一定的有效性。

目标跟踪;点对;矢量场;动态背景

0 引言

运动目标跟踪是计算机视觉领域的核心课题之一,被广泛的应用于安全监控、人机交互、智能交通、机器人视觉导航、医疗诊断、产品检测等领域[1]。运动目标跟踪,是指给定一段视频序列,在该视频序列的每帧图像中实时地找到感兴趣的运动目标,并评估其运动轨迹。传统的目标跟踪算法主要分为以下几类:基于区域的跟踪、基于活动轮廓的跟踪、基于模型的跟踪和基于特征的跟踪[2]。其中,基于特征的跟踪是以目标的某些不变特征来表示目标,具有较强的稳定性,因此,在很多场景下都具有较好的跟踪特性。在基于特征的跟踪算法中,光流特征包含了运动目标的运动信息,因此在目标跟踪中有着广泛的应用,例如,陈婷婷[3]等人提出的一种基于Lucas-Kanade金字塔光流算法的运动人体特征点跟踪方法,该方法对较大尺度运动的特征点跟踪有很好的效果;张忠义[4]提出的一种结合LK光流和压缩感知的跟踪方法,该方法在解决目标在跟踪过程中出现的外观变化、环境中的遮挡以及光照变化等问题时仍有较好的性能。但是,由于光流法是对整个图像中的像素点计算其光流,计算复杂、耗时大,不能满足实时性的要求。角点,是一类重要的图像点特征,其中包含了图像的重要特征并具有旋转不变性和不随光照条件改变而改变的优点。在一些应用中,使用角点特征进行处理,可以减少参与计算的数据量,提高信息含量,同时又不损失图像的重要灰度信息。因此,角点在运动目标跟踪中也有着广泛的应用,例如,谢红[5]等人提出了一种结合Harris角点和LK光流的运动目标检测算法,具有较好的实时性。但是,由于Harris角点只是运动目标的典型位置上的特征点,因此存在检测目标区域不完整的问题;吴垠[6]等人提出了一种基于尺度不变特征(SIFT)的跟踪方法,该方法在旋转、光照、缩放、小视角变化等方面有较好的鲁棒性。但是,在动态场景下运动目标身上的SIFT特征点匹配很容易发生错误匹配的情况,影响目标跟踪的准确性。

在借鉴光流特征和角点特征的基础上,本文提出了一种基于点对矢量场的运动目标跟踪算法。算法提取运动目标的点对特征点,根据灰度、梯度方向差和点对距离的一致性对运动目标的特征点进行匹配并构建匹配点对的矢量场,最后,根据点对矢量场实现对运动目标的跟踪。

1 点对特征提取

角点是一类重要的图像点特征,但目前关于角点

还没有明确的数学定义,人们普遍认为角点是二维图像亮度变换剧烈的点或图像边缘曲线上曲率的极大值点,这些点保留了图像的重要特征。根据角点这一特性,本文构造了一种新的特征点,即点对。

1.1 基于sobel的梯度幅值和方向

Sobel算子(Sobel Operator)是一个离散性差分算子,通过计算图像亮度函数的灰度之近似值来进行边缘检测。

首先利用Sobel算子求图像梯度幅值,然后设置阈值T获取强梯度带,减少后续的运算开销,一般情况下T为梯度幅值最大值的1/3。Sobel卷积因子包含两组3×3的矩阵,分为x方向和y方向卷积因子,如图1所示:

图1 Sobel算子

在实际应用中,将两个方向的Sobel算子分别与原始图像(设为A)卷积,得到x和y方向的亮度差分近似值[7],计算公式如下:

Gx代表x方向检测的图像灰度值,Gy代表y方向检测的图像灰度值,θ代表梯度方向,G为检测图像的Sobel梯度幅值。

1.2 获取点对

遍历梯度幅值图像G,假设当前点为I(x,y),若在I的邻域范围内(本文取的为5×5到11×11的环状邻域)存在以I为对称中心的两点I1(x1,y1)和I2(x2,y2),并且I1、I2都是位于强梯度带上的点。然后判断I1和I2的内侧灰度值是否与I的灰度值一致即灰度差小于阈值(此处阈值为[-5,5]),并且I1、I2的梯度方向差满足阈值条件(本文的梯度方向差阈值范围是40°到140°),则I1、I2构成I的点对,如图2所示:

图2 点对示意图

获取了I的点对I1、I2后,利用I1与I2的梯度方向差(argdiff)、I1与I2的连线距离(length)、I当前位置的灰度值(gray)构成I的点对特征,记为Scorners1(argdiff,length,gray),然后继续在I的邻域内搜寻符合条件的其他点对,最终构成I的点对特征向量,记为Cfeaturei(Scorners1,Scorners2,…,Scornersj)(j=1,2,…,Ni,Ni为I的点对数)。

图3 第1帧图像的点对特征点

2 矢量场的建立

2.1 点对特征点的匹配

相邻两帧之间,目标的运动是具有连续性的,在获取了目标区域的点对特征点后,通过遍历点对特征点,并在下一帧的邻域内搜索寻找满足灰度、梯度方向差和点对距离的一致性的匹配点,从而实现点对特征点的匹配,具体算法实现如下:

(1)遍历目标区域点对特征点,若当前点对特征点为Inow(xnow,ynow)。

(2)遍历Inow的点对特征向量CfeatureInow。

(3)以Inow为中心确定其在下一帧的搜索范围(本文的搜索邻域大小为15×15)。

(4)若在搜索范围内找到点对特征点Inext(xnext,ynext),遍历其点对特征向量Cfeatureinext,比较Inow当前点对特征

与Inext的当前点对特征是否满足灰度、梯度方向差和点对距离的一致性的,若满足,则记录下Inext的坐标为Inow的当前点对特征的匹配点,并且统计该坐标的匹配次数。

(5)遍历完Inext的点对特征向量后,重复步骤(4)寻找其他的点对特征点,直到邻域搜寻结束。

(6)继续遍历Inow剩余的点对特征,重复步骤(3)(4)(5),直到Inow的点对特征向量遍历结束。

(7)Inow的点对特征向量遍历结束后,继续遍历剩余的目标区域点对特征点,重复步骤(2)-(6),直到点对特征点遍历结束。

至此,实现了目标区域的点对特征点的匹配,最终的匹配结果包含了特征点的每个特征分量的一系列匹配点,以及每个匹配点的匹配次数。

2.2 构建点对矢量场

在假设当前帧中有一点p1(x1,y1),它在下一帧的匹配点为p2(x2,y2),则p1的运动矢量定义为:

其中dx为p1在x方向的运动矢量,dy为p1在y方向上的运动矢量,dx和dy构成了p1的运动矢量MV(dx,dy)。

由前面的点对特征点匹配,得到了特征点的每个特征分量的一系列匹配点,以及每个匹配点的匹配次数,则可以根据匹配点对计算出特征点的运动矢量。首先,计算特征点的每个特征分量的运动矢量,具体算法如下:

(1)若当前特征点的坐标为pnow(xnow,ynow),计算出pnow与当前特征分量的匹配点的运动矢量,根据式(5)和式(6)。

(2)根据pnow与当前特征分量的匹配点的运动矢量,以各匹配点的匹配次数为权重,算出各匹配点运动矢量的平均值作为当前特征分量的运动矢量,各匹配点的匹配次数之和作为当前特征分量的匹配次数。

(3)特征点在经过步骤(1)(2)的处理后,得到每个特征点的各特征分量的运动矢量以及匹配次数,然后,以各特征分量的匹配次数为权重,算出各特征分量的运动矢量的平均值作为当前特征点的运动矢量。

(4)最终得到全部特征点的运动矢量。

得到特征点的运动矢量后,所以特征点的运动矢量构成了矢量场,如图4所示。根据目标区域特征点的矢量场就可以确定目标在下一帧中的位置,从而实现对目标的跟踪。

图4 第1帧图像的矢量场

3 实验结果

本文使用Visual C++编写程序,测试环境为3.20GHz CPU计算机,Windows7操作系统,Visual Studio2012编译环境。为验证本文算法的有效性,本文以SegTrackv2数据库下的soldier数据进行实验,视频图像大小为528×224,并与LK光流法做了对比,实验结果如图5-图7所示。

实验表明,本文算法在解决动态背景下的运动目标跟踪方面具有一定的有效性。

4 结语

本文给出了一种基于点对矢量场的运动目标跟踪算法并利用Visual C++语言编程实现了该算法在真实场景下的跟踪效果,对于解决动态背景下的运动目标跟踪具有一定的实际意义。

从左到右依次为第4帧、第11帧、第23帧、第35帧图5部分视频原始图像序列

图6 LK光流跟踪结果

图7 本文算法跟踪结果

[1]贾艳丽.基于视频图像序列的运动目标检测与跟踪[D].哈尔滨:哈尔滨工程大学,2012:1-3.

[2]凌超,吴薇.视频图像中运动目标跟踪算法研究综述[J].Science&Technology Information,2012(16):6-7.

[3]陈婷婷,阮秋琦.较大尺度运动下的人体特征点跟踪算法研究[J].Journal of Signal Processing,2014,30(7):797-803.

[4]张忠义.基于改进LK光流的目标跟踪算法研究[J].Information Technology,2015(10):127-130.

[5]谢红,原博,解武.LK光流法和三帧差分法的运动目标检测算法[J].Applied Science and Technology,2016,43(3):23-33.

[6]吴垠,李良福,肖樟树,刘侍刚.基于尺度不变特征的光流法目标跟踪技术研究[J].Computer Engineering and Applications,2013,49(15):157-161.

[7]Rafael C.Gonzalez.数字图像处理(第三版)[M].北京:电子工业出版社,2011:101-103.

The Moving Target Tracking Algorithm in Dynamic Background Based on the Vector Field of Point Pair

PENG Duan

(School of Computer and Software Engineering,Xihua University,Chengdu 610039)

Moving object tracking algorithm based on dynamic background has been a hot research topic in the field of computer vision.For moving object tracking in dynamic background,presents a new algorithm of moving object tracking based on the vector field of point pair.Firstly, extracts the point pair of the moving objects.Then,matches the feature points of moving objects according to the consistency of gray scale,gradient direction difference and distance of the point pair.And the vector field is constructed according to the matching points.Finally,tracking of moving objects based on the vector field of point pair.Experimental results show that the proposed algorithm is effective for the moving target tracking in dynamic scenes.

Target Tracking;Point Pair;Vector Field;Dynamic Background

1007-1423(2016)30-0011-04

10.3969/j.issn.1007-1423.2016.30.003

彭端(1990-),男,四川泸州人,硕士研究生,研究方向为数字图像与模式识别

2016-08-18

2016-10-16

猜你喜欢
梯度方向光流角点
利用掩膜和单应矩阵提高LK光流追踪效果
基于机器视觉的钢轨接触疲劳裂纹检测方法
铁道建筑(2021年11期)2021-03-14 10:01:48
基于梯度方向一致性引导的边缘检测研究
科技风(2019年13期)2019-06-11 15:48:29
基于物理学的改善粒子图像测速稳健光流方法研究
基于FAST角点检测算法上对Y型与X型角点的检测
基于光谱上下文特征的多光谱舰船ROI鉴别方法
基于边缘的角点分类和描述算法
电子科技(2016年12期)2016-12-26 02:25:49
基于圆环模板的改进Harris角点检测算法
基于支持向量机的分类器训练研究
融合光流速度场与背景差分的自适应背景更新方法