文档库 最新最全的文档下载
当前位置:文档库 › MeanShift算法和粒子滤波相结合的运动目标视频跟踪技术_缪鑫

MeanShift算法和粒子滤波相结合的运动目标视频跟踪技术_缪鑫

MeanShift算法和粒子滤波相结合的运动目标视频跟踪技术_缪鑫
MeanShift算法和粒子滤波相结合的运动目标视频跟踪技术_缪鑫

66

Mean Shift 算法和粒子滤波相结合的运动目标视频跟踪技术

(中国电子科技集团公司第二十八研究所,江苏南京210007)

摘要:基于帧间视频图像的运动目标跟踪技术,已经成为计算机视觉领域的一个研究热点,在很多领域被越来越广泛使

用,特别在航空航天、医药卫生、国防建设以及国民经济的实用性逐渐被人们重视,具有良好的发展前景。文章结合Mean Shift 算法、粒子滤波算法两种算法的优缺点,提出了将Mean Shift 算法与粒子滤波算法相结合,利用Mean Shift 算法的聚类作用,将粒子样本收敛在更接近目标的真实位置的区域,满足鲁棒性、实时性和抗遮挡的要求,能够应用于高实时性的视频图像处理领域。关键词:目标视频跟踪;遮挡;Mean Shift 算法;粒子滤波算法中图分类号:TP274.2文献标识码:A 文章编号:1673-1131(2015)01-0066-02运动目标视频跟踪技术,目的是用计算机代替人,对视频图像中的目标物体进行判别和感知,该项技术在很多领域被越来越广泛的使用,特别在航空航天、医药卫生、国防建设以及国民经济的实用性逐渐被人们重视,具有良好的发展前景。

目标跟踪是很多计算机视觉应用的关键技术,好的算法必须要解决目标在遮挡情况下的跟踪问题。为解决目标遮挡问题,大致可有如下四类算法:

(1)基于目标特征匹配算法。(2)基于动态贝叶斯网络模型来精确地对遮挡过程建模。(3)基于颜色分布的粒子滤波。(4)多子范本匹配方法[1]。在目标的变形、旋转的情况下,Mean Shift 算法的表现较好,因其利用梯度优化的方法,实现快速的定位目标,而能够实时地跟踪非刚性目标。但是在目标被严重遮挡的特殊情况下,如:多个目标被同一物体遮挡,单个目标对应状态可能不是局部极值点,逐渐丢失目标,达不到目标跟踪的要求。

而粒子滤波算法,通常可用来解决非线性问题,采用多个粒子,对跟踪的不确定性有了判别,从而保证算法的鲁棒性。但该算法由于粒子数量多,带来了较大的计算量,使得实时性下降。

为了保证检测的准确性,又节省计算时间,将Mean Shift 算法和粒子滤波相结合的跟踪算法,满足鲁棒性、实时性和抗遮挡的要求。

1算法原理

利用Mean Shift 算法的聚类作用,通过迭代有限次后,使得粒子样本就可以收敛到密度梯度的最大值,从而对于目标

状态,让每个粒子都进行很有效地描述。

通过增大样本的数量,能够使得粒子滤波提高了鲁棒性,但因此却造成了运算量的增大,降低了实时性,这限制了其在实时性要求高的系统中的使用。

把Mean Shift 算法嵌入到粒子滤波器中,利用其聚类特性,可以实现用更少的粒子进行有效描述的能力,同时也降低了运算量,使得粒子滤波算法大幅提高了处理的实时性。

图1描述了Mean Shift 算法和粒子滤波相结合的算法原理。

图1嵌入Mean Shift 算法的粒子滤波器原理图4结语

物联网被称为继计算机、互联网之后,世界信息产业的第三次浪潮,目前以一种新兴产业而热情起步。物联网将引导信息流和物质流的全面融合,信息技术将和第一、二、三产业全面融合,造成经济和社会新的巨大发展空间,由此会激发出创新活动,产生突破。从技术角度讲,我们应抓好物联网技术的五大核心产业:传感器产业、通讯网络产业、云数据产业、计算机产业和自动控制产业,保证物联网能够安全、可靠、公正地为全局服务。参考文献:

[1]赵志军,沈强,唐晖,方旭明.物联网架构和智能信息处理理论与关键技术[J ].计算机科学,2011,38(8):1-8[2]Rubin,Jenny .Overview of Design,Benefits&Security [J ].EPCglobal .2009,183(6):349-351

[3]平青.基于物联网技术的城市照明控制系统[D ].苏州大学,2010

[4]龚华明,阴躲芬.物联网三层体系架构及其关键技术浅析[J ].科技广场,2013(2):78-80

[5]

任军.基于LDAP 的目录服务综述[J ]计算机应用研究,2005,5(1):79-82

作者简介:王丽红(1983-),女,内蒙古赤峰人,硕士,讲师,研究方向为算法研究、网络安全。

67

图1中有三张图,最下方的为重采样步聚,这里用了很少的粒子。权重大的粒子衍生更多的粒子,粒子中权重少的被淘汰。经动态模型传播后,改变了所有粒子的信息状态,包括速度和位置等,接着用Mean Shift 算法对粒子进行收敛。

图1中的中间图表示为:在经过动态模型传播后,对每个粒子进行收敛,使粒子聚集到几个不同区域,然后从不同的方向向目标区域进行移动。

最上方的图是观测步骤,对所在粒子权重进行更新。框图最上面E [x ]就是目标位置确定。

若当前帧某个粒子坐标位置为y 0,计算粒子候选目标模型为p (y 0)。在p (y 0)处将Bhattacharyya

系数泰勒展开:

(1)

其中,

(2)

变换式(1)

得到:

图2基于粒子滤波算法加入MeanShift 算法的跟踪算法结构框图

3实验结果与分析

为实现对运动目标的跟踪,验证算法的实际效果,设计了

软件进行验证。

图3~图5是使用该软件的2人全遮挡的目标跟踪情况显

示。

图3

载入视频后未圈出跟踪区域

图4

两人相遇遮挡时跟踪效果

图5两人分离后跟踪效果

如图3是启动一段视屏后的画面,图中在复杂环境下有两个人相对而行;如图3-5所示:当两人相遇,目标受到遮挡时,算法依旧能够很好地跟踪目标;当两人分离,目标重新出

