一种球形机器人视觉定位系统研究

2018-07-04 05:58赵鹏战强
机械制造与自动化 2018年3期
关键词:定位机器人图像

赵鹏,战强

(北京航空航天大学 机械工程及其自动化学院,北京 100191)

0 引言

球形机器人是一种将运动机构、传感器、控制器等内置于一个球形壳体内的机器人系统的总称。与传统的轮式、履带式移动机器人相比,它具有体积小巧、运动灵活、姿态易调整、环境适应能力强等特点。基于以上优越特性,球形机器人在复杂环境下作业、反恐侦察、太空探险等领域具有广阔的应用前景[1-3]。

球形机器人若要自主地完成路径规划、目标跟踪和预定的作业任务,需要实时检测自身位置及外部环境信息。由于球形机器人构型限制,无法在其外部安装大量传感器,致使其环境感知能力较弱,难以准确地获得自身位置、速度等运动参数,因此对球形机器人实现精准定位已经成为阻碍球形机器人进一步应用和发展的关键问题。相关研究人员针对以上问题开展了大量研究,但绝大多数采用远程遥控或开环控制方法,存在控制精度低、累计误差较大、抗干扰能力差等缺点[4-5]。此外,由于球形机构及工况限制,比较完善的定位方法无法得到实际应用,如GPS定位法由于建筑物的屏蔽作用使得机器人无法在室内进行工作;考虑到球形机器人的工作环境多处于崎岖、不平等复杂路况,里程计法测量的结果误差太大,累计误差严重时甚至有可能导致定位失败;惯性测量单元无法在高电磁干扰的环境下定位;激光定位价格昂贵等。

近年来,基于机器视觉的定位方法因其所采集的信息丰富、适应范围广、容错率高等优点广泛应用于工业、农业、国防、交通等领域。在球形机器人应用领域方面,Halme等人[6]于1996年最早提出了基于单目视觉传感器的球形机器人位置估计方法,该机器人通过识别在天花板上预先布置的人工路标获得自身的位置估计,但定位精度较差。此后,埃布罗河大学的Bakkycghi、北京航空航天大学的战强、麻省理工学院的Christopher等人[7]先后研制出载有双目相机的球形机器人,但机器人上的相机仅用于对外界环境的远程视频监控,没有构建立体视觉,也没有基于视觉反馈的闭环控制。在此基础上,北京邮电大学的叶平等人[8]提出了一种基于立体视觉的球形机器人定位方法,该方法通过双目相机采集特征点,采用解释法和卡尔曼滤波等算法实现了球形机器人的自身运动位置估计,定位精度较高。

根据BHQ-1G外壳不透明的特点,提出了一种基于BHQ-1G球形机器人的视觉定位系统。采用霍夫圆变换实现球形机器人的识别定位,通过图像拼接扩大了视野,能够快速稳定地实现该球形机器人的定位。

1 BHQ-1G球形机器人简介

1.1 BHQ-1G机器人总体结构

现以北京航空航天大学自行研制的BHQ-1G球形机器人为控制对象,相对于BHQ-1来说,BHQ-1G在结构设计上更加紧凑,优化了电机布局,减少了空间资源浪费,从而使得机器人具有更小的转弯半径,其具体结构组成如图1所示。

图1 BHQ-1G机器人结构组成图

球形机器人主要由左右半球壳、质量块、中空轴、电机、锥齿轮组、摇杆及旋转法兰构成。机器人左右半球壳相互独立,以便内部机构的装配及拆卸;中空轴一端通过滚动轴承与左球壳相连,另一端通过摆动法兰与右球壳紧固,并作为支撑架连接其余5个部件;1、2号电机均固定于中空轴内,其中1号电机通过旋转法兰与外球壳连接,2号电机与锥齿轮组相连,通过传动轴可带动摇杆旋转;质量块固定于摇杆的支撑板上,可随摇杆一起摆动。

1.2 BHQ-1G机器人工作原理

