文章快速检索  
  高级检索
采用Kinect的移动机器人目标跟踪
张雪华1,2 , 刘华平2 , 孙富春2 , 高蒙1 , 贺超2
1. 石家庄铁道大学 电气与电子工程学院,河北 石家庄 050043;
2. 清华大学 智能技术与系统国家重点实验室,北京 100084
基金项目: 国家“863“计划资助项目(G2013CB329403);国家自然科学基金资助项目(91120011);清华大学自主科研计划资助项目(2011THZ0)    
摘要: 由于基于颜色特征的目标跟踪方法容易受颜色相近的物体影响,造成目标丢失,为了改善这一现象,利用Kinect视觉传感器获取目标的深度信息和颜色信息来计算目标跟踪算法中的粒子权值,从而对基于颜色特征的粒子滤波算法进行改进。为了简化目标跟踪算法中的直方图计算,利用增量式直方图计算的方法,以提高目标跟踪过程中的运算速度。最后通过实验证明结合目标的颜色和深度信息的方法能够很好地克服目标跟踪过程中颜色相近物体的干扰,并将改进的目标跟踪算法应用到移动机器人中,验证了该算法的快速性和鲁棒性。
关键词: Kinect     粒子滤波算法     移动机器人     深度信息     颜色信息    
Target tracking of mobile robot using Kinect
ZHANG Xuehua1,2 , LIU Huaping2 , SUN Fuchun2 , GAO Meng1 , HE Chao2
1. College of Electrical and Electronic Engineering, Shijiazhuang Railway University, Shijiazhuang 050043, China ;
2. Key Laboratory of Intelligent Technology and Systems, Tsinghua University, Beijing 100084, China
Abstract: The target tracking method based on color features is susceptible to the effects of similar color objects, which leads to the loss of the target. In order to overcome this phenomenon, in this paper, the Kinect vision sensor is used to obtain the target depth information and color information to calculate the weights of particles in the target tracking algorithm, and therefore to improve the particle filter algorithm which is based on the color feature. In order to simplify the histogram calculation of the target tracking algorithm, an incremental histogram calculation method is proposed to improve the computational speed of the target tracking process. Finally, through experimentation, the combination of color and depth information of the target can be shown to easily overcome the interference to the target tracking process by similar color objects, and the improved target tracking algorithm is applied to the mobile robot, verifying the rapidness and robustness of the mobile robot target tracking algorithm.
Key words: Kinect     particle filter algorithm     mobile robot     depth information     color infumation    

在计算机视觉领域,使用计算机对运动目标进行分析研究是一个重要的课题,而在动态环境中对运动目标进行实时、鲁棒的跟踪是其重要的组成部分,在自动监控、人机交互、医学图像处理、虚拟现实等领域有着广泛的应用[1-2]。目前,目标跟踪的主要方法包括基于运动检测、特征、活动轮廓和模型等跟踪方法[3]

作为机器视觉中一个重要研究分支,自文献[4]首次提出基于颜色的粒子滤波目标跟踪算法以来,目标跟踪技术得到了长足的发展。但其容易受到光照变化和背景颜色的影响,如果目标所处的背景颜色与其本身颜色接近,并且运动速度较快,粒子滤波目标跟踪的效果会变差,容易出现目标丢失的现象。人们一般使用颜色、边界、纹理及其他特征来跟踪目标,但引入过多的特征来提高跟踪准确性的同时也会增加计算复杂度。由于粒子间的重叠会消耗大量的时间做重复计算,文献[5-8]在直方图的快速计算上做出了新的尝试,提高了运行速度的同时保证跟踪的准确性。本文针对粒子滤波目标跟踪的缺陷提出融合Kinect的深度信息的目标跟踪算法,并提出了增量式直方图计算算法来提高系统计算速度,从而实现基于Kinect的移动机器人目标跟踪。

1 基于Kinect的目标跟踪系统

Kinect是微软公司开发的一款体感摄像机,其结合了视觉与距离传感器的特点,并且开放了可以在个人计算机上进行二次开发的SDK,以其独特的功能吸引了大批研究者的关注。基于Kinect视觉与距离相结合的特点,人们对它的使用范围已经不局限于游戏开发领域,目前在计算机视觉、机器人等领域也取得了优秀的研究成果。

