运动目标识别跟踪方法和系统与流程

文档序号:13737133阅读:217来源:国知局
运动目标识别跟踪方法和系统与流程

本发明涉及视频监控技术领域,具体涉及一种运动目标识别跟踪方法和系统。



背景技术:

随着世界工业化进程不断加快,制造业开始脱离人工进行生产,人们开始大力发展机器人行业,用机器人来代替人类进行各种生产作业和危险活动。科技的不断进步也使机器人业越来越智能,涉及的行业也越来越多,机器人在人类社会发展中扮演着重要的角色。和人类获取外部信息一样,智能机器人在获取外部信息时也需要一双“眼睛”,那就是人工视觉或者叫计算机视觉,它是智能机器人系统中不容缺少的一环。而运动目标识别与跟踪技术是计算机视觉技术中主要研究方向之一,运动目标识别与跟踪就是使用计算机或者嵌入式处理器对图像进行解析,自动将运动目标从待检测的图像序列中识别出来,然后进行定位跟踪,为完成更高一级任务做准备。同时,运动目标检测识别跟踪技术也广泛应用于人脸识别、安全监控、人机交互、现代医学、航空航天、无人机、军事等领域。

目前,运动目标识别跟踪技术已逐渐成熟,但全球计算机视觉产业主要在欧美日等发达国家。我过对计算机视觉的研究起步比较晚,近些年来,我国对于这方面的投入也逐渐加大,正逐步建立完善的科学体系。传统的运动目标识别跟踪技术主要采用集中处理的方式,开发专用的上位机软件完成图像处理过程。这种方式对计算机的要求非常高,如今随着系统功能的不断扩展,即便是高性能计算机也无法满足数据处理的需求。



技术实现要素:

本发明克服现有技术存在的不足,所要解决的技术问题为:提供一种运动目标识别跟踪方法和系统,以实现运动目标的准确识别和持续跟踪。

为了解决上述技术问题,本发明采用的技术方案为:一种运动目标的识别跟踪方法,包括以下步骤:

s1、目标识别之前采集一帧图像作为背景图像进行存储;

s2、实时采集实时图像;

s3、对背景图像和实时图像分别进行灰度化、均衡化以及阈值化处理,得到处理后的背景阈值图像和实时阈值图像;

s4、将实时阈值图像与背景阈值图像进行差分运算,得到运动目标所在区域,并将差分运算结果再次进行均衡化、阈值化操作,然后对目标进行边缘检测和定位,得到运动目标的位置信息,并根据运动目标的位置信息在实时图像中截取出运动目标的彩色图像特征;

s5、根据meanshift目标跟踪算法,计算得到目标模型的meanshift向量,所述meanshift向量为目标由初始位置向下一位置移动的向量;

s6、重复步骤s2~s5,不断迭代计算meanshift向量,最终得到运动目标的真实位置,以对运动目标进行连续的实时跟踪定位。

所述步骤s4中,所述灰度化的具体方法为:通过imaqcastimagevi算法对图像进行灰度化处理得到灰度图像;所述均衡化的具体方法为:首先统计出灰度图像中灰度值为f的像素点个数nf,然后计算f出现的概率p(f),再根据公式计算出累计直方图,并根据该累计直方图分布求出原灰度图像中点(x,y)的灰度值f(x,y)到均衡化处理后点(x,y)的灰度值f1(x,y)的灰度映射关系,最后按照公式对原图像各像素点的灰度值进行替换,完成灰度映射,即可对原图像均衡化;g表示灰度值小于等于f的概率。l-1代表灰度等级最大值:255;n代表一帧画面中的像素点个数;所述阈值化的具体方法为:通过ostu算法完成阈值化操作,得到阈值图像。

