基于RGB-D相机的移动机器人定位分析与实现

2019-07-01 02:35彭蔚枝袁锋伟周志伟
智能计算机与应用 2019年3期
关键词:视觉定位

彭蔚枝 袁锋伟 周志伟

摘 要:同时定位与地图创建在移动机器人导航系统中至关重要。本文以RGB-D深度相机为视觉传感器,分析移动机器人定位方法,利用特征提取与匹配实现位姿估计,实现定位功能,以Turtlebot为载体的实验平台,运用成熟的ORB-SLAM视觉算法实现定位与地图构建,拟完善中国在核电设施中移动机器人室内定位问题,自主构建出厂房地图,或者搭载于已有的核装备机器人上完成自身定位与地图构建。

关键词: RGB-D深度相机;定位;ORB-SLAM;视觉

文章编号: 2095-2163(2019)03-0168-04 中图分类号: TP242 文献标志码: A

0 引 言

随着现代科技的迅猛发展,智能导航设备应用正日趋广泛,比较常见的当属基于GPS/北斗导航系统的移动设备。及至目前备受瞩目的自动驾驶技术,也离不开导航系统的参与配合。众所皆知,定位在导航系统中占有举足轻重的地位。本文研究目的即拟在核电站等核设施内完成厂房内地图构建,为此本次研究将选用以室内为运行环境的定位方法,具有代表性的室内定位技术有基于红外传感器、蓝牙、wiff、视觉传感器、电磁轨道等方法。考虑到以视觉传感器的视觉定位建图技术在理论和实践上均取得了重要突破,又适用于未知的室内环境,且运行效果很好。基于此,本文将以深度相机为传感器,利用ORB特征提取算法对图像进行特征提取与匹配,分析计算出移动机器人的位姿,并用ORB-SLAM2为定位建图算法进行分析与实验,实验项目包括:特征提取、特征匹配、位姿估计、室内定位与建图,实验结果表明本文研究最终能取得一个良好的定位与地图构建效果。对此可展开论述如下。

1 背景与选型

1.1 基本概念

同时定位与地图创建(Simultaneous Localization and Mapping, SLAM)是指包括同时定位与地图创建的系统。机器人设备搭载SLAM系统能实时获得自身定位,并构建生成地图[1]。經过几十年研究发展,视觉SLAM的整体算法框架已经成熟。视觉SLAM即是指搭载了特定视觉传感器的机器人或者移动设备,在没有GPS信号或者缺少先知信息的环境下,在运动过程中感知自己位置并构建生成地图。

1.2 选型依据

1.2.1 传感器选型

对于研究者来说,用于视觉的传感器有单目摄像头、双目摄像头、RGB-D深度摄像头等类别。其中,RGB-D相机可直接获取空间点深度信息,而无需像单目摄像头一样进行初始化;深度相机的数据初始化则更简单,首帧即为关键帧,而且由于深度信息已知,就可从立体点中直接构建初始化地图。故而,本文将采用RGB-D深度相机作为视觉传感器。

1.2.2 视觉算法选型

经典的视觉SLAM系统的设计步骤可阐释分述如下。

(1)传感器信息读取,在视觉SLAM中读取和预处理图像。

(2)视觉里程计,简称VO。视觉里程计也称为前端,其定制功能是估算相邻图像之间相机位置,以及局部地图的粗略样子。

(3)后端优化。后端接收到不同时刻视觉里程计测量出的相机位姿,以及回环检测信息,对其进行优化,得到全局地图。

(4)回环检测,判断机器人是否到达过先前的位置[2]。

视觉SLAM可分为视觉里程计前端和运动估计的后端。其中,前端是指通过深度相机输出的图像信息大致估计出相机运动,往往深度相机能提供给后端较好的初始值。基于特征点法的前端图像处理,是视觉里程计的主流方法。特征法的前端运行较为稳定,是目前比较成熟的视觉前端的解决方案。本文采用ORB-SLAM[3]算法为整体框架,ORB-SLAM算法是一个较为完善的SLAM系统,现在许多优秀的算法是基于ORB-SLAM框架上再做另行深入开发的。ORB中的特征计算相对简单快速,不像SIFT算法或者SURF算法那样耗时,可以不使用GPU即可完成快速计算;角点选取简捷方便,ORB增加了尺度和旋转的描述,具有良好的旋转和尺度不变性。ORB提供的BRIEF描述子在大范围运动时可以进行良好的回环检测和重定位。优秀的回环检测算法能有效地防止ORB-SLAM中误差的累积,即使丢失帧后也能根据当前帧将其及时找回。

在PTAM采用2个线程后,ORB-SLAM采用了3个线程同时实现SLAM过程。特别地,Tracking线程是对相机记录图像的特征提取,并与附近图片进行特征匹配,通过特征点的位置估算出相机的位姿。

2 位姿计算

2.1 特征提取