基于Kinect的目标跟踪系统框架如图 1所示。

图 1 基于Kinect的目标跟踪框架 Fig. 1 Kinect-based target tracking framework

Kinect硬件上主要由一个普通的低分辨率RGB摄像机、一个红外发射器、一个红外投影仪以及一组麦克风阵列组成。普通RGB摄像机能够以30帧/s速率传送分辨率大小640×480的RGB图像,而红外发射器和投影仪则是用来采集相应的深度信息,通过内部芯片转换并传送分辨率大小320×240的深度图像。通过插值处理,Kinect的驱动可以为上层软件提供几乎同步的相同分辨率的RGB图像流和深度图像流,并且通过简单的校准,如利用出厂的摄像机参数,可以将RGB图像和深度图像像素点对应起来。它能够以实时的速率(30帧/s)提供彩色图像和对应像素的深度信息,并且深度精度在毫米量级,这使更多的工作变得易行。

2 增量式直方图计算(IHC)算法

增量式直方图计算(incremental histogram calculation)算法是一种基于蒙特卡洛法(Monte Carlo method)的粒子滤波算法[9-11],它的基本思想是根据增量式相似度计算来确定每个粒子的权值。文献[12-13]对IHC算法原理及其应用进行了新的研究和实验,并提出按顺序播撒的2个粒子的矩形区域通常会有一个大的重叠区域,因此,在计算后一个粒子的权值时只需消耗较短的时间来计算非重叠区域即可,这样避免了相同像素的重复计算,显著提高跟踪的实时性能。

IHC算法的基本原理如图 2所示,图中为2个粒子xkixki+1分别对应的2个矩形框,定义为RiRi+1。定义δh+为矩形框Ri+1表示的区域颜色直方图,δh定义为矩形框Ri的颜色直方图。则直方图hi+1由式(1)可得。

(1)
图 2 2个粒子的增量式直方图计算 Fig. 2 IHC algorithm between two particles

显然,如果矩形框RiRi+1的重叠区域较大,那么计算δhδh+消耗的时间就会较少,这样计算hi+1的时间就会减少,因此就不需要计算重叠区域的直方图。但是,当重叠区域的面积小于非重叠区域面积时,IHC算法反而会增加计算量,消耗更多的时间,此时需设立一个评价函数来判断IHC算法是否适用于当前粒子的分布情况。如果人为设定粒子分布的方差为某一限值,那么大部分粒子都可以满足IHC算法的条件。对于传统的直方图计算方法,权值小的粒子会导致对快速运动目标的跟踪性能下降,而对于IHC算法,小方差可以提高运算速度,减小计算量,从而提高跟踪速度且对跟踪性能没有太大影响。

3 目标跟踪算法 3.1 基于颜色的粒子滤波跟踪算法

粒子滤波算法结合了蒙特卡洛方法和贝叶斯滤波的特点[13],最终完成贝叶斯滤波的递推,求解出贝叶斯估计。它的后验概率密度函数根据随机抽取的样本及其权重计算,抽取的样本越多,所求出的后验概率密度越接近于真实值。在粒子滤波器中用粒子代替目标的一种可能性状态,并且粒子滤波算法不需要满足线性、高斯系统,应用更加广泛。

基于蒙特卡洛仿真原理,设状态变量为x0:k,已知其后验概率密度函数为p(x0:k|z1:k),则对于任意函数,可用式(2)表示其数学期望值:

(2)

此期望值可以近似为式(3):

(3)

式中:{x0:ki, i=0, 1, …, N}表示一系列离散样本,它是从后验概率密度函数f(x|z)中产生的。如果有足够多的样本,期望近似值E(gt(x0:k))绝对收敛于E(gt(x0:k))。

转换到粒子滤波器中,后验概率密度函数用若干个粒子来近似,并且采用越多的粒子,近似也就越精确。由于后验概率分布很难直接求得,因此这成为解决问题的关键。

粒子滤波算法的步骤简单易行,基本流程可以归结为如下4个阶段。

1)抽取N个样本进行粒子初始化,从初始的概率密度函数p(x0)中抽取样本,由wki得出每个粒子的权值。

2)进行序列重要性采样,对于i=0, 1, …, N-1,将权值进行归一化,为后验概率估计提供样本值。