所述步骤s4中,所述对目标进行边缘检测和定位的具体方法为:对运动目标所在区域内每一像素点的灰度值进行模板卷积运算,得到其灰度值的梯度,并根据其灰度值梯度找到图像目标的边沿处,从而得到运动的上下左右四个边的线性方程,并以此计算出运动目标所在区域的四个顶点;最后,将运动目标所在区域的四个顶点转化成极大矩形的四个顶点,得到运动目标的坐标信息,然后将目标像素子集从图像像素集合中提取出来,获取运动目标像素集合。

所述步骤s5中,所述根据meanshift目标跟踪算法对运动目标进行实时跟踪定位的具体方法为:分别计算目标区域和候选区域内像素的特征值概率,得到关于目标模型和候选模型的描述,然后利用相似函数度量初始帧目标模型和当前帧的候选模型的相似性,选择使相似函数最大的候选模型并得到关于目标模型的meanshift向量,通过不断迭代计算meanshift向量,得到目标的真实位置,达到跟踪的目的。

本发明还提供了一种运动目标识别跟踪系统,包括图像采集模块、数据存储模块、数据处理模块、数据传输模块和上位机;所述图像采集模块的输出端与所述数据存储模块连接,所述数据处理模块的输入端与所述数据存储模块连接,所述数据处理模块通过所述数据传输模块与所述上位机双向连接;所述图像采集模块用于采集图像并存储到数据存储模块,以及发送到数据处理模块进行处理;所述数据传输模块用于将数据处理模块的处理结果发送到上位机;所述上位机用于向所述数据处理模块发送操作命令,以及显示系统状态信息和图像处理结果;所述数据处理模块为嵌入式芯片xilinxzynq-7010,所述数据处理模块用于执行以下程序:

从所述数据存储模块载入背景图像数据和实时图像数据;

对载入背景图像数据和实时图像数据分别进行灰度化、均衡化以及阈值化操作,分别得到处理后背景阈值图像和实时阈值图像;

将实时阈值图像与背景阈值图像进行差分运算,得到运动目标所在区域,并将运算结果再次进行均衡化、阈值化操作,然后对运动目标进行边缘检测和定位,得到运动目标的位置信息,并根据运动目标的位置信息在实时图像中截取出运动目标的彩色图像特征;

得到运动目标的位置信息以及在实时图像中截取到运动目标的彩色图像特征后,根据meanshift目标跟踪算法对运动目标进行实时跟踪定位。

所述对载入的图像进行灰度化、均衡化以及阈值化操作具体是指:通过imaqcastimagevi算法对载入的图像进行灰度化处理得到灰度图像;统计出灰度图像中灰度值为f的像素点个数nf,然后计算f出现的概率p(f),再根据公式计算出累计直方图,并根据该累计直方图分布求出原灰度图像中点(x,y)的灰度值f(x,y)到均衡化处理后点(x,y)的灰度值f1(x,y)的灰度映射关系,最后按照公式对原图像各像素点的灰度值进行替换,完成灰度映射,即可对原图像均衡化;g表示灰度值小于等于f的概率。l-1代表灰度等级最大值:255;n代表一帧画面中的像素点个数;通过ostu算法完成阈值化操作,得到阈值图像。

所述对运动目标进行边缘检测和定位是通过sobel边缘检测算法实现的,具体过程为:对运动目标所在区域内每一像素点的灰度值进行模板卷积运算,得到其灰度值的梯度,并根据其灰度值梯度找到图像目标的边沿处,从而得到运动的上下左右四个边的线性方程,并以此计算出运动目标所在区域的四个顶点;最后,将运动目标所在区域的四个顶点转化成极大矩形的四个顶点,得到运动目标的坐标信息,然后将目标像素子集从图像像素集合中提取出来,获取运动目标像素集合。

所述根据meanshift目标跟踪算法对运动目标进行实时跟踪定位具体是指:分别计算目标区域和候选区域内像素的特征值概率,得到关于目标模型和候选模型的描述,然后利用相似函数度量初始帧目标模型和当前帧的候选模型的相似性,选择使相似函数最大的候选模型并得到关于目标模型的meanshift向量,通过不断迭代计算meanshift向量,得到目标的真实位置,达到跟踪的目的。

