基于视觉导航的空中巡逻机器人的设计与实现

陈镔

摘要:针对空中巡逻机器人在空中巡逻过程中出现GPS失效或者空中巡逻机器人执行室内巡逻任务GPS不可用的情况,提出了使用单目视觉ORB-SLAM和惯性导航系统相结合的方法,用于提高强干扰环境和室内环境(无GPS信号)下的空中巡逻机器人定位精度。本设计对硬件平台和软件平台进行设计对提出的视觉导航方法进行验证,最终结果表明,在室内无GPS信号情况下采用视觉导航,该方案能够有效减小定位误差,空中巡逻机器人的位置、速度和姿态误差也得到有效抑制。

关键词:视觉导航;ORB-SLAM;空中巡逻;室内定位;单目视觉

中图分类号:TP391.41 文献标识码:A 文章编号:1009-3044(2018)21-0233-03

Abstract:In view of the case of GPS failure in the air patrol robot during the air patrol or the inability of the air patrol robot to perform indoor patrol task GPS, a combination of monocular visual ORB-SLAM and inertial navigation system is proposed to improve the strong interference environment and indoor environment (no GPS signal). The positioning accuracy of the patrol robot. In this design, the hardware platform and software platform are designed to verify the proposed visual navigation method. The final results show that the positioning error can be effectively reduced by using visual navigation without GPS signal in the room, and the position, speed and attitude error of the aerial patrol robot can be effectively suppressed.

Key words:visual navigation;ORB-SLAM;air patrol;indoor location;monocular vision

1 引言

随着科学技术的进步,移动机器人在生活中越来越可见,利用机器人协助人类完成某些工作,不仅可以提高生活效率,生活品质,同时可以节约生活成本,创造更多的社会价值。但机器人的定位问题,一直是人类探究的话题,研究人员利用各种的传感器,开发各种算法实现定位。餐厅服务机器人,扫地机器人等机器人利用视觉传感器读取前方图像,通过图像处理技术寻找特征点实现定位;港口自动运输车利用地下导轨产生的磁场,通过分析磁场的强弱实现位置监控。任何传感器都存在局限性,空中巡逻机器人若要自主导航对机载GPS定位依賴度高;当出现GPS信号弱或者完全无GPS信号时,要如何解决空中机器人导航问题,所以本论文利用视觉传感器与惯性传感器相结合的方式实现空中巡逻机器人能够在无GPS信号时的定位与导航。

单目视觉的研究最早从基于滤波的研究到目前基于关键帧的研究,在图像处理算法上实现了较大突破,Strasdat等人[1]证明基于关键帧的实用性比基于滤波的更具有意义。Klein G等人[2]提出的PTAM算法,首次将跟踪定位与建立地图分两个线程检测特征点。Pirker等人[3]提出了闭环修正、重定位等比较完善的CD-SLAM算法系统。R.Mur-Artal和J.D.Tardos 等人[4-5]提出了ORB-SLAM算法,融合了PTAM算法的主要思想和Strasdat提出的闭环修正方法,整个过程均采用ORB特征点进行跟踪、构图、重定位和闭环修正,与前面提出的SLAM方法相比,具有较高的定位精度和实时性,可以用在对实时性要求较高的场合。

2 单目ORB-SLAM算法

ORB-SLAM是基于特征点的单目实时定位与建图系统。ORB-SLAM算法主要分三个模块:跟踪、建图、闭环检测。如图1所示。

跟踪:首先在关键帧中提取图像的特征,根据前一帧的位姿判断当前位姿;然后依据ORB特征跟踪局部图像的特征,对当前帧的图像进行优化;最后根据当前帧的特征确定下一帧图像。

建图:主要完成局部地图的构建,包括对关键帧的插入,验证最近生成的地图点并进行筛选,然后生成新的地图点,使用本地BA,最后再对插入的关键帧进行筛选,去除多余的关键帧[6]。

闭环检测:分为闭环检测和闭环校正。当返回到之前走过的位置时,可以识别这个位置并且根据当时的关键帧判断得到现在的位置,这就是闭环检测。闭环校正,主要是闭环融合和本质图优化。

整体实现步骤如下:

1) 读取图像,通过“张正友标定法”进行摄像头标定,主要是对摄像头的畸变、失真进行修正。不过,修正过程中还是会存在误差。修正之后需要对图像滤波,去除噪声,为特征提取做好准备。

2) 提取的ORB特征点,利用FAST算子提取特征点,FAST算子的优点是计算速度快,可以实时应用到实际场景中。

3) 保存关键帧的特征点与下一帧的信息进行比较,两帧图像与关键帧可以建立图像几何关系,通过几何关系推算出相机的实时位姿信息。

4) 对图像的每一帧都进行上述操作,寻找、保存关键点和保存关键帧。构建地图信息,再利用闭环检测提高定位精度。

3 ORB-SLAM算法与惯性导航系统结合

单目视觉在一些复杂的环境仍然存在许多不足,需要通过其他传感器弥补不足之处。例如,空中巡逻机器人在飞行过程中无法获取到图像的深度信息,利用惯性传感器能够实时监控空中巡逻机器人真实的加速度、速度等信息。利用这些信息与图像信息建立数学模型,推算出图像的深度信息,进而得到空中巡逻机器人真实的位置姿态[7]。