现后,仍然能够很好地跟踪目标。图中的“一帧处理时间”都在0.003s 左右,完全符合视频处理的时间要求。实验表明,该算法对于视屏图像在全遮挡情况下的单个目标跟踪具有很高的实时性及稳定性。

4结语

Mean Shift 算法和粒子滤波相结合,实现了高实时性、高鲁棒性和抗遮挡能力强的能力。实验证明,在目标被全遮挡的情况下,新算法仍然能够应用于高实时性的视频图像处理领域。参考文献:

[1]王展青,凡友福,张桂林.跟踪遮挡目标的一种鲁棒算法[J ].

计算机工程与应用,2007(27)

信息通信

缪鑫:Mean Shift 算法和粒子滤波相结合的运动目标视频跟踪技术

传统meanshift跟踪算法流程

传统meanshift 跟踪算法实现流程 一、 Meanshift 算法流程图 视频流 手动选定跟踪目标 提取目标灰度加权直方图特征hist1 提取候选目 标区域 提取候选目标的灰度加权直方图特征hist2 均值漂移得到均值漂移向量及新的候选区域位 置 是否满足迭代结束条件 第二帧之后图像 第一帧图像 得到当前帧目标位置 是 否 图1 meanshift 流程图 二、 各模块概述 1、 手动选定目标区域:手动框出目标区域,并把该区域提取出来作为目标模板 区域; 2、 提取目标灰度加权直方图特征hist1; 2.1构造距离权值矩阵m_wei ; 使用Epanechnikov 核函数构造距离加权直方图矩阵:设目标区域中像素

