机器人的主动视觉人脸跟踪方法和跟踪系统转让专利

申请号 : CN201110207529.7

文献号 : CN102411368B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘宏赵浩丁润伟

申请人 : 北京大学

摘要 :

本发明公开一种机器人的主动视觉人脸跟踪方法和跟踪系统,跟踪方法包括如下步骤:(1)移动机器人通过主动摄像机获取环境信息图像并检测人脸目标;(2)检测到人脸目标后,机器人对人脸目标进行跟踪,并通过主动摄像机和机器人移动将人脸目标保持在图像中心。跟踪系统包括主动摄像机、图像跟踪模块、运动跟踪模块、层级缓冲模块和状态反馈模块。本发明实现了机器人的人脸自动检测与跟踪,通过图像跟踪和运动跟踪的结合,解决了图像视角较小的局限性,建立了移动机器人基于主动视觉的感知-运动环。使得人脸跟踪的移动范围扩展到360°,保证了跟踪范围的全方位扩展。两层的缓冲区域保证了跟踪的连续性,使人脸目标始终保持在图像中心。

权利要求 :

1.一种机器人的主动视觉人脸跟踪方法,包括如下步骤:

(1)移动机器人通过主动摄像机获取环境信息图像并检测图像中是否有人脸目标;

(2)检测到人脸目标后,机器人对人脸目标进行跟踪,所述对人脸目标进行跟踪的方法为:A、将主动摄像机采集的RGB图像转化为HSV图像;

B、计算人脸目标区域的色彩直方图;

C、根据色彩直方图,计算HSV图像中色彩的概率分布,获得颜色概率直方图;

D、通过颜色概率直方图选取搜索窗的大小与初始位置,采用窗口自适应的CamShift核密度估计算法对人脸目标进行跟踪;

并通过主动摄像机移动和机器人旋转将人脸目标保持在图像中心矩形限制区域,所述将人脸目标保持在图像中心矩形限制区域的方法为:A、在图像中心设定一个尺寸小于图像大小的矩形限制区域,矩形限制区域到图像边缘设置为第一缓冲区域;人脸目标超出矩形限制区域进入第一缓冲区域时,主动摄像机移动使人脸目标保持在矩形限制区域内;

B、在主动摄像机最大移动范围到一小于主动摄像机最大移动范围的设定值之间设置第二缓冲区域,这个设定值为摄像机开始移动的原点到最大移动值之间的一个取值,当人脸目标超出矩形限制区域且主动摄像机进入第二缓冲区域时,机器人旋转使人脸目标保持在矩形限制区域内;

(3)机器人在跟踪到人脸目标后,获取机器人与人脸目标之间的障碍物位置,生成动态栅格地图;并通过模糊逻辑控制算法和D*路径搜索算法实时运动规划,躲避静态和动态障碍物,最终移动到人脸目标位置,所述模糊逻辑控制算法为:(a)从动态栅格地图中获取障碍物到机器人之间的距离D;

(b)对距离D和机器人速度V设定模糊语言和定义数值,设定论域,获得障碍物距离D和机器人速度V的隶属度函数;

(c)根据障碍物远近与速度快慢的对应关系,得到机器人距离D和速度V的模糊控制规则;

(d)根据隶属度函数获得距离D和机器人速度V的模糊关系矩阵R,得到模糊控制的决策公式V=D*R;

(e)由模糊控制的决策公式计算模糊向量,按照最大隶属度表决的方法,选择相应的机器人的速度。

2.根据权利要求1所述的机器人的主动视觉人脸跟踪方法,其特征在于,采用类Haar特征的Adaboost人脸检测算法检测人脸目标。

3.根据权利要求1所述的机器人的主动视觉人脸跟踪方法,其特征在于,主动摄像机的移动为水平方向和/或垂直方向的运动。

4.根据权利要求1所述的机器人的主动视觉人脸跟踪方法,其特征在于,所述机器人是360度范围的旋转。

