第1期 张雪华,等:采用Kinect的移动机器人目标跟踪 .37. 目标位置,计算出当前估计区域的颜色直方图及其 法中目标并没有受到干扰物的影响,矩形框一直跟 深度值,与H,和d,进行比较,设定一个阈值范围来 随着目标运动,说明此方法对于相同颜色的干扰有 判断目标是否被成功跟踪,并令当前深度值d=d,。 较好的鲁棒性。在目标跟踪过程中,HC算法有效 5)对粒子进行重采样,抛弃权值小的粒子,补 地减少了像素的计算总数,加快了跟踪速度。 充权值大的粒子,重新进行2)。 868.000000 融入Kinect深度信息的目标跟踪算法流程如 图3所示。 第1帧图像选取目标 (a)近距离(frame61) 计算目标颜色直方图 1255.000000 进行粒子初始化 计算目标中心点(x,,此 比较直方图 时深度值d,为参考值 F (b)远距离(frame75) 粒子更新,计算当前帧矩 形区域直方图 图4融合深度值效果 Fig.4 The fusion depth value renderings 计算权值,进行归一化 1014.000000 根据粒子深度信息d,再 计算权值,归一化 状态估计 (a)选定目标区域(frame85) 结束 结束 重采样 940.000000 图3目标跟踪流程 Fig.3 The flow chart of the target tracking 4实验 (b)干扰物靠近日标(frame98) 本文使用Visual C++2008编程软件,根据微软 905.000000 官方提供的SDK,搭配OpenNI1.0版进行软件部分 的编写,利用Opencv相关函数获得图像。 4.1改进的目标跟踪实验效果 跟踪实验效果图4、图5所示,在融合深度值的 效果图中被选中的目标用矩形框标记,所选取的代 (c)干扰物与日标重叠(framel02) 表帧中左上角的数字为当前帧矩形框的中心点深度 867.000000 值,可以看出,图中矩形框随着深度值的减小而变 小,二者成正比关系。在障碍物干扰效果图中,取2 个完全相同的物体作为实验物,用矩形框选取其中 一个作为目标,一个作为障碍物进行干扰,从实验效 果图中可以看出,在融合了深度信息的目标跟踪算 (d干扰物从目标后方通过(framel1O)目标位置,计算出当前估计区域的颜色直方图及其 深度值,与 H1 和 d1 进行比较,设定一个阈值范围来 判断目标是否被成功跟踪,并令当前深度值 di =d1 。 5)对粒子进行重采样,抛弃权值小的粒子,补 充权值大的粒子,重新进行 2)。 融入 Kinect 深度信息的目标跟踪算法流程如 图 3 所示。 图 3 目标跟踪流程 Fig.3 The flow chart of the target tracking 4 实 验 本文使用 Visual C++2008 编程软件,根据微软 官方提供的 SDK,搭配 OpenNI1.0 版进行软件部分 的编写,利用 Opencv 相关函数获得图像。 4.1 改进的目标跟踪实验效果 跟踪实验效果图 4、图 5 所示,在融合深度值的 效果图中被选中的目标用矩形框标记,所选取的代 表帧中左上角的数字为当前帧矩形框的中心点深度 值,可以看出,图中矩形框随着深度值的减小而变 小,二者成正比关系。 在障碍物干扰效果图中,取 2 个完全相同的物体作为实验物,用矩形框选取其中 一个作为目标,一个作为障碍物进行干扰,从实验效 果图中可以看出,在融合了深度信息的目标跟踪算 法中目标并没有受到干扰物的影响,矩形框一直跟 随着目标运动,说明此方法对于相同颜色的干扰有 较好的鲁棒性。 在目标跟踪过程中,IHC 算法有效 地减少了像素的计算总数,加快了跟踪速度。 图 4 融合深度值效果 Fig.4 The fusion depth value renderings 第 1 期 张雪华,等:采用 Kinect 的移动机器人目标跟踪 ·37·