本发明与现有技术相比具有以下有益效果:本发明的运动目标识别跟踪系统基于嵌入式芯片xilinxzynq-7010设计,采用了结构化设计思想,实现了在硬件上完成数字信号处理操作,极大地节省了计算机资源。同时,运动目标识别系统能准确识别运动目标并且持续跟踪。

附图说明

图1为本发明实施例提供了一种运动目标的识别跟踪方法的流程示意图;

图2为本发明实施例中均衡化流程图;

图3为本发明实施例提出的一种运动目标的识别跟踪系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种运动目标的识别跟踪方法,包括以下步骤:

s1、通过图像采集单元采集一帧图像作为背景图像,并进行存储。

s2、通过图像采集单元实时采集实时图像。

s3、对背景图像和实时图像分别进行灰度化、均衡化以及阈值化处理,得到处理后的背景阈值图像和实时阈值图像。

其中,所述灰度化的具体方法为:通过imaqcastimagevi算法对图像进行灰度化处理得到灰度图像;如图2所示,所述均衡化的具体方法为:首先统计出灰度图像中灰度值为f的像素点个数nf,然后计算f出现的概率p(f),再根据公式计算出累计直方图,并根据该累计直方图分布求出原灰度图像中点(x,y)的灰度值f(x,y)到均衡化处理后点(x,y)的灰度值f1(x,y)的灰度映射关系,最后按照公式对原图像各像素点的灰度值进行替换,完成灰度映射,即可对原图像均衡化;g表示灰度值小于等于f的概率。l-1代表灰度等级最大值:255;n代表一帧画面中的像素点个数;所述阈值化的具体方法为:通过ostu算法完成阈值化操作,得到阈值图像。

由于灰度数字图像的每一个像素点只有一种颜色值,所以灰度图像的数据量小,更容易完成设计和实现算法,本发明实施例应用imaqcastimagevi算法进行灰度化处理。由于灰度图像中灰度值较为集中的像素点的灰度值差异比较小,导致图像质量差,因此,需要在不改变图像特征的情况下,放大原灰度图像中灰度值较为集中的像素点的灰度值差异,所以本发明实施例采用均衡化算法来增强动态变化偏小的灰度差,此方法通过把待处理灰度图像的灰度值变化均匀分布在整个灰度范围内来增强灰度值的动态范围。通过otsu算法完成阈值化操作,得到阈值图像,为图像的进一步处理减少了计算量。

s4、将实时阈值图像与背景阈值图像进行差分运算,得到运动目标所在区域,并将差分运算结果再次进行均衡化、阈值化操作,然后对目标进行边缘检测和定位,得到运动目标的位置信息,并根据运动目标的位置信息在实时图像中截取出运动目标的彩色图像特征。

其中,所述均衡化和阈值化操作与上述s3中的方法相同,所述对目标进行边缘检测和定位的具体方法可以为:采用sobel边缘检测法,对运动目标所在区域内每一像素点的灰度值进行模板卷积运算,得到其灰度值的梯度,并根据其灰度值梯度找到图像目标的边沿处,从而得到运动的上下左右四个边的线性方程,并以此计算出运动目标所在区域的四个顶点;最后,将运动目标所在区域的四个顶点转化成极大矩形的四个顶点,得到运动目标的坐标信息,然后将目标像素子集从图像像素集合中提取出来,获取运动目标像素集合。

其中,sobel边缘检测法计算时首先采取模板卷积的方式,将图像中的所有像素值进行模板卷积运算得到新的像素值。设a代表原始图像中一点的像素灰度值,其中代表经横向运算的梯度值,为经纵向模板运算的像素梯度值,其公式如(1)所示:

;(1)

图像中某一像素点的梯度大小由公式(2)计算得出:

;(2)

然后用公式(3)计算梯度方向:

