运动目标跟踪(精选12篇)
运动目标跟踪 篇1
成功检测出运动目标之后,就可以利用已知的目标位置、轮廓、状态信息以及特征属性等,建立跟踪模型,预测目标运动状态,实现对运动目标的跟踪。运动目标跟踪的难点主要在于如何实现目标跟踪的实时性与可靠性,实时性主要是指如何快速的在图像序列中找到运动目标,可靠性是指保证目标相关匹配的准确性,也是目标跟踪最基本的要求[1]。目前,国内外学者对目标跟踪做了大量的研究工作,提出许多目标跟踪的实用性算法,按照不同的标准,其分类也不同。其中,用于提高目标搜索速率的算法主要是使用数学工具,如卡尔曼滤波以及扩展的卡尔曼滤波算法、Condensation算法、粒子滤波、Meanshift算法、自适应的Camshift算法、动态贝叶斯网络等。为了提高目标匹配的准确度,通常方法是提取运动目标易于跟踪的特征,由于目标的类型不同,如刚体与非刚体,提取的特征也不相同。目前,智能视频监控系统中单摄像机内目标跟踪的主要方法为[2,3,4,5]:基于区域的跟踪、基于特征的跟踪方法、基于3D的跟踪方法、基于活动轮廓的跟踪方法、基于运动估计的跟踪方法。
智能视频监控系统处理中,由于场景动态变化、光照的变化、目标遮挡、以及阴影的存在等,给运动目标的准确检测、稳定跟踪带来极大的负面影响,也对监控系统的实时性与可靠性带来极大的挑战。针对存在的问题,论文深入研究了单摄像机内目标的跟踪方法,针对基于特征跟踪的方法进行深入研究,并对稳定特征的提取做了大量实验,提出使用基于目标的UV色度直方图作为特征模板对目标进行关联匹配,既考虑了光照的变化,同时结合了目标的形状特征,并对此方法进行了实验,论证了其匹配的准确度。同时,对于单摄像机内目标跟踪中存在的遮挡问题,提出使用基于卡尔曼运动估计与特征模板匹配联合的方法进行目标跟踪。无遮挡情况下,在预测块周围寻找特征模板匹配目标,提高了目标搜索的速率。遮挡情况下,使用只预测运动不匹配运动模板,同时修正运动估计与阈值更新特征模板的方法保持对目标的连续跟踪,并且用于实际场景的跟踪实验,取得了预期效果。
1 运动目标块特征提取
1.1 运动目标块UV色度直方图
在基于特征匹配的运动目标跟踪中,统计的颜色直方图特征受到广泛关注。因为颜色直方图特征相比于其他视觉特征如纹理、形状等而言,对目标的旋转、平移以及缩放等变化具有很强的稳定性。其中,颜色可以分为亮度和色彩两部分,亮度对场景光照变化非常敏感,但色度信息由物体的物理属性决定,一般在光照变化的情况下比较稳定,因此论文转化到YUV颜色空间提取目标块的色度信息UV作为目标跟踪匹配的模板属性,以减少光照变化的影响。视频图像一般是基于RGB颜色空间的彩色图像,提取运动目标的U、V色度信息直方图需要首先从RGB颜色空间转化到YUV颜色空间,计算过程如(1.1)式所示:
式(1.1)
定义式(1.2)为统计属性的直方图,其中n表示直方图的级数,x表示被统计属性量化的取值范围,H(xi)表示属于i级的属性在整个属性级数中出现的概率,即它是一个归一化的概率值。
式(1.2)
利用式(1.1)和(1.2)在视频图像中提取运动目标块blob(x,y,w,h)独立的U、V色度直方图,一般式(1.1)得到的U、V值在[0,255]之间,论文中把它量化到64级,即n=64,因此每一个目标块blob的色度特征都可以用(1.3)表示:
其中,运动目标块(blob)是在前景运动目标检测的基础上分割出的运动目标轮廓的最小外接矩形框,x、y是矩形框的质心点目标质心点在图像中的横、纵坐标,w、h分别表示运动目标最小外接矩形框的宽、高。
使用上述方法,对每个感兴趣的运动目标块建立如式(1.3)所示的基于统计的U、V色度直方图作为目标的特征模板。
1.2 运动目标块的特征模板匹配准则与更新方法
在统计学中,巴氏距离[7](Bhattacharyya distance,或Bhattacharyya coefficient)主要用来测量两个离散概率分布的形似性,其中两个离散概率分布P和Q如果有相同的定义域X,巴氏距离定义为:
用k表示视频帧数,直方图A、B分别表示跟踪块blobk-1与检测块blobk的特征模板时,用(1.4)式可以计算出A与B的匹配程度。当两个目标块blobk-1与blobk的特征模板匹配时,跟踪块blobk-1的特征直方图更新方法采用两者加权的方式,即目标的特征模板直方图A与B匹配,C作为A的匹配更新直方图时,直方图C的每一级累积更新为:
共m级更新为:
其中,blobk-1、blobk中的参数k、k-1表示视频序列的帧数。
当判断不存在与跟踪块blobk-1特征模板匹配的块时,blobk-1的特征模板直方图采用阈值更新再归一化的方法,A的更新直方图C的每一级更新为:
其中α、β分别为为定义的直方图更新的加权值和阈值,一般α∈[0,1],β∈[0,1]。
论文中,最后判定跟踪块blobk-1与检测块blobk的特征模板A与B是否匹配采用(1.9)式计算确定匹配度的大小。
其中,两个目标的特征模板匹配的判断依据为:Tmatch
1.3 目标块特征模板稳定性测试
目标块U、V色度直方图以及边缘梯度八方向直方图提取实验中,直方图的差异利用式(1.4)计算。从图1以及表1的巴氏距离计算中可以看出,目标的U、V色度直方图与RGB颜色直方图相比,受亮度变化的影响较小,目标的U、V色度直方图比较稳定的目标特征,可以作为目标跟踪的特征模板。
2 单摄像机内运动目标块跟踪
2.1 基于卡尔曼滤波[6]的目标块运动状态预测跟踪
目标运动过程中,相邻两帧视频序列间隔时间很短,可以假设目标为匀速运动,因此为每个目标块blob(x,y,w,h)建立基于位置、大小以及速度的运动状态参数模型。
首先,对卡尔曼滤波器的系统参数进行初始化,定义卡尔曼滤波器的系统状态xk为运动目标块blob的运动状态参数(x,y,w,h,dx,dy)T,一个6维向量,其中x,y,dx,dy分别表示目标块的质心在x轴和y轴方向上的位置和速度,w,h为目标块最小外接矩形的宽和长。视频图像上只能观察到目标的位置和外接矩形的大小,所以观测向量定义为zk=(x,y,w,h)T。
由于假设目标在相邻帧间匀速运动,因此系统状态转移
卡尔曼滤波器目标块运动状态预测跟踪过程如下:
(1)提取目标块的运动参数blob(x,y,w,h),利用式(2.1)和(2.2)定义测变量值为运动目标块建立卡尔曼滤波器,同时用目标块的运动参数初始化卡尔曼滤波器的系统状态向量(dx=0,dy=0),其中,误差协方差矩阵Pk-1初始化为单位矩阵。
(2)第k帧图像中,针对目标块i,在目标块i预测位置周围搜索与其特征模板最匹配的块,如果找到,则用匹配块的运动参数修正卡尔曼滤波器的预测系统状态参数,其中特征模板匹配准则使用式(1.9)。
(3)对于每一个目标块用卡尔曼滤波器预测其在下一帧图像中的运动状态参数。
(4)第k+1帧中,重复(2)、(3),直到目标在图像序列中消失。
2.2 卡尔曼滤波运动预测与特征模板匹配相结合的运动目标跟踪
论文使用基于块特征模板匹配与卡尔曼滤波块运动状态预测相结合的方法跟踪运动目标,整个跟踪流程如图2所示。
(1)系统建立3个块序列链表:检测块链表pDetectorList、跟踪链表pTrackerList、丢失块链表pDisList。检测块链表用来记录检测视频序列图像中出现的运动目标块,跟踪链表用来对已跟踪目标块的跟踪参数进行记录与更新,丢失链表主要对已在场景中消失的目标块进行跟踪参数的保存,对目标再次出现或新出现目标进行匹配识别。
(2)针对第k帧视频序列中,进行运动目标块检测与提取,添加blobk到pDetectorList中。如果pDetectorList不为空,判断pTrackerList是否为空。如果pTrackerList为空,pDetectorList中所有运动目标块作为新出现目标,为每一个目标块建立特征模板与卡尔曼滤波器,分配唯一的目标跟踪ID,用检测块的运动参数对的卡尔曼滤波器进行初始化。同时,添加每一个目标块到跟踪链表pTrackerList,置空pDetectorList。否则,转(3)。
(3)第k帧视频序列图像中,对pTrackerList中的每一个跟踪目标块blobk-1使用卡尔曼滤波预测目标当前运动状态,并且判断多个目标之间是否有遮挡发生,如果无遮挡发生转(4),否则转(5)。
(4)当预测目标块blobk-1无遮挡发生时,pDetectorList在中搜索与预测块位置最近的块blobk,并且匹配特征模板,减少目标搜索的范围,提高目标特征模板匹配的速度。如果找到转(6)。如果未找到最匹配目标,则可能目标发生异常运动,在整个k时刻的pDetectorList中寻找最匹配目标块blobk,如果找到转(9),否则判断目标已在场景中消失,添加丢失目标块到pDisList中。
(5)当预测目标块blobk-1有遮挡发生时,仅使用UV色度直方图特征两步匹配确定遮挡是否发生,第一步:使用标准U、V色度直方图匹配阈值在预测块周围搜索是否存在与目标最匹配的运动块blobk,如匹配无遮挡发生,转(6);否则,第二步:使用一个大于标准匹配阈值的值搜索预测块周围是否存在与目标UV直方图匹配的块blobk,如匹配确定遮挡发生,转(7)。
(6)用式(1.6)对跟踪目标块blobk-1的特征模板进行更新,同时使用目标块blobk参数对卡尔曼滤波器进行更新,在pDetectorList中删除blobk。
(7)用式(1.8)对跟踪目标块blobk-1的特征模板进行更新,同时使用blobk-1的预测运动参数对卡尔曼滤波器进行更新。
(8)在pDetectorList中删除blobk,同时使用(1.6)式对跟踪目标块blobk-1的特征模板进行更新,同时使用目标块blobk参数对卡尔曼滤波器进行初始化。
(9)循环(3)-(8),直至对pTrackerList中的每一个跟踪目标块blobk-1都完成处理。
(10)判断当前pDetectorList是否为空,如果不空,且pDisList也非空,检测目标块blobk与pDisList中消失块的特征模板匹配判断是否有同一目标块。如果有指定blobk与pDisList中目标块相同的目标ID,否则指定一个新的追踪块目标ID,建立blobk的跟踪块参数,添加到中pTrackerList。最后,对第k帧的pDetectorList置空。
(11)循环第(2),直至视频序列结束。
3 实验结果与分析
使用论文所述基于卡尔曼运动预测与特征模板匹配的跟踪方法,模拟实现了单摄像机内运动目标在正常以及遮挡情况下的稳定、准确跟踪。其中,单摄像机内目标特征模板匹配判定式(1.9)中Thre2=0.35。
从目标跟踪图3中可以看出,论文所提基于卡尔曼滤波运动预测与目标特征模板相结合的跟踪方法,即使在目标遮挡情况下也可以实现对目标的稳定跟踪。
摘要:运动目标跟踪是智能视频监控系统的核心处理技术,是监控系统实现智能化的关键。跟踪过程中由于光线、遮挡等问题的存在,对相邻的视频序列中同一目标进行准确定位造成很大影响。主要对单摄像机内运动目标的稳定跟踪以及遮挡处理进行研究。
关键词:视频监控,目标跟踪,摄像机
参考文献
[1]E.Stringa,Regazzoni.Content-based retrieval and real-time detection from video sequences acquired by surveillance sys-tems.On Image Processing,Chicago,1998.
[2]Alper Yilmaz,Omar Javed,Mubarak Shah.Object Tracking:A Survey[J].CSUR,2006,38(4):1-45.
[3]I.Mikic,P.Cosman,G.Kogut.Moving shadow and object detec-tion in traffic scenes.In:Proceedings of International Confer-ence on Pattern Recognition,US,2000.
[4]侯志强,韩崇昭.视觉跟踪技术综述[J].自动化学报,2006:603-617.
[5]Matsuyama T,Ukita N.Real-time multitarget tracking by a cooperative distributed vision system[J].Proceedings of the IEEE,2002,90(7):1136-1150.
[6]http://www.cs.unc.edu/~welch.
[7]http://en.wikipedia.org/wiki/Bhattacharyya_coefficient.
运动目标跟踪 篇2
针对光电经纬仪在飞机起飞着陆段跟踪角速度大、背景复杂的.情况,根据小波多分辨率技术,提出利用小波分层组成低频图像金字塔,利用光流技术进行匹配解算,实现由粗到精的特征点匹配跟踪.通过对飞行试验视频图像进行事后自动跟踪试验,结果表明,该算法能够稳定可靠跟踪多特征点目标,具有鲁棒性.
作 者:李宏 杨廷梧 任朴舟 李朝晖 LI Hong YANG Ting-wu REN Pu-zhou LI Zhao-hui 作者单位:李宏,任朴舟,李朝晖,LI Hong,REN Pu-zhou,LI Zhao-hui(中国飞行试验研究院,陕西,西安,710089)
杨廷梧,YANG Ting-wu(中国飞行试验研究院,陕西,西安,710089;西安电子科技大学,陕西,西安,710072)
基于双目视觉的目标跟踪算法研究 篇3
关键词:双目视觉,Kinect摄像头,骨骼跟踪,导航
1概述
双目视觉技术是当前计算机视觉研究的重点和热点,双目视觉对物体的感知过程主要是模仿人眼对物体的感知过程,简便可靠,具有较大的应用前景,一直以来也是受到国内外专家学者的重视。由于双目视觉技术直接模仿人眼,并且可以满足实时性要求,所以越来越广泛的运用到计算机视觉,机器人跟踪识别,车导航等领域,实现未知场景感知,空间位置定位灯功能。因此对于双目视觉的跟踪算法的研究具有十分重要的现实意义。
本项目的研究是在Windows7的系统中,利用VS2010设计出的双目视觉跟踪技术程序。这里主要是运用到了基于Kinect摄像头的骨骼跟踪技术,可以实现动态物体的跟踪。本研究的成果也可以很好地移植到机器人的平台上去实现机器人的目标跟踪。
本文中首先介绍了相关的背景,之后介绍了双目视觉技术,随后对于程序中运用到的Kinect摄像头,骨骼跟踪技术进行了介绍。之后对于具体的程序实现做了一个分析,主要是整个代码编写的原理,并着重阐述了骨骼跟踪技术的核心代码。然后是整个程序的运行效果进行一个展示,保证了程序的有效性。
2双目视觉
双目视觉(Binocular Vision)是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差,来获取物体三维几何信息的方法。
双目视觉测量方法具有效率高、精度合适、系统结构简单、成本低等优点,非常适合于制造现场的在线、非接触产品检测和质量控制。对运动物体(包括动物和人体形体)测量中,由于图像获取是在瞬间完成的,因此视觉方法是一种更有效的测量方法。双目视觉系统是计算机视觉的关键技术之一,获取空间三维场景的距离信息也是计算机视觉研究中最基础的内容。
双目视觉的开创性工作始于上世纪的60年代中期。美国MIT的Roberts通过从数字图像中提取立方体、楔形体和棱柱体等简单规则多面体的三维结构,并对物体的形状和空间关系进行描述,把过去的简单二维图像分析推广到了复杂的三维场景,标志着视觉技术的诞生。随着研究的深入,研究的范围从边缘、角点等特征的提取,线条、平面、曲面等几何要素的分析,直到对图像明暗、纹理、运动和成像几何等进行分析,并建立起各种数据结构和推理规则。特别是上世纪80年代初,Marr首次将图像处理、心理物理学、神经生理学和临床精神病学的研究成果从信息处理的角度进行概括,创立了视觉计算理论框架。这一基本理论对视觉技术的发展产生了极大的推动作用,在这一领域已形成了从图像的获取到最终的三维场景可视表面重构的完整体系,使得视觉已成为计算机视觉中一个非常重要的分支。经过几十年来的发展,视觉在机器人视觉、航空测绘、反求工程、军事运用、医学成像和工业检测等领域中的运用越来越广。
3、Kinect摄像头
3.1相关介绍
Kinect是微软在2009年6月2日的E3大展上。正式公布的XBOX360体感周边外设。Kinect彻底颠覆了游戏的单一操作。使人机互动的理念更加彻底的展现出来。网友普遍称其中文名为“啃奶特”
它是一种3D体感摄影机(开发代号“Project Natal”),同时它导入了即时动态捕捉、影像辨识、麦克风输入、语音辨识、社群互动等功能。
玩家可以通过这项技术在游戏中开车、与其他玩家互动、通过互联网与其他Xbox玩家分享图片和信息等。
3.2原理介绍
黑色的Kinect设备如下图:基座和感应器之间有一个电动的马达,通过程序能够调整俯仰角度,在上面的感应器中有一个红外投影仪,两个摄像头,四个麦克风和一个风扇。打开外面的盖子可以看到里面的构造:这些感应器用来捕捉RGB和深度数据,面对Kinect,从左往右看。最左边是红外光源,其次是LED指示灯,再次是彩色摄像头,用来收集RGB数据,最右边是红外摄像头用来采集景深数据。彩色摄像头最大支持1280*960分辨率成像,红外摄像头最大支持640*480成像。
在感应器的下方是麦克风阵列,他包括四个不同的麦克风,一个在左边的红外发射器下面,另外3个在右边景深摄像头下面。
Kinect工作原理,摄像头起到了很大的作用,它负责捕捉人肢体的动作,然后微软的工程师就可以设计程序教它如何去识别、记忆、分析处理这些动作。Kinect摄像头可以捕捉到用户的手势动作,再把这些手势语言转换成游戏控制。具体来说,Kinect借助PrimeSense软件和摄像头侦测、捕捉用户手势动作,然后再将捕捉到的影像与本身内部存有的人体模型相对照。每一个符合内部已存人体模型的物体就会被创造成相关的骨骼模型,系统再将该模型转换成虚拟角色,该角色通过识别该人体骨骼模型的关键部位进行动作触发。在虚拟骨骼模型的帮助下,系统可识别人体的25个关键部位。此基础上加入了识别人体站立/坐姿的新技术。使用红外定位Kinect比一般的摄像头更为智能。首先,它能够发射红外线,从而对整个房间进行立体定位。摄像头则可以借助红外线来识别人体的运动。除此之外,配合着Xbox 360上的一些高端软件,便可以对人体的48个部位进行实时追踪。该设备最多可以同时对两个玩家进行实时追踪。除此之外,这款产品不仅能够通过红外线识别人体,还可以识别出完整的RGB色彩,并借助面部识别技术自动为用户登录。
4骨骼跟踪技术
骨骼追踪技术通过处理景深数据来建立人体各个关节的坐标,骨骼追踪能够确定人体的各个部分,如哪部分是手,头部,以及身体。骨骼追踪产生X,Y,Z数据来确定这些骨骼点。骨骼追踪系统采用的景深图像处理技术使用更复杂的算法如矩阵变换,机器学习及其他方式来确定骨骼点的坐标。
骨骼数据来自SkeletonStream,访问骨骼数据有事件模式和 “拉”模式两种方式。在本项目实验中我们采用基于事件的方式,因为这种方式简单,代码量少,并且是一种很普通基本的方法。KinectSensor对象有一个名为SkeletonFrameReady事件。当SkeletonStream中有新的骨骼数据产生时就会触发该事件。通过AllFramesReady事件也可以获取骨骼数据。SkeletonStream产生的每一帧数据都是一个骨骼对象集合。每一个骨骼对象包含有描述骨骼位置以及骨骼关节的数据。每一个关节有一个唯一标示符如头(head)、肩(shoulder)、肘(dlbow)等信息和3D向量数据。然后把获取到的数据通过设置画笔颜色画出来,就可以实现模拟人体骨骼跟踪的效果。
5原理及实现
本项目的程序是运行在VS2010上的C#WPF程序。下面对程序中的部分代码做一下分析。
(1)由于Kinect能够追踪到的骨骼数量是一个常量。这使得我们在整个应用程序中能够一次性的为数组分配内存。为了方便,Kinect SDK在SkeletonStream对象中定义了一个能够追踪到的骨骼个数常量FrameSkeletonArrayLength,使用这个常量可以方便的对数组进行初始化。具体的代码在程序中是这样的:
this.framesSkelete = new Skeleton[this.kinect.SkeletonStream.FrameSkeletonArrayLength];
(2)每一次骨骼数据变化的时候就会触发SensorSkeletonFrameReady事件,然后通过调用事件参数的OpenSkeletonFrame方法就能够获取当前的骨骼数据帧。后面的代码是遍历骨骼数据帧的Skeleton数组frameSkeletons,再在UI界面通过关节点将骨骼数据连接起来,用一条直线代表一根骨骼。具体代码参见下面两张截图:
截图一
截图二
(3)上述代码中在循环遍历frameSkeletons对象时,每一次处理一个骨骼,在处理之前都需要判断是否是一个追踪好的骨骼,可以使用Skeleton对象的TrackingState属性来判断,只有骨骼追踪引擎追踪到的骨骼我们才进行绘制,忽略那些不是使用者的骨骼信息即过滤掉那些TrackingState不等于SkeletonTrackingState.Tracked的骨骼数据。Kinect能够探测到6个使用者,但是同时只能够追踪到2个使用者的骨骼关节位置信息。具体代码就是两个if判断中的代码:
if (skel.TrackingState==SkeletonTrackingState.NotTracked)
if (skel.TrackingState == SkeletonTrackingState.Tracked || skel.TrackingState == SkeletonTrackingState.PositionOnly)
(4)处理骨骼数据相对简单,首先,我们根据Kinect追踪到使用者的编号,选择一种颜色笔刷。然后利用这只笔刷绘制曲线。CreateFigure方法为每一根骨骼绘制一条直线。GetJointPoint方法在绘制骨骼曲线中很关键,该方法以关节点的三维坐标作为参数,然后调用KinectSensor对象的MapSkeletonPointToDepth方法将骨骼坐标转换到深度影像坐标上去。下面的代码截图展示了CreateFigure和GetJointPoint这两个方法。
UI界面比较简单,将Grid元素作为根结点,设置背景色为白色,下面是WPF窗口代码:
6实验效果
本程序是运行在VS2010上的一个WPF程序,程序运行之后当我们人站在摄像头前时,可以通过一些肢体动作来获取摄像头的感知,摄像头捕捉到了我们的动作之后,即会在程序中画出我们人体骨骼的大致轮廓,这样就实现了我们骨骼跟踪的目的。我们本次项目的主要研究内容就是基于双目视觉的目标跟踪算法研究,通过这样一个小程序的实例,即实现了目标跟踪算法的编写,而我们整个程序也是可以运用到机器人的平台之上的,用于机器人的跟踪或是导航等等,这就使得我们整个程序更具实际意义,我们的研究也更具应用价值。
参考文献
[1] 贾云德.机器视觉[M].北京:科学出版社,2000
[2] Marr D,姚国正等译.视觉计算理论[M].北京:科学出版社,1988
[3] 潘华,郭戈.立体视觉研究的进展[J].计算机测量与控制.2004,12(12):59-76
[4] 侯志强,韩崇昭.视觉跟踪技术综述[J].自动化学报.2006,32(4):603-617
运动目标跟踪技术综述 篇4
运动目标跟踪是一门多学科交叉的技术, 是计算机视觉领域的一个重要课题, 它综合应用了图像处理、模式识别、自动控制、人工智能等学科的理论知识。运动目标跟踪, 是指给定一段视频序列, 在该视频序列的每帧图像中实时地找到感兴趣的运动目标, 并评估其运动轨迹。一般来说, 典型的目标跟踪系统一般包含的四个过程[1]:目标初始化, 特征模版表示, 相似性度量和运动估计, 进行目标定位。运动目标跟踪问题的难点如:目标本身特征的多样性和不稳定性、外部环境的复杂多变性、目标之间的遮挡等。解决跟踪问题的关键点在于:完整地分割目标、有效地表示目标和准确识别目标。
通过对于大量目标跟踪领域文献的阅读, 可以分析出之前较多的目标跟踪综述文献[1,2,3]主要是从特征模版表示或不同跟踪算法等角度对跟踪进行分类, 但是对于读者对整个跟踪系统框架把握不清。文章根据目标跟踪系统中实现过程, 从一种新颖角度总结出一般的目标跟踪方法体系结构分为以下三个部分: (1) 运动目标的特征选取和表示; (2) 运动目标跟踪常用算法框架; (3) 运动目标预测算法。
目标跟踪算法一般的都不会超出这三个部分。分别从这三个部分进行跟踪算法的分析研究, 第一考虑选取不同的目标特征, 如颜色、纹理、形状等;根据选择目标特征, 运用合理的目标表示方法, 如颜色直方图, 纹理直方图、轮廓特征模板等;第二, 选择一种或几种适合的跟踪算法框架。第三, 采用目标跟踪预测的方法更加合理准确的找到目标。我们结合目标跟踪领域提出的许多方法, 论述了三个部分如何有机组合实现有效的运动目标跟踪。此外, 文中所列举的大量跟踪方法实例都可以从以上三个部分进行归类, 这将有助于相关领域的研究人员清晰的把握目标跟踪技术脉络, 让研究人员尽快的从以上三个方面进行深入研究, 并提出相应改进和创新方法。
1 运动目标特征提取
1.1 目标特征
特征是一个物体具有可靠性、独立性、且可区别于其他物体的属性, 一个运动目标一般具有很多特征, 充分的了解这些特征将有助于提高解决运动目标跟踪问题的效率和准确性。一般来讲, 常见的运动目标的特征包括:颜色、纹理、边缘、运动等如何根据特定的场景选择合适的目标特征, 成为影响跟踪效果好坏的重要因素。希望通过有效特征选取, 来区分感兴趣运动目标和场景中其他运动目标。例如, 在足球比赛中, 对特定某个运动员跟踪, 而选择了不恰当的特征, 例如形状, 接下来在运动员遮挡的时候, 就很难正确跟踪了。对于特定场景的应用, 特征的选择十分重要, 因而作为跟踪方法结构的第一部分, 文章所举出的是基本的视觉目标特征, 研究人员也可以采用或设计一些新的视觉特征来更好实习目标的跟踪。
1.2 目标特征提取
目标特征提取, 是指使用运动目标的某些显著特征表示目标。也可将其分解为两个部分视觉表征和统计模型。视觉表征目标是采用各种不同的视觉特征构建鲁棒的目标描述。统计模型是采用统计学习的方法建立有效的分辨目标的数学模型。
在运动目标跟踪过程的开始阶段, 首先要选择感兴趣的跟踪目标, 通过图像分割或人为框选得到覆盖整个目标的区域 (该区域比目标稍大, 可以是矩形或椭圆形) , 然后采用目标的某些特征来有效地表示该运动目标。实际中的运动目标往往具有很多特征, 如果将其所有特征都记录下来, 就需要计算机花大量时间计算, 从而满足不了要求实时性的跟踪。所以, 不需要考虑运动目标的全部特征, 而只需要利用一些显著特征即可, 所提取的特征应尽量做到计算简单, 以便快速识别。另外, 选用的特征应尽量具有相对稳定性, 即对图像的旋转、平移、尺度变化、光照条件变化等不敏感, 从而减轻外部环境对跟踪效果的影响。
在处理跟踪问题时, 跟踪系统将要跟踪的运动目标用其显著特征表示, 计算机处理这个“表示”的过程是将目标的显著特征数据从高维的原始特征空间, 通过映射变换到低维空间, 形成简化计算量的可供计算机理解的数据, 同时计算机认为该特征数据即为运动目标的特征模板, 即计算机“认识”了要跟踪的目标。计算机将运动目标用其模板表示的目的是为后续的跟踪工作做准备。常用的目标模板包括:颜色直方图、灰度共生矩阵、纹理直方图等 (图1a) 。在实际应用中, 上述这些模板可以进行适当的改进以提高跟踪的鲁棒性。
2 跟踪算法框架
2.1 目标特征模版更新
我们可以比较容易的提取一般图像的特征, 然而是否这些特征可以有效表达要跟踪的目标, 经常需要根据特定的环境采用不同的特征还可能采用多特征联生成有效的目标模板。上一节在介绍目标特征提取时候, 可以将提取特征模板直接作为生成的目标的特征模板直接使用, 还可以选用这些特征模板来生成新的目标特征模板, 往往这样做会更有效的表达表达目标。
目标特征模板生成后常常不是唯一不变, 在目标运动的过程中由于目标的形变和光照的变化会影响目标的有效表达, 因此需要对目标模板运动跟踪过程中进行更新。目标特征模版更新问题在跟踪领域关注度越来越高, 主流的研究方法是在线特征选择, 需要用特征模版和当前图像的目标数据进行比对来决定是否进模版更新。还有一种模版的更新策略, 根据跟踪到的目标实时的更新目标的模版而不进行比对。模版更新问题较为困难, 首先如果在目标存在遮挡情况下, 模版更新较快很容易造成错误的模版更新。其次, 模版更新较慢不能适用目标快速变化的情况。一般来说, 感兴趣目标在一段视频序列中不会发生特别大的改变, 鲁棒的模版更新机制也就没有必要了。当然, 在要求严格的自动化商业系统中, 一般是需要通过有监督的方法辅助进行模版更新。
2.2 模板匹配
跟踪系统在将运动目标用其特征模板表示之后, 跟踪过程也进入了计算相似性度量阶段。在视频图像的后续帧中, 采用一定的相似性度量方法, 通过计算目标模板与后续帧中所有候选目标区域的相似性函数值, 选择函数值最大的候选目标区域 (也即与目标特征模板最相似的区域) 作为运动目标在新一帧图像中的位置。用这样的方式在每一帧图像中进行计算相似性度量, 就可以实现运动目标的连续跟踪。在图像处理与分析理论中, 常用的相似性度量方法有欧式距离、加权距离、Bhattacharyya系数等。
2.3 分类学习
利用分类器将跟踪目标从背景中分割出来是以模式分类的方法解决视频跟踪问题。我们把跟踪看作分类问题, 通过训练分类器来区分背景和目标。通过在参考图像中提取每一像素的一个特征向量, 经过训练得到一个分类器来识别一个像素是属于目标还是背景。给定新的一帧图像, 我们使用训练好的分类器测试侦查区域里的像素并得到置信图, 我们认为图中的峰值点就是物体移动到的地方。
3 运动预测
运动预测, 相当于是一个动态的状态评估的问题, 在跟踪上一帧的运动个目标后, 提出目标特征, 然后在下一帧图像中采用特征匹配或训练分类器分类方法进行目标跟踪。但是为了减少搜索特征匹配的区域, 提高实时性, 我们常常对目标运动轨迹预测选取最可能的目标区域。状态评估公式:xt=f (xt-1, vt-1) 和zt=h (xt, wt) , 其中xt是当前状态, f是状态方程, vt-1是过程噪声, zt是当前观测值, h是测量方程, wt是测量噪声。
一般常用预测方法有如, 固定搜索窗半径r (r为大于0的实数) , r的大小是根据跟踪目标的不同设定的。我们以上一帧目标所在位置为中心r为半径, 产生多个检测窗口进行当前帧搜索计算找到最大可能的位置作为本帧目标位置。还可以统计之前N (N=2, 3, …) 帧跟踪的目标位置信息, 计算出目标运动的大致方向和速度, 预判下一帧中可能的目标位置, 从而减少计算量。比较经典的预测方法如:Ellis等2010年提出线性回归预测算法, 、Kalman在1960年提出的Kalman滤波器预测算法、Isard和Blake等1998年提出的粒子滤波器预测算法, 选取最可能的目标区域。文章主要的任务是让读者有一个关于跟踪目标算法清晰的思路, 快速的了解目标跟踪技术关键要点。在这里不再具体的详述具体预测算法。
4 经典跟踪算法
一般的运动目标跟踪的实现, 必然是采用具体某种跟踪算法作为依托。首先, 文章将介绍的四种经典的运动目标跟踪算法:基于Mean Shift目标跟踪;基于卡尔曼滤波目标跟踪;基于粒子滤波目标跟踪;基于支持向量机SVM分类学习目标跟踪。人们目前常用的跟踪方法一般都会采用这四种经典的跟踪算法一种或几种, 去实现运动目标的高效、稳定的跟踪。然后, 文章列举的大量的实例依据文章所提出的跟踪算法体系结构的组成部分进行分析分解, 这样做有助于相关领域的研究人员, 清晰的把握实例中采用的跟踪算法结构。最后, 介绍了近年来提出一些受到研究人员越来越多关注的新的跟踪算法。
4.1 基于Mean Shift目标跟踪
Mean Shift (均值移动) 算法由Fukunaga于1975年在一篇关于概率密度梯度函数的估计的文章中首次提出, 其含义为移动的均值向量, 该算法计算简单, 实时性强, 对目标的形状变化、尺度变化不敏感, 但是对颜色相近的干扰情况, 跟踪效果不够理想。Mean Shift算法是一个迭代收敛的过程, 即计算当前点的偏移均值, 移动该点到其偏移均值, 然后以此为新的起始点继续移动, 直到满足一定阈值条件或迭代次数限制条件的约束。Comaniciu最早将Mean Shift算法应用于图像滤波、分割和目标跟踪领域。Camshift算法是一种基于均值漂移 (Mean Shift) 的算法, 在连续帧上使用Mean Shift算法就是Camshift跟踪算法。Camshift同经典的均值移动跟踪算法的基本思想是相同的, 所不同的是, Camshift是建立在颜色概率分布图和矩的基础之上, Camshift算法对室内环境下的目标跟踪具有较高的鲁棒性。
陈建军[4]等人提出了一种基于核共生矩阵的均值移动跟踪算法, 使用目标的纹理特征作为跟踪线索, 将灰度共生矩阵改进成核共生矩阵作为特征模板, 采用Bhattacharyya系数度量核共生矩阵的相似度, 在Mean Shift跟踪算法基础上实现了人脸的跟踪;田纲[5]等人使用目标的颜色和运动特征, 将目标的运动矢量作为特征模板, 在Mean Shift跟踪算法基础上实现了跟踪;袁广林[6]等人使用目标的颜色特征, 通过多颜色直方图自适应组合作为特征模板, 利用目标区域对每一颜色直方图的概率图的均值和方差的比值, 自适应计算权值, 在Mean Shift跟踪算法基础上实现稳定跟踪, 该方法对目标外观变化具有较强的鲁棒性。
4.2 基于卡尔曼滤波目标跟踪
卡尔曼滤波算法是一种经典的预测估计算法, 如果已知目标运动是线性的, 且图像噪声服从高斯分布, 便可应用卡尔曼滤波预测目标下一帧位置, 从而实现目标跟踪。卡尔曼滤波器是一个最优化自回归数据处理算法, 对动态系统的状态序列进行线性最小方差估计, 利用状态方程和观测方程描述动态系统, 根据之前的状态序列对下一个状态作最优估计, 预测时具有无偏、稳定的特点, 在存在部分短暂遮挡的目标跟踪中有很好的跟踪效果。其计算量小, 实时性强, 可以准确预测目标的位置和速度, 但是它只适合于线性高斯系统。
徐哈宁[7]等人使用目标的运动特征, 提出一种交互多模型作为目标特征模板, 交互多模型包括匀速模型、加速度模型、转弯模型以及“当前”统计模型等, 并将传统的卡尔曼滤波跟踪算法基础上进行改进, 即在去偏转换测量卡尔曼滤波器 (CMKF-D) 框架下完成了体育视频中球类目标的跟踪;齐美彬[8]等人提出一种基于自适应权值的区域马尔科夫随机场 (MRF) 分割与跟踪方法, 利用相邻像素的空间相关性, 自适应更新系统能量函数中的参数, 使用目标的灰度直方图特征, 建立分片积分直方图特征模板, 在卡尔曼滤波算法基础上实现部分遮挡和光线变化时的准确分割与跟踪。
4.3 基于粒子滤波 (Particle Filter) 目标跟踪
粒子滤波是上世纪90年代后期发展起来的, 是一种基于蒙特卡罗和贝叶斯估计理论的最优算法, 其基本思想是用随机样本描述概率分布, 以递归的方式对测量数据进行序贯处理, 无须对之前的测量数据存储和处理, 根据测量数据调节各粒子权值的大小和样本的位置, 适合于非线性非高斯跟踪系统, 有效克服了卡尔曼滤波的缺点, 同时可以跟踪运动速度较快的目标。但粒子滤波算法的计算量会随着所选取粒子数目的增加而骤增, 因此较难满足跟踪的实时性要求。
王欢[9]等人利用目标的颜色、纹理、边缘、运动的融合特征, 并将这四种特征用统一的直方图模型来表示, 在Auxiliary粒子滤波算法基础上将所有特征观测进行概率融合, 实现了复杂背景干扰和遮挡时的刚体和非刚体目标的跟踪;夏利民等人使用目标的颜色、Harr小波和LBP纹理特征, 利用背景信息和目标信息建立特征分类器, 自适应地更新目标的特征模板, 在粒子滤波跟踪算法基础上实现了稳定跟踪;赵晓林等人提出基于活动基模型的目标跟踪方法, 用一定数量的粒子表示运动目标的轮廓, 以目标的局部边缘作为特征, 以活动基模型 (局部边缘特征模型) 作为特征模板, 在粒子滤波算法基础上进行非刚体目标跟踪, 该方法在目标发生形状变化以及存在遮挡情况下有很好的跟踪性能。
4.4 基于支持向量机SVM分类学习目标跟踪
有效的区分目标与背景是非常重要的, 通过特征评价算法建立对目标和背景具有良好可分性的的视觉特征实现跟踪。Avidan以支持向量机SVM离线学习得到目标与背景特征, 称为支持向量机跟踪算法 (SVM-Tracking) 。
Tian等人利用一组线性支持向量机分类器构建了SVM分类模型, 这些分类器在跟踪中不同时期具有自适应加权判别功能, 在外观变化较大时候跟踪结果比较鲁棒。但是, 对于背景和目标相似情况, 会产生起凡是和不可靠的训练样本选择。Lu等人设计SVM分类器采用多内核学习 (MKL) 的视觉目标跟踪, MKL的目的是学习的最佳线性组合不同的内核的基础上的不同特征, 包括颜色信息和视觉词空间金字塔直方图, 解决了上面文献的问题。
4.5 跟踪算法框架融合应用
上面介绍的三种跟踪算法除了可以单独作为框架使用, 还可以进行多算法框架融合使用, 以提高跟踪的可靠性和准确性。例如:姚红革等人使用目标的颜色特征, 把目标的颜色直方图改进成颜色概率分布图, 以加权颜色概率分布模型作为目标的特征模板, 采用Bhattacharyya度量系数, 在Mean Shift和卡尔曼滤波跟踪算法基础上实现了人的部分遮挡时的跟踪;王相海等人利用目标的颜色特征, 以基于重要区域的目标颜色直方图统计模型作为特征模板, 在Mean Shift、卡尔曼滤波和粒子滤波融合跟踪算法基础上实现了车辆的有效跟踪;王鑫等人融合目标的颜色和运动特征, 以颜色直方图和运动直方图作为目标的特征模板, 使用改进的Camshift算法嵌入到粒子滤波算法中实现了人手和杯子的有效跟踪。
4.6 目标跟踪研究最新发展
除了以上介绍的四种经典算法外, 近年来发展起来的一些视频目标跟踪算法如, TLD、CT、Struck、MILTrack等, 也越来越受到了研究人员的广泛关注。简要的介绍前两种算法:TLD是Zdenek Kalal等提出的一种新的单目标长时间跟踪算法。该算法结合传统检测和跟踪算法来解决被跟踪目标在被跟踪过程中发生的形变、部分遮挡等问题。同时, 通过一种改进的在线学习机制不断更新跟踪模块的“显著特征点”和检测模块的目标模型及相关参数, 从而使得跟踪效果更加稳定、鲁棒、可靠。压缩感知跟踪 (CT) 算法是Zhang等人通过一定的宽松规则, 生成一个稀疏的投影矩阵, 然后直接将压缩后的数据作为特征使用, 可以进行快速的运动目标跟踪。对于目标的旋转和缩放变化的有较好处理, 理论上有了较大的突破。
5 结束语
运动目标跟踪作为计算机视觉领域研究的一个重要内容, 融合了多学科知识, 具有很好的发展前景。尽管近年来运动目标跟踪领域取得了很大进步, 性能优异的跟踪算法不断被提出, 但仍存在许多需要解决的问题。研究出一种通用性好、实时性强、准确度高的跟踪算法是未来的发展方向。对已有的跟踪算法进行优化可以提升跟踪的可靠性和精度。根据文章提出的运动目标跟踪方法分析流程体系结构图, 可以在特征的选择、跟踪算法框架、运动预测算法这三方面做出创新, 充分利用上下情景信息、背景和辅助目标信息, 在一些特定的场合, 适当增加机位扩展视频的拍摄角度, 更多的获取目标特征信息, 再对这些特征信息进行融合来降低跟踪的难度, 有效解决遮挡的跟踪问题。
摘要:运动目标跟踪是一个颇具挑战性的问题, 文章对当前运动目标跟踪问题的相关方法进行分析研究。首先从一个崭新的角度提出了一套分析运动目标跟踪技术的体系结构方法。然后采用这种体系结构对列举的每种跟踪算法方案进行阐述和归类, 指出了每种方案适用范围及其局限性。最后针对研究过程中所面临的难题, 展望了运动目标跟踪技术新的发展趋势。
关键词:运动目标跟踪,特征模板提取,跟踪算法框架,运动目标预测
参考文献
[1]X.Li, W.Hu, C.Shen, Z.Zhang, A.Dick, and A.Hengel.“A Survey of Appearance Models in Visual Object Tracking”TIST, 2013.
[2]张娟, 毛晓波, 陈铁军.运动目标踪算法研究综述[J].计算机应用研究, 2009, 26 (12) .
[3]薛陈, 朱明, 刘春香.遮挡情况下目标跟踪算法综述[J].中国光学与应用光学, 2009, 2 (5) .
[4]陈建军, 安国成, 张索非, 等.基于核共生矩阵的均值移动跟踪算法[J].中国图像图形学报, 2010, 15 (10) :1499-1506.
[5]田纲, 胡瑞敏, 王中元.一种基于运动矢量分析的MeanShift目标跟踪算法[J].中国图像图形学报, 2010, 15 (1) :85-90.
[6]袁广林, 薛模根, 谢恺, 等.多颜色直方图自适应组合MeanShift跟踪[J].中国图像图形学报, 2011, 16 (10) :1832-1840.
[7]徐哈宁, 肖慧, 侯宏录.体育视频序列中基于IMM的运动目标跟踪算法[J].中国图像图形学报, 2009, 14 (5) :920-924.
[8]齐美彬, 杨立宾, 蒋建国.自适应权值的MRF分割与跟踪方法[J].中国图像图形学报, 2011, 16 (4) :572-578.
运动目标跟踪 篇5
机载光电跟踪测量设备的目标定位误差分析
摘要:光电跟踪和测量设备用于测量飞行器在空中的飞行轨迹,作为飞行器飞行性能的评价.随着现代技术的发展,对飞行器性能提出愈来愈高的要求,从而也对跟踪和测量飞行器飞行轨迹的光电跟踪和测量设备提出了相应的`技术进步要求,特别是对其测量精度指标.如何做好和完善误差分析、误差分配和误差综合,成为研制更高性能的光电跟踪测量设备总体设计中的一个重要问题,贯穿从可行性论证、方案论证、方案设计、设计、制造、装调、直到试验等整个研制过程.就这一类设备中最为复杂的机载光电跟踪测量设备的目标定位误差(即3轴上的测量误差),通过建立从被测目标到地面中心测量站9个坐标系,进行31次线性变换,构造35个变量的统一测量方程;进行测量误差因素的分析和分配,以及用蒙特卡洛法来分析和计算系统的目标定位误差. 作者: 王家骐金光颜昌翔 Author: WANG Jia-qiJIN GuangYAN Chang-xiang 作者单位: 中国科学院,长春光学精密机械与物理研究所,吉林,长春,130033 期 刊: 光学精密工程 ISTICEIPKU Journal: OPTICS AND PRECISION ENGINEERING 年,卷(期): ,13(2) 分类号: V556.5 关键词: 误差分析 蒙特卡洛法 定位误差分析 光电跟踪测量 机标分类号: TN9 TN6 机标关键词: 机载光电跟踪测量设备目标定位误差定位误差分析光电跟踪飞行器飞行轨迹测量误差飞行性能总体设计蒙特卡洛法可行性论证线性变换现代技术误差综合误差因素误差分配精度指标技术进步计算系统 基金项目:
运动目标跟踪 篇6
关键词:制导与控制;制导信息估计;协同探测;交叉定位;Kalman滤波器
中图分类号:TJ765 文献标识码:A 文章编号:1673-5048(2014)03-0003-05
AnAlgorithmofTargetTrackingBasedonTwoMissiles CooperativeLocationInformation
DONGJipeng,TANGDong
(ChinaAirborneMissileAcademy,Luoyang471009,China)
Abstract:Analgorithmoftargettrackingbasedontwomissilesdirectionfindinglocationinformation ispresented.First,theleastsquaresolutionofthetargetlocationisgivenbasedoncrosslocationprinci ple,andthenthesolutionisusedasthemeasurementoftheKalmanfiltertoestimatethetargetslocation andvelocity.Simulationresultsshowthattheproposedmethodeffectivelyavoidstheproblemsthatthelo cationestimationcovarianceistoolargeandthevelocitycannotbeobtained.
Keywords:guidanceandcontrol;guidedinformationestimation;collaborativedetection;crossing positioning;Kalmanfilter
0 引 言
为了提高抗干扰能力,增加武器作战效能,世 界上许多国家开始关注导弹武器协同问题的研究, 并取得了一定成果[1-3]。其典型代表有俄罗斯的 “花岗岩”超声速反舰导弹[4-5]和美国的“网火”战 术导弹[6]。
导弹协同作战的内涵包括协同探测和协同制 导两方面。其中,协同探测使用两枚或多枚导弹 的测量信息,通过数据融合等技术手段,可以获得 比传统单枚导弹更多的目标信息,能够有效地提高制导精度和抗干扰能力,获得了国内外学者的 广泛关注。文献[7-8]分别给出了不同的基于角 度信息的多站无源定位算法,但受测角误差的影 响,其定位误差方差较大,且仅能实现对目标位置 的测量。文献[9]以双机测量的目标角度信息为量 测,使用无迹Kalman滤波实现了双机对目标的协 同跟踪,但为了解决基于角度信息目标跟踪滤波 算法的非线性本质,滤波器设计复杂,且需要量测 信息的统计特征满足一定限制才能使用,难以工 程实现。本文基于数据链的两枚导弹协同探测问 题,首先通过测向交叉定位算法完成基于导引头 测角信息的双弹协同定位,然后将协同定位信息 作为量测量,应用Kalman滤波器完成了对机动目 标的跟踪,算法实现简单,且能完成对机动目标的 高精度跟踪。
1 基于测向交叉原理的协同定位技术
1.1 测向交叉定位算法
测向交叉定位法的基本原理是利用两枚或两 枚以上导弹同时对同一目标进行探测,得到两条 或两条以上的测向方位线(视线),在没有测向误 差的情况下,这些测向方位线都是相交于一点 的,这个交点就是目标位置,其定位原理如图1 所示。
但是,实际上导弹测向是有误差的,由于误差 的存在,两条测向方位线很难能在同一点相交。 如果以视线为中心,以视线角误差为锥角,目标将 出现在两枚导弹的视线锥交叉的位置,但在远距, 这两个锥的交集变得很大,如何在其中确定目标 点,是一个需要考虑的问题。
仿真条件如下:
(1)A弹位置为[0 0 2000]T,B弹位置为 [0 0 -2000]T,A,B两弹的速度加速度均为 零;
(2)目标初始位置为[8000 5000 2000]T,初始速度为[-200 100 100]T,加速 度为0;
(3)A弹测角噪声方差为0.1°,B弹测角噪声 方差为0.2°;
(4)仿真步长0.1s。
交叉定位算法获得的目标位置和定位误差如 图3~6所示。
交叉定位算法受导引头测角噪声影响,定位 误差随距离增大而增大,图3~6的仿真曲线表明, 对于均方差为0.1°的测角噪声,交叉定位算法输 出的定位误差通常为弹目距离(较近的导弹)的 4%。为降低交叉定位算法的定位误差,使用Kal man滤波器对交叉定位算法获得的目标位置进行 滤波,一方面可以减小由噪声引起的误差,另一方 面可以估计交叉定位算法无法获得的目标速度和 加速度。
验证对机动目标的定位精度,仿真条件如下:
(1)A弹位置为[0 0 2000]T,B弹位置为 [0 0 -2000]T,A,B两弹的速度加速度均为 零;
(2)目标的初始位置为[8000 5000 2000]T,初始速度为[300 0 0]T,加速度为 [0 10sin(0.1πt) 10sin(0.1πt)]T;
(3)A弹测角噪声方差为0.1°,B弹测角噪声 方差为0.2°;
(4)仿真步长0.1s。
(5)目标机动常数α=0.5,目标加速度引起 的系统噪声方差取100;
(6)滤波器中目标初值位置装订为[8800 5500 2200]T,初始速度装订为[-180 -90 -90]T;
3 结 论
使用交叉定位算法和Kalman滤波器研究了基于两枚导弹测角信息的目标跟踪技术,结果表明:
(1)由交叉滤波定位的位置误差的幅值可知, 使用滤波器对交叉定位结果进行滤波能够大幅度 降低目标位置估计误差;
(2)由位置误差的收敛情况看,相对于单枚 导弹的目标估计算法来说,交叉滤波定位不存在 不可观测项,滤波效果在三方向均收敛;
(3)由速度跟踪效果看,交叉滤波定位能够 快速消除初始误差,目标速度由-180m/s收敛为 0m/s的时间小于3s(30次步长),对目标速度的 跟踪效果较为理想,滤波器收敛后,速度误差能够 控制在20m/s以内。
参考文献:
[1]ChoiJY,ChwaDK,ChoHP.NonlinearAdaptiveGuid anceConsideringTargetUncertaintiesandControlLoop Dynamics[C]∥ProceedingsofAmericanControlConfer ence,IEEE,2001,1:506-511.
[2]张波,陈旭情,李永翔.战术导弹数据链及其对抗技术 [J].飞航导弹,2007(2):12-15.
[3]MuellerER,JardinMR.4-DOperationalConceptsfor UAV/ATCIntegration[C]//Proceedingsofthe2ndAIAA “UnmannedUnlimited”Systems,Technologies,andOp erations-AerospaceConference,AIAA2003-6649,San Diego,California,2003.
[4]姜百汇,米小川,游志成.数据链技术在国外飞航导 弹上的应用[J].飞航导弹,2008(8):30-33.
[5]AsenstorferJ,CoxT,WilkschD.TacticalDataLinkSys temsandtheAustralianDefenceForce(ADF)-Technol ogyDevelopmentsandInteroperabilityIssues[R].De fenceScienceandTechnologyOrganizationSalisbury (Australian)INFOScienceLAB,2003.
[6]RichardsA,BellinghamJ,TillersonM,etal.Coordina tionandControlofMultipleUAVs[C]//AIAAGuidance, Navigation,andControlConference,Monterey,Califor nia,2002.
[7]邱玲,沈振康.三维角度被动跟踪定位的最小二乘— 卡尔曼滤波算法[J].红外与激光工程,2001,30(2): 83-86.
[8]WangD,ZhangL,WuY.ConstrainedTotalLeast SquaresAlgorithmforPassiveLocationBasedonBearing -onlyMeasurements[J].ScienceinChinaSeriesF:In formationSciences,2007,50(4):576-586.
[9]张平,方洋旺,朱剑辉,等.基于UKF算法的双机协 同无源跟踪[J].电光与控制,2012,19(4):26-30.
(5)目标机动常数α=0.5,目标加速度引起 的系统噪声方差取100;
(6)滤波器中目标初值位置装订为[8800 5500 2200]T,初始速度装订为[-180 -90 -90]T;
3 结 论
使用交叉定位算法和Kalman滤波器研究了基于两枚导弹测角信息的目标跟踪技术,结果表明:
(1)由交叉滤波定位的位置误差的幅值可知, 使用滤波器对交叉定位结果进行滤波能够大幅度 降低目标位置估计误差;
(2)由位置误差的收敛情况看,相对于单枚 导弹的目标估计算法来说,交叉滤波定位不存在 不可观测项,滤波效果在三方向均收敛;
(3)由速度跟踪效果看,交叉滤波定位能够 快速消除初始误差,目标速度由-180m/s收敛为 0m/s的时间小于3s(30次步长),对目标速度的 跟踪效果较为理想,滤波器收敛后,速度误差能够 控制在20m/s以内。
参考文献:
[1]ChoiJY,ChwaDK,ChoHP.NonlinearAdaptiveGuid anceConsideringTargetUncertaintiesandControlLoop Dynamics[C]∥ProceedingsofAmericanControlConfer ence,IEEE,2001,1:506-511.
[2]张波,陈旭情,李永翔.战术导弹数据链及其对抗技术 [J].飞航导弹,2007(2):12-15.
[3]MuellerER,JardinMR.4-DOperationalConceptsfor UAV/ATCIntegration[C]//Proceedingsofthe2ndAIAA “UnmannedUnlimited”Systems,Technologies,andOp erations-AerospaceConference,AIAA2003-6649,San Diego,California,2003.
[4]姜百汇,米小川,游志成.数据链技术在国外飞航导 弹上的应用[J].飞航导弹,2008(8):30-33.
[5]AsenstorferJ,CoxT,WilkschD.TacticalDataLinkSys temsandtheAustralianDefenceForce(ADF)-Technol ogyDevelopmentsandInteroperabilityIssues[R].De fenceScienceandTechnologyOrganizationSalisbury (Australian)INFOScienceLAB,2003.
[6]RichardsA,BellinghamJ,TillersonM,etal.Coordina tionandControlofMultipleUAVs[C]//AIAAGuidance, Navigation,andControlConference,Monterey,Califor nia,2002.
[7]邱玲,沈振康.三维角度被动跟踪定位的最小二乘— 卡尔曼滤波算法[J].红外与激光工程,2001,30(2): 83-86.
[8]WangD,ZhangL,WuY.ConstrainedTotalLeast SquaresAlgorithmforPassiveLocationBasedonBearing -onlyMeasurements[J].ScienceinChinaSeriesF:In formationSciences,2007,50(4):576-586.
[9]张平,方洋旺,朱剑辉,等.基于UKF算法的双机协 同无源跟踪[J].电光与控制,2012,19(4):26-30.
(5)目标机动常数α=0.5,目标加速度引起 的系统噪声方差取100;
(6)滤波器中目标初值位置装订为[8800 5500 2200]T,初始速度装订为[-180 -90 -90]T;
3 结 论
使用交叉定位算法和Kalman滤波器研究了基于两枚导弹测角信息的目标跟踪技术,结果表明:
(1)由交叉滤波定位的位置误差的幅值可知, 使用滤波器对交叉定位结果进行滤波能够大幅度 降低目标位置估计误差;
(2)由位置误差的收敛情况看,相对于单枚 导弹的目标估计算法来说,交叉滤波定位不存在 不可观测项,滤波效果在三方向均收敛;
(3)由速度跟踪效果看,交叉滤波定位能够 快速消除初始误差,目标速度由-180m/s收敛为 0m/s的时间小于3s(30次步长),对目标速度的 跟踪效果较为理想,滤波器收敛后,速度误差能够 控制在20m/s以内。
参考文献:
[1]ChoiJY,ChwaDK,ChoHP.NonlinearAdaptiveGuid anceConsideringTargetUncertaintiesandControlLoop Dynamics[C]∥ProceedingsofAmericanControlConfer ence,IEEE,2001,1:506-511.
[2]张波,陈旭情,李永翔.战术导弹数据链及其对抗技术 [J].飞航导弹,2007(2):12-15.
[3]MuellerER,JardinMR.4-DOperationalConceptsfor UAV/ATCIntegration[C]//Proceedingsofthe2ndAIAA “UnmannedUnlimited”Systems,Technologies,andOp erations-AerospaceConference,AIAA2003-6649,San Diego,California,2003.
[4]姜百汇,米小川,游志成.数据链技术在国外飞航导 弹上的应用[J].飞航导弹,2008(8):30-33.
[5]AsenstorferJ,CoxT,WilkschD.TacticalDataLinkSys temsandtheAustralianDefenceForce(ADF)-Technol ogyDevelopmentsandInteroperabilityIssues[R].De fenceScienceandTechnologyOrganizationSalisbury (Australian)INFOScienceLAB,2003.
[6]RichardsA,BellinghamJ,TillersonM,etal.Coordina tionandControlofMultipleUAVs[C]//AIAAGuidance, Navigation,andControlConference,Monterey,Califor nia,2002.
[7]邱玲,沈振康.三维角度被动跟踪定位的最小二乘— 卡尔曼滤波算法[J].红外与激光工程,2001,30(2): 83-86.
[8]WangD,ZhangL,WuY.ConstrainedTotalLeast SquaresAlgorithmforPassiveLocationBasedonBearing -onlyMeasurements[J].ScienceinChinaSeriesF:In formationSciences,2007,50(4):576-586.
运动目标相关跟踪算法的研究 篇7
相关跟踪算法[1]是将包含目标的模板图像在待匹配图像上以不同的偏移值位移,根据相关函数逐像素计算模板图像和待匹配图像间的相似程度,相关函数取得最大值的位置就是目标位置。由于此跟踪方法不需要对图像进行分割,也不需要提取目标的特征,只需在原始图像数据上进行运算即可,保留了图像的全部信息,所以在许多复杂环境场景中是一种切实可行的目标跟踪方法。因此,相关跟踪算法在跟踪系统中得到了广泛的应用。常见的相关跟踪算法有平均绝对差分法(MAD)、序贯相似性检测算法[1](SSDA)、最大近邻距离[2,3](Maximum Close Distance,MCD)相关匹配算法等。MCD算法因运算量较小,不受个别噪声点的影响成为应用广泛的方法。
在对目标的跟踪过程中,如果对每一帧图像的每个位置都要计算模板图像和它的匹配值来确定目标的位置,计算量太大,不能满足跟踪系统对实时性的要求。一种简化匹配过程的常用方法是根据目标前面的运动信息去预测当前位置,这样可缩小搜索范围,减少目标跟踪中的计算量,提高跟踪的稳定性和抗干扰性。
1 MCD算法
MCD相关算法是结合平均Hausdorff距离算法和最小绝对差分法两种算法的思想定义的一种图像间的相似性度量函数。
设模板图像A的大小为M× N,那么它和任一同样大小的图像B的近邻距离为:
其中:
该算法原理为:首先比较待匹配的两幅图像对应点的灰度绝对差,如果这个绝对差小于某个确定的阈值(这个阈值由实验观察得到,经验表明,该值取10~20 之间比较合适),就可以认为这两点近似;然后统计整幅图像区域中对应点像素绝对差小于这个阈值的数目,就可以确定这两幅图像的相似程度,把这个数目定义为MCD距离。MCD距离越大说明两幅图像越相似。
将该算法应用到图像匹配上时,让模板图像在包含目标的每帧图像内移动,计算每个位置的MCD距离,统计得到整幅图像的一个相关曲面,这个曲面的峰值就是最佳匹配位置。
可见,MCD相关算法用于图像匹配时,目标图像中只有那些与模板图像相近的像素点才被用于匹配度量,而那些与模板图像像素相差很大的点被抛弃。因此,该算法避免了传统相关匹配算法中由于噪声点引起的相关曲面不突出的缺点。
在对目标跟踪过程中,目标模板维系了整个跟踪的动态过程。在跟踪过程中由于目标的运动,视场内目标的大小、形状会发生变化,因此,在跟踪过程中模板图像要做到自动地调节变化。同时由于目标的运动,背景也会不断变化,实际图像会伴随出现变形、旋转、噪声、遮挡等变化。因此在对目标跟踪过程中需要对目标模板进行合理更新,以提高跟踪的稳定性。选择合适的模板更新策略,可以在一定程度上克服这些变化对跟踪效果的影响。
2 运动预测原理
运动预测是利用目标在运动过程中具有轨迹连续性的特点,首先根据目标过去的跟踪点位置信息预测当前位置,然后在预测跟踪点周围一定范围内进行细致的匹配搜索。可见,运动预测缩小了匹配范围,减少了计算量,在一定程度上还能减少噪声对跟踪的影响,保证了匹配的稳定性和抗干扰性。
常用的预测方法有:线性预测、平方预测、综合预测、卡尔曼(Kalman)滤波[4]、粒子滤波等。综合预测是线性预测与平方预测的加权组合,同时具有二者的优点,综合预测器的表达式为:
式中:为线性预测器表达式;为平方预测器表达式;w(k) 为加权函数,满足。
权函数w(k) 的构造方法可根据实时测得的线性预测器和平方预测器的误差来构造。综合预测器的预测值为:
三点线性预测器能够较好地预测目标的快速机动情况,五点二次平方预测器具有一定的平滑作用[5],将二者加权组合得到综合预测器的表达式。用综合预测器取得目标的预测位置后,再根据匹配信息在预测点的周围一定范围内进行匹配,以此确定当前帧的实测位置,这比在待搜索图像中遍历搜索然后再确定目标匹配点位置大大减少了计算量和匹配时间。
3 综合预测在MCD算法中的应用
MCD算法的优点在于计算量小,并且不受个别噪声点的影响;自适应模板的修正策略可以在一定程度上克服实际图像的变形、噪声、遮挡等变化。研究过程中发现,正常情况下此方法可以实现稳定的跟踪,但当目标的状态变化较大时,跟踪效果不理想。所以想到在更新之前采用运动预测目标可能出现的位置对模板更新进行约束。通过对几种预测器的详细分析可知:综合预测器的运算量不大,用于跟踪不会影响跟踪系统对实时性的要求,用它预测目标的位置,预测值较接近于真实值。本文对MCD算法做了改进,提出了加入更新和预测的相关跟踪算法——基于MCD距离的自适应模板修正策略和基于综合预测器的相关跟踪算法,并且分别让线性预测和平方预测与MCD算法结合,对同一序列图像进行跟踪,通过仿真实验对这三种预测器的性能进行了验证、比较。
4 仿真实验结果
仿真实验对一组红外序列图像进行跟踪。基于线性预测、平方预测的算法跟踪如图1 所示,基于综合预测的MCD算法跟踪如图2 所示。
对比图1,图2 可以看出:在抗干扰能力方面,线性预测跟踪遇到类似目标时跟踪受干扰,模板发生了漂移,如第55 帧图;综合预测跟踪不受类似目标的干扰,抗干扰能力明显强于线性预测跟踪。在抗遮挡能力方面,线性预测跟踪在目标被部分遮挡时,模板就一直漂移,直到目标完全出现才能稳定跟踪;平方预测跟踪在目标被遮挡一小部分时跟踪稳定,在第59 帧目标被进一步遮挡时,模板发生了漂移,直至目标大部分出现时才正确跟踪;综合预测跟踪由图2(b)和图2(c)可看出目标部分被遮挡或全部被短暂遮挡时跟踪仍能稳定进行。由此可见,线性预测跟踪的抗遮挡能力最差,平方预测跟踪稍好一点,综合预测跟踪的抗遮挡能力最强。
5 结语
MCD跟踪算法运算量较小并且不受个别噪声点的影响,因此成为运动目标跟踪中的常用方法。如果在匹配过程中根据目标前面的运动信息去预测当前位置,这样可缩小搜索范围,减少目标跟踪中的计算量,提高跟踪的稳定性和抗干扰性。本文采用综合预测器与MCD相结合的方法对红外序列图像进行仿真跟踪。仿真结果表明:在目标运动轨迹变化不是太大的情况下,即使目标部分被遮挡或全部被短暂遮挡,该算法仍能准确预测出目标下一时刻的位置,表明该算法的稳定性。类似目标的干扰对跟踪没产生影响,表明该算法还具有一定的抗干扰性。
参考文献
[1]张万清.飞航导弹电视导引头[M].北京:宇航出版社,1994.
[2]ZHANG Guilin,REN Xianyi,ZHANG Tianxu.Correlation tracking using a novel distance measurement as feedback[J].Infrared and Laser Engineering,2003,32(6):47-53.
[3]罗诗途,张玘,罗飞路,等.基于自适应模板修正的相关跟踪方法[J].仪器仪表学报,2004,25(4):633-635.
[4]张贤达.现代信号处理[M].2版.北京:清华大学出版社,2002.
[5]安建虎.相关跟踪与特征匹配技术研究[D].沈阳:中国科学院沈阳自动化研究所,2002.
基于运动检测的目标跟踪算法研究 篇8
首先将摄像机拍摄的模拟图像转化成计算机能识别和处理的数字图像, 再运用数字图像相关算法进行处理和存储。运动目标检测主要检测出图像特定区域的运动物体并标注, 目标跟踪算法对运动物体进一步识别并对它在视野中的路径进行跟踪。在前景中找到运动目标, 获取特征后反馈给跟踪系统, 跟踪系统就根据获取的运动目标的特征进行跟踪, 是行为分析和图像理解的重要依据。
1 运动目标检测
运动目标检测是运动目标跟踪的基础, 只有检测到了运动目标, 才能利用目标跟踪算法进行运动目标的跟踪。所谓运动目标检测, 就是运用数字图像处理方法找出视频中连续帧间的相关性, 检测出视频中运动物体的位置和大小。运动目标检测的基本方法主要有三种:帧间差分法, 背景差分法和光流法。
1.1 帧间差分法
帧间差分法主要是对连续两帧图像作差, 如果对应像素点无差别则认为其为背景像素点, 否则为运动前景。最后遍历整帧图像得到的检测结果为两帧图像中运动前景所在位置。从理论上来说检测结果并不是运动前景的完整表示, 一般情况下为了消除噪声影响会设定一个阈值K对差值结果进行二值化。
当摄像头固定时不需要背景图像也能检测出运动目标, 算法简单保证运动目标跟踪的实时性。运动目标整体颜色很相似时只能检测出运动目标边界;如果运动目标的速率太快, 检测结果会是两个分离的运动目标;如果时间间隔太短, 两帧图像中运动目标就会在同一位置, 运动目标被误当成背景差分掉了, 导致检测不出运动目标。
假设在t时刻当前帧像素点 (x, y) 处的像素值为f (x, y, t) , t时刻背景模型中像素点 (x, y) 处的像素值f (x, y, t-l) , 则背景差分法的数学表达式为:
然后对背景差分后的结果图像二值化:
其中fout (x, y, t) 为输出的检测结果, K为所设的阈值。
当摄像头固定时不需要背景图像也能检测出运动目标, 并且算法简单, 所以实际应用中可以保证实时性。但是当运动目标速率太快, 或者与背景颜色接近时效果不太理想。
1.2 背景差分法
背景差分法算法简单、对硬件的要求低, 同时运动目标检测的速度快、当背景环境不发生变化时, 精确度很高, 基本原理是用视频中当前帧与背景图像作差。当运动目标与背景的差别较大时, 不仅能检测出运动目标的位置, 而且能准确的检测出运动目标的大小。最关键步骤是得到准确的实时背景图像, 常见的背景建模方法主要有中值法, 均值法, 卡尔曼滤波器法, 单高斯分布法, 多高斯分布法。
假设在t时刻当前帧像素点 (x, y) 处的像素值为fn (x, y, t) , t时刻背景模型中像素点 (x, y) 处的像素值fb (x, y, t) , 则背景差分法的数学表达式为:
然后对背景差分后的结果图像二值化:
其中fout (x, y, t) 为输出的检测结果, K为所设的阈值。
一般情况下在对检测结果二值化以后都需要对其连通性进行分析和数学形态学处理, 以去除检测结果内部的空洞和图像中出现的噪声, 同时也可以对运动目标的分裂和多个运动目标融合的情况进行分析。由公式可以看出背景差分法最关键的步骤是得到准确的实时背景图像。
1.3 光流法
光流法其实是目前运动目标检测最准确的算法, 算法复杂度高。它主要是把三维空间中的运动投影到二维的平面中就会呈现中光流的表象, 通过二维平面中每一个像素的灰度信息的分析得到灰度运动的瞬时速度。在摄像机固定的时候, 背景一般不会发生变化, 所以其灰度不变, 其对应的光流为0, 也就是说光流不为0的地方就是前景, 当摄像机运动的时候可以分析像素灰度的相对运动来检测运动目标。
外界的光线变化时即使没有运动目标也会产生光流;灰度等级不够时由于被量化, 变化被隐藏观测不到光流。
2 运动目标跟踪
运动目标跟踪建立在运动目标检测基础上, 是计算机视觉领域的重要内容。目标跟踪主要分为特征提取和匹配搜索两个步骤。主要有基于目标模板的跟踪、基于目标特征的跟踪、基于目标区域的跟踪及基于目标轮廓的跟踪四种基本跟踪方法。
2.1 基于模板的跟踪
模板匹配法是最基本的算法, 基本原理是用运动目标的像素信息作为模板, 选用一种搜索算法用当前帧中搜索区域与模板进行比对, 判断的标准主要依据相似性度量, 核心是获得正确目标模板。
2.2 基于特征的跟踪
基于特征的跟踪是最普通的目标跟踪, 首先对目标的特征进行提取, 常见特征提取方法有不变矩特征、颜色特征、空间直方图特征等, 然后找到一种相似度量进行目标匹配。基于灰度图像相关度量有ABS (Absolute balance search) , 归一化相关匹配, 直方图匹配等算法。
2.3 基于区域的跟踪
基于目标区域的跟踪把检测到的运动目标区域当作目标模板, 用运动目标的颜色信息进行匹配。运动目标以颜色作为相似度量, 特征的提取主要包括以像素值统计为基础的颜色直方图, 以图像像素的矩为基础的颜色矩以及以视觉颜色空间为基础的颜色集。
2.4 基于轮廓的跟踪
基于目标轮廓的跟踪首先表示出运动目标的大体轮廓信息, 然后将目标边界作为特征模板进行搜索。比较经典的搜索算法主要有全局搜索, 分布搜索, 钻石搜索以及改进的三步搜索和四步搜索法。
3 相关性度量算法
目标的匹配通过计算相关性实现, 方法主要有ABS和归一化相关匹配。ABS匹配算法主要是用从运动目标中获取的像素模板图像与视频序列中的图像的像素值的差的绝对值来表示二者的相关性, 找出相关性最大的点作为最佳匹配点。常用算法有最小均方误差 (MSE) , 最小平均绝对值差值 (MAD) , 最大匹配像素统计 (MPC) 。归一化互相关匹配算法通过计算目标模板与当前帧图像互相关性匹配, 互相关性最大点就是最佳匹配点。
4 结语
目前运动目标的跟踪算法还存在一些尚未很好解决的共性问题, 如跟踪过程中目标性状、尺寸、位置、运动方向的改变;背景环境及光照条件的改变;目标被遮挡及部分遮挡的情况等。如何利用DSP等实现运动目标的实时性检测与跟踪, 多个摄像机之间如何进行联合跟踪, 这些问题都需要进一步探索和研究。
参考文献
[1]庞国瑞, 葛广英, 葛菁等.基于金字塔多分辨率和钻石搜索的目标跟踪算法及其在DSP上的实现[J].数据采集与处理, 2012, 27 (6) 710-716.
运动目标跟踪 篇9
1 三帧差分算法原理
传统帧间差分或者三帧差分得到的运动目标都存在一定的缺点,获得的运动目标不完整,特别是对于缓慢运动的目标会存在大量的空洞。本文采用一种改进的三帧差分算法确定运动区域[3]。该算法首先用Surendra背景提取算法提取有效背景,采用背景选择性更新方法对背景进行实时更新;用连续的三帧图像分别与背景进行差分,采用HSV颜色空间阴影去除方法对三个差分结果进行阴影去除,然后进行三帧差分,将差分结果进行“与”运算;最后用“与”运算得到的结果与中间帧背景减除的结果进行“或”运算,则可以得到运动区域。如图1所示。
2 Meanshift算法
2.1 Meanshift算法原理
从d维空间Rd中取出n个采样点xi,其中i=1,…,n,在这里能够给出在参考点x处的Meanshift向量的基本形式为
从式(1)中能够看出(xi-x)是样本点xi相对于确定的参考点x的偏移量大小,Meanshift算法的基本向量Mh(x)的含义是在多维空间中,首先选择一个参考点x,在事先确定区域内对样本点xi与参考点的偏移量先进行求和然后再求平均值[4]。可以看出,所有区域内的样本点xi是从概率密度函数f(x)中采样得到的,根据概率统计学可知如果概率密度梯度值不等于零,则函数梯度指向概率密度增加最大的那个方向,sh区域中的采样样本几乎都落在沿着概率密度梯度的方向。显然,相应的Meanshift向量Mh(x)就是指向概率密度梯度最大的方向。
如图2所示,大圆的范围表示为sh,图中箭头方向表示参考点x的偏移向量,空心圆为落入区域sh中的n个采样点xi∈sh,而实心圆就是Meanshift基本向量的参考点x。很显然,基本向量Mh(x)的结果就是使参考点向采样点概率密度最大的方向进行偏移。
从式(1)中能够看出,在区域sh(x)中所得到的采样点xi,无论确定的参考点x离采样点有多远,对Meanshift基本向量Mh(x)的计算结果的影响是一致的。通过仿真可以看出这样的形式会使得参考点的收敛速度变得很慢。通常情况下,参考点x附近的采样点对基本向量的估计结果起到的作用就越大,因此对距离参考点不同远近的采样点赋予了不同的权值,常用的Meanshift扩展形式可以写为
2.2 Meanshift跟踪算法
假定点集{xi*},i=1,2,…,n表示运动目标所在区域内的点,x0表示区域的中心坐标,并根据目标区域的大小h对其进行归一化处理[5]。因此,相对于中心x0处的参考目标模板,其他位置xi的颜色概率分布可以设为,u=1,…,m,表示为
式中:δ为克罗内克函数[6]。k(x)是核函数的轮廓函数,采用该函数给不同的像素点赋权值。对中心点附近的像素点赋予的权值比较大,离中心点远的像素点所得权值就会比较小。通过该函数可以使得密度估计更加稳定可靠。C的计算表达式为
依据式(4)同样可以得到在候选目标模板中位置y的目标颜色概率分布,u=1,2,…,m,表示为
通过式(5)可以看到Ch与y值之间并没有什么联系,根本原因是由于像素位置xi的形式是规则化网格,因此确定核密度和尺度h后,Ch的大小也就被确定了[7]。
通过上述可知,目标的跟踪过程其实就是计算目标模板和候选模板的相似度大小,从而找到最佳候选模板作为最佳目标位置。首先计算出颜色概率分布的值,然后通过计算Bhattacharyya系数得出目标模板与候选模板的相似程度,颜色概率分布的相似性度量可表示为
y0为当前视频帧图像的初始位置,式(6)在y0处进行泰勒展开可以得到
通过上式可以看出经过泰勒展开后,y值只受等式右边第二项的影响。这样看来可以利用Meanshift算法对其进行迭代,在区域中得到概率密度估计最大值,通过该值确定目标的最新位置y1[8]。完成迭代以后,y1的值就是最后匹配的最佳位置。
3 Kalman滤波器
Meanshift算法主要是在目标中心领域附近搜索出相似度最大的运动目标,如果目标运动太快,或是目标被障碍物遮挡,都会使得跟踪的结果有很大的误差。因此本文结合Kalman滤波算法,该算法主要具有预测当前帧状态向量的功能,它是根据以往帧观测向量进行预测的,这样就可以得到运动目标的预测位置目标。Kalman滤波器主要是运用最小均方误差估计方法对动态系统的状态序列进行计算,由此可以得到下一帧中运动目标区域的中心位置信息,与此同时替换当前帧运动目标区域的位置[9]。假设目标位置在x轴以及y轴的状态向量表示为X=(xc,yc)T,预测目标的位置在x轴以及y轴的测量矢量表示为Z=[xc,yc]T。首先初始化状态向量Xi,接着用该状态向量作为Kalman滤波器的观测值来预测相邻帧的值。
Kalman滤波器的状态方程和测量方程分别表示为
式中:A为状态转移矩阵;H为测量矩阵;Wi,Vi分别表示状态噪声向量和测量噪声向量,假定该噪声都是独立的白噪声,对应的方差分别为Q,R。
状态向量预测方程的表达式为
状态向量协方差矩阵预测方程的表达式为
状态向量更新方程表达式为
状态向量协方差更新方程表达式为
Kalman加权矩阵或增益矩阵表达式为
式中:为预测状态向量;为状态估计向量;Pi i-1为预测估计协方差;Pi为估计误差协方差。
4 基于Meanshift的改进跟踪算法
通常情况下,Meanshift算法是一种有效的跟踪算法,很大程度上能够保证很好的跟踪效果[10]。Meanshift算法没有过多的考虑目标的实际运动情况,而仅仅是用偏移量也就是最大概率梯度的方向来确定目标位置,这样就忽略了实际运动目标的运动速度和运动方向信息。Meanshift算法的缺点在于跟踪框对于运动速度过快的目标跟踪效果不好,甚至会脱离实际目标。跟不上目标的主要原因是因为选取的初始值不正确,使得之后的迭代就出现更多的错误。在Meanshift算法中,对泰勒式展开的目的是使得巴氏系数最大化,其中只有当y1值与y0值相差不大的时候泰勒展开有作用。这个时候,如果将当前帧的初始值定为前一帧目标的中心坐标,当目标运动过快时就不能准备跟踪目标。并且在目标被遮挡时,也容易造成跟踪失败,跟踪过程中窗口大小无法自适应变化。
针对以上问题,本文提出一种基于Meanshift算法的改进算法。采用改进的三帧差分法对运动目标区域进行提取,求得跟踪框轮廓,同时用Meanshift算法对运动目标进行跟踪,获得目标最大概率区域,将该区域中心作为跟踪框的中心。跟踪过程中通过巴氏系数判断是否目标被遮挡,若被遮挡则调用Kalman滤波进行预测跟踪。改进算法的优点在于可以使跟踪框自适应变化,并且当目标被遮挡之后也能很准确地跟踪运动目标。算法流程图如图3所示。
1)首先要获得前景区域即运动目标区域。采用三帧差分对运动区域进行提取,然后将运动区域用跟踪框进行标注。
2)其次利用Meanshift算法进行迭代,由于它是重心移动,即向反向投影图中概率大的地方移动,所以会得到运动目标的中心点位置。
3)将获得的运动目标中心点也就是最大概率点作为跟踪框的中心,这样就实现了准确的跟踪,同时实现了跟踪框的实时变化。
4)在每一帧图像中,都利用巴氏系数(式(1))判断运动目标是否被遮挡,如果巴氏系数大于阈值T(经过多次实验,取T=0.4效果最佳),则不调用Kalman预测算法;否则调用Kalman预测算法对运动目标进行预测跟踪。
5 实验结果分析
图4是传统Meanshift算法的跟踪结果。该视频的运动目标的大小由大变小,传统的Meanshift算法跟踪框不能实现自适应变化,所以整个过程中跟踪框不能随目标的大小而变化;并且当运动目标被遮挡时,第131帧图像中运动轨迹发生了错误的变化。图5是本文算法的跟踪结果。结合了三帧差分和Kalman预测跟踪,实现了跟踪框的自适应变化,并且遮挡之后还能准确跟踪。
6 结论
本文提出一种基于Meanshift算法的改进算法。采用改进的三帧差分法对运动目标区域进行提取,该方法不仅保证了系统的检测效率而且还可以完整地提取出待跟踪的运动目标区域,从而求得跟踪框轮廓。同时用Meanshift算法对运动目标进行跟踪,获得运动目标信息即最大概率区域,将该区域中心作为跟踪框的中心,这样实现了跟踪框的自适应变化。跟踪过程中通过对巴氏系数的计算,判断目标是否被遮挡,若被遮挡则启用Kalman对下一帧目标位置进行预测。实验结果证明,本文将Meanshift算法结合三帧差分和Kalman滤波算法可以对运动目标进行实时准确跟踪。
参考文献
[1]杨红霞,杭亦文,刘旭.基于Meanshift与Kalman的视频目标跟踪算法[J].武汉理工大学学报(信息与管理工程版),2012,34(2):147-150.
[2]姚放吾,许辰铭.基于目标质心的Meanshift跟踪算法[J].计算机技术与发展,2012,22(6):104-110.
[3]张英,车进,周鹏.一种改进的三帧差分运动目标实时检测算法[J].计算机测量与技术,2015,23(6):2073-2075.
[4]许辰铭.视频图像中的运动目标检测与跟踪[D].南京:南京邮电大学,2012.
[5]陈柱,李子印,朱明凌.基于块的Mean-shift跟踪算法[J].电视技术,2015,39(20):6-10.
[6]HE J W,YANG Y Y.Multi-iterative tracking method using meanshift based on kalman filter[C]//Proc.2014IEEE International Conference on Signal Processing,Communications and Computing(ICSPCC).[S.l.]:IEEE,2014:22-27.
[7]YIN H P,CHAI Y,YANG S X,et al.Fast-moving target tracking based on mean-shift and frame-difference methods[J].Systems engineering and electronics,2011,22(4):587-592.
[8]许慧芳,许亚军.智能视频监控系统中多摄像头协同跟踪算法[J].电视技术,2015,39(18):86-90.
[9]CHU C,HWANG J.Fully unsupervised learning of camera link models for tracking humans across non-overlapping cameras[J].IEEE transaction on circuits and systems for video technology,2014,24(6):979-994.
嵌入式运动目标跟踪系统设计 篇10
关键词:嵌入式系统,机器视觉,目标跟踪,S3C2410
机器视觉是目前智能机器人领域中的研究热点之一,涉及光电子学、图像处理、模式识别及计算机技术等诸多学科领域,内容极为广泛。机器视觉中图像处理与目标识别的特点是处理数据量大、计算复杂,对算法的实时性和精度要求高。
目前机器视觉处理平台主要有PC-BASED系统、PLC-BASED系统和FPGA系统。前两种系统体积大、软硬件系统复杂、成本高,使其应用范围受到了限制。后者使用硬件描述语言,算法开发难度大。DSP芯片具有专门的硬件乘法器,可实现单周期乘法与累加运算,具有价格低、速度快等特点,但其I/O接口功能较弱。32位ARM处理器处理能力已接近早期PC机的水平,且具有PC机无法比拟的体积小、价格廉、功耗低、性能强、可靠性高等特点。与DSP相比,其外围接口更加丰富,能够真正地“嵌入”到设备中,而且开放的体系结构也保证系统能够快速升级和更新。本文将机器视觉和嵌入式技术相结合,将机器视觉建立在基于ARM的嵌入式系统平台上,设计一种基于S3C2410的运动目标跟踪系统,为开展微型化嵌入式机器视觉研究进行有益的尝试。
1 系统总体结构与硬件设计方案
系统总体结构如图1所示。在S3C2410嵌入式系统平台上移植并配置Linux操作系统,针对平台和应用的特点,制作合适的文件系统,编写应用程序。运动目标经USB摄像头实时采集后,送入S3C2410处理器,利用嵌入式处理器的强大运算能力,对采集到的图像进行图像分割、特征提取、形心计算等后期处理,完成目标识别与定位,并控制步进电机,调整摄像头位姿,使摄像头对准运动目标,实现跟踪。实时性好和体积小巧是本嵌入式跟踪系统追求的目标。
基于ARM体系结构的32位微控制器S3C2410芯片,主频可达200 MHz。它提供了丰富的片内资源:分开的16 KB指令Cache和16 KB数据Cache、MMU虚拟存储器管理、LCD控制器、支持NAND Flash系统引导、系统管理器、3通道UART、4通道DMA、4通道PWM定时器、I/O端口、8通道10位ADC和触摸屏接口、IIC-BUS S3C2410接口、USB主机、USB设备、SD主卡和MMC卡接口等。集高速处理、资源丰富与强大的控制功能于一体,操作系统的配备更是普通DSP和MCU无法比拟的。嵌入式操作系统不仅具备一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件功能等,还具有可裁剪性、实时性、高可靠性、可移植性等特点。Linux操作系统的开源性方便外部设备驱动程序的编写,且开发成本低,现已成为主流的嵌入式操作系统。USB摄像头使用的电源可以直接从USB主板上获取,无需额外电源,增加了设备的便携性且数据传递远快于普通的串口和并口,其价格也大大低于市场上通用的高速图像采集装置。
综上所述,本系统采用了将Linux移植到ARM系统的方法,使用USB摄像头作为图像采集方式。ARM最小系统由一个核心母版和外部电路构成。核心母板包括SDRM、CPU、核心板接口等。外部电路主要有电源(主板5 V,I/O 3.3 V,CPU内核1.8 V)、LCD、USB接口和电机驱动电路等。Linux自带使用OV511采集芯片的摄像头驱动,市场上大部分CMOS摄像头采用中芯微电子公司ZC301P芯片,后者内置DSP硬件编解码器,采集延时大大缩短。
2 系统软件设计
基于嵌入式Linux的应用已经遍布很多领域,如移动多媒体设备、手持设备、车载导航系统、机械控制等。它支持多种CPU,包括没有使用MMU的平台。Linux原本是桌面和服务器市场上比较成功的操作系统,由于其免费、开放源码以及良好的代码风格和结构,使它在很短的时间内被移植到各种嵌入式系统中。系统采用Linux操作系统,不但提高了系统的可靠性和开发效率,并且充分发挥了32位CPU的多任务潜力。Linux操作系统的配置包括引导程序、内核和文件系统三个方面。引导程序是操作系统运行之前的一段程序,用来完成初始化设备、建立内存空间的映射图,为操作系统内核准备正确的环境。操作系统采用Linux 2.4.18内核,开发模式采用宿主开发模式,在宿主机上编译内核及应用程序,然后通过网口下载到目标平台运行,通过超级终端调试信息。文件系统负责存储系统配置文件,系统外设驱动程序。在操作系统配置完成后,主要工作是编写驱动程序和应用程序。
2.1 摄像头驱动程序
驱动程序是应用程序与硬件之间的一个中间软件层,在Linux中对设备驱动的访问也是以文件操作的方式实现。Video4linux是Linux中视频设备的内核驱动,只需在内核配置时静态加载即可。摄像头驱动加载过程为:在Linux Kernel Configuration对话框中,选择配置Multimedia device,设置Video For Linux为Y;点击Video For Linux,设置V4L information in proc file system为Y;回到Linux Kernel Configuration,选择USB support,设置USB OV511 Camera support为Y,然后保存退出,重新编译内核。ZC301摄像头的驱动采用静态加载的方式,具体步骤为:在/kerlnel/driver/usb下,解压驱动,打补丁,在该目录下新建spca5xx文件夹;编译内核,选中SP-CA5XXX,执行make dep、make zlmage、make modules命令,在/kernel/driver/usb/spca5xx中产生3个.o文件;用新内核启动insmod的3个.o文件。
2.2 电机驱动程序
步进电机是作为字符设备进行驱动的。Linux操作系统对字符设备的操作而言,驱动程序需要提供相关的几个操作,分别为open、read、write、ioctl等相关的函数入口点。在驱动程序的实现过程中需要定义这些文件相关的操作,填充进入file_operations结构中。ioctl提供用户程序对设备执行特定命令的方法,如设置设备驱动程序内部参数,控制设备操作特性等操作,调用成功返回非负值。由于对步进电机驱动程序没有相关的输入与输出,只需对I/O控制,驱动程序对于write操作和read操作仅需返回0,对于I/O控制在驱动程序中由ioctl函数实现。步进电机为四相步进电机,采用四相单、双八拍控制。步进电机转速和转向的控制通过改变输出端口高四位脉冲的顺序和频率实现。需要注意的是,由于用到了I/O端口,而在Linux中操作端口要用虚拟地址而非实际的物理地址,所以要修改内核代码。具体细节可参考相关文献[1,2]。
2.3 应用程序
系统应用程序流程如图2所示。初始化后打开设备文件(摄像头,LCD,电机),查询和确认设备性能,设置捕获的图像的宽和高,设置色深,建立内存映射,读取图像数据,对图像进行处理,驱动电机,关闭设备。图像采集有两种方式:内存映射(mmap)和直接读取设备(read)[3,4]。前者将设备文件映射到内存,绕过I/O访问,使得读取速度更快,但是占用更多系统资源。考虑系统实时性,这里采用内存映射方式。
3 目标跟踪与控制
由于嵌入式系统对功能、成本、处理能力、体积和可靠性均有严格要求,因此,对运动目标的跟踪,应根据具体的应用环境,选用合适的算法。常见的运动检测算法有帧间差分法、背景差分法和模板匹配法等。帧间差分法和背景差分法计算简单、实时处理效率高,但帧间差分法依赖于图像序列的选取间隔,不适合速度变化的运动跟踪;而背景差分法对场景变化敏感,不适合摄像头运动的情况;板板匹配方法适应性好,但是计算量较大[5,6]。考虑摄像头的图像采集速度、嵌入式处理器的处理能力和运动跟踪场合及速度等方面的要求,这里采用特征匹配的方法。处理过程主要包括运动检测、特征提取、目标定位与摄像机控制。流程如图3所示。
3.1 运动检测
首先采用背景差分法,将当前图像和参考背景模型相减实现运动目标检测。采用这种方法是因为在运动物体进入监控范围前,摄像机不会发生运动,进入监控范围后,对差分图像直接进行处理,能够检测运动目标所在区域,根据运动区域进行目标特征提取,不需要运动目标的先验知识。常见的背景模型建立方法有两种:一种是以图像序列的平均值作为参考图像;另一种是假定像素服从某种分布模型,如高斯分布,通过一段时间训练获得其参数并不断更新其分布参数。这里采用第一种方法。检测阈值T如下:
其中f(i,j)为当前图像,g(i,j)为背景图像,m、n为图像的维数。当阈值大于T时认为有运动目标进入监视区域。实际环境中,受光线等因素影响,运动目标的阴影也会与运动目标一起被检出,出现“形影不离”的现象,常导致跟踪系统误判。此时,可将式(1)中的前景和背景的图像亮度值用图像色度值取代,可有效地消除阴影的影响[7]。实际应用时取得了较好的效果。
差分运算初步检出目标后,还需要对图像进行处理,以方便后续的特征提取及目标识别。先对检出的差分图像进行分割,得到图像的二值图像。由于噪声的影响,得到的二值图像有很多的空洞和碎片,采用形态学的方法对图像进行腐蚀膨胀,可滤除噪声,得到较为清晰的结果。对于面积较小、不产生歧义的空洞干扰,可以不予考虑,只对面积较大的联通区域进行标记,以减少计算量。然后标记出最大面积的连通区域,即得到运动目标的所在区域。原始图像、差分图像及预处理结果如图4所示。
3.2 特征提取
不变矩是广泛应用的形状特征之一,一些基本的二维形状特征都与矩有直接的关系,被称为旋转、平移、尺度不变量。其具有稳定性好、易于实现、匹配效率高的特点。这里简单介绍不变矩的理论。对于非负整数p和q,二维数字图像f(x,y)在平面R2上的p+q原始矩、中心矩和归一化中心矩的算法如下:
式中,M和N为图像水平和垂直方向的维数,f(m,n)是图像在点(m,n)处的灰度值,为图像的重心坐标,r=2p+q+1。
利用归一化的二阶和三阶中心矩组合得到图像的7个不变矩,这7个不变矩对平移、旋转、尺度具有一定的适应性。选用前4个不变矩作为特征向量,然后保存特征向量作为识别规则。
首先,在当前图像的灰度图像中,根据运动目标所在联通区域的坐标,计算运动目标的特征向量,然后,提取运动目标的颜色信息。
3.3 目标定位与摄像机控制
提取运动目标的特征后,对新读取的每一帧图像转化为灰度图像,进行阈值分割、边缘提取、腐蚀膨胀处理后,对各联通单元进行标记。计算各联通单元的特征向量,与模板特征向量匹配度最高的即为运动目标区域。这里选择目标区域的重心定位。在复杂背景情况下,有时不能很好地提取运动目标的特征。当特征匹配失败时,可以结合图像的颜色信息,增加跟踪的稳定性。然后根据重心的坐标与图像中心坐标的位置,由步进电机调整摄像头的位姿使摄像头镜头对准目标。由重心的坐标和图像中心像素的坐标(X0,Y0)即可表示出运动目标偏离摄像机镜头中心的偏移量(x,y),根据偏移量方向和正负,建立控制规则库,调整电机转动的方向、速度和摄像机位姿。摄像机位姿调整分为水平、垂直两个方向。以水平方向为例介绍控制规则集:
其中,x表示水平方向偏移量的大小,m表示步进电机转动的脉冲数;X1、X2、…为常数,表示偏移量划分边界;M1、M2、…为常数,表示电机输出脉冲数量。相邻两帧的跟踪结果如图5所示。
本文研究了基于ARM处理器的嵌入式跟踪系统,利用图像信息实现运动目标跟踪,算法简单有效;在速度和精度两方面作了折中,具有体积小、性价比高的特点,适合于嵌入式系统。嵌入式操作系统的植入提高了系统功能的可裁剪性和扩展性,使系统具有良好的开放性。该系统的设计方案已在仿生机器视觉系统中成功应用。
参考文献
[1]田泽.嵌入式系统开发与应用[M].北京:北京航空航天大学出版社,2005.
[2]赵敏,刘振兴.基于嵌入式Linux的步进电机驱动程序设计[J].微计算机信息,2008,13(051):113-114.
[3]孟超,张曦煌.基于嵌入式系统的图像采集与传输设计[J].计算机工程与设计,2008,29(17):4415-4416.
[4]Video4Linux User′s Manual.http:/www.v4l.com.cn.
[5]杨淑莹.VC++图像处理程序设计[M].北京:清华大学出版社,2003.
[6]邵文珅,黄爱民,韦庆.动态场景下运动目标跟踪方法研究[J].计算机仿真,2006,05(50):181-184.
运动目标跟踪 篇11
关键词:雷达目标跟踪;制导信息估计;粒子滤波;RBPF算法;交互多模型
中图分类号:TP273 文献标识码:A 文章编号:1673-5048(2014)04-0003-05
0 引 言
在雷达信号处理领域,运动目标跟踪问题一直是长期以来的难点所在,实践证明在线性高斯系统中利用最小均方根误差准则进行目标状态估计的Kalman滤波方法[1]是最优的估计方法,但针对非线性非高斯系统,尽管采用基于局部线性化近似的扩展Kalman滤波(ExtendKF,EKF)[2]以及基于确定性采样的Unscented卡尔曼滤波(UnscentedKF,UKF)[3]方法可以解决一定形式的弱非线性、弱高斯条件下的目标跟踪问题,但由于其对系统模型的限制过强,在实际应用中大多无法满足。20世纪90年代出现了以粒子滤波(Particlefilter,PF)[4]为代表的非线性滤波方法,即利用蒙特卡罗采样得到的随机样本(也称为粒子)的加权和来近似状态的整个后验概率密度,其本质是采用蒙特卡罗仿真来获得高维积分的近似数值解,并解决各种估计问题。
粒子滤波面临的两个最大问题:一是粒子退化问题,即经过若干次迭代后,重要性权值可能集中到少数粒子上,这些粒子已经不能有效表达后验概率密度函数,为解决此问题,Gordon[5]等人提出了重采样方法,其思想是减少权值较小的粒子数,增加权值较大的粒子数。另一个问题是采用粒子数目过多导致计算的复杂度增加,当前的解决方法主要是从系统模型出发,利用模型自身的特性来提高滤波器性能。RaoBlackwellized方法[6]即将线性状态从系统中分离出来,利用Kalman滤波器对线性状态进行估计,利用粒子滤波(PF)对剩余的非线性状态进行估计,然后利用贝叶斯定理求取状态的后验概率。由于RBPF降低了粒子滤波状态的维数,与使用相同粒子数的传统PF算法相比,可以获得更优的性能。
当前的RaoBlackwellized粒子滤波(RBPF)中采用单一系统模型作为其中近似线性状态的估计,在跟踪机动目标时与真实飞行轨迹存在偏差。为解决此类问题,本文采用交互多模型的方法来获得状态的重要性分布,从而实现粒子状态的估计,并以仅有角度信息的雷达双目标跟踪问题为例,对改进的算法进行验证。
1 RaoBlackwellized粒子滤波算法
1.1 粒子滤波算法原理
解决目标跟踪问题的最优方法是贝叶斯滤波方法,它通过两个步骤来实现:状态预测和状态更新。贝叶斯滤波的实质是通过获得目标的后验概率密度,根据某些准则(如最大后验估计)近似地计算出目标状态值。定义系统模型如下:
其中:xk为目标在k时刻的状态,如目标的位置、速度、加速度等信息;yk为k时刻的测量值,如目标的位置、弹目距离、目标与传感器的相对角度等;p(xk|xk-1)为目标的动态模型,表征目标状态的动态变化情况;p(yk|xk)为系统的测量模型,表征目标在干扰情况下的测量变化情况。最优滤波的目的就是为了在已知观测信息的前提下获得目标的后验概率。
利用ChapmanKolmogoroff公式可得目标的后验概率密度为
上式从理论意义上提供了最优滤波问题的解决方法,但在非线性系统求解过程中无穷维积分的运算极为困难,无法得到其精确最优解。1.2 RaoBlackwellized粒子滤波算法流程
在RaoBlackwellized粒子滤波算法中,引入任意潜在变量λ,系统的动态模型和测量模型分别变为p(xk|xk-1,λk-1)和p(yk|xk,λk),已知重要性分布为π(λk|λ(i)1∶k-1,y1∶k),对当前粒子群{ω(i)k,λ(i)k,m(i)k,P(i)k:i=1,2,…,N}进行处理,其中m为均值,P为协方差,ω为粒子权重,N为粒子数。在k时刻,Rao-Blackwellized粒子滤波算法的流程如下:
(1)对粒子均值m和协方差P作卡尔曼滤波预测
k,P(i)k) (8)
利用RBPF算法可将多目标跟踪问题分为两个部分:多目标数据关联中后验概率分布的估计和基于数据关联单个目标跟踪的估计。可以分别通过序列重要性采样及Kalman滤波进行最小均方误差估计来解决,将跟踪过程简化为目标判别,即判别当前得到的测量值是目标还是杂波,并在此基础上对目标进行跟踪。
通过设定数据关联指标ck,当ck=j时表示当前测量值对应第j个目标,当ck=0时表示当前测量值经判别为杂波。
为使用RBPF滤波算法,必须首先确定一个重要性分布用以计算不同时刻k各个粒子的权值,即确定分布π(ck|y1∶k,c(i)1∶k-1),利用贝叶斯公式可以方便求取概率密度p(ck|y1∶k,c(i)1∶k-1),因此RBPF算法默认将p(ck|y1∶k,c(i)1∶k-1)作为最优的重要性分布π(ck|y1∶k,c(i)1∶k-1)来计算。 2 采用内部多模型的RBPF算法改进
当前RBPF中对数据关联后线性部分的处理一般采用EKF或UKF算法进行,但EKF或UKF算法多是针对于单一模型进行的,当系统状态在不同模型间发生变化时(如目标在平飞和机动间切换),利用RBPF算法中的线性部分采样单一的模型进行预测和校正往往会带来较大误差,为此对原始的RBPF算法进行改进,采样交互多模型的方法来进行辨识,判断目标当前是处于机动状态还是非机动状态,进而采取不同的模型来代入运算,具体过程如下:
(1)建立采用连续Wiener过程加速度模型(CWPA),系统状态为
Xk=(xk yk x·k y·k x¨k y¨k)T(11)
动力学模型为
(15)
其中:v(t)~N(0,σ2w)。此系统模型虽为非线性,但可采用EKF或UKF求解。
(3)对于每个粒子,分别采用两种模型对RBPF算法的线性部分进行预测及校正,求取其均值和方差,然后利用其每步的信息及误差方差的统计特性求取其对于每个模型的概率密度,即权重。
μik=f(vik,Sik) (16)
其中:μik为粒子权重;vik为测量信息;Sik为误差方差的统计特性。
(4)按照权重比例对计算的粒子均值及方差进行加权,作为下一次计算的初值,以此类推,可求取不同时刻的粒子状态。
mk=∑2
下面针对此问题分别采用线性Kalman滤波及RBPF粒子滤波来仿真,采用粒子数目为10。
图1所示为采用Kalman滤波的估计结果,可以看出,采用Kalman滤波得到的目标运动轨迹输出完全不能够跟踪上目标的真实运动轨迹,这是因为目标的观测模型中不只存在高斯噪声,而且在整个视场内存在均匀散布的杂波测量值,这样导致Kalman滤波算法很快失效。由图2~3可以看出,采用粒子滤波可以将真实目标轨迹与噪声
3.2 双目标跟踪的数字仿真实现
下面对仅有方位角测量信息的雷达双目标跟踪问题进行仿真验证,图5为雷达测量的示意图,此时目标的动态方程与上例中相同,但测量模型不同,此时测量量为角度值,使用两个固定位置的传感器对于两个目标进行测量,测量方程如下:
θik=arctan(yj,k-siy
xj,k-six)+rik(22)
其中:xj,k,yj,k为目标j的位置;six,siy为第i个传感器的位置;rik~N(0,σ2)为测量噪声,此时测量方程为非线性形式,因此需采用EKF或UKF配合使用RBPF算法。
图6为雷达的角度测量值随时间的变化情况,
从图中可以看出,针对两个传感器及两个目标可测量得到4组测量值,同时在视场范围内存在一定数量的杂波测量值。
针对当前双目标雷达跟踪的问题,采用单一Wiener过程加速度模型及机动转弯模型均能完成目标跟踪的过程,即滤波输出能够跟踪目标的运动轨迹,但与真实轨迹均有一定的偏离,按照本文交互多模型算法对RBPF的线性部分进行加权处理,不同时间段内选取不同的模型进行计算,同时按照加权结果生成新的粒子,得到的轨迹及误差如图7所示。图8给出采用交互多模型与采用单一模型的误差对比,从图中可见,采用交互多模型算法可以有效降低单一模型带来的估计误差。
4 结 论
本文首先给出Rao-Blackwellized粒子滤波算法的基本原理及算法流程,然后利用数字仿真验证了其在单目标跟踪问题中的应用效果以及相比Kalman滤波算法的优越性,针对其应用在多目标跟踪问题中存在的滤波局部不收敛的现象,采用交互多模型的方法对粒子的估值进行预测与更新,数字仿真验证可以看出,相比原始的Rao-Black wellized粒子滤波算法,更改后滤波算法的收敛性更好且跟踪精度更高,能够较好地完成杂波干扰下的双目标跟踪任务。
参考文献:
[1]KalmanRE.ANewApproachtoLinearFilteringandPredictionProblems[J].JournalofFluidsEngineering,1960,82(1):35-45.
[2]SunaharaY.AnApproximateMethodofStateEstimation forNonlinearDynamicalSystems[J].JournalofFluids Engineering,1969,92(2):385-393.
[3]JulierS,UhlmanJ,DurrantWhyteHF.ANewMethod fortheNonlinearTransformationofMeansandCovariances inFiltersandEstimators[J].IEEETransactionsonAutomaticControl,2000,45(3):477-482.
[4]CappeO,GodsillSJ,MoulinesE.AnOverviewofExisting MethodsandRecentAdvancesinSequentialMonteCarlo[J].ProceedingsoftheIEEE,2007,95(5):899-924.
[5]GordonN,SalmondD,SmithAFM.NovelApproachto Nonlinear/NonGaussianBayesianStateEstimation[J]. IEEProceedingsF(RadarandSignalProcessing),1993,140(2):107-113.
[6]SarkkaS,VehtariA,LampinenJ.RaoBlackwellizedParticleFilterforMultipleTargetTracking[J].Information Fusion,2007,8(1):2-15.
(1)建立采用连续Wiener过程加速度模型(CWPA),系统状态为
Xk=(xk yk x·k y·k x¨k y¨k)T(11)
动力学模型为
(15)
其中:v(t)~N(0,σ2w)。此系统模型虽为非线性,但可采用EKF或UKF求解。
(3)对于每个粒子,分别采用两种模型对RBPF算法的线性部分进行预测及校正,求取其均值和方差,然后利用其每步的信息及误差方差的统计特性求取其对于每个模型的概率密度,即权重。
μik=f(vik,Sik) (16)
其中:μik为粒子权重;vik为测量信息;Sik为误差方差的统计特性。
(4)按照权重比例对计算的粒子均值及方差进行加权,作为下一次计算的初值,以此类推,可求取不同时刻的粒子状态。
mk=∑2
下面针对此问题分别采用线性Kalman滤波及RBPF粒子滤波来仿真,采用粒子数目为10。
图1所示为采用Kalman滤波的估计结果,可以看出,采用Kalman滤波得到的目标运动轨迹输出完全不能够跟踪上目标的真实运动轨迹,这是因为目标的观测模型中不只存在高斯噪声,而且在整个视场内存在均匀散布的杂波测量值,这样导致Kalman滤波算法很快失效。由图2~3可以看出,采用粒子滤波可以将真实目标轨迹与噪声
3.2 双目标跟踪的数字仿真实现
下面对仅有方位角测量信息的雷达双目标跟踪问题进行仿真验证,图5为雷达测量的示意图,此时目标的动态方程与上例中相同,但测量模型不同,此时测量量为角度值,使用两个固定位置的传感器对于两个目标进行测量,测量方程如下:
θik=arctan(yj,k-siy
xj,k-six)+rik(22)
其中:xj,k,yj,k为目标j的位置;six,siy为第i个传感器的位置;rik~N(0,σ2)为测量噪声,此时测量方程为非线性形式,因此需采用EKF或UKF配合使用RBPF算法。
图6为雷达的角度测量值随时间的变化情况,
从图中可以看出,针对两个传感器及两个目标可测量得到4组测量值,同时在视场范围内存在一定数量的杂波测量值。
针对当前双目标雷达跟踪的问题,采用单一Wiener过程加速度模型及机动转弯模型均能完成目标跟踪的过程,即滤波输出能够跟踪目标的运动轨迹,但与真实轨迹均有一定的偏离,按照本文交互多模型算法对RBPF的线性部分进行加权处理,不同时间段内选取不同的模型进行计算,同时按照加权结果生成新的粒子,得到的轨迹及误差如图7所示。图8给出采用交互多模型与采用单一模型的误差对比,从图中可见,采用交互多模型算法可以有效降低单一模型带来的估计误差。
4 结 论
本文首先给出Rao-Blackwellized粒子滤波算法的基本原理及算法流程,然后利用数字仿真验证了其在单目标跟踪问题中的应用效果以及相比Kalman滤波算法的优越性,针对其应用在多目标跟踪问题中存在的滤波局部不收敛的现象,采用交互多模型的方法对粒子的估值进行预测与更新,数字仿真验证可以看出,相比原始的Rao-Black wellized粒子滤波算法,更改后滤波算法的收敛性更好且跟踪精度更高,能够较好地完成杂波干扰下的双目标跟踪任务。
参考文献:
[1]KalmanRE.ANewApproachtoLinearFilteringandPredictionProblems[J].JournalofFluidsEngineering,1960,82(1):35-45.
[2]SunaharaY.AnApproximateMethodofStateEstimation forNonlinearDynamicalSystems[J].JournalofFluids Engineering,1969,92(2):385-393.
[3]JulierS,UhlmanJ,DurrantWhyteHF.ANewMethod fortheNonlinearTransformationofMeansandCovariances inFiltersandEstimators[J].IEEETransactionsonAutomaticControl,2000,45(3):477-482.
[4]CappeO,GodsillSJ,MoulinesE.AnOverviewofExisting MethodsandRecentAdvancesinSequentialMonteCarlo[J].ProceedingsoftheIEEE,2007,95(5):899-924.
[5]GordonN,SalmondD,SmithAFM.NovelApproachto Nonlinear/NonGaussianBayesianStateEstimation[J]. IEEProceedingsF(RadarandSignalProcessing),1993,140(2):107-113.
[6]SarkkaS,VehtariA,LampinenJ.RaoBlackwellizedParticleFilterforMultipleTargetTracking[J].Information Fusion,2007,8(1):2-15.
(1)建立采用连续Wiener过程加速度模型(CWPA),系统状态为
Xk=(xk yk x·k y·k x¨k y¨k)T(11)
动力学模型为
(15)
其中:v(t)~N(0,σ2w)。此系统模型虽为非线性,但可采用EKF或UKF求解。
(3)对于每个粒子,分别采用两种模型对RBPF算法的线性部分进行预测及校正,求取其均值和方差,然后利用其每步的信息及误差方差的统计特性求取其对于每个模型的概率密度,即权重。
μik=f(vik,Sik) (16)
其中:μik为粒子权重;vik为测量信息;Sik为误差方差的统计特性。
(4)按照权重比例对计算的粒子均值及方差进行加权,作为下一次计算的初值,以此类推,可求取不同时刻的粒子状态。
mk=∑2
下面针对此问题分别采用线性Kalman滤波及RBPF粒子滤波来仿真,采用粒子数目为10。
图1所示为采用Kalman滤波的估计结果,可以看出,采用Kalman滤波得到的目标运动轨迹输出完全不能够跟踪上目标的真实运动轨迹,这是因为目标的观测模型中不只存在高斯噪声,而且在整个视场内存在均匀散布的杂波测量值,这样导致Kalman滤波算法很快失效。由图2~3可以看出,采用粒子滤波可以将真实目标轨迹与噪声
3.2 双目标跟踪的数字仿真实现
下面对仅有方位角测量信息的雷达双目标跟踪问题进行仿真验证,图5为雷达测量的示意图,此时目标的动态方程与上例中相同,但测量模型不同,此时测量量为角度值,使用两个固定位置的传感器对于两个目标进行测量,测量方程如下:
θik=arctan(yj,k-siy
xj,k-six)+rik(22)
其中:xj,k,yj,k为目标j的位置;six,siy为第i个传感器的位置;rik~N(0,σ2)为测量噪声,此时测量方程为非线性形式,因此需采用EKF或UKF配合使用RBPF算法。
图6为雷达的角度测量值随时间的变化情况,
从图中可以看出,针对两个传感器及两个目标可测量得到4组测量值,同时在视场范围内存在一定数量的杂波测量值。
针对当前双目标雷达跟踪的问题,采用单一Wiener过程加速度模型及机动转弯模型均能完成目标跟踪的过程,即滤波输出能够跟踪目标的运动轨迹,但与真实轨迹均有一定的偏离,按照本文交互多模型算法对RBPF的线性部分进行加权处理,不同时间段内选取不同的模型进行计算,同时按照加权结果生成新的粒子,得到的轨迹及误差如图7所示。图8给出采用交互多模型与采用单一模型的误差对比,从图中可见,采用交互多模型算法可以有效降低单一模型带来的估计误差。
4 结 论
本文首先给出Rao-Blackwellized粒子滤波算法的基本原理及算法流程,然后利用数字仿真验证了其在单目标跟踪问题中的应用效果以及相比Kalman滤波算法的优越性,针对其应用在多目标跟踪问题中存在的滤波局部不收敛的现象,采用交互多模型的方法对粒子的估值进行预测与更新,数字仿真验证可以看出,相比原始的Rao-Black wellized粒子滤波算法,更改后滤波算法的收敛性更好且跟踪精度更高,能够较好地完成杂波干扰下的双目标跟踪任务。
参考文献:
[1]KalmanRE.ANewApproachtoLinearFilteringandPredictionProblems[J].JournalofFluidsEngineering,1960,82(1):35-45.
[2]SunaharaY.AnApproximateMethodofStateEstimation forNonlinearDynamicalSystems[J].JournalofFluids Engineering,1969,92(2):385-393.
[3]JulierS,UhlmanJ,DurrantWhyteHF.ANewMethod fortheNonlinearTransformationofMeansandCovariances inFiltersandEstimators[J].IEEETransactionsonAutomaticControl,2000,45(3):477-482.
[4]CappeO,GodsillSJ,MoulinesE.AnOverviewofExisting MethodsandRecentAdvancesinSequentialMonteCarlo[J].ProceedingsoftheIEEE,2007,95(5):899-924.
[5]GordonN,SalmondD,SmithAFM.NovelApproachto Nonlinear/NonGaussianBayesianStateEstimation[J]. IEEProceedingsF(RadarandSignalProcessing),1993,140(2):107-113.
运动目标跟踪 篇12
关键词:视觉跟踪,直方图,均值漂移
1 引言
视觉运动目标跟踪是确定同一物体在图像序列的不同帧中的位置的过程。近年来出现了大批运动目标跟踪方法。根据跟踪方式的不同, 视觉目标跟踪方法可分为四类:基于区域的跟踪、基于特征的跟踪、基于活动轮廓的跟踪、基于模型的跟踪[1]。
1.1 基于区域的跟踪
基于区域的跟踪方法基本思想是:首先通过图像分割或预先人为确定提取包含目标区域的模板, 并设定一个相似性度量, 然后在序列图像中搜索目标, 把度量取极值时对应的区域作为对应帧中的目标区域。
1.2 基于特征的跟踪
基于特征的跟踪方法基本思想是:首先提取目标的某个或某些局部特征, 然后利用某种匹配算法在图像序列中进行特征匹配, 从而实现对目标的跟踪。
1.3 基于活动轮廓的跟踪
基于活动轮廓的跟踪方法基本思想是:利用封闭的曲线轮廓表达运动目标, 结合图像特征、曲线轮廓构造能量函数, 通过求解极小化能量实现曲线轮廓的自动连续更新, 从而实现对目标的跟踪。
1.4 基于模型的跟踪
基于模型的跟踪方法基本思想是:首先通过一定的先验知识对所跟踪目标建立模型, 然后通过匹配跟踪目标, 并进行模型的实时更新。
本文采取的方法是基于颜色直方图的区域跟踪, 设计了一种均值漂移算法完成跟踪, 并设计了仿真实验对于跟踪效果加以验证
2 目标描述
设目标模板由n个朋级灰度的像素组成, x*ti1, , n表示目标模板区域的像素坐标, 其中心坐标为x0。由于目标模板区域外围的像素可能被遮挡或者受到背景影响相对不可靠, 通常利用具有单调下降的凸轮廓函数的同向性核函数为像素设置权值, 距离目标中心远的像素被赋予小的权值, 从而增强密度估计的鲁棒性。目标模板区域对应的核函数直方图为:
其中k (x) 为核函数的轮廓函数, h为核函数的窗宽, δ为Kronecker delta函数, b (xt*) 为b (xt*) 处像素对应颜色空间中的颜色索引, C为归一化系数, 根据条件 可以得到:
3 相似性度量
在统计假设检验中分类的错误概率是与两个样本分布的相似性直接相关的, 因此, 可以采用分类的错误概率来度量两个样本分布的相似性。两个样本分布的分类错误概率越高, 表明两个样本分布越相似。从而可以把目标位置估计的问题转化为求解使目标模型与候选区域分布的贝叶斯误差最大化的问题。本文所采用的度量指标是Bhattacharyya系数, 它是与样本的密度函数相关的[2,3]。
4 均值漂移算法
均值漂移跟踪算法的基本思想是:首先建立目标模型, 即计算初始帧图像中目标区域内所有的像素点在特征空间中的特征值的概率;然后对当前帧图像建立候选模型, 即计算图像中可能存在目标的候选区域内的所有像素点在特征空间的特征值的概率;最后利用相似性函数度量初始帧目标模型和当前帧候选模型的相似性, 通过求相似性函数的极大值得到关于目标的均值漂移向量, 这个向量即为目标从初始位置向当前位置转移的向量, 根据均值漂移算法的收敛性, 不断迭代计算均值漂移向量, 最终会收敛到目标在当前帧的真实位置, 从而达到跟踪的目的[4,5]。下面具体介绍该算法的实现过程。
假定目标模型的分布为 , 目标在上一帧中的位置为y0, 则均值漂移跟踪算法步骤如下:
(1) 初始化当前帧候选目标的位置为y0, 计算其分布 , 并估计
(2) 计算权值
(3) 计算新的候选位置y1
(4) 计算 , 并估计
并估计
(6) 如果||y1-y0||<ε, 则停止迭代, 否则, 令y0←y1, 返回第 (2) 。
第 (5) 步的执行是为了避免基于均值漂移的最大化可能存在的数值问题, 该问题源于对Bhattacharyya系数的线性近似。然而, 实验表明在新位置y1处计算得到Bhattacharyya系数值只有在0.1%的情况下没有增加。因此实际执行时第五步可以省略, 进而第一步和第四步也不需要计算Bhattacharyya系数值, 实际应用中, 只需计算第二步, 第三步, 第六步。
4 仿真实验
针对本文提出的均值漂移算法, 设计了仿真实验。实验环境是室内人体运动视频, 活动人体的初始位置手工设定, 其中几帧的跟踪结果如下图所示。
仿真实验结果表明, 本文所提出的均值漂移算法比较成功地实现了对目标的跟踪, 特别是在目标的外形变化的情况下, 仍然可以很好地实现跟踪功能。
5 结论
本文实现了基于核函数直方图的均值漂移视觉跟踪算法, 并初步达到了跟踪效果。但是如果被跟踪的目标伪装成与背景一致的颜色, 或是被跟踪的目标很小, 一直完全被图像中分散的颜色一样的其他物体所干扰, 跟踪效果可能不好, 必须考虑算法的改进;另外, 如果在系列图像中出现了目标被遮掩, 或是目标相互重叠的情况, 也可能达不到令人满意的跟踪效果。因此, 在采用基于直方图的算法进行目标跟踪的同时, 应结合图像的其他特征来提高跟踪效果。
参考文献
[1]张波.基于粒子滤波的图像跟踪算法研究.上海交通大学:博士论文.2007.[1]张波.基于粒子滤波的图像跟踪算法研究.上海交通大学:博士论文.2007.
[2]齐飞, 罗予频, 胡东成.基于均值漂移的视觉目标跟踪算法综述.计算机工程, 2007.[2]齐飞, 罗予频, 胡东成.基于均值漂移的视觉目标跟踪算法综述.计算机工程, 2007.
[3]Toyama K., Krumm J, Brumitt B.Wallflower:Principles and Practice of Background Maintenance[C], Computer Vision, 1999.The Proceedings of the Seventh IEEE InternationalConferenc.[3]Toyama K., Krumm J, Brumitt B.Wallflower:Principles and Practice of Background Maintenance[C], Computer Vision, 1999.The Proceedings of the Seventh IEEE InternationalConferenc.
[4]王建宇, 陈熙霖, 高文, 等.背景变化鲁棒的自适应视觉跟踪目标模型[J].软件学报, 2006.[4]王建宇, 陈熙霖, 高文, 等.背景变化鲁棒的自适应视觉跟踪目标模型[J].软件学报, 2006.