BHQ-1G机器人共采用2个直流电机完成自身的前进滚动和左右摆动动作。具体工作时,1号电机通过驱动旋转法兰盘旋转使得质量块绕中空轴转动,从而产生偏心力矩使机器人前后滚动;2号电机通过传动系统驱动摇杆和质量块摆动,通过不断地调节和改变机器人的中心位置控制机器人完成左右转向动作。

2 基于特征点匹配的图像拼接

2.1 sift特征点的k-d tree构造[9-10]

输入:图片上的sift特征点集合T= {p1,p2,…,pi},其中pi是图片上第i个特征点坐标。

输出:构建好的kd树。

算法步骤如下:

1) 首先构造根节点,根节点是对应于包含T的二维空间的矩形区域。选择横坐标轴,将T中所有点的横坐标的中位数作为切分点,通过垂直并通过该切分点的直线切分根节点对应的矩形区域。这样就由根节点生成左右两个深度为一的子节点。

2) 将左右子节点区域按深度依次以纵坐标轴和横坐标轴作为切分轴,重复以上过程直到两个子区域没有实例存在时停止,这样就形成了kd树的区域划分。

2.2 BBF算法

输入:kd树,查找点x。

输出:kd树中距离查找点最近的点以及最近的距离。

算法步骤如下:

1) 若kd树为空,则设定两者距离为无穷大,返回;如果kd树非空,则将kd树的根节点加入到优先级队列中;

2) 从优先级队列中出队当前优先级最大的结点,计算当前的该点到查找点的距离是否比最近邻距离小,如果是则更新最近邻点和最近邻距离。如果查找点在切分维坐标小于当前点的切分维坐标,则把他的右孩子加入到队列中,同时检索它的左孩子,否则就把他的左孩子加入到队列中,同时检索它的右孩子。这样一直重复检索,并加入队列,直到检索到叶子节点。然后再从优先级队列中出队优先级最大的结点;

3) 重复1)和2)中的操作,直到优先级队列为空,或者超出规定的时间,返回当前的最近邻结点和距离。

2.3 RANSAC算法

a) RANSAC算法原理[11]

RANSAC(random sample consensus)是用于去除噪声影响,估计模型的算法。给定N个数据点组成的集合P,假设集合中大多数的点都是可以通过一个模型来产生的,且最少通过n个点(n

1) 从P中随机选择n个数据点;

2) 用这n个数据点拟合出一个模型M;

3) 对P中剩余的数据点,计算每个点与模型M的距离,距离超过阈值的则认定为局外点,不超过阈值的认定为局内点,并记录该模型M所对应的局内点的值m;

迭代k次以后,选择m最大的模型M作为拟合的结果。

2.4 基于霍夫圆变换的识别定位

任意一个圆可以完全由3个参数描述其相关信息:圆心(a,b)和半径。(圆心是2个参数,加起来总共3个)。

x=a+Rcosθ

y=b+Rsinθ

当θ由0°逐渐变化到360°时,就生成了一个半径为R的圆。当R已知时,在xy空间里的每一个点都相当于ab空间里的一个圆(R此时并非参数,是一个已知量)。对上述两式变形,得到:

a=x1-Rcosθ

b=y1-Rsinθ

对于一个任一点(x1,y1),Θ从0°扫到360°。

完整的步骤如下:

加载图片,检测边缘并产生二值图像,对边缘上每个像素点,在ab空间产生一个圆。对于ab空间上的圆上每个点对累加器上的单元进行累加,如果单元上的累加值超过某一阈值,那么这个单元就对应一个圆心,这样就找到一个半径为R的圆。

3 BHQ-1G球形机器人试验与分析

由于机器人识别对周边环境可能比较敏感,且光线变化也会对图像识别造成影响,仅依靠理论模型无法确定机器人实际工作状态和定位效果。因此在理论研究的基础上,在实验室内搭建了参数可调式试验平台,验证基于霍夫圆变换的球形机器人定位算法的稳定性。

3.1 系统试验平台搭建

试验平台主要由BHQ-1G球形机器人、图像采集卡、两架摄像机和组合三脚架组成,其中摄像机架设在三脚架上的连杆上。三脚架高度为1.5 m,摄像机间距1 m,相对机架连杆中心对称布置,可同时对球形机器人进行拍照。摄像机采用松下公司生产的彩色CCD摄像机,分辨率为640×480,可配合图像采集卡完成两路图像的采集工作。采用emgucv2.49/C#完成上位机,其中实验数据绘图采用python2.7完成。

