多特征分块匹配的移动机器人目标跟踪
2016-09-08贾松敏白聪轩王丽佳李秀智
贾松敏,白聪轩,王丽佳,2,李秀智
(1.北京工业大学 电子信息与控制工程学院 计算智能与智能系统北京市重点实验室 数字社区教育部工程研究中心,北京100124;2.河北工业职业技术学院 信息工程与自动化系,河北 石家庄 050091)
多特征分块匹配的移动机器人目标跟踪
贾松敏1,白聪轩1,王丽佳1,2,李秀智1
(1.北京工业大学 电子信息与控制工程学院 计算智能与智能系统北京市重点实验室 数字社区教育部工程研究中心,北京100124;2.河北工业职业技术学院 信息工程与自动化系,河北 石家庄050091)
为了实现复杂环境下移动机器人目标跟踪,提出多特征分块匹配的跟踪算法。该算法对目标区域进行分块,利用颜色、深度特征对各块图像进行特征匹配,实现目标的精确定位。在跟踪过程中,根据块图像中颜色和深度的相似度大小,及时更新目标模型和子块权重,提高跟踪的准确性。利用扩展卡尔曼滤波(Extend Kalman Filter,EKF)提取目标运动特征,当目标被完全遮挡时,根据其先验估计预测目标位置,以提高算法的鲁棒性。实验结果表明,该算法对目标快速移动、光照变化、遮挡问题具有较强鲁棒性,算法跟踪速度达132frame/s,满足跟踪实时性要求。
分块匹配;多特征跟踪;子块权重;目标模型更新
移动机器人目标跟踪是机器视觉领域的重要问题之一,它广泛应用于智能监控系统、智能交通、人体行为识别等领域[1]。Kinect因其能获得场景的三维信息同时提供准确的目标位置信息,被广泛应用于移动机器人目标跟踪系统中[2]。然而在移动机器人跟踪目标的过程中,视觉信息不可避免地会被目标快速移动、目标遮挡以及光照变化等问题所影响。其中,遮挡是机器人目标跟踪过程中的常见问题。针对遮挡问题,相关文献提出了许多解决方案。目标分块跟踪由于能利用某些未被遮挡的子块信息进行跟踪引起了许多学者的关注[3]。文献[4]将跟踪目标分割成若干个同样大小的矩形子块,通过计算每一个独立子块的颜色直方图,并将该颜色直方图和候选区域相应分块的颜色直方图进行匹配并穷尽搜索,选择每一个分块的最佳匹配位置并对相应位置进行加权投票,最终结合各个位置的投票结果得到目标在下一帧中的位置。尽管该方法能很好地解决目标遮挡问题,但因为采用穷尽搜索计算量过大,无法满足机器人跟踪的实时性要求。更重要的是,当目标被完全遮挡时,分块跟踪就失去了作用。鉴于此,本文提出了基于多特征分块匹配的移动机器人跟踪算法。首先手动选取跟踪目标,获取目标颜色和深度特征模型。在随后的跟踪中,以上一帧定位结果为中心,采用分块匹配方法,利用颜色及深度特征确定目标位置。由于该算法采用分块匹配确定目标位置,一定程度上解决由于目标半遮挡所导致的跟踪偏移问题。为了适应光照,姿态等变化造成的目标模型改变,本算法根据颜色和深度相似度大小,适时更新子块权重及目标模型。当目标被完全遮挡时,利用EKF先验估计预测目标位置[5]。
1 多特征分块匹配跟踪算法
由于目标衣着颜色一般局部变化较小而整体则存在较大变化,因此利用颜色特征进行分块匹配相较于整体匹配更加准确。此外,在跟踪过程中光照及背景是不断变化的,若算法中仅采用单一的颜色特征难以保证跟踪的准确性和鲁棒性。为解决上述问题,采用多特征分块匹配的目标跟踪方法。
首先手动选取跟踪目标,获取目标模型,并在随后的跟踪过程中以上一帧目标位置为基础,对目标进行分块,并融合各子块颜色特征、深度特征和运动特征以实现对目标的精确定位,算法框架如图1所示。
图1 跟踪框架图Fig.1 The frame of the block matching
在分块匹配过程中,通过计算每个分块区域的颜色、深度相似度,得到目标总体相似度:
其中,N为分块数目,本算法将候选区域分为4个子块,即N=4。ρcj和ρdj分别代表各子块颜色和深度相似度。ψj为子块权重。
然后,利用各子块的颜色、深度相似度与中心位置求其加权平均值,使目标位置更靠近颜色、深度相似度较大的子块区域,分块匹配的目标位置为:
式中:pj为各子块区域的中心位置。该方法通过对各子块颜色和深度相似度加权处理搜索相似度最大的位置作为目标位置,解决了目标跟踪过程中存在的半遮挡和跟踪漂移问题。
最后,利用EKF提取目标的运动特征。并通过融合跟踪过程中的运动特征、颜色特征、深度特征对目标进行精确定位。目标最终定位结果如下所示:
其中,P为目标位置,Dμ为颜色和深度特征贡献度,Pcd为颜色、深度特征定位结果,Ppre为EKF先验估计结果。当目标被完全遮挡时,该算法停止对颜色和深度模型进行更新,跟踪系统将利用EKF先验估计作为目标位置。
1.1特征提取
1.1.1颜色特征提取
由于在目标跟踪问题中,颜色特征较其他特征具有对于旋转,平移不敏感等优点。在分块匹配中采用颜色特征确定目标位置。颜色直方图因其计算简单,成为被广泛采用的颜色特征。本算法中目标颜色直方图模型为[6]:
其中,{x*i}i=1,2…n为目标区域像素坐标,n为像素点个数,K为核函数,δ为Kronecker delta函数,Cc为归一化系数。则在当前帧中,像素点为的图像候选区域的颜色直方图为:
其中,j=1,…,4对应分块匹配的四个区域。
利用Bhattacharyya系数计算当前各分块区域候选模型与目标模型相应区域颜色直方图的相似度,计算公式如下:
1.1.2深度特征提取
颜色特征虽具有良好的旋转、平移不变性,但对光照较为敏感,单独采用颜色特征确定目标位置,跟踪效果较差。从Kinect相机中获取的深度图像[7-9](由红外测距信息所得)对光照剧烈变化等情况具有良好的鲁棒性。故该算法利用Kinect获取目标的深度特征,结合颜色特征实现目标定位。像素坐标为{x*i}i=1,2…n的目标深度特征模型为:
计算当前帧中,各候选区域的深度直方图为:
根据当前各候选模型直方图与目标模型直方图特征,用Bhattacharyya系数计算两者相似度:
1.2子块权重与模型更新
1.2.1子块权重更新
传统的分块算法仅简单将目标分割成若干块,并未考虑各子块之间的差别,从而易导致跟踪失败。本算法根据各子块颜色及深度相似度对各子块权重重新进行分配,即随着跟踪的进行,相似度大的子块权重变大,反之相似度小的子块权重变小。具体规则如下:
Rule2:若子块与相应子块模型的颜色、深度相似度均大于阈值时,表明该子块跟踪效果良好,则增大该子块的权重,即ψtj=ψt-1j(1+β),其中ψt-1j为子块t-1时刻的权重,β为正常数,在本算法中β=0.2;
Rule3:若子块与相应子块模型的颜色相似度大于阈值而深度小于阈值时,表明目标发生位置变化,则减小该子块的权重,即ψtj=ψt-1j(1-β);
Rule4:若子块与相应子块模型的深度相似度大于阈值而颜色小于阈值时,表明光照发生变化,则该子块的权重保持不变,即ψtj=ψt-1j;
Rule5:若子块与相应子块模型的颜色和深度相似度均小于阈值时,表明目标被遮挡,该子块权重置零。同时,计算四块区域颜色和深度相似度平均值为颜色特征,d为深度特征),若ρu高于遮挡判断阈值h,则表明发生了半遮挡;若低于此阈值,则表明发生了全遮挡,遮挡结束后该子块权重置1,即
1.2.2模型更新
传统的基于目标模型的跟踪算法一般假设在跟踪过程中目标模型不发生剧烈变化,然而在机器人跟踪目标运动过程中,使用固定的目标模型很难稳定跟踪目标。因此该算法采用一种整体更新机制,分别对目标的颜色及深度模型进行更新。更新的时机由其特征贡献度决定。特征贡献度函数为:
即当颜色或深度特征相似度高时,表明跟踪效果良好,目标模型不需要更新;当其中某种特征相似度系数较小时,表明跟踪效果受到影响,若相似性系数在[d1,d2]范围内,目标模型将进行更新;若颜色或深度特征相似度系数均低于d,不更新目标模型。具体规则如下:
2 实验结果及分析
2.1实验平台
本实验硬件平台(如图2)为Pioneer3-DX机器人,视觉系统采用微软公司的Kinect传感器以实时获取彩色图像和深度图像。Kinect由三部分组成:RGB摄像头,单色CMOS摄像头和红外发射器。其中,RGB摄像头用来获取彩色图像;单色CMOS摄像头和红外发射器用来得到深度图像。Kinect的深度输出为11位,深度图像的分辨率为。软件采用C++和OPENCV实现。
图2 实验平台Fig.2 Experiment platform
2.2多特征分块匹配的机器人目标跟踪实验
为了验证多特征分块匹配算法能准确、稳定的跟踪目标,进行了目标检测实验。实验结果如图3所示,圆圈为基于颜色及深度特征的定位结果。从图中可以看出,当跟踪目标位姿不断变化时,跟踪效果并没有受到影响,始终保持准确定位目标。
图3 分块匹配实验结果Fig.3 The result of block matching
图4为多特征分块匹配算法的实验结果。其中第一行中圆圈标示区域为基于多特征分块匹配算法所跟踪到的目标人体在图像中的位置;第二行方框区域为基于颜色特征的传统分块匹配定位结果,图像尺寸640×480。从第23帧开始,非目标人体进入视野,并逐渐遮挡目标,仅采用颜色特征的算法跟踪结果发生偏移。而在多特征分块匹配算法跟踪过程中,随着目标逐渐被遮挡,部分被遮挡子块停止跟踪,同时停止了对模型的更新。当目标被完全遮挡时,采用EKF先验估计结果预测目标位置,保证了跟踪的正常进行。第72帧开始,目标开始转弯并且发生了光照变化,但是由于该算法利用颜色和深度
图4 机器人目标跟踪结果Fig.4 Tracking results of robot
特征进行分块匹配,扩大了目标搜索范围,从而准确跟踪到了目标,提高了跟踪的准确性。
3 结 论
针对移动机器人目标跟踪在光照变化、目标遮挡等情况下易发生跟踪不准确等问题,本文提出了基于多特征分块匹配的机器人目标跟踪算法。该算法在分块匹配框架下,利用颜色及深度特征进行分块匹配,得到目标的精确位置。其中,分块匹配有效地解决了目标快速移动时的跟踪偏移问题。根据各子块颜色和深度相似度对目标模型以及子块权重进行及时更新,提高了跟踪的准确性。最后采用扩展卡尔曼滤波提取目标运动特征,利用其先验估计有效地解决了目标遮挡问题。该算法融合颜色、深度、运动多种特征对目标进行跟踪,提高了跟踪的准确性。该算法处理速度约为132frame/s,满足移动机器人跟踪的实时性要求。实验结果表明,所提算法在光照剧烈变化,目标遮挡及目标快速移动等情况下,能准确、稳定的对目标进行跟踪。
[1]Vincze M,Schlemmer M,Gemeiner P,et al.Vision for robotics:A tool for model-based object tracking[J].Robotics &Auto-Mation Magazine,2005,12(4):53-64.
[2]林填锋,杨洁霞.基于Kinect的人体识别技术的一些改进[J].电脑知识与技术,2012,8(21):5220-5223.
[3]Fang J X,Yang J,Liu H X.Efficient and robust fragmentsbased multiple kernels tracking[J].International Journal of Electronics and Communications,2011,65(11):915-923.
[4]Adam A,Rivlin E,Shimshoni I.Robust fragments-based tracking using the integral histogram[C].IEEE Computer Society Conference on Computer Vision and Pattern Recognition,New York,2006:798-805.
[5]Rosales R,Sclaroff S.Improved tracking of multiple humans with trajectory prediction and occlusion modeling[R].Boston University Computer Science Department,1998.
[6]王丽佳,贾松敏,王爽,等.采用改进Mean Shift算法的移动机器人行人跟踪[J].光学精密工程,2013,21(9):2364-2370.
[7]Xia L,Chen C C,Aggarwal J K.Human detection using depth information by Kinect[C].Computer Vision and Pattern Recognition Workshops(CVPRW),2011:15-22.
[8]潘翔,唐春晖,张仁杰.基于混合蛙跳算法的移动机器人路径规划[J].电子科技,2015(11):29-32,36.
[9]曾品善,妙全兴,徐磊.自主移动机器人即时定位与地图构建方法研究[J].电子科技,2013(9):177-178,181.
Multi features fragment-based human tracking for mobile robot
JIA Song-min1,BAI Cong-xuan1,WANG Li-jia1,2,LI Xiu-zhi1
(1.College of Electronic and Control Engineering,Beijing University of Technology;Beijing Key Laboratory of Computational Intelligence and Intelligent System;Engineering Research Center of Digital Community,Ministry of Education,Beijing 100124,China;2.Department of Information Engineering and Automation,Hebei College ofIndustry and Technology,Shijiazhuang 050091,China)
To realize person tracking with a mobile robot in complex environment,a method based on multi features was presented.The region of the person was divided into several blocks.For each block,color and depth features were utilized for implementing accurate localization.To improve the accuracy of tracking,the target model and sub-block weights were updated according to the similarity of color and depth features during the process of tracking.Additionally,the extended kalman filter (EKF)was used to extract motion feature,which can handle with occlusion by priori prediction.Experimental results show that the presented method is insensitive to the occlusion and illumination changes.Furthermore,the average computing time was 132frame/s,which can satisfy the requirements of real-time tracking.
block matching;tracking based on multi features;Sub-block weight;updating target model
TN919.8
A
1674-6236(2016)01-0023-03
2015-04-30稿件编号:201504313
国家自然科学基金资助项目(61175087;61105033)
贾松敏(1964—),女,北京人,博士,教授。研究方向:智能服务机器人及其关键性技术、机器人分散控制、计算机视觉。