点(,)i j 到该区域中心的距离为dist ,则 _(,)1/m wei i j dist h =-,这里h 是核函数窗宽,h 为目标区域中离区域中心 最远的像素点到中心的距离:若所选目标区域为矩形区域,区域的半宽度为 x h ,半高度为y h ,则22()x y h sqrt h h =+; 2.2得到归一化系数C ; 1/C M =,其中M 是m_wei 中所有元素值之和; 2.3计算目标的加权直方图特征向量hist1; 若图像为彩色图像,则把图像的,,r g b 分量归一化到[0,15]之间(分量值与16取余,余数即为归化后的分量值),然后为不同的分量值赋予不同的权值得到每个像素点的特征值_q temp : _256*16*q t e m p r g b = ++ 对于像素点(,)i j ,设其特征值为_q temp ,则另 1(_1)1(_1)_(,)hist q temp hist q temp m wei i j +=++; 若图像是灰度图像,则直接利用每个像素的灰度值作为每个像素的特征值,然后统计得到hist1; 把一维数组hist1归一化:11*hist hist C =;归一化后的数组hist1即为目标的加权直方图特征向量; 3、 从第二帧开始的图像,通过迭代的方式找到该帧图像中目标的位置; 3.1提取候选目标区域:以上一帧图像中目标的位置或上一次迭代得到的目标位置为中心提取出目标模板区域大小的区域; 3.2提取候选目标区域的加权直方图特征向量hist2:提取方法同步骤2.3; 计算候选目标区域的特征值矩阵_1q temp : _1 (,)256*(,) 16*(,)q t e m p i j r i j g i j b i j =++; 3.3均值漂移到新的目标区域; 3.3.1计算候选目标区域相对于目标区域的均值漂移权值w : ( 1()/2()),2(2w s q r t h i s t i h i s t i h i s t =≠ 2() 0h i s t i =时,()0;w i = 3.3.2 根据每个像素点所占的均值漂移权值计算漂移矩阵xw : 11(_1(,)1)*[(1),(2)]a b i j xw xw w q temp i j i y j y ===++--∑∑ 3.3.2得到权值归一化后的均值漂移向量Y :

视频目标跟踪报告

专业硕士研究生实践训练环节视频运动目标检测与跟踪 学院:信息科学与工程学院 专业: 姓名: 学号: 授课老师: 日期:2017

目录 1 课程设计的目的和意义 (1) 1.1 课程设计的目的 (1) 1.2 课程设计的意义 (1) 2 系统简介及说明 (2) 3 设计内容和理论依据 (2) 3.1 基于Mean Shift的跟踪算法 (3) 3.1.1 RGB颜色直方图 (3) 3.1.2 基于颜色和纹理特征的Mean Shift跟踪算法 (3) 3.2 基于颜色特征的粒子滤波跟踪算法 (4) 3.2.1 贝叶斯重要性采样 (4) 3.2.2 序列重要性采样 (5) 3.2.3 粒子退化现象和重采样 (6) 3.2.4 基本粒子滤波算法 (6) 4 流程图 (7) 4.1 Mean Shift跟踪算法流程图 (7) 4.2 粒子滤波跟踪算法流程图 (7) 5 实验结果及分析讨论 (8) 5.1 基于Mean Shift的跟踪算法仿真结果 (8) 5.2 基于颜色特征的粒子滤波算法仿真结果 (9) 6 思考题 (10) 7 课程设计总结 (10) 8 参考文献 (10)

1 课程设计的目的和意义 1.1 课程设计的目的 随着计算机技术的飞速发展、信息智能化时代的到来,安防、交通、军事等领域对于智能视频监控系统的需求量逐渐增大。视频运动目标跟踪是计算机视觉领域的一个研究热点,它融合了人工智能、图像处理、模式识别以及计算机领域的其他先进知识和技术。在军事视觉制导、安全监测、交通管理、医疗诊断以及气象分析等许多方面都有广泛应用。同时,随着视频摄像机的普及化,视频跟踪有着广泛的应用前景,对城市安全起到了防范作用,并且和我们的生活息息相关。 从目前国内外研究的成果来看,对于运动目标的跟踪算法和技术主要是针对于特定环境提出的特定方案,大多数的跟踪系统不能适应于场景比较复杂且运动目标多变的场景。并且在视频图像中目标的遮挡、光照对颜色的影响、柔性刚体的轮廓变化等将严重影响目标的检测与跟踪。因此如何实现一个具有鲁棒性、实时性的视觉跟踪系统仍然是视觉跟踪技术的主要研究方向。 Mean Shift算法的主要优点体现在:计算简单、便于实现;对目标跟踪中出现的变形和旋转、部分遮挡等外界影响,具有较强的鲁棒性。缺点在于:算法不能适应光线变化等外界环境的影响;当目标尺度发生变化时,算法性能受到较大的影响。粒子滤波适用于非线性、非高斯系统,在诸如机动目标跟踪、状态监视、故障检测及计算机视觉等领域有其独到优势,并得到了广泛研究。但粒子滤波算法本身还不够成熟,存在粒子匮乏、收敛性等问题。因为跟踪机动目标需要对目标的运动特性有一定了解,因此,目标跟踪的难点之一在于目标模型的建立及其与跟踪方法的匹配上,这是提高跟踪性能的关键。 1.2 课程设计的意义 图像处理(image processing),用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。图像处理技术的主要内容包括图像压缩,增强和复原,匹配、描述和识别3个部分。常见的处理有图像数字化、图像编码、图像增强、图像复原、图像分割和图像分析等。图像处理一般指数字图像处理。虽然某些处理也可以用光学方法或模拟技术实现,但它们远不及数字图像处理那样灵活和方便,因而数字图像处理成为图像处理的主要方面。 随着计算机的发展,数字图像处理已成为电子信息、通信、计算机、自动化、信号处理等专业的重要课程。数字图像处理课程设计是在学习完数字图像处理的相关理论后,进行的综合性训练课程。其目的是进一步巩固数字图像的基本概念、理论、分析方法和实现方法。 1

动态视频目标检测和跟踪技术(入门)

动态视频目标检测和跟踪技术 传统电视监控技术只能达到“千里眼”的作用,把远程的目标图像(原始数据)传送到监控中心,由监控人员根据目视到的视频图像对现场情况做出判断。智能化视频监控的目的是将视频原始数据转化为足够量的可供监控人员决策的“有用信息”,让监控人员及时全面地了解所发生的事件:“什么地方”,“什么时间”,“什么人”,“在做什么”。将“原始数据”转化为“有用信息”的技术中,目标检测与跟踪技术的目的是要解决“什么地方”和“什么时间”的问题。目标识别主要解决“什么人”或“什么东西”的问题。行为模式分析主要解决“在做什么”的问题。动态视频目标检测技术是智能化视频分析的基础。 本文将目前几种常用的动态视频目标检测方法简介如下: 背景减除背景减除(Background Subtraction)方法是目前运动检测中最常用的一种方法,它是利用当前图像与背景图像的差分来检测出运动目标的一种技术。它一般能够提供相对来说比较全面的运动目标的特征数据,但对于动态场景的变化,如光线照射情况和外来无关事件的干扰等也特别敏感。实际上,背景的建模是背景减除方法的技术关键。最简单的背景模型是时间平均图像,即利用同一场景在一个时段的平均图像作为该场景的背景模型。由于该模型是固定的,一旦建立之后,对于该场景图像所发生的任何变化都比较敏感,比如阳光照射方向,影子,树叶随风摇动等。大部分的研究人员目前都致力于开发更加实用的背景模型,以期减少动态场景变化对于运动目标检测效果的影响。 时间差分时间差分(Temporal Difference 又称相邻帧差)方法充分利用了视频图像的特征,从连续得到的视频流中提取所需要的动态目标信息。在一般情况下采集的视频图像,若仔细对比相邻两帧,可以发现其中大部分的背景像素均保持不变。只有在有前景移动目标的部分相邻帧的像素差异比较大。时间差分方法就是利用相邻帧图像的相减来提取出前景移动目标的信息的。让我们来考虑安装固定摄像头所获取的视频。我们介绍利用连续的图像序列中两个或三个相邻帧之间的时间差分,并且用阈值来提取出视频图像中的运动目标的方法。我们采用三帧差分的方法,即当某一个像素在连续三帧视频图像上均有相

基于meanshift的目标跟踪算法——完整版

基于Mean Shift的目标跟踪算法研究 指导教师:

摘要:该文把Itti视觉注意力模型融入到Mean Shift跟踪方法,提出了一种基于视觉显著图的Mean Shift跟踪方法。首先利用Itti视觉注意力模型,提取多种特征,得到显著图,在此基础上建立目标模型的直方图,然后运用Mean Shift方法进行跟踪。实验证明,该方法可适用于复杂背景目标的跟踪,跟踪结果稳定。 关键词:显著图目标跟踪Mean Shift Mean Shift Tracking Based on Saliency Map Abstract:In this paper, an improved Mean Shift tracking algorithm based on saliency map is proposed. Firstly, Itti visual attention model is used to extract multiple features, then to generate a saliency map,The histogram of the target based on the saliency map, can have a better description of objectives, and then use Mean Shift algorithm to tracking. Experimental results show that improved Mean Shift algorithm is able to be applied in complex background to tracking target and tracking results are stability. 1 引言 Mean Shift方法采用核概率密度来描述目标的特征,然后利用Mean Shift搜寻目标位置。这种方法具有很高的稳定行,能够适应目标的形状、大小的连续变化,而且计算速度很快,抗干扰能力强,能够保证系统的实时性和稳定性[1]。近年来在目标跟踪领域得到了广泛应用[2-3]。但是,核函数直方图对目标特征的描述比较弱,在目标周围存在与目标颜色分布相似的物体时,跟踪算法容易跟丢目标。目前对目标特征描述的改进只限于选择单一的特征,如文献[4]通过选择跟踪区域中表示目标主要特征的Harris点建立目标模型;文献[5]将初始帧的目标模型和前一帧的模型即两者的直方图分布都考虑进来,建立混合模型;文献[6]提出了以代表图像的梯度方向信息的方向直方图为目标模型;文献[7-8]提出二阶直方图,是对颜色直方图一种改进,是以颜色直方图为基础,颜色直方图只包含了颜色分布信息,二阶直方图在包含颜色信息的前提下包含了像素的均值向量和协方差。文献[9]提出目标中心加权距离,为离目标中心近的点赋予较大的权值,离目标中心远的点赋予较小的权值。文献[4-9]都是关注于目标和目标的某一种特征。但是使用单一特征的目标模型不能适应光线及背景的变化,而且当有遮挡和相似物体靠近时,容易丢失目标;若只是考虑改进目标模型,不考虑减弱背景的干扰,得到的效果毕竟是有限的。 针对上述问题,文本结合Itti 提出的视觉注意模型[5],将自底向上的视觉注意机制引入到Mean Shift跟踪中,提出了基于视觉显著图的Mean Shift跟踪方法。此方法在显著图基础上建立目标模型,由此得到的目标模型是用多种特征来描述的,同时可以降低背景对目标的干扰。 2 基于视觉显著图的Mean Shift跟踪方法

【CN109919979A】一种视频实时目标跟踪的方法【专利】

(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201910174796.5 (22)申请日 2019.03.08 (71)申请人 广州二元科技有限公司 地址 510000 广东省广州市南沙区银锋一 街1号银锋广场1栋1608房 (72)发明人 容李庆 关毅 袁亚荣  (74)专利代理机构 广州凯东知识产权代理有限 公司 44259 代理人 罗丹 (51)Int.Cl. G06T 7/246(2017.01) G06K 9/00(2006.01) G06K 9/32(2006.01) (54)发明名称 一种视频实时目标跟踪的方法 (57)摘要 本发明涉及一种视频实时目标跟踪的方法, 采用目标检测与目标跟踪相结合的技术,极大地 降低视频实时目标检测的计算量,由于无需对每 一帧视频图像进行遍历检测,因此极大地提高了 视频实时目标检测的计算效率,可以达到实时视 频的帧率。本发明提供的视频实时目标跟踪的方 法使用神经网络对目标检测器检测出来的目标 框在下一帧图像中的位置进行跟踪回归,极大地 降低了视频实时目标检测的计算量,无需对每一 帧图像都采用检测器检测目标,采用检测与跟踪 相结合的技术应用于视频实时目标检测中,无需 对输入图像进行复杂的降噪等处理,对目标检测 器也无特殊需求,可以大大提升检测的速率,本 发明适用性广,可以在低端的嵌入式设备中保证 足够的计算效率。权利要求书1页 说明书2页 附图1页CN 109919979 A 2019.06.21 C N 109919979 A

权 利 要 求 书1/1页CN 109919979 A 1.一种视频实时目标跟踪的方法,其特征在于包括以下步骤: 1)、通过硬件设备摄像头采集实时的视频作为输入,或者直接输入包含多帧的视频文件; 2)、分解视频,以单帧为单位对视频进行分解; 3)、将不同的数字图像矩阵格式转化为目标检测器支持的数字图像矩阵格式; 4)、输入1帧数字图像矩阵到目标检测器中,检测器通过计算后返回的检测结果以数组的方式进行保存,数组的长度是检测到的目标数量大小; 5)、根据当前输入帧获得的目标检测框作为下一帧图像的目标基础框,采用神经网络对当前帧目标框在下一帧图像的位置进行回归计算,得到下一帧图像的目标检测框信息,如果下一帧检测框信息不为空,则在接下来的帧图像中循环执行当前步骤;若下一帧目标框信息为空,则跳转到步骤4对接下来的帧图像重新调用目标检测器进行目标检测直到视频帧处理结束。 2.根据权利要求1所述的一种视频实时目标跟踪的方法,其特征在于: 所述步骤3)在步骤1)输入视频的时候进行统一的转换。 2