3.2 BHQ-1G球形机器人图像拼接实验

随机选取两个位置对BHQ-1G球形机器人拍摄,对拍摄得到的两张图像进行拼接如下图所示。其中图2和图3是待拼接图,图4是拼接结果。

图2 待拼接图一

图3 待拼接图二

图4 拼接结果图

拼接效果良好,能够将两张图像很好地融合在一起,中间感觉不到拼接缝的存在,视野也能够明显的扩大。

3.3 球形机器人定位试验

球形机器人的定位实验分为两个部分:第一部分是球形机器人的识别,第二部分是球形机器人定位稳定性实验。

如图5所示,利用霍夫圆变换效果良好,通过该算法能在该实验室内环境下准确的识别出球形机器人的边缘。

由图5可以看出,对球心横坐标与纵坐标的定位结果来看,波动在3个像素点以内。对于图6,这个是定位坐标的立体图,非常直观地可以看出定位点集中在位置相近的5个点上,1 000个定位点中有956个是这5个点中的一个,占到95.6%。其他波动的点与这5个集中点位置相差很小。综上,该视觉定位系统对球形机器人定位的稳定性良好,能够很好地完成球形机器人的定位。

图5 球形机器人定位的圆心横坐标及纵坐标图

图6 球形机器人定位圆心的立体坐标图

4 结语

对BHQ-1G球形机器人的室内定位问题做了研究,提出了基于霍夫圆变换的定位方法。将两个摄像机置于摄像机支架上对球形机器人拍摄,将拍摄的图像进行拼接,显著地扩大了视野。在此基础上对球形机器人的定位做了实验。实验结果表明,该方法对球形机器人的定位精度很高,稳定性很好。基于视觉定位的方法对球形机器人的运动控制、轨迹规划等技术的研究奠定了基础,对球形机器人的定位也提供新的方案。下一步将主要研究基于视觉的球形机器人的运动控制,针对球形机器人完成不同运动轨迹的控制方案和实验。

[1] 赵勃,孙李宁,李满天. 球形机器人研究综述[J]. 机械与电子,2010(9):63-65.

[2] 邓宗全,岳明. 球形机器人的发展概况综述[J]. 机器人技术与应用,2006(3):27-31.

[3] 叶平,李自亮,孙汉旭. 基于立体视觉的球形机器人定位方法[J]. 控制与决策,2013,28(4):633-635.

[4] 赵凯亮 .BYQ-4球形机器人运动特性分析及操作任务研究[D]. 北京:北京邮电大学,2009.

[5] 王轩. 具有双目视觉的球形机器人定位方法研究[D]. 北京:北京邮电大学,2013.

[6] 岳明. 双驱动球形机器人机器及其运动控制的研究[D]. 哈尔滨:哈尔滨工业大学,2008.

[7] 战强,贾川,马晓晖,等. 一种球形移动机器人的运动性能分析[J]. 北京航空航天大学学报,2005,31(7):745-746.

[8] 叶平,韩亮亮,张天石,等. 具有立体视觉的球形机器人及其运动控制[J]. 机械工程学报,2013(6):9-13.

[9] Lowe D G. Distinctive image features from scale-invariantkey-points[J]. Int J of Computer Vision, 2004, 60(2): 99-110.

[10] FINKEL R A,BENTLEY J L.QIlad trees-a data strncture for retrieval oncomposite keys[J].Acts Informatica,1974,4(1):1-9.

[11] Martin A F, Robert C B. Random sample consensus:Aparadigm for model fitting with applications to imageanalysis and automated cartography[J]. Communicationsof the ACM, 1981, 24(6): 381-395.

猜你喜欢
定位机器人图像
定位的奥秘
巧用图像中的点、线、面解题
《导航定位与授时》征稿简则
有趣的图像诗
Smartrail4.0定位和控制
找准定位 砥砺前行
机器人来帮你
认识机器人
机器人来啦
遥感图像几何纠正中GCP选取