5.一种机器人的主动视觉人脸跟踪系统,其特征在于包括主动摄像机、图像跟踪模块、运动跟踪模块、层级缓冲模块、状态反馈模块和运动规划控制模块,主动摄像机获取含有人脸目标的图像;图像跟踪模块对人脸目标进行跟踪;层级缓冲模块根据人脸目标离开图像中心的距离确定主动摄像机和机器人移动的范围;运动跟踪模块根据层级缓冲模块确定的主动摄像机和机器人移动的范围控制主动摄像机和机器人的移动;状态反馈模块分别连接图像跟踪模块和运动跟踪模块,向图像跟踪模块和运动跟踪模块反馈人脸目标区域的图像位置信息、主动摄像机的水平垂直角度信息和移动机器人的位姿信息;运动规划控制模块根据人脸目标位置,控制机器人向人脸目标位置移动;该模块包括测距传感器,栅格地图模块、路径搜索模块、模糊逻辑控制模块和机器人控制模块,测距传感器获取机器人与障碍物的距离,栅格地图模块根据所述距离生成动态栅格地图;路径搜索模块根据动态栅格地图计算出最优路径;模糊逻辑控制模块根据机器人与障碍物的距离计算出机器人的移动速度;机器人控制模块根据最优路径和机器人移动速度控制机器人向人脸目标位置移动。

6.根据权利要求5所述的机器人的主动视觉人脸跟踪系统,所述测距传感器为声纳传感器或激光测距仪。

说明书 :

机器人的主动视觉人脸跟踪方法和跟踪系统

技术领域

[0001] 本发明属于移动机器人目标跟踪与运动规划技术领域,具体涉及一种快速鲁棒的主动视觉人脸跟踪方法和跟踪系统。

背景技术

[0002] 目标跟踪与运动规划技术是一门交叉学科,它融合了图像处理、模式识别、人工智能、自动控制、运动规划等许多领域的关键技术。现阶段,目标跟踪技术大多应用于视频监控、视频编解码、智能交通等领域,并且主要集中在基于PC平台,然而面向人机交互机器人的目标跟踪技术研究较少,特别是使用主动摄像机实现目标的跟踪与运动规划。
[0003] 在人机交互环境下,受日光和灯光的影响,光线变化较大;静态障碍物和动态障碍物形态各异,且分布不均;人与人之间的运动较为复杂,且容易相互遮挡。面对这些困难,如何实现实时的稳定的目标跟踪,特别是人脸跟踪;如何使移动机器人安全无碰撞的运动规划,从而实现人与机器人友好安全的交互,具有重要的研究意义。

发明内容