目标跟踪算法的分类

目标跟踪算法的分类

主要基于两种思路: a)不依赖于先验知识,直接从图像序列中检测到运动目标,并进行目标识别,最终跟踪感兴趣的运动目标; b)依赖于目标的先验知识,首先为运动目标建模,然后在图像序列中实时找到相匹配的运动目标。 一.运动目标检测 对于不依赖先验知识的目标跟踪来讲,运动检测是实现跟踪的第一步。运动检测即为从序列图像中将变化区域从背景图像中提取出来。运动目标检测的算法依照目标与摄像机之间的关系可以分为静态背景下运动检测和动态背景下运动检测 (一)静态背景 1.背景差 2.帧差 3.GMM 4.光流 背景减算法可以对背景的光照变化、噪声干扰以及周期性运动等进行建模,在各种不同情况下它都可以准确地检测出运动目标。因此对于固定

个关键技术: a)匹配法则,如最大相关、最小误差等 b)搜索方法,如三步搜索法、交叉搜索法等。 c) 块大小的确定,如分级、自适应等。 光流法 光流估计的方法都是基于以下假设:图像灰度分布的变化完全是目标或者场景的运动引起的,也就是说,目标与场景的灰度不随时间变化。这使得光流方法抗噪声能力较差,其应用范围一般局限于目标与场景的灰度保持不变这个假设条件下。另外,大多数的光流计算方法相当复杂,如果没有特别的硬件装置,其处理速度相当慢,达不到实时处理的要求。 二.目标跟踪 运动目标的跟踪,即通过目标的有效表达,在图像序列中寻找与目标模板最相似候选目标区位置的过程。简单说,就是在序列图像中为目标定位。运动目标的有效表达除了对运动目标建模外,目标跟踪中常用到的目标特性表达主要包括视觉特征 (图像边缘、轮廓、形状、纹理、区域)、统计特征 (直方图、各种矩特征)、变换系数特

视频运动跟踪技术