IMU(惯性测量单元)是测量物体三轴姿态角以及加速度的装置。空中巡逻机器人导航时需要知道导航坐标系的角速度信号,测量物体的加速度信号以及空中巡逻机器人在三维空间中的角速度和加速度,利用这两个信号加上导航坐标系推断出物体姿态。通过扩展卡尔曼滤波器滤波可以把数据融合在一起,扩展卡尔曼滤波器也被用来补偿系统中的时间延迟[8]。

基于EKF的位置和速度预测,通过应用PID控制引导空中巡逻机器人在世界坐标系中朝着期望的目标位置[P=x,y,z,ΨΤ∈R4]前进。根据当前状态估计,将生成的控制转换成以机器人为中心的坐标系并将其发送到空中巡逻机器人。

4 实验与分析

4.1 实验平台搭建

本实验通过linux操作系统实现,并且需要先安装ROS系统。ROS系统中装有单目SLAM工具包,拥有实时仿真软件,方便空中巡逻机器人参数的调整与测试。程序运行后视频界面和字符界面如图3和图4所示。

4.2 实验环境

为何能够有效地检测视觉定位精度,实验的场景布置在室内,且周边环境较为复杂,如图5所示。

4.3 数据分析

4.3.1 姿态估计精度

通过测量三种不同场景的姿态来估计精度:空中巡逻机器人飞行一个大图形;空中巡逻机器人飞行一个小图形;空中巡逻机器人定点悬停。图4-4显示了三种情景中飞行数据,以及每个场景的飞行姿态均方根误差(RMSE)。三个飞行的估计轨迹(蓝色)和地面真实轨迹(红色):一个大图形(3m×3m×1m),一个小图形(1m×1m×1m),和静止在一个位置上。通过数据可以得到,姿态估计误差与被覆盖空间的大小线性相关:在局部,可以非常准确地估计了空中巡逻机器人的运动轨迹,但在长距离上估计误差将变大。

4.3.2 定位精度和飞行速度

考虑到该系统的延迟很大,空中巡逻机器人的姿态稳定性很大程度上取决于EKF的准确预测:姿态估计越准确,特别是速度估计越高,控制器增益可以设置得越高,而不会导致振荡。为了获得较好的稳定性,空中巡逻机器人在不同环境中定点悬停60秒以上,并测量定位精度的均方根误差(RMSE)。图7显示了三种不同环境的结果:测量的RMSE分别是:5.0cm(实验室内)、8.1cm (体育馆内)和15.0cm(室外)。

为了评估飞行速度,将反复让空中巡逻机器人飞行一定距离,并测量空中巡逻机器人到达指定目标位置的所需的时间(误差保持在10cm以下)。表1显示了空中巡逻机器人移动给定位置所需的平均时间:达到3m距离的目标位置平均为3.1s,其中最大飞行速度为2 m/s。

5 结论

综上所述,该空中巡逻机器人视觉导航系统在没有GPS的环境中,利用单目视觉ORB-SLAM和惯性导航系统相结合的方法,对空中巡逻机器人进行准确的导航,并且不需要额外的地标或者位置传感器。姿态估计精度、定位精度和飞行速度误差都在有效范围内。通过实验表明,该空中巡逻机器人视觉导航切实可行,具有较好的定位精度。目前只是对单目视觉ORB-SLAM的算法应用,今后对其參数的优化以及视觉跟踪失败后系统鲁棒性可以进一步提高。

参考文献:

[1] Strasdat H,Montiel J M M,Davison A J.Visual SLAM:why filter[J].Image and Vision Computing, 2012,30(2):65-77.

[2] Klein G, Murray D. Parallel tracking and mapping for small AR workspaces[C].2007 IEEE and ACM Interna- tional Symposium on Mixed and Augmented Reality (ISMAR).2007:225-234.

[3] Pirker K, Ruther M, Bischof H.CD SLAM-continuous localization and mapping in a dynamic world[C].2011 IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS).2011:3990-3997.

[4] M.Achtelik,M.Achtelik,S.Weiss,and R.Siegwart,“Onboard IMU and monocular vision based control for MAVs in unknown in- and outdoor environments,”in Proc. IEEE Intl.Conf.On Robotics and Automation (ICRA),2011.

[5] W.S.Ng and E.Sharlin,“Collocated interaction with flying robots,”in Proc.IEEE Intl.Symposium on Robot and Human Interactive Communication,2011.

[6] 周绍磊,吴修振,刘刚,等.一种单目视觉ORB-SLAM/INS组合导航方法[J].中国惯性技术学报,2016,24(5):633-637.

[7] 于乃功,黄灿,林佳.基于单目视觉的机器人目标定位测距方法研究[J].计算机测量与控制,2012,20(10):2654-2656,2660.

[8] 金舒灿,胡越黎,张贺.基于EKF的四旋翼姿态解算仿真与设计[J].电子技术应用,2017,43(9):127-131,136.

【通联编辑:唐一东】

《基于视觉导航的空中巡逻机器人的设计与实现》转载自《电脑知识与技术》学术期刊,2018年21期 ,作者:陈镔。

诗文坊小程序

下一篇: