双目视觉在移动机器人定位中的应用
2013-07-25王殿君
王殿君
北京石油化工学院,北京,102617
0 引言
在计算机视觉领域根据摄像机的数目不同,可以分为单目视觉、双目视觉和多目视觉。单目视觉无法直接得到目标的三维信息,只能通过移动获得环境中特征点的深度信息,适用于工作任务比较简单且深度信息要求不高的情况[1-2]。如果利用目标物体的几何形状模型,在目标上取3个以上的特征点也能够获取目标的位置等信息,但定位精度不高[3]。多目视觉可观察到目标的不同部位,可以得到更为丰富的信息,但视觉控制器的设计比较复杂,且相对于双目视觉更加难以保证系统的稳定性[4]。
本文简要介绍了双目视觉定位原理,利用所构建的室内移动机器人定位平台,进行了机器人测距实验和定位实验。
1 双目视觉定位原理
双目立体视觉三维测量是基于视差原理的,即左相机像面上的任意一点只要能在右相机像面上找到对应的匹配点,就可以确定出该点的三维信息,从而获取其对应点的三维坐标[5],工作原理如图1所示。
图1 双目视觉定位原理图
2 构建实验平台
实验平台主要包括移动机器人和Micron-Tracker视觉系统两部分。移动机器人平台主要包括底层的嵌入式控制系统、上层Windows操作系统和机器人运动驱动系统,主要负责根据视觉系统提供的环境信息(目标位置或障碍物距离等)对机器人的运动进行决策,并控制和驱动机器人运动;视觉系统主要包括双目立体视觉系统、图像采集卡等,主要负责图像的实时采集、处理、目标的匹配和识别,并输出必要的环境信息。
2.1 移动机器人平台
移动机器人包括两层结构:底层的嵌入式控制系统平台和上层的Windows操作系统平台,如图2所示。
(1)移动机器人底层控制器选用Intel公司的PXA270 ARM微处理器,XScale架构,主频为520MHz,可以满足系统对计算能力和处理速度方面的要求,并且该处理器内部资源丰富,有利于扩展各种常用接口。主处理器外接64M SDRAM、16M NOR Flash和SD卡等存储设备,其上运行Linux操作系统,负责简单处理移动机器人的内外传感器信息,然后通过RS-232端口发送给上层Windows服务器程序,同时处理服务端程序发来的控制指令和其他操作请求,具体执行机器人各种硬件设施的操作。
(2)移动机器人上层控制器为 HP520计算机。基于Windows的服务器程序可以直接利用获得的信息控制机器人,特别是实时性要求较高的任务,如避障等。上层控制器与底层控制器之间采用串口通信,该结构可以完成一些复杂的任务,如计算量大且算法复杂度较高的图像处理、模式识别、目标跟踪、复杂的路径规划和导航等任务[7-8]。
图2 移动机器人
2.2 双目视觉MicronTracker系统实验平台
Micron Tracker系统是一个光学姿态跟踪产品家族的总称。这个家族的产品使用相同的软件接口——MTC函数库,唯一不同的是每个家族成员使用不同的摄像机系统。第三代追踪器采用全被动式设计,利用可见光立体地探测物体。被测物外部被涂上了一层可见花纹,传感器通过一条标准的数字连接线与电脑相连,通过上位机控制器上的软件来处理图像并检测图像中的可见目标点。Micron Tracker系统如图3所示。
图3 MicronTracker系统
Micron Tracker双目视觉系统的坐标系统有以下三种:
(1)面坐标。每一个面都有自己的坐标系统,其原点位于较长向量的中心。X轴从原点指向较长向量方向;Z轴垂直于两个向量方向,指向该面法线相反的方向。当该面面向摄像机时,面的Z轴正好平行于摄像机的Z轴,Y轴根据右手坐标系规则定义。
(2)标记坐标系。标记坐标系的定义和标记模板中第一面定义的坐标系相同,即使该面不可见也是如此。
(3)摄像机坐标。原点位于摄像机中心,Z轴指向摄像机前方,X轴指向右边,Y轴指向下方。当观看摄像机图像的时候,摄像机坐标系和屏幕坐标系平行[9]。
3 机器人定位实验
3.1 测距精度实验
首先固定双目视觉仪器的位置,在仪器正前方沿直线移动标签位置,每次X方向移动距离为50mm,在同一个地方取10次测量结果,然后求其平均值作为测量结果,最后将测量结果与标签的实际位置相比较。通过实验可得,Micron-Tracker的可测距范围为30~180cm,理论距离与实测距离之间的数据如表1所示,关系曲线如图4所示。由表1可知,测距最大偏差为8.644mm,最小定位偏差为0.056mm,平均定位偏差为1.773mm。这表明双目视觉定位精度较高而且系统稳定性好,受环境因素影响较小,满足移动机器人定位的需要。
表1 测距精度实验数据 mm
图4 测距精度实验
3.2 双目视觉定位实验
在室内结构化环境下,采用三边定位算法进行移动机器人双目视觉定位实验。三边定位算法是基于信号传播模型的定位方法,根据测得的标签相对于双目视觉系统的坐标来计算标签和双目视觉系统之间的距离。
如图5所示,点1、2、3、4为设定的标签坐标点,中间点T为双目视觉系统坐标点。假设标签1、2、3的坐标分别为(x1,y1)、(x2,y2)、(x3,y3),3个标签到移动机器人T的距离分别为d1、d2、d3,三边公式为
通过三边定位算法可求得移动机器人T的当前坐标(x,y)为
图5 双目视觉定位方法
根据实验所得到的理论坐标与实测坐标数据如表2所示。
表2 理论坐标与实测坐标值比较 cm
3.3 实验结果分析
图6为实测坐标与理论坐标比较曲线图,由表2可知移动机器人运动轨迹理论坐标值与实测坐标值最大偏差为3.635cm,最小偏差为0.424cm,平均偏差为1.553cm。
图6 实测坐标与理论坐标比较
4 结论
(1)利用双目视觉系统进行了测距精度实验,并基于双目视觉移动机器人进行了定位实验。
(2)定位实验结果表明,采用双目视觉的移动机器定位系统工作稳定且定位精度较高。
(3)本文构建的基于双目视觉移动机器人定位系统为移动机器人全自主导航提供了依据。
[1]张驰,靳伍银,刘昊,等.基于双目视觉系统的三维目标识别研究[J].机床与液压,2010,38(1):22-24.
Zhang Chi,Jin Wuyin,Liu Hao,et al.Identification Technique for 3D Target Based on Binocular Visual System[J].Machine with Hydraulic,2010,38(1):22-24.
[2]唐新星,赵丁选.基于图像叠合的工程机器人立体视觉系统[J].武汉理工大学学报,2009,33(2):156-159.
Tang Xinxing,Zhao Dingxuan.Research on Stereo Vision System of Construction Robot Based on Image Superposition[J]. Wuhan University of Technology,2009,33(2):156-159.
[3]崔开涌,王任杰,林小玲.机器人双目视觉系统的算法研究与实现[J].计算机工程,2008,34(3):237-240.
Cui Kaiyong,Wang Renjie,Lin Xiaoling.Research and Realization on Binocular Stereo Vision System of Robot[J].Computer Engineering,2008,34(3):237-240.
[4]龚志平,王勇,尹治.基于网络的嵌入式机器人视觉系统研究[J].微计算机信息,2009,25(11):262-264.
Gong Zhiping,Wang Yong,Yin Zhi.The Embedded Robot Vision System Based on Network Video Technology[J].Microcomputer Information,2009,25(11):262-264.
[5]郑志强,季秀才,刘斐.COMS的双目视觉系统的设计[J].国防科技大学学报,2003,25(6):1-4.
Zheng Zhiqiang,Ji Xiucai,Liu Pei.CMOS Binocular Vision System Design[J].Journal of National University of Defense Technology,2003,25(6):1-4.
[6]郝颖明,朱枫,欧锦军.目标位姿测量中的三维视觉方法[J].中国图像图形学报,2002,7(12):1247-1251.
Hao Yingming,Zhu Feng,Ou Jinjun.3D Visual Methods for Object Pose Measurement[J].Image and Graphics,2002,7(12):1247-1251.
[7]Seet B,Liu G,Lee B,et al.A-STAR:A Mobile Adhoc Routing Strategy for Metropolis Vehicular Communications[C]//Lecture Notes in Computer Science.Springer Berlin/Heidelberg,2004:989-999.
[8]Bell M G H.Hyperstar:A Multi-path Astar Algorithm for Risk Averse Vehicle Navigation[J].Transportation Research.Part B,Methodological,2009,43(1):97-107.
[9]Leach A R,Lemon A P.Exploring the Conformational Space of Protein Side Chains Using Dead-End Elimination and the Algorithm[J].Proteins Structure Function and Genetics,1998,33(2):227-239.