视频运动目标跟踪算法研究 摘要:视频图像中的运动物体跟踪技术是计算机视觉、计算机科学、视频监控等学术领域的一个重要课题。该技术将数字图像处理领域中对静态图像的分析扩展到动态图像中。运动物体识别和跟踪技术的研究成果不仅在社会日常生活和工作中有着广泛的应用前景,而且在军事、交通、医学和科研等领域发挥着日益重要的作用。运动物体识别与跟踪算法的设计将直接影响识别和跟踪效果的准确性及稳定性,对于精确度高、鲁棒性好的算法研究一直是计算机视觉和数字图像处理等领域的热点问题。 关键词:目标跟踪,Mean shift算法,目标检测,粒子滤波 1 研究现状 视频目标跟踪技术已经得到了广泛的应用,主要应用有以下几个方面:智能视频监控、人机交互、机器人视觉、自动驾驶。其背后存在的学术价值和蕴藏的经济价值更是得到了很多人员的青睐,很多学术机构、大型公司以及一些科研人员正在投入大量的人力和财力进行各种开发和科研。 Fukunaga等人早期就提出了Mean shift跟踪算法,他们提出了一种概率密度函数的估计方法。不过在后来相当长的时间里并未受到大家的关注,直到1995年,随着Cheng对其进行近一步的研究并成功将其推广到计算机视觉领域中,这才得到了许多专业人士和科研人员的重视。目前存在很多经改进的Mean shift 算法。另外,在算法融合方面,有许多学者也做了相应的研究,K. NuInmiaro提出了将Mean shift算法和粒子滤波算法相融合,从而提高了目标跟踪的鲁棒性和准确性。 标准卡尔曼算法是在线性系统下滤波的,对于非线性、非高斯的系统没有效果。为此,人们开发出各种非线性滤波算法。一种是扩展卡尔曼算法进行滤波与估算,只适用于滤波误差和预测误差很小的情况;另一种是粒子滤波器[1],它是近些年出现的解决非线性问题的有效算法。粒子滤波技术通过非参数化的蒙特卡罗模拟方法来实现递推贝叶斯滤波,适用于任何能用状态空间模型以及传统的卡尔曼滤波表示的非线性系统,精度可以逼近最优估计。 在目标模型选取上,也有一些专家进行了探索。1)通过对粒子滤波的研究,将颜色作为目标模型并用粒子滤波跟踪,结果表明该方法可以增加遮挡情况下的鲁棒性。但是这种方法有些欠缺,即如果目标和背景有一定的相似度,则跟踪精度容易下降。2)将目标的边缘特征提取出来来代表目标进行跟踪,结果显示这种方法直观地增强了跟踪的鲁棒性。鉴于颜色描述目标色彩信息,边缘代表目标的轮廓,因此将这两种互补信息结合来代表目标可以改善跟踪效果。3)用局部线性嵌入流形(LLE)将问题降为二维空间,然后进行解决。4)利用一定的判别准则来有效分离目标和背景,并建立有明显区别的目标模板,最后成功用于跟踪中。5)通过Adaboost方法练习得到若干弱分类器,然后用系统集成的方法将其形成强分类器,然后用它们来区别目标和背景,以此用特定的方法获得目标的状态,并跟踪出目标运动的轨迹。 视频目标跟踪的难点主要包括以下几个方面[2]:1)目标外观变化。目标运动过程中发生形状的变化,加上相对于摄像机的视角、尺寸变化,造成目标在图像平面上复杂的外观变化,增加了目标建模的难度。2)复杂背景。变化的光照、与目标颜色相似的背景以及杂乱的变化环境使得较难将目标从背景中区分开来。3)遮挡问题。遮挡包括背景的遮挡和目标之间的遮挡。部分遮挡造成目标部分外观特征检测不到,而且引入了遮挡物的干扰;完全遮挡需要跟踪算法要有重新恢复的机制,当目标再次出现时能重新定位。4)目标的复杂运动。非线性的目标运动使得跟踪算法难以预测目标的运动状态,增加了跟踪算法的搜索计算量。 2 视频运动跟踪概述 视频目标跟踪系统的基本框架如下图,

用opencv实现对视频中动态目标的追踪

用openCV实现对视频中动态目标的追踪 第一步,是要建立一个编程环境,然后加载opencv的库路径等等。具体步骤在 https://www.wendangku.net/doc/051205134.html,/ 的“安装”中有详细介绍。 第二步,建立一个MFC的对话框程序,做两个按钮,一个“打开视频文件”,一个“运动跟踪处理”。 具体操作: 1 建立MFC对话框程序的框架:File ->New -> MFC AppWizard(exe),选取工程路径,并取工程名“VideoProcesssing”-> Next -> 选择Dialog based后,点Finish,点OK. 2 添加按钮:直接Delete掉界面默认的两个“确定”“取消”按钮。然后添加两个button,分别名为“打开视频”,“运动跟踪处理”,其ID分别设为IDC_OPEN_VIDEO,IDC_TRACKING. 3 添加消息响应函数:双击按钮“打开视频”,自动生成响应函数名OnOpenVideo,点Ok。然后添加如下代码: CFileDialog dlg(true,"*.avi",NULL,NULL,"*.avi|*.avi||"); if (dlg.DoModal()==IDOK) { strAviFilePath = dlg.GetPathName(); }else { return; } 同样,双击“运动跟踪处理”,选择默认的响应函数名,然后添加代码: //声明IplImage指针 IplImage* pFrame = NULL; IplImage* pFrImg = NULL; IplImage* pBkImg = NULL; CvMat* pFrameMat = NULL; CvMat* pFrMat = NULL; CvMat* pBkMat = NULL; CvCapture* pCapture = NULL; int nFrmNum = 0; //打开AVI视频文件 if(strAviFilePath=="") //判断文件路径是否为空 { MessageBox("请先选择AVI视频文件!"); return; }else { if(!(pCapture = cvCaptureFromFile(strAviFilePath))) { MessageBox("打开AVI视频文件失败!"); return;

智能机器人运动控制和目标跟踪

XXXX大学 《智能机器人》结课论文 移动机器人对运动目标的检测跟踪方法 学院(系): 专业班级: 学生学号: 学生姓名: 成绩:

目录 摘要 (1) 0、引言 (1) 1、运动目标检测方法 (1) 1.1 运动目标图像HSI差值模型 (1) 1.2 运动目标的自适应分割与提取 (2) 2 运动目标的预测跟踪控制 (3) 2.1 运动目标的定位 (3) 2.2 运动目标的运动轨迹估计 (4) 2.3 移动机器人运动控制策略 (6) 3 结束语 (6) 参考文献 (7)