基于ORB[4]算法的特征是由关键点和描述子组成的。关键点为角点,角点选取工作过程可详述如下:

(1)在图像中选取像素p,假设其亮度为Ip。

(2)随机设置一个阈值,一般设T=20%Ip。

(3)以像素p为中心,选取半径为3的圆周上16个像素点。如果选取的圆周上有N个亮度大于Ip+T或者小于Ip-T的点,那么p可以被认为是关键点,N可以取12、6、11,将其分别称为FAST-12、FAST-6、FAST-11。具体如图1所示。

(4)重复以上步骤,对每一个像素执行相同的操作,即可完成角点的选取。FAST-12在时效性上做了优化,在FAST-12中选取第1、5、9、13个像素亮点,只有这4个点同时满足亮度要求,才可能是角点。此类优化可以大大加速角点检测,同时也可避免角点集中现象。研究可知,半径固定为3的圆,将存在尺度问题。针对这一问题,ORB在设计中添加了尺度和旋转的描述,步骤详见如下。

(1)在图像中定义图像块的矩为:

通过矩可以找到图像块的质心,可将其写作如下数学形式:

连接图像块集合中心O与质心C,可以得到一个向量,特征点的方向可以定义为:

如此将使得FAST角点具有旋转不变性,ORB的尺度不变性可以通过构建图像金字塔解决[4]。BRIEF描述子的确定过程可描述为:BRIEF描述子是由0和1组成的二进制数字的组合,这里选取关键点附近的2个像素进行比较,当点p像素大于点q像素,记为1,反之记为0。

2.2 特征匹配

组合FAST和BRIEF两者,在SLAM中用于图像的匹配。根据匹配,通过2幅图中任意2个点的描述子比较判断是否为同一个特征,其中相似度可用二进制之间的汉明距离进行表示。研究中给出了实验室内2帧图像匹配结果即如图2所示。

2.3 位姿估计[2]

在图像特征提取与匹配后,研究将对相机运动进行估计。本文采用非线性优化求解方法。将粗略估计的相机位姿设为第一帧,优化匹配点的重投影误差。計算重投影误差的方法过程可解析表述如下。

三维空间P点在第一帧和第二帧中对应的像素点分别为p1和p2,而在实际的投影中,在第二帧中的投影点为p21,需要通过优化的方式使其靠近p2,尽可能减小与实际投影点之间的误差。 假设2帧中有n对匹配点,设空间中的一点坐标pi=[xi,yi,zi]T,pi投影点像素坐标为ui=[ui,vi]T,相机内参固定为K,变化矩阵李代数为ξ,像素点和空间点的位置有如下关系:

由此即推导得到了重投影误差关于位姿的导数。根据2幅色彩图和2幅深度图像,研究在计算机上求解出来变化矩阵,至此便完成了位姿估计。最终运算结果如图3所示。

3 实验

目前,由于防辐射镜头昂贵,防辐射电子设备处理仍难于在实验室环境下进行操作。本文将在实验室和实验室楼道里模拟核电站室内环境。本实验的硬件配置为:课题组购买的实验小车平台turtlebot2+ ubuntu14.04操作系统 + ROS indigo + 联想笔记本T450+XBOX手柄。运行效果如图4所示。

4 结束语

基于RGB-D相机的移动机器人以色彩图为图像信息进行ORB特征提取与匹配,并且提取速度快,匹配效果好,为下一步位姿估计提供了具有重要价值的有效信息。经过重投影误差的计算,能够求出变化矩阵,也能计算得出机器人的位姿,最终以ORB-SLAM算法模拟核电设施室内环境实现了定位与地图构建。本文的研究可以解决在未知的室内环境下移动机器人定位问题,为智能化设备制造提供有益的技术支持与借鉴。

参考文献

[1]罗荣华,洪炳镕. 移动机器人同时定位与地图创建研究进展[J]. 机器人,2004,26(2):182-186.

[2] 高翔,张涛. 视觉SLAM十四讲:从理论到实践[M]. 北京:电子工业出版社,2017.

[3] MUR-ARTAL R,MONTIEL J M M,TARDOS J D. ORB-SLAM: A versatile and accurate monocular SLAM system[J]. IEEE Transactions on Robotics,2015,31(5):1147-1163.

[4] RUBLEE E,RABAUD V,KONOLIGE K,et al. ORB:An efficient alternative to SIFT or SURF[C]//IEEE International Conference on Computer Vision, ICCV 2011. Barcelona, Spain:IEEE,2011:1-9.

猜你喜欢
视觉定位
紧绕目标定位 开发研学课程
难与易
巧用“余数定位”,突破周期函数的计算问题
教具在高职课堂教学中的应用
论黄山标识性材料设计的“焦甜香”表达
浅析油画色彩表现的理性化方式
亨利摩尔雕塑的外在视觉意义
理想的定位