[0004] 本发明的目的是通过人脸的跟踪与运动规划实现人与机器人的安全友好交互。根据主动视觉的特点,建立移动机器人的感知运动环,实现鲁棒性较好的人脸检测和跟踪。面对人机交互过程中,人作为动态障碍物具有速度和姿态不确定的难点,通过结合路径搜索算法和模糊逻辑控制算法,实现了基于测距传感器的实时运动规划。
[0005] 本发明的技术内容:
[0006] 一种机器人的主动视觉人脸跟踪方法,包括如下步骤:
[0007] 1、移动机器人通过主动摄像机获取环境信息图像并检测图像中是否有人脸目标;
[0008] 2、检测到人脸后,机器人对人脸目标进行跟踪,并通过主动摄像机和机器人的移动将人脸目标保持在摄像机获取图像的中心,也即摄像机的视角中心。
[0009] 进一步的,本发明采用类Haar特征的Adaboost人脸检测算法检测人脸目标。
[0010] 人脸目标跟踪的方法为:
[0011] (1)将摄像机采集的RGB图像转化为HSV图像;
[0012] (2)计算人脸目标区域的色彩直方图;
[0013] (3)根据色彩直方图,计算HSV图像中色彩的概率分布,获得颜色概率直方图;
[0014] (4)通过颜色概率直方图选取搜索窗的大小与初始位置,采用窗口自适应的CamShift核密度估计算法对人脸目标进行跟踪。
[0015] 所述将人脸目标保持在图像中心的方法为:
[0016] (1)在图像中心设定一个尺寸小于图像大小的矩形限制区域,矩形限制区域到图像边缘设置为第一缓冲区域;人脸目标超出矩形限制区域进入第一缓冲区域时,主动摄像机移动使人脸目标保持在矩形限制区域内;
[0017] (2)在主动摄像机最大移动范围到小于主动摄像机最大移动范围的设定值之间设置第二缓冲区域,当人脸目标超出矩形限制区域且主动摄像机进入第二缓冲区域时,机器人旋转使人脸目标保持在矩形限制区域内。如果上一步的主动摄像机移动无法使得人脸目标保持在矩形限制区域,机器人旋转运动来补偿,这个设定值是一个小于主动摄像机最大移动范围的值,可以根据需要进行设定,设置第二缓冲区域的目的在于保证目标始终在图像的中心位置,不会出现因主动摄像机已无法移动时机器人才开始旋转导致的目标跟丢的情况。
[0018] 其中主动摄像机的移动为水平方向和/或垂直方向的运动。
[0019] 所述机器人旋转运动的范围为360°,
[0020] 机器人跟踪到人脸目标且人脸目标静止时机器人向人脸目标位置移动。
[0021] 机器人向人脸目标位置移动的方法为:
[0022] 机器人的测距传感器测量机器人与人脸目标之间的障碍物位置,建立动态栅格地图;
[0023] 采用D*路径搜索算法计算出机器人到人脸目标的最优路径;
[0024] 通过模糊逻辑控制算法控制机器人移动的速度;
[0025] 机器人按照计算出的速度和路径向人脸目标移动。
[0026] 所述模糊逻辑控制算法为:
[0027] (1)从动态栅格地图中获取障碍物到机器人之间的距离D;
[0028] (2)对距离D和机器人速度V设定模糊语言和定义数值,设定论域,获得障碍物距离D和机器人速度V的隶属度函数;
[0029] (3)根据障碍物远近与速度快慢的对应关系,得到一组多重条件语句,即模糊控制规则;
[0030] (4)根据隶属度函数获得障碍物距离D和机器人速度V的模糊关系矩阵R,得到模糊控制的决策公式V=D*R;
[0031] (5)精确化计算过程中,由模糊控制的决策公式求得的模糊向量,按照最大隶属度表决的方法,选择相应的控制量,从而控制移动机器人的速度。
[0032] 本发明还提供一种机器人的主动视觉人脸跟踪系统,包括主动摄像机、图像跟踪模块、运动跟踪模块、层级缓冲模块和状态反馈模块,主动摄像机获取含有人脸目标的图像;图像跟踪模块对人脸目标进行跟踪;层级缓冲模块确定主动摄像机和机器人移动的范围;运动跟踪模块根据层级缓冲模块确定的主动摄像机和机器人移动的范围控制主动摄像机和机器人的移动;状态反馈模块分别连接图像跟踪模块和运动跟踪模块,向图像跟踪模块和运动跟踪模块反馈人脸目标区域的图像位置信息、主动摄像机的水平垂直角度信息和移动机器人的位姿信息。
[0033] 所述跟踪系统还包括运动规划控制模块,该模块根据人脸目标位置,控制机器人向人脸目标位置移动。
[0034] 运动规划控制模块包括测距传感器,栅格地图模块、路径搜索模块、模糊逻辑控制模块和机器人控制模块,测距传感器获取机器人与障碍物的距离,栅格地图模块根据所述距离生成动态栅格地图;路径搜索模块根据动态栅格地图的信息利用D*图搜索算法计算出从起始位置到目标位置的最优路径;模糊逻辑控制模块根据机器人与障碍物的距离计算出机器人的移动速度;机器人控制模块根据最优路径和机器人移动速度控制机器人向人脸目标位置移动。
[0035] 所述测距传感器为声纳传感器或激光测距仪。
[0036] 本发明的技术效果:
[0037] 本发明实现了机器人的人脸自动检测与跟踪,通过图像跟踪和运动跟踪的结合,解决了图像视角较小的局限性,建立了移动机器人基于主动视觉的感知-运动环。使得人脸跟踪的移动范围扩展到360°,从而保证了跟踪范围可以全方位扩展。两层的缓冲区域保证了跟踪的连续性,使得人脸目标始终在图像中移动,最终保持在图像中心。
[0038] 通过测距传感器确定跟踪人的目标位置,在运动规划过程中实时建立动态栅格地图,并通过模糊逻辑控制算法和D*路径搜索算法实时运动规划,躲避静态和动态障碍物,最终到达跟踪目标人位置。

附图说明