一种移动机器人对运动目标的检测跟踪方法 摘要:从序列图像中有效地自动提取运动目标区域和跟踪运动目标是自主机器人运动控制的研究热点之一。给出了连续图像帧差分和二次帧差分改进的图像HIS 差分模型,采用自适应运动目标区域检测、自适应阴影部分分割和噪声消除算法,对无背景图像条件下自动提取运动目标区域。定义了一些运动目标的特征分析和计算 ,通过特征匹配识别所需跟踪目标的区域。采用 Kalrnan 预报器对运动目标状态的一步预测估计和两步增量式跟踪算法,能快速平滑地实现移动机器人对运动目标的跟踪驱动控制。实验结果表明该方法有效。 关键词:改进的HIS 差分模型;Kahnan 滤波器;增量式跟踪控制策略。 0、引言 运动目标检测和跟踪是机器人研究应用及智能视频监控中的重要关键技术 ,一直是备受关注的研究热点之一。在运动目标检测算法中常用方法有光流场法和图像差分法。由于光流场法的计算量大,不适合于实时性的要求。对背景图像的帧问差分法对环境变化有较强的适应性和运算简单方便的特点,但帧问差分不能提出完整的运动目标,且场景中会出现大量噪声,如光线的强弱、运动目标的阴影等。 为此文中对移动机器人的运动目标检测和跟踪中的一些关键技术进行了研究,通过对传统帧间差分的改进,引入 HSI 差值模型、图像序列的连续差分运算、自适应分割算法、自适应阴影部分分割算法和图像形态学方法消除噪声斑点,在无背景图像条件下自动提取运动 目标区域。采用 Kalman 滤波器对跟踪目标的运动轨迹进行预测,建立移动机器人跟踪运动 目标的两步增量式跟踪控制策略,实现对目标的准确检测和平滑跟踪控制。实验结果表明该算法有效。 1、运动目标检测方法 接近人跟对颜色感知的色调、饱和度和亮度属性 (H ,S ,I )模型更适合于图像识别处理。因此,文中引入改进 型 HSI 帧差模型。 1.1 运动目标图像HSI 差值模型 设移动机器人在某一位置采得的连续三帧图像序列 ()y x k ,f 1-,()y x f k ,,()y x f k ,1+

运动目标图像的识别与跟踪

