摘 要: 以全自主型足球机器人的视觉系统为研究对象,介绍了一种基于彩色图象的目标识别与定位方法。重点研究了颜色空间的选取、目标识别中确定阀值的策略及特征点的选取方法。对如何提高颜色识别算法的鲁棒性、稳定性等问题进行了较为深入的探讨。实验结果验证了算法的有效性。所提出的算法已经在国内国际比赛中应用,收到了很好的比赛效果。

关键词: 全自主型足球机器人;视觉系统;颜色空间 

机器人足球作为人工智能与机器人学科试验研究的载体,近年来受到国内外学者的普遍关注。机器人足球比赛作为高科技对抗的小平台,展示的是双方综合技术水平及人的智慧。其特点是对抗双方机器人在一个结构化的场地内活动,机器人需要实时准确判断场上局势、做出决策并采取行动。在各类比赛项目中,全自主型足型机器人比赛是近几年发展起来、进步较快且有很大研究潜力的一类。这类机器人的视觉及控制器等各类部件均装载在机器人本体上,通过无线通讯及遥控装置实现与其它机器人、主控计算机及人的信息交流。比赛过程中,机器人通过视觉系统搜索球及球门等环境信息,通过声纳、红外或激光等测距系统进行机器人全局定位及障碍物检测,在进行信息融合之后形成行动策略并实施。因此,机器人如何快速识别目标并且准确定位是比赛取胜的关键性环节 [1] ,本文将对这方面的问题进行讨论。

1 自主型足球机器人视觉系统介绍

1.1 视觉系统的硬件组成

实验中使用的足球机器人是由哈尔滨工业大学和韩国 YUJIN 公司合作生产的新一代全自主型足球机器人。视觉系统中的两部 Panasonic 彩色摄像机通过 USB 接口与奔腾 III500 微处理机相 连,无需视频处理卡,采集速度最快可达到 30 帧 / 秒。视觉系统由彩色摄像机及其伺服控制 部件组成,摄像机视野角 60 °,通过伺服系统可以实现 360 °范围内目标搜索。

1.2 视觉系统的软件流程

视觉系统的软件流程如图 1 所示。彩色摄像头从比赛环境中捕获图象,在完成颜色空间转换 后,设置目标颜色阈值做为下一步搜索目标的依据。接下来是搜索目标部分:判断目标是否在视野中,如果在就确定出目标位置特征点 (x *,y*) ,否则就继续寻找。最后是目 标定位部分:确定本体与目标的相对位置及自身的全局坐标,为决策子系统提供判断依据。 <![endif]>

2 彩色图象中目标的识别

2.1 颜色空间及变换

颜色空间是一个描述体系,用于确定颜色在体系中的位置及相互之间的关系。在人和机器统一的颜色空间基础上,颜色恒常性用于描述对象在光照及环境变化时的一种性质。相对人类视觉而言,是指视觉系统在光照及环境变化时对物理表面的稳定的知觉,是一种认知现象。相对于机器视觉而言,是机器视觉系统关于物理表面光谱反射率的描述 [2] 。常见的 RGB 颜色空间上每一个象素的 R 、 G 、 B 值代表该象素分解在红、绿、蓝三原色上的亮度,其中 R ∈[ 0 , 255 ], G ∈[ 0 , 255 ], B ∈[ 0 , 255 ]。同一物体,在不同的光照和成象距离条件下,映射到内存的 RGB 数值会发生较大的变化,不利于目标的识别。特别是在环境复杂、目标较多且颜色相近的比赛环境中,识别率会大大下降。

为提高识别效果,我们可以将颜色表示从 RGB 颜色空间转化到更接近人眼观察方式的 HSI(Hue,Saturation,Intensity) 颜色空间,从而提高不同光照环境下识别系统的鲁棒性。在 HSI 颜 色空间中, H 代表色度,即表示不同的颜色; S 代表饱和度,即颜色的深浅; I 代表亮度, 即颜色的明暗程度。三个分量中,受光照影响较大的是 I 分量,而 H 和 S 通常由构成物体的原材 料的光线吸收和反射特征来决定。因此在识别目标时,可减少亮度 I 的权值,以 H 和 S 作为判 定的主要特征。从 RGB 到 HSI 的转换公式如下 [3] :

2.2 目标识别中阀值的确定

选定颜色空间后,下一步就是如何根据阀值将目标从背景中分离出来。对于彩色图象,阀值的选取与单色图象不同,仅仅利用一个阀值将图象简单地二值化是无法达到分离目标的目的的,只有设定颜色空间中三个或两个分量的上下阀值才有可能准确识别出目标。

(1) 手工设定阀值:比赛之前,针对已确定的光照环境,手工设定目标各颜色分量的阀值。 具体做法是通过鼠标选取参考颜色区域,通过计算该颜色区域中各点的颜色特征统计出 RGB 和 HSI 空间中各分量的最大值和最小值,利用最初确定的阀值对彩色图象进行二值化处理, 参照图象处理的结果对阀值进行小范围调整,达到理想效果后记录阀值,在此之间的子空间为目标颜色。

(2) 自动训练确定阀值:为了克服手工设定阀值中人为因素的影响,我们希望能自动获取目 标颜色范围。为此可以对目标阀值进行离线训练,获取其颜色特征后进行在线识别。具体做法是在不同光照和成像距离条件下对目标颜色进行多组测量,找到其颜色特征中相对稳定的范围后形成函数关系,比赛中直接使用,简化操作,提高系统性能。

2.3 目标位置特征点的确定

目标的获取即在摄像机采集的图象中搜索是否有特定的目标,并提取目标特征范围,给出其在图象中的位置特征点 [4] 。由于机器人足球比赛实时性的要求,过于耗时的复杂算法是不实用的。因此我们以目标颜色信息为主要特征,附以快速的滤波和形状匹配方法来获取目标。

(1) 图象二值化。根据事先设定好的阀值遍历图象将所有满足条件的点标定为 1 ,即 F [ x,y ] =1 ,其余的为 0 。这样做的目的是为了在下一步处理中只在附近相关点进行搜索,不必处理整幅图象,缩短视觉处理时间。

(2) 消除噪声。在 F [ x,y ] =1 的象素点所构成各类区域中,滤去过小的连通区。具体做法是 对各连通区进行分组标定,统计各连通区的象素数 N  i(i 为连通区编号, i=1,2,3 … ) , N i 小于阀值 N g 的连通区被视为噪声滤掉,其余的做为目标区域 M 保留。

(3) 计算目标特征点:对 M 中的象素点 (x i ,y i ) 进行计算,得到目标特征点的屏幕坐标 (x *,y *) 。对于球,取它于地面的切点做为特征点。处理过程如图 2 。

3 目标的定位

机器人通过视觉系统发现目标后,通常需要确定目标相对机器人的位置。一般获取距离信息的方法有: 1) 声纳、红外测距。这种方法的缺点是存在无效死区;能测得障碍物距离,但不 能区分障碍物为何种目标;多组声纳同时使用时,容易产生干扰; 2) 激光测距仪。它同样不能识别目标,且价格昂贵; 3) 视觉测距。

本文根据视觉信息测距。在一定条件下:机器人做平面运动;摄像机镜头高度固定;视角可测;目标在同一水平面上。此时,我们可以由二维的图象数据获得三维空间的深度信息 [5] ,即目标与机器人的相对距离,当然,如果结合声纳等其它传感器可以更为准确地了解比赛环境。