一种多运动目标检测、跟踪方法研究与实现.doc

上传人:吴起龙 文档编号:1592116 上传时间:2018-12-26 格式:DOC 页数:11 大小:19.13KB
返回 下载 相关 举报
一种多运动目标检测、跟踪方法研究与实现.doc_第1页
第1页 / 共11页
一种多运动目标检测、跟踪方法研究与实现.doc_第2页
第2页 / 共11页
一种多运动目标检测、跟踪方法研究与实现.doc_第3页
第3页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《一种多运动目标检测、跟踪方法研究与实现.doc》由会员分享,可在线阅读,更多相关《一种多运动目标检测、跟踪方法研究与实现.doc(11页珍藏版)》请在三一文库上搜索。

1、一种多运动目标检测、跟踪方法研究与实现中图法分类号:TP39141文献标识码:A 运动目标的检测、跟踪是智能视觉监控的重要课题,是各种后续高级处理,如目标分类、行为理解等的基础。近年来,它得到了日益广泛的研究,其难点在于: 图像序列具有复杂性。光线、目标动态变化使得获取背景图像困难,背景的实时变化需要动态更新,而如何从视频帧中正确分割背景和检测运动物体(前景目标)是后续跟踪、识别处理的基础。 跟踪过程中在物体暂时消失、相互遮挡时丢失目标信息,如何在这些复杂情况中跟踪目标、获得目标的运动轨迹。 已有的解决方法有:用多个摄像机构建系统来处理多个运动目标相互遮挡的问题1;用EM算法将被跟踪人体依据颜

2、色信息建立跟踪2;基于区域的跟踪3、基于模型的跟踪4、基于活动轮廓的跟踪5等。为了提高跟踪实时性,降低算法复杂度,本文采用将运动目标符号化的方法6,即对检测出的目标用其外接矩形框标注,目标跟踪建立在矩形框层次上,从而提高了算法的实时性,改进了文献7中提出的通过建立帧间矩阵实现目标匹配的方法,将跟踪情况分为五种状态分别进行处理,并且引入Kalman滤波器实时预测目标外接矩形框参数,在目标暂时消失、相互遮挡等复杂情况下可恢复其运动信息。 1检测运动目标 目标检测流程如图1所示。 图1运动目标检测流程图 根据不包含目标的一段时间内的背景帧得到背景图像中每个像素的均值、方差参数,建立背景模型8: 模型

3、参数分别为R,G,B通道的均值和方差。 假设光线变化相对于物体运动为缓慢变化。背景模型中均值和方差用递归算法更新,并只用于非目标区域中,目标区域对应到背景模型中的区域其均值、方差参数不变。已知在t+1时刻的背景中某像素值zt+1,则 场景中由于光线变化引起阴影变化被视为目标区域,从而影响目标的正确检测。根据阴影区域在亮度上的变化大于色度,则任何亮度突变而色度无突变的情况都是由阴影引起的。像素色度计算如下: 分割前景目标时,当背景色度与前景目标色度差别不大时,前景目标内会出现空洞或目标碎片,影响下一步的聚类分析。在这种情况下,不能基于零阶、像素级上检测目标,而需要结合一阶图像梯度信息得到较为准确

4、的目标分割。 本文采用基于色度、梯度建立背景模型检测目标,如像素的梯度或色度信息满足式(6)或式(7),则像素标记为前景点。 背景减除后的图像采用33中值滤波器、形态学闭运算去噪声及连通像素区域标记法,得到目标个数及其外接矩形框参数;然后计算目标间中心点的欧式距离,若X,Y方向的距离均小于阈值Td(实验中设Td15),则目标合并;将得到的目标依次判断它的面积是否小于阈值Tarea(实验中设Tarea=20),如小于面积阈值则丢弃。通过目标检测,可得到目标的个数,及其外接矩形框的中心点、左上点坐标和长、宽。 目标检测结果如图2所示,视频序列中取a=2。图2(a)是视频序列中某帧图像;图2(b)是

5、对图2(a)的检测结果,背景模型采用像素RGB值建立,无法消除阴影;图2(c)是对图2(a)的检测结果,背景模型采用像素的梯度、色度值建立,可有效消除阴影,从而分割出前景目标,如图2(d)所示。检测出的目标用不同颜色矩形框标注,基本上达到目标检测的要求。 图2目标检测 2运动目标跟踪 跟踪等价于在连续的图像帧间创建基于位置、速度、形状、纹理、色彩等有关特征的对应匹配问题。对于单个目标,可以通过获得目标在每一帧中的位置得到运动轨迹,即建立跟踪;但对于多个目标,情况较为复杂,在运动目标遮挡、暂时消失等情况下目标信息丢失使跟踪失败。 目标跟踪流程如图3所示。本文采用Kalman滤波器预测目标在下一帧