;(3)

g值比较大的地方灰度值变化快,则为目标图像中的边沿处,θ的绝对值接近0度且g值较大的像素点为纵向边缘,θ的绝对值接近90度且g值较大的像素点为横向边缘。因此,通过上述模板卷积的方法对图像进行计算,得到的g值可以对目标边缘进行检测和定位。

本发明实施例运用sobel算法对运动目标进行边缘检测,它是一种离散性差分算法,用来运算图像亮度函数的梯度矢量。计算时采取模板卷积的方式,使得运动目标的边缘得到增强,然后再计算其梯度,得到目标的上下左右四个边的线性方程,并以此计算出目标所在区域的四个顶点。为了能够定位到目标的绝大多数信息并且提高后续跟踪的精确度,在对目标进行定位时总寻找目标所在的极大矩形区域,所以在目标定位时还需要将边缘检测计算出的四个定点转化成极大矩形的四个顶点,这样就得到了运动目标的坐标信息,之后便可轻松将目标像素子集从图像像素集合中提取出来,获取运动目标像素集合。

s5、根据meanshift目标跟踪算法,计算得到目标模型的meanshift向量,所述meanshift向量为目标由初始位置向下一位置移动的向量。

其中,根据meanshift目标跟踪算法对运动目标进行实时跟踪定位的具体方法为:分别计算目标区域和候选区域内像素的特征值概率,得到关于目标模型和候选模型的描述,然后利用相似函数度量初始帧目标模型和当前帧的候选模型的相似性,选择使相似函数最大的候选模型并得到关于目标模型的meanshift向量,通过不断迭代计算meanshift向量,得到目标的真实位置,达到跟踪的目的。

其中,目标区域为上一帧画面目标所在区域。候选区域是这一帧画面目标可能在的区域,候选区域是通过目标区域的中心为基础得到区域,且不止一个,然后通过相似性函数度量哪个候选区域与目标区域相似度最大,相似度最大的区域则为当前帧目标所在区域。当前帧目标所在区域有了之后,就可以知道目标移动的方向的距离了。迭代计算过程就是不断通过相似性函数度量目标区域和候选区域相似度,找出与目标区域相似度最大的候选区域的过程,由于候选区域有很多,所以需要计算多次。快速收敛指的是这个算法能很快计算出相似性函数的最大值,即很快能找到与目标区域相似度最高的候选区域,则为当前帧中目标所在区域。在目标识别过程中,系统复制了含有运动目标的图像,成为目标跟踪的第一帧,同时,也确定了运动目标的初始位置。由于均值漂移算法的快速收敛性,通过不断迭代计算meanshift向量,算法最终将收敛到目标的真实位置,达到跟踪的目的。系统在执行运动目标跟踪操作时先载入运动目标图像及其初始位置,然后执行目标跟踪算法,对目标的连续运动进行跟踪并输出目标的位置,直到系统停机。

s6、重复步骤s2~s5,不断迭代计算meanshift向量,最终得到运动目标的真实位置,以对运动目标进行连续的实时跟踪定位。

此外,本发明实施例还提供了一种运动目标识别跟踪系统,如图3所示,包括图像采集模块、数据存储模块、数据处理模块、数据传输模块和上位机;所述图像采集模块的输出端与所述数据存储模块连接,所述数据处理模块的输入端与所述数据存储模块连接,所述数据处理模块通过所述数据传输模块与所述上位机双向连接;所述图像采集模块用于采集图像并存储到数据存储模块,以及发送到数据处理模块进行处理;所述数据传输模块用于将数据处理模块的处理结果发送到上位机;所述上位机用于向所述数据处理模块发送操作命令,以及显示系统状态信息和图像处理结果;所述数据处理模块为嵌入式芯片xilinxzynq-7010,所述数据处理模块用于执行以下程序:

从所述数据存储模块载入背景图像数据和实时图像数据;