运动目标图像的识别与跟踪 本文主要目的是将视频摄像头中的运动目标从背景中提取出来,并加以跟踪。首先考虑的是常见的目标检测的算法,其次考虑对于噪声的滤除,最后是对运动目标的跟踪。 一、基本目标检测算法 我们主要考虑的目标检测的算法主要有三种,光流场法、背景模型法以及时域差分法。 1.1光流场法 光流主要是图像亮度模式的表现运动。而光流场则是指灰度模式的表面运动。一般条件下,我们可以根据图像的运动,进行估算相对运动。 光流场法的基本理论是光流场基本方程: 0=++t y x I vI uI (1.1) 式中我们根据亮度守恒,利用泰勒公式展开,忽略高阶项与二次项。其中x I 、y I 和t I 是图像在对数轴x 、y 两个方向和t 的的导数,()v u ,就是这个点的光流坐标。 光流场法的目标检测,在摄像机运动时候也可以做出判断,但是图像的噪声太过明显,使得计算数据庞杂,计算的公式更加复杂,这样并不适合我们的对于目标跟踪的高精度的摄像系统。 1.2背景模型法 背景模型法,也被称为背景差法,主要利用当前的图像和背景的图像的二值化做差,然后取阈值,分割运动目标。 首先根据: ()()()y x b y x f y x D t t t ,,,-= (1.2) 我们可以得到当前的图像帧数()y x f t ,和背景图像的帧数),(y x b t 做差,然后以公式对图像进行二值化的处理。 ???≤>=)(,0)(,1),(BackGround T D ForeGround T D y x P t t t (1.3) 上面),(y x P t 是二值化模板图。假设某一区域大于一个给定的面积的时候,该区域就是我们要找的目标区域。 背景模型法的算法简单,可以快速反应,并且可以提供运动目标的大略特征等数据。但是对于复杂背景下,比如人流较大的公共场所,或者有光照等干扰时,就需以其他的算法以不断更新背景信息来进行弥补。

扩展卡尔曼滤波和粒子滤波算法比较

扩展卡尔曼滤波和粒子滤波算法比较上海大学2013 , 2014学年秋季学期 研究生课程小论文 课程名称: 随机信号导论课程编号: 07SB17002 论文题目: 扩展卡尔曼滤波和粒子滤波算法比较 研究生姓名: 班孝坤 (33%) 学号: 13720843 研究生姓名: 倪晴燕 (34%) 学号: 13720842 研究生姓名: 许成 (33%) 学号: 13720840 论文评语: 成绩: 任课教师: 刘凯 评阅日期: 扩展卡尔曼滤波和粒子滤波算法比较 第一章绪论 在各种非线性滤波技术中, 扩展卡尔曼滤波是一种最简单的算法, 它将卡尔曼滤波局部线性化,适用于弱非线性、高斯环境下。卡尔曼滤波用一系列确定样本来逼近状态的后验概率密度, 适用于高斯环境下的任何非线性系统。粒子滤波用随机样本来近似状态的后验概率密度, 适用于任何非线性非高斯环境, 但有时选择的重要性分布函数与真实后验有较大差异, 从而导致滤波结果存在较大误差, 而粒子滤

波正好克服了这一不足, 它先通过UKF产生重要性分布, 再运用PF 算法。通过仿真实验, 对其的性能进行比较。 严格说来,所有的系统都是非线性的,其中许多还是强非线性的。因此,非线性系统估计问题广泛存在于飞行器导航、目标跟踪及工业控制等领域中,具有重要的理论意义和广阔的应用前景。 系统的非线性往往成为困扰得到最优估计的重要因素,为此,人们提出了大量次优的近似估计方法。包括EKF,基于UT变换的卡尔曼滤波(UKF),粒子滤波,等等。 第二章扩展卡尔曼滤波介绍 2.1 扩展卡尔曼滤波的理论(EKF) 设非线性状态空间模型为: xfxv,(,)(1)ttt,,11 yhxn,(,)(2)ttt 式中和分别表示在t时刻系统的状态和观测,和 xR,yR,vR,nR,tttt分别表示过程噪声和观测噪声,f和h表示非线性函数。 扩展卡尔曼滤波(Extended kalman filter,以下简称EKF)是传统非线性估计的代表,其基本思想是围绕状态估值对非线性模型进行一阶Taylor展开,然后应用线性系统Kalman滤波公式。 EKF是用泰勒展开式中的一次项来对式(1)和 ( 2 ) 中的非线性函数f和h 进行线性化处理, 即先计算f和h 的雅克比矩阵, 然后再在标准卡尔曼滤波框架下进行递归滤波。和均为零均值的高斯白噪声。 vntt 2.2 扩展卡尔曼滤波的算法 EKF的算法同KF 一样, 也可分为两步预测和更新。如图2.1所示

视频目标跟踪算法综述_蔡荣太

1引言 目标跟踪可分为主动跟踪和被动跟踪。视频目标跟踪属于被动跟踪。与无线电跟踪测量相比,视频目标跟踪测量具有精度高、隐蔽性好和直观性强的优点。这些优点使得视频目标跟踪测量在靶场光电测量、天文观测设备、武器控制系统、激光通信系统、交通监控、场景分析、人群分析、行人计数、步态识别、动作识别等领域得到了广泛的应用[1-2]。 根据被跟踪目标信息使用情况的不同,可将视觉跟踪算法分为基于对比度分析的目标跟踪、基于匹配的目标跟踪和基于运动检测的目标跟踪。基于对比度分析的跟踪算法主要利用目标和背景的对比度差异,实现目标的检测和跟踪。基于匹配的跟踪主要通过前后帧之间的特征匹配实现目标的定位。基于运动检测的跟踪主要根据目标运动和背景运动之间的差异实现目标的检测和跟踪。前两类方法都是对单帧图像进行处理,基于匹配的跟踪方法需要在帧与帧之间传递目标信息,对比度跟踪不需要在帧与帧之间传递目标信息。基于运动检测的跟踪需要对多帧图像进行处理。除此之外,还有一些算法不易归类到以上3类,如工程中的弹转机跟踪算法、多目标跟踪算法或其他一些综合算法。2基于对比度分析的目标跟踪算法基于对比度分析的目标跟踪算法利用目标与背景在对比度上的差异来提取、识别和跟踪目标。这类算法按照跟踪参考点的不同可以分为边缘跟踪、形心跟踪和质心跟踪等。这类算法不适合复杂背景中的目标跟踪,但在空中背景下的目标跟踪中非常有效。边缘跟踪的优点是脱靶量计算简单、响应快,在某些场合(如要求跟踪目标的左上角或右下角等)有其独到之处。缺点是跟踪点易受干扰,跟踪随机误差大。重心跟踪算法计算简便,精度较高,但容易受到目标的剧烈运动或目标被遮挡的影响。重心的计算不需要清楚的轮廓,在均匀背景下可以对整个跟踪窗口进行计算,不影响测量精度。重心跟踪特别适合背景均匀、对比度小的弱小目标跟踪等一些特殊场合。图像二值化之后,按重心公式计算出的是目标图像的形心。一般来说形心与重心略有差别[1-2]。 3基于匹配的目标跟踪算法 3.1特征匹配 特征是目标可区别与其他事物的属性,具有可区分性、可靠性、独立性和稀疏性。基于匹配的目标跟踪算法需要提取目标的特征,并在每一帧中寻找该特征。寻找的 文章编号:1002-8692(2010)12-0135-04 视频目标跟踪算法综述* 蔡荣太1,吴元昊2,王明佳2,吴庆祥1 (1.福建师范大学物理与光电信息科技学院,福建福州350108; 2.中国科学院长春光学精密机械与物理研究所,吉林长春130033) 【摘要】介绍了视频目标跟踪算法及其研究进展,包括基于对比度分析的目标跟踪算法、基于匹配的目标跟踪算法和基于运动检测的目标跟踪算法。重点分析了目标跟踪中特征匹配、贝叶斯滤波、概率图模型和核方法的主要内容及最新进展。此外,还介绍了多特征跟踪、利用上下文信息的目标跟踪和多目标跟踪算法及其进展。 【关键词】目标跟踪;特征匹配;贝叶斯滤波;概率图模型;均值漂移;粒子滤波 【中图分类号】TP391.41;TN911.73【文献标识码】A Survey of Visual Object Tracking Algorithms CAI Rong-tai1,WU Yuan-hao2,WANG Ming-jia2,WU Qing-xiang1 (1.School of Physics,Optics,Electronic Science and Technology,Fujian Normal University,Fuzhou350108,China; 2.Changchun Institute of Optics,Fine Mechanics and Physics,Chinese Academy of Science,Changchun130033,China)【Abstract】The field of visual object tracking algorithms are introduced,including visual tracking based on contrast analysis,visual tracking based on feature matching and visual tracking based on moving detection.Feature matching,Bayesian filtering,probabilistic graphical models,kernel tracking and their recent developments are analyzed.The development of multiple cues based tracking,contexts based tracking and multi-target tracking are also discussed. 【Key words】visual tracking;feature matching;Bayesian filtering;probabilistic graphical models;mean shift;particle filter ·论文·*国家“863”计划项目(2006AA703405F);福建省自然科学基金项目(2009J05141);福建省教育厅科技计划项目(JA09040)

MeanShift算法

核函数也称“窗口函数”。一维空间用到的核函数有高斯(Gaussian)、余弦弧(Cosinus arch)、双指数(Double Exponential)、均匀(Uniform)、三角(Trangle)、依潘涅契科夫(Epanechikov)、双依潘涅契科夫(DoubleEpanechnikov)、及双权(Biweight)函数。图2.1给出了最常用的几个核函数

给定一组一维空间的n个数据点集合令该数据集合 的概率密度函数假设为f (x),核函数取值为,那么在数据点x处的密度估计可以按下式计算: 上式就是核密度估计的定义。其中,x为核函数要处理的数据的中心点,即数据集合相对于点x几何图形对称。核密度估计的含义可以理解为:核估计器在被估计点为中心的窗口内计算数据点加权的局部平均。或者:将在每个采样点为中心的局部函数的平均效果作为该采样点概率密度函数的估计值。

MeanShift实现: 1.选择窗的大小和初始位置. 2.计算此时窗口内的Mass Center. 3.调整窗口的中心到Mass Center. 4.重复2和3,直到窗口中心"会聚",即每次窗口移动的距离小于一定的阈值,或者迭代次数达到设定值。 meanshift算法思想其实很简单:利用概率密度的梯度爬升来寻找局部最优。它要做的就是输入一个在图像的范围,然后一直迭代(朝着重心迭代)直到满足你的要求为止。但是他是怎么用于做图像跟踪的呢?这是我自从学习meanshift以来,一直的困惑。而且网上也没有合理的解释。经过这几天的思考,和对反向投影的理解使得我对它的原理有了大致的认识。 在opencv中,进行meanshift其实很简单,输入一张图像(imgProb),再输入一个开始迭代的方框(windowIn)和一个迭代条件(criteria),输出的是迭代完成的位置(comp )。 这是函数原型: int cvMeanShift( const void* imgProb, CvRect windowIn,CvTermCriteria criteria, CvConnectedComp* comp ) 但是当它用于跟踪时,这张输入的图像就必须是反向投影图了。 为什么必须是反向投影图呢?首先我们要理解什么是反向投影图。 简单理解它其实实际上是一张概率密度图。经过反向投影时的输入是一个目标图像的直方图(也可以认为是目标图像),还一个输入是当前图像就是你要跟踪的全图,输出大小与全图一样大,它上像素点表征着一种概率,就是全图上这个点是目标图像一部分的概率。如果这个点越亮,就说明这个点属于物体的概率越大。现在我们明白了这原来是一张概率图了。当用meanshift跟踪时,输入的原来是这样一幅图像,那也不难怪它可以进行跟踪了。 半自动跟踪思路:输入视频,用画笔圈出要跟踪的目标,然后对物体跟踪。用过opencv的都知道,这其实是camshiftdemo的工作过程。 第一步:选中物体,记录你输入的方框和物体。 第二步:求出视频中有关物体的反向投影图。

本科毕业设计__基于视频的目标跟踪及人群密度估计方法研究开题报告

上海交通大学 2012 级硕士学位论文开题报告登记表 学号姓名导师李建勋学科控制科学与工程学院(系、所) 电子信息与电气工程学院 学位论文题目稳健对地目标跟踪方法研究 研究课题来源国家自然科学基金、航天创新基金、中航613横向项目 课题的意义以及研究的主要内容 运动目标跟踪是视觉图像处理中的一个非常热门的话题,在多个领域有着广泛的应用。运动目标跟踪的应用领域和环境主要有:对大型公共场所进行智能化视频监控、基于视频的人机交互、交通流量监测、医疗诊断等。 本文从计算机视觉角度研究对地目标跟踪方法。由于视觉跟踪系统能在比较复杂的背景下,提取与分离市场内的目标、确定目标位置、估计目标运动趋势、实现对目标的实时跟踪,且具有跟踪精度高、跟踪状态平稳、抗干扰能力强、分辨率高和成本低等特点,在军事上很受重视。在民用领域,对地目标跟踪也有着广泛的应用:对大型公共场所进行智能化视频监控。例如在机场、商场、地铁站等场所进行智能化监控,其主要目的都是为了保障公众财产和信息安全。在人群监测、交通管理上实现智能化有非比寻常的意义。 以以上应用为背景,本文的对地目标跟踪技术包含以下几个主要技术模块:单目标跟踪技术、多目标跟踪技术、密集目标跟踪技术。分出这几个模块是为了应对不同的应用场景,或是在同一场景需要各模块的协同合作。例如地铁站的人群流量具有明显时段特征,早晚上下班高峰人流极大,而其他时段人流量明显减少,这就需要对不同时段采用不同的跟踪方法以达到最好的效果。在上下班高峰期,采用密集目标跟踪技术,而在其他时段,采用多目标跟踪技术,而在有特殊需要的时候,例如跟踪特定犯罪嫌疑人时,可采用单目标跟踪技术。 本文研究的主要内容具体有: ①粒子滤波基本方法研究,这是单目标跟踪方法的框架。在图像跟踪应用中,目标状态的后验概率分布往往是非线性非高斯多模态的,粒子滤波方法对于系统模型没有特殊要求,且能够保持状态的多模态分布,在跟踪领域得到了很大的发展。但常规粒子滤波跟踪算法存在计算量大、采样效率低等问题。 ②粒子群最优化思想研究,改进常规粒子滤波采样效率低的问题,提高采样效率。针对常规粒子滤波跟踪算法存在计算量大、采样效率低等问题,引入粒子群优化思想对目标状态后验分布进行最优搜索,找到后验分布的高似然区,并依据此高似然区来进行重采样。 ③变结构多模型的设计,以更好的表征目标的运动模型。几乎所有的方法对目标的运动状态都假定为平滑的,或者将运动限制在恒速或恒加速运动状态。而实际情况并非如此,例如机动目标的运动状态就很难用单一模型来表征。本文引入变结构多模型方法为目标建立变结构多运动模型。变结构多模型方法能够很好的表征目标的运动模型却又不增加过多的计算量,因此相比单一运动模型能够更好的估计目标的运动。

Matlab实例之MeanShift的跟踪算法程序

MeanShiftCluster.m %testDistCluters clear clc profile on nPtsPerClust = 250; nClust = 3; totalNumPts = nPtsPerClust*nClust; m(:,1) = [1 1]'; m(:,2) = [-1 -1]'; m(:,3) = [1 -1]'; var = .6; bandwidth = .75; clustMed = []; %clustCent; x = var*randn(2,nPtsPerClust*nClust); %*** build the point set for i = 1:nClust x(:,1+(i-1)*nPtsPerClust:(i)*nPtsPerClust) = x(:,1+(i- 1)*nPtsPerClust:(i)*nPtsPerClust) + repmat(m(:,i),1,nPtsPerClust); end tic [clustCent,point2cluster,clustMembsCell] = MeanShiftCluster(x,bandwidth); toc

numClust = length(clustMembsCell); figure(10),clf,hold on cVec = 'bgrcmykbgrcmykbgrcmykbgrcmyk';%, cVec = [cVec cVec]; for k = 1:min(numClust,length(cVec)) myMembers = clustMembsCell{k}; myClustCen = clustCent(:,k); plot(x(1,myMembers),x(2,myMembers),[cVec(k) '.']) plot(myClustCen(1),myClustCen(2),'o','MarkerEdgeColor','k','MarkerFaceColor',cVec(k ), 'MarkerSize',10) end title(['no shifting, numClust:' int2str(numClust)]) testMeanShift.m %testDistCluters clear clc profile on nPtsPerClust = 250; nClust = 3; totalNumPts = nPtsPerClust*nClust; m(:,1) = [1 1]'; m(:,2) = [-1 -1]'; m(:,3) = [1 -1]'; var = .6; bandwidth = .75;

相关文档