6、中的参数,以此合并目标碎片,建立目标匹配,确定当前帧中的目标所属序列,从而得到运动轨迹,实现多运动目标跟踪。 图 3多目标跟踪流程图 下面将分别阐述利用Kalman滤波器预测目标参数,根据预测参数聚类(进一步合并目标碎片)及建立相邻帧间目标匹配。 21基于Kalman滤波器的运动目标参数估计及预测 本文将Kalman滤波器应用于预测目标在下一帧中的参数,算法如下: 对于实时视频序列,每两帧时间间隔t比较小,可以认为目标在相邻帧间运动变化缓慢,近似为匀速运动,由动力学公式可得 22基于预测参数的目标聚类 目标正确分割是建立目标匹配、实现目标跟踪的基础,基于像素梯度、色度的背景模型能有效地分割出前

7、景目标。由于目标位置引起目标内部部分空洞(如被背景物体遮挡)造成目标碎片,从而在目标检测模块标记为不同目标,影响后续处理,因此必须在当前帧中识别目标碎片属于哪个运动目标。 本文利用Kalman滤波器得到的当前帧目标预测参数,将预测范围内的目标碎片合并,从而得到完整的外接矩形框来标志目标。 假设运动目标在最初两帧内未发生相互遮挡,并且目标出现的第一帧未被背景物体遮挡,即能分割出完整目标。该假设是符合实际情况的,则可获得目标状态,即外接矩形框大小和位置,由Kalman滤波器得到其在下一帧中的预测值。 在当前帧中得到可能包含有目标碎片的多个目标外接矩形框,将读取的上一帧目标在当前帧中的预测值(目标预

8、测大小、位置),依次与当前帧中每个目标求交集。如果相交面积大于目标面积的80,则认为该目标与预测参数对应的目标属同一目标序列,可基本识别出碎片所属目标,得到运动目标外接矩形框,并得到初匹配结果,即当前帧目标已与上一帧目标建立对应标号,但对于出现目标遮挡、消失等复杂情况需要进行后续匹配以实现跟踪。 实验结果如图4所示。图4(a)为当前帧图像;图4(b)的背景模型准确度不高,提取的目标1断裂为两个目标,检测出有三个运动目标;图4(c)在图4(b)的结果上标注目标,目标1由于断裂,被认为发生分离,算法判断跟踪状态错误;图4(d)根据上一帧分割出的完整的目标1得到的预测参数,合并其碎片,得到正确的检测

9、结果;图4(e)虚线矩形框代表当前帧检测出的三个目标,实线矩形框是上一帧中目标1在当前帧中的预测位置;当前帧目标1,2与其相交面积达到阈值,则判断是目标1在当前帧中的目标碎片,合并后得到外接矩形框如图4(f)中的目标1,以及目标2在当前帧中的实际位置(虚线矩形框)、预测位置(实线矩形框)所示。 图4根据预测参数合并目标碎片 23目标匹配及跟踪算法 231目标跟踪算法 跟踪即为在相邻帧间建立目标匹配的过程,本文引入Kalman滤波器预测目标参数,建立匹配矩阵以实现相邻帧间的目标匹配。跟踪算法如下: (1)在当前帧中检测目标,结构数组Objects_info将每个目标用四个域值描述:State,L

10、abel,Retangle,Special。其中State表示目标匹配状态,分为Old(一般情况),Merged(遮挡),Split(分离),New(出现新目标),Disappear(目标消失);Label为目标标号,同一目标序列应具有相同标号;Retangle存储目标外接矩形框参数;Special为目标遮挡时各个目标标号或目标分离时的分离目标标号。 (2)如果为目标运动的第一帧,则转到(4)执行;如果为后续帧则读取当前帧的预测参数,即目标外接矩形框的大小和位置,合并目标碎片,完成初匹配,得到更新后的Objects_info,Label为匹配的上一帧目标标号。 (3)将当前帧目标(Object

11、s_info)和上一帧目标(Objects_infoo)建立匹配矩阵(232节阐述矩阵建立及匹配过程),判断目标匹配的五种状态,得到匹配后的当前帧目标(Info_new)和上一帧目标(Info_old): 如Info_new(i).State=Merged, 则当前帧第i个目标为目标遮挡形成,Info_new(i).special中存储遮挡目标标号,并且在第i个目标的状态变为Split前,其State,Special域值不变。根据标号记录遮挡目标在后续帧中的预测参数(目标外接矩形框中心点坐标X,Y值及宽度、高度预测参数数组Preonex, Preoney, Preonew, Preoneh),