[0039] 图1是本发明的主动视觉人脸跟踪系统结构示意图;
[0040] 图2是本发明的主动视觉人脸跟踪方法流程图;
[0041] 图3是机器人跟踪过程中的状态反馈关系图;
[0042] 图4是层级缓冲模块运行时的示意图;
[0043] 图5是实施例中的动态栅格地图模型示意图;
[0044] 图6是实施例中的障碍物距离隶属度函数曲线图;
[0045] 图7是实施例中的机器人速度隶属度函数曲线图。

具体实施方式

[0046] 参考图1,本发明面向人机交互机器人的主动视觉人脸跟踪与运动规划系统的具体设计如下:
[0047] (1)系统功能:
[0048] 移动机器人通过主动摄像机获取环境信息图像并检测是否有人脸,将人脸区域圈出并显示在机器人的显示器上,同时程序由人脸检测转向人脸跟踪,随着人的走动,通过主动摄像机水平垂直方向的运动和机器人的旋转运动实时跟踪人脸目标,并实时在显示器上显示。如果跟踪目标停止,机器人通过运动规划技术躲避人与机器人之间的障碍物,比如桌子或走动的人体,最终到达跟踪人体的目标位置。
[0049] (2)系统输入:
[0050] 摄像机获取的图像信息,声纳传感器获取的障碍物距离信息。
[0051] (3)系统输出:
[0052] 显示器输出图像,主动摄像机的运动,移动机器人的运动。
[0053] (4)具体实现:
[0054] 主要分为两个阶段,即人脸跟踪阶段和运动规划阶段,即向目标人脸移动的阶段。在人脸跟踪阶段,主动摄像机获取图像,通过图像跟踪模块和运动跟踪模块实现人脸跟踪,利用层级缓冲模块和状态反馈模块进行有效的通信和协调,增强跟踪的有效性、平滑性和鲁棒性。在运动规划阶段,根据测距传感器的距离信息建立栅格地图模块建立动态栅格地图模型,路径搜索模块、模糊逻辑控制模块利用D*搜索算法和模糊逻辑控制算法计算出机器人安全无碰撞的路径和速度,最后机器人控制模块按照上述路径和速度的运动规划移动到人脸目标位置。
[0055] 参考图2,人脸图像跟踪流程的步骤如下:
[0056] (1)利用主动摄像机获取图像信息;
[0057] (2)通过AdaBoost人脸检测算法从图像中获取人脸区域;
[0058] (3)对人脸目标图像计算颜色概率图;
[0059] (4)通过窗口自适应的CamShift核密度估计算法对人脸目标进行跟踪;
[0060] (5)在跟踪过程中,如果失效(即检测不到人脸),则进入第二步重新检测人脸,否则进行图像显示。
[0061] 在跟踪过程中通过主动摄像机的移动和机器人旋转始终让人脸目标位于图像的中心。
[0062] 整个流程是循环过程,从摄像机中不断的获取图像,经过算法处理在显示器上显示图像。
[0063] 参考图3,状态反馈关系图解释如下:
[0064] 状态反馈模块贯穿于整个跟踪系统,为图像跟踪模块和运动跟踪模块提供重要的反馈信息,因此状态反馈模块包括跟踪目标区域的图像位置信息、主动摄像机的水平垂直角度信息和移动机器人的位姿信息。
[0065] 参考图4,层级反馈模块解释如下:
[0066] 为了将跟踪的目标区域始终保持在图像的中心,我们采用了层级式缓冲模块和缓冲机制,该机制采用两层缓冲区,从高到低分别是图像区域缓冲和主动摄像机角度缓冲。
[0067] 首先,在图像中心设定一个尺寸小于图像大小的矩形限制区域,使得感兴趣区域即人脸目标可以在该矩形区域中自由移动,而图像边缘与矩形限制区域为第一次缓冲区,即图中显示的图像缓冲区;如果感兴趣区域的移动超过了矩形限制区域并进入图像缓冲区,那将开始利用主动摄像机角度移动进行补偿,角度运动包括水平角度和垂直角度。
[0068] 其次,在主动摄像机的移动范围之内设定一个角度运动缓冲区,即第二缓冲区,是一个小于主动摄像机最大移动范围的一个设定值到主动摄像机最大移动范围之间的区域,第二缓冲区域的设置是保证主动摄像机移动到最大移动位置前具有一定的缓冲,不会到主动摄像机无法再移动时再启动机器人旋转而导致目标人脸离开矩形限制区域,从而脱离摄像机的摄像范围,导致跟踪失效。这个设定值为摄像机开始移动的原点到最大移动值之间的一个取值,该取值可以根据需要设定,即图中显示的角度运动缓冲区;当感兴趣区域移动超过了矩形限制区域,且主动摄像机进入了角度运动缓冲区,则表明主动摄像机的移动开始不能满足感兴趣区域的移动范围,那么将启用移动机器人360°的旋转,从而保证了跟踪范围的全方位扩展。
[0069] 具体从图4中可以看到,虚线矩形内为矩形限制区域,人脸目标应该在该区域内;虚线矩形到小实线矩形之间的范围极为图像缓冲区,即第一缓冲区;当人脸目标进入该图像缓冲区时,主动摄像机开始水平或垂直移动,其移动的范围为主动摄像机角度运动限制区域,即最大范围到大实线矩形;取一个小于最大范围的设定值,如图中点划线的位置,从点划线到大实线矩形的位置就为第二缓冲区,即角度运动缓冲区,当主动摄像机移动到该范围,且人脸目标要离开矩形限制区域时,启动移动机器人旋转。综上所述,两层的缓冲机制保证了跟踪的连续性,使得跟踪区域始终在图像中移动,最终保持在图像中心。
[0070] 参考图5,动态栅格地图模型解释如下:
[0071] 在环境信息完全未知或部分未知的情况下,为了对环境建模创建地图,需要测距传感器,比如声纳传感器或激光测距仪。通过测距传感器进行障碍物的检测,并实时的创建栅格地图。通过对动态障碍物的检测,自动更新栅格地图,从而构建动态栅格地图。图中黑块显示的是障碍物空间,灰色表示未知空间,白色为自由空间。
[0072] 图5中,图5(a)显示了t-1时刻静态地图,图5(b)显示t时刻观察到的障碍物数据,用t时刻的观察数据更新地图可得到图5(c)的更新静态地图和图5(d)的更新动态地图。图5(c)中右上角的静态障碍物通过t-1时刻数据不完整(包含未知空间)更新为t时刻的新数据,且两个时刻的右上角障碍物信息变化较小。图5(d)中由于t-1时刻到t时刻自由空间变为障碍物所以为动态障碍物。
[0073] 运动规划如下:
[0074] 人机交互环境下,人是重要的动态障碍物,移动机器人为了适应动态环境,求解动态最短路径,采用D*算法,该算法能够对已有的最优路径进行局部更新,缩短计算时间和减小空间复杂度。
[0075] 在动态环境下,为了避免与障碍物发生碰撞,移动机器人的运动速度主要由前进方向的障碍物距离来决定的,障碍物越近,速度降低甚至停止以避免碰撞,障碍物越远,增加速度使机器人更快的到达目标位置。通过模糊逻辑控制算法来实现对移动机器人的速度的控制。模糊逻辑控制一般由四部分组成,分别是模糊化过程、知识库(数据库和规则库)、推理决策和精确化计算。
[0076] (1)模糊化过程中,将障碍物距离作为输入变量D,机器人的速度作为输出变量V。分别对他们设定模糊语言和定义数值,设定论域。
[0077] D={Danger,Near,Medium,Far}
[0078] V={VerySlow,Slow,Medium,Fast}
[0079] 得到输入变量与输出变量的隶属度函数,从而实现障碍物距离与机器人速度的对应关系。参见图6和图7的障碍物距离隶属度函数曲线和机器人速度隶属度函数曲线。
[0080] (2)根据障碍物远近与速度快慢的对应关系,得到一组多重条件语句,即模糊控制规则,如表1所示。
[0081] 表1 障碍物远近与速度之间的模糊控制规则表
[0082]D Danger Near Medium Far
V VerySlow Slow Medium Fast
[0083] (3)根据隶属度函数得到输入变量D与输出变量V的模糊关系矩阵R,从而得到模糊控制的决策公式V=D*R;
[0084] (4)精确化计算过程中,由模糊控制的决策公式求得的模糊向量,按照最大隶属度表决的方法,选择相应的控制量,从而控制移动机器人的速度。
[0085] 最后,根据计算出的机器人到目标人脸位置的最优路径和移动速度,机器人移动到目标人脸位置。
[0086] 上述实例只是本发明的举例,尽管为说明目的公开了本发明的最佳实施例和附图,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例和附图所公开的内容。