对载入背景图像数据和实时图像数据分别进行灰度化、均衡化以及阈值化操作,分别得到处理后背景阈值图像和实时阈值图像;

将实时阈值图像与背景阈值图像进行差分运算,得到运动目标所在区域,并将运算结果再次进行均衡化、阈值化操作,然后对运动目标进行边缘检测和定位,得到运动目标的位置信息,并根据运动目标的位置信息在实时图像中截取出运动目标的彩色图像特征;

得到运动目标的位置信息以及在实时图像中截取到运动目标的彩色图像特征后,根据meanshift目标跟踪算法对运动目标进行实时跟踪定位。

其中,本发明实施例的一种运动目标识别跟踪系统,设备一开机便进入初始化状态,完成设备各种初始化操作,然后进入图像数据载入状态,数据载入完成后进入预处理状态。在预处理状态中完成对采集图像的灰度化、均衡化以及阈值化操作,得到处理后的阈值图像。然后进入目标识别状态,此状态中首先进行背景阈值图像的获取,然后进行实时阈值图像的获取,再将实时阈值图像与背景阈值图像进行差分运算,并将结果再次进行均衡化、阈值化操作,然后对目标进行边缘检测和定位,得到目标的位置信息,然后根据位置信息在实时图像中截取出运动目标的彩色图像特征。最后进入目标跟踪状态,此状态中将目标识别状态获取的运动目标彩色图像特征和位置信息转入目标跟踪算法中,利用meanshift算法对目标进行实时跟踪定位,最后再进入图像数据载入状态,如此重复。其中,数据传输模块用于执行数据处理模块与上位机之间的数据传输,一方面,它可以将上位机发送的系统命令传输给数据处理模块,另一方面,它可以将数据处理模块在各个步骤中的处理结果发送给上位机进行显示或存储。在上位机中,可以观察系统的运行状态,也可以发送相应的系统命令。同时,也可以实时的观测usb摄像头采集的当前环境图像以及经过目标识别与跟踪算法后的结果图像,还可以观察各个子状态的处理结果,如差分图像、阈值图像等。

进一步地,所述对载入的图像进行灰度化、均衡化以及阈值化操作具体是指:

通过imaqcastimagevi算法对载入的图像进行灰度化处理得到灰度图像;

统计出灰度图像中灰度值为f的像素点个数nf,然后计算f出现的概率p(f),再根据公式计算出累计直方图,并根据该累计直方图分布求出原灰度图像中点(x,y)的灰度值f(x,y)到均衡化处理后点(x,y)的灰度值f1(x,y)的灰度映射关系,最后按照公式对原图像各像素点的灰度值进行替换,完成灰度映射,即可对原图像均衡化;g表示灰度值小于等于f的概率。l-1代表灰度等级最大值:255;n代表一帧画面中的像素点个数;

阈值化处理:通过ostu算法完成阈值化操作,得到阈值图像。

进一步地,所述对运动目标进行边缘检测和定位是通过sobel边缘检测算法实现的,具体过程为:对运动目标所在区域内每一像素点的灰度值进行模板卷积运算,得到其灰度值的梯度,并根据其灰度值梯度找到图像目标的边沿处,从而得到运动的上下左右四个边的线性方程,并以此计算出运动目标所在区域的四个顶点;最后,将运动目标所在区域的四个顶点转化成极大矩形的四个顶点,得到运动目标的坐标信息,然后将目标像素子集从图像像素集合中提取出来,获取运动目标像素集合。

进一步地,所述根据meanshift目标跟踪算法对运动目标进行实时跟踪定位具体是指:分别计算目标区域和候选区域内像素的特征值概率,得到关于目标模型和候选模型的描述,然后利用相似函数度量初始帧目标模型和当前帧的候选模型的相似性,选择使相似函数最大的候选模型并得到关于目标模型的meanshift向量,通过不断迭代计算meanshift向量,得到目标的真实位置,达到跟踪的目的。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1