3)根据粒子权值的大小进行重采样,将权值小的粒子抛弃,权值大的粒子替补被抛弃的粒子,从而得到新的样本集,并将权值进行归一化。

4)输出新的粒子及其权值,得出估计值

3.2 融合Kinect深度信息的目标跟踪

在融合Kinect深度信息的目标跟踪算法中,选取N个采样粒子,每个粒子在图像上的坐标用(xi, yi)表示,当前帧的目标区域与第1帧选取的目标区域的比用zi表示,每个粒子的权值用wi表示,每个粒子的深度值用di表示。

实验过程中根据读取的深度值来调整目标矩形框的大小,获取矩形框时的图像设为第1帧,显示出当前框中心点的深度值,此时框宽为W,框高为H。在运行过程中,目标不断运动,中心点深度值也不断变化,框宽和框高根据深度值的比例自适应调整大小,由于深度值越大目标越小,即框宽和框高越小,成反比关系,根据公式:第1帧深度值/其余帧每帧深度值=其余帧每帧的框大小/第1帧框大小,其余帧每帧框中心点深度值为di(已知),框高为W′,框高为H′,则每帧图像中框的大小由式(4)表示:

(4)

由此,矩形框的大小会随着深度值的变化而变化,达到目标跟踪的效果。

融合Kinect深度信息的目标跟踪过程如下。

1)在第1帧图像中选取目标区域,计算其颜色直方图H1,对粒子集进行初始化,根据矩形框大小计算目标区域的中心点坐标(xi, yi),此时z设为1,di的初始值设为中心点的深度值,设定参考深度值d1

2)利用高斯分布对第1帧得到的粒子进行采样,获得新的xiyizi值。

3)根据新的xiyizi值计算当前图像帧中目标区域的颜色直方图Hi,并与H1作比较,计算权值,根据深度值对粒子权值进行修改和归一化。利用巴氏距离公式计算权值,并根据深度信息did1wi进行处理,得到新的wi

再对权值进行归一化,则令

4)根据公式估计出当前目标位置,计算出当前估计区域的颜色直方图及其深度值,与H1d1进行比较,设定一个阈值范围来判断目标是否被成功跟踪,并令当前深度值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
图 5 相同物体的障碍物干扰效果 Fig. 5 Interference effect of the obstacle of the same object
4.2 目标跟踪算法在移动机器人中的应用

本文使用的移动机器人为MobileRobots公司设计的PowerBot型差动驱动式移动机器人,主要有适合室内运行的DX型、较强越野跨障性能的AT型、适用于人机交互的PeopleBot以及具有较大负载能力的PowerBot型。

该移动机器人为方便使用者进行对移动机器人平台进行二次开发,整个系统设置为两部分:上位机系统与下位机系统。用户通过上位开发程序控制下位机,下位机则直接对系统的硬件部分进行操作,主要包括电机控制、传感器控制和数据获取等功能。

本实验利用微软公司开发的Kinect体感摄像机,通过USB接口连接到移动机器人内部的PC机上,Kinect摄像机作为图像显示设备,主要用于获取实验环境的各种信息,将它放在移动机器人的正前方,为目标跟踪提供数据信息,最终控制机器人运动,实验效果如图 6图 7所示。整个移动机器人目标跟踪实验过程中,移动机器人需要避开一个障碍物,然后跟踪目标。图 6为通过Kinect摄像机获取的RGB图像和与其对应的深度图像,图 7为目标与机器人的轨迹图,其中菱形为检测到的障碍物,圆形表示移动机器人运动轨迹,星形为目标运动轨迹。

图 6 移动机器人目标跟踪实验效果 Fig. 6 Mobile robot target tracking experiment results
图 7 移动机器人目标跟踪运动轨迹 Fig. 7 Trajectory of target tracking of mobile robot
5 结束语

本文利用Kinect摄像机能够以高精度获取深度信息的特点将其作为图像获取设备,并将其获得的深度信息与RGB图像的颜色信息相融合,运用到基于颜色的粒子滤波运动目标跟踪算法中,利用目标的深度值对传统跟踪算法中权值的计算进行改进,提出增量式直方图计算算法对颜色直方图进行计算。实验证明,此方法可以较好地解决由于颜色相近而引起的目标丢失问题,简化了粒子滤波目标跟踪算法中的直方图计算,提高了系统的运行速度,且移动机器人实际目标跟踪过程具有更好的快速性和鲁棒性。