12、便于为目标分离时建立匹配。 如果Info_old(i).label=Spilit 且 Info_new(i).label=Old, 表明上一帧第i个目标在当前帧中分离,Objects_infoo中第i个目标由分离目标参数代替,从Preonex, Preoney, Preonew, Preoneh中读取其参数,再通过建立与当前帧目标Objects_info的匹配矩阵,确定Objects_info 中每个目标的匹配情况,即得到更新后的Info_new,并使Objects_infoo=Info_new(存储当前帧信息以便下一帧建立匹配)。 (4)由Kalman滤波器得到当前帧目标外接矩形框在下一帧中

13、的预测参数,得到预测数组Prex(左上点X坐标),Prey(左上点Y坐标),Prew(宽度),Preh(高度),程序转到(1),直到视频图像序列结束。 232目标匹配 文献7只根据匹配矩阵确定了当前帧的目标运动情况,并未更新上一帧的目标运动情况,无法判断是否出现上一帧目标消失、分离成新目标的情况。因此,本文改进了文献6提出的匹配矩阵算法。 多目标在视场中的运动可分为五种情况:出现新目标、目标遮挡、目标消失、遮挡目标分离和除此以外的一般情况下的目标匹配。本文分两步扫描匹配矩阵以确定当前帧目标和更新上一帧目标的运动状态。 (1)按列扫描匹配矩阵(确定当前帧目标匹配状态),可合并成三种情况处理,具体

14、判断准则如下: 若第k列的每个元素都为0。当前帧的第k个目标为新出现目标, State更新为New。 第k列中只有第h行一个元素非零。当前帧中的第 k个目标与上一帧中的第h个目标匹配,加入第h个目标的目标链,赋予与上一帧中第h个目标相同的标号, State更新为Old;但如上一帧中的第h个目标为遮挡情况下形成的合并矩形框,即Objects_infoo(h).State=Merged, 则State,Special域值不变。 第k列中有多个元素非零(如第h行、第h+1行非零)。上一帧中第h和h+1个目标在当前帧中发生遮挡,记录下发生遮挡的目标标号(目标分离时的匹配需要此信息),并把最小的目标标号

15、作为当前帧遮挡目标的标号,将State更新为Merged。 (2)再按行扫描关系矩阵(更新上一帧目标状态): 若第K行每个元素都为0,上一帧中的第K个目标消失,删除目标链,State更新为Disappear。 若第K行中有多个元素非零(如第h列、第h+1列非零),则上一帧中目标K在当前帧发生分离,为避免误判,需满足条件:目标K在匹配前的State为Merged,则表明确为遮挡目标分离,应将State更新为Split。 跟踪结果如图5所示。场景中有三个运动目标,分别为目标1(实线矩形框标注)、目标2(虚线矩形框标注)、目标3(点划线矩形框标注),目标分别用不同标号对应到不同矩形框识别。表1给出了

16、目标1在一般情况下(状态为Old)、遮挡情况下(状态为Merged)及被遮挡后分离情况下(状态为Split)的跟踪数据。第472476帧数据表明实际值、预测值间误差较小,Kalman算法预测参数是可靠的。第477帧原目标1被遮挡,其参数丢失,跟踪过程则建立在预测值上。第514帧目标1分离出,根据预测参数和实际值识别目标1。 第470帧为一般情况下的跟踪,即目标未发生遮挡、消失等情况。第477帧目标1,2部分遮挡,检测到两个目标,目标1由原目标1,2形成,则原目标1,2的信息丢失。跟踪采用Kalman滤波器对原目标的预测参数记录目标参数,直到第514帧,目标1重新被检测出,跟踪预测参数恢复其丢失

17、信息进行匹配,得到正确的跟踪结果。外接矩形框为实线矩形框,属于目标1的运动序列,图5中其余两个目标也建立了有效的跟踪。 图5跟踪结果 表1目标1外接矩形框(实线矩形框)中心点X坐标值跟踪数据 3结论 本文针对固定监控场景实现了一种多运动目标检测、跟踪方法,建立了基于梯度、色度的背景模型检测目标,详细阐述了Kalman滤波器在预测目标信息中的应用,建立匹配矩阵分别针对不同运动状态跟踪,在目标遮挡、暂时消失的情况下能较好地实现多个运动目标跟踪。 该算法将改进的是:需要更为完整、准确地分割前景目标;在目标匹配阶段约束条件少并直接用矩形框代替物体(目标符号化);在复杂情况下的跟踪,如视场中有四个以上的目标、目标运动情况复杂多变时,算法准确度降低。下一步工作将在利用目标颜色信息提高匹配算法精度等方面作进一步研究。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1