参考文献
[1] ARULAMPALAM M, MASKELL S, GORDON N. A tutorial on particle filters for online non-liner/non-Gaussian Bayesian tracking[J]. IEEE Transactions on Signal Processing , 2002, 50 (2) : 174-188 DOI:10.1109/78.978374
[2] 宋亚杰, 谢守勇. 机器视觉技术在金莲花灌溉中的应用研究[J]. 西南农业大学学报:自然科学版 , 2006, 28 (4) : 659-662 SONG Yajie, XIE Shouyong. Application of machine vision in the irrigation for tropaeolum[J]. Journal of Southwest Agricultural University: Natural Science , 2006, 28 (4) : 659-662
[3] 刘涛, 程小平, 向本科. 改进的基于颜色的粒子滤波目标跟踪算法[J]. 计算机工程与设计 , 2010, 31 (8) : 1750-1756 LIU Tao, CHENG Xiaoping, XIANG Benke. Improved color-based particle filter algorithm for object tracking[J]. Computer Engineering and Design , 2010, 31 (8) : 1750-1756
[4] PEREZ P, HUE C, VERMAAK J. Color-based probabilistic tracking[C]// Proceedings of the European Conference on Computer Vision. London, UK, 2002: 661-675.
[5] PORIKLI F. Integral histogram: a fast way to extract histograms in Cartesian spaces[C]//2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. San Diego, USA, 2005: 829-836.
[6] SIZINTSEV M, DERPANIS K G, HOGUE A. Histogram-based search: a comparative study[C]//IEEE Conference on Computer Vision and Pattern Recognition. Anchorage, USA, 2008: 1-8.
[7] AN S, PEURSUM P, LIU W, et al. Efficient algorithms for sub window search in object detection and localization[C]//IEEE Conference on Computer Vision and Pattern Recognition. Miami, USA, 2009: 2129-2142.
[8] WEI Y, TAO L. Efficient histogram-based sliding window[C]//IEEE Conference on Computer Vision and Pattern Recognition. San Francisco, USA, 2010: 3003-3010.
[9] KHAN Z, BALCH T, DELLAERT F. MCMC-based particle filtering for tracking a variable number of interacting targets[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence , 2005, 27 (11) : 1805-1819 DOI:10.1109/TPAMI.2005.223
[10] KOFMAN J, WU X, LU T, et al. Teleoperation of a robot manipulator using a vision-based human-robot interface[J]. IEEE Transactions on Industrial Electronics , 2005, 52 (5) : 1206-1219 DOI:10.1109/TIE.2005.855696
[11] KURAZUME R, YAMADA H, MURAKAMI K, et al. Target tracking using SIR and MCMC particle filters by multiple cameras and laser range finders[C]//Proceedings of International Conference on Intelligent Robots and Systems. Tokyo, Japan, 2008: 3838-3844.
[12] LIU Huaping, SUN Fuchun. Efficient visual tracking using particle filter with incremental likelihood calculation[J]. Information Sciences , 2012, 195 : 141-153 DOI:10.1016/j.ins.2012.01.033
[13] 夏轩, 刘华平, 许伟明, 等. 基于DSP的主动视觉系统[J]. 机器人 , 2012, 34 (3) : 354-362 XIA Xuan, LIU Huaping, XU Weiping, et al. DSP-based active vision system[J]. Robot , 2012, 34 (3) : 354-362 DOI:10.3724/SP.J.1218.2012.00354
DOI: 10.3969/j.issn.1673-4785.201305080
中国人工智能学会和哈尔滨工程大学联合主办。
0

文章信息

张雪华, 刘华平, 孙富春, 高蒙, 贺超
ZHANG Xuehua, LIU Huaping, SUN Fuchun, GAO Meng, HE Chao
采用Kinect的移动机器人目标跟踪
Target tracking of mobile robot using Kinect
智能系统学报, 2014, 9(1): 34-39
CAAI Transactions on Intelligent Systems, 2014, 9(1): 34-39
http://dx.doi.org/10.3969/j.issn.1673-4785.201305080

文章历史

收稿日期: 2013-06-04
网络出版日期: 2014-02-20

相关文章

工作空间