基于计算机视觉的室内自主移动机器人导航综述

2017-07-11 11:23杨春媚王峰晋博汪进梅琪邱文添
电脑知识与技术 2017年15期
关键词:移动机器人栅格计算机

杨春媚 王峰 晋博 汪进 梅琪 邱文添

摘要:计算机视觉在人工智能学科占据重要地位,为自主移动机器人视觉导航做了深厚的理论铺垫。基于计算机视觉的自主导航与路径规划是自主移动机器人研究的关键技术,计算机视觉室内导航技术主要分为3类:第一类是环境地图事先已知;第二类是同时定位与地图构建(simultaneouslocalization andmapping,SLAM);第三类是不依赖环境地图。详细阐述了每种导航模型和技术方法,探讨了基于计算机视觉导航的最新技术进展,总结了目前国内外计算机视觉导航的研究进展。

关键词:计算机视觉;地图匹配;SLAM;机器人导航;路径规划

1概述

计算机视觉在人工智能学科占据重要地位,为自主移动机器人视觉导航做了深厚的理论铺垫。目前,机器人导航技术有很多种,传感器导航技术如里程计、激光雷达、超声波、红外线、微波雷达、陀螺仪、指南针、速度、加速度计或触觉等得到了普遍应用,与上述非计算机视觉导航技术相比较,计算机视觉导航技术如人眼般具有灵敏度高且可捕获的信息量大以及成本低等优点。由于室内相对室外空间比较狭小且内部环境复杂,所以普通移动机器人在作业过程中,完成躲避眼前障碍物、自主导航以及为自身找出一条可行路径等一系列操作会相对比较困难。计算机视觉导航技术可利用本身的摄像头获得室内周围的环境信息,实时对其周身的场景进行快速反馈,对视野前方障碍物进行快速识别和检测,从而确定一条高效的可行的安全路径。本文对计算机视觉导航技术进行分类研究,主要分为3类:第一类是环境地图事先已知,提前对外界环境特征进行提取和处理,建立全局地图,并将地图信息存储在机器人内存数据库中,在导航的时候实时进行地图匹配;第二类是同时定位与地图构建,移动机器人在自身位置不确定的情况下根据自身的摄像头获取周围未知环境信息,在作业时逐步构建周围的环境地图,根据构建的增量式地图自主实时定位和导航;第三类是不依赖环境地图,自主移动机器人不需要依赖任何的环境地图,其在作业活动时的可行区域主要取决于摄像头实时识别和检测的环境相对信息。

2环境地图的表示方法

目前,计算机视觉导航技术多采用栅格地图、几何地图、拓扑地图和混合地图构建环境地图信息。

2.1栅格地图

栅格地图,将栅格图像考虑为一矩形,均分为一系列栅格单元,将每个栅格单元赋予一个平均概率值,并利用传感信息估计每个单元内部内存障碍物的概率。构建栅格地图的优点是其地图表达形式直观,创建和维护比较容易;但当划分的栅格单元数量不断增多时,实时性就会慢慢变差;当划分的栅格单元越大时,环境地图的分辨率越低。

2.2几何地图

几何地图利用几何特征如点、直线、平面等来构成环境主要框架,需要知道这些特征在环境中信息的具体位置,所以几何地图通常使用其对应的三维空间坐标来表示。几何地图构建过程相对简单,保留了室内环境的各种重要信息,是基于计算机视觉的定位与地图构建算法中最常用的一种表示方式。但是为了完成环境的建模需要标记大量的特征,从而计算量也非常的大,降低了实时性,其重建的地图也容易出现与全局不一致的情况。

2.3拓扑地图

拓扑地图用许多节点和连接这些节点的曲线来表示环境信息。其中,每个节点相对应真实环境中的特征点(如门角、窗户、椅子、桌子角及拐角等),而节点之间的曲线表示两个节点对应的地点是相联通的。拓扑地图把环境信息表上在一張线图上,不需要精确表示不同节点间的地理位置关系,图像较为抽象,表示起来方便且简单。机器人首先识别这些节点进而根据识别的节点选择节点与节点间的曲线作为可作业的路径。

2.4混合地图

混合地图主要包括3种形式:栅格一几何地图、几何一拓扑地图以及栅格一拓扑地图。混合地图采用多种地图表示,可结合多种地图的优势,与单一的地图表示相比更具有灵活性、准确性和鲁棒性,但其不同类别的地图结合起来管理会比较复杂,难以协调,增加了地图构建的难度。文献针对室内环境所建立的模型分为全局拓扑和局部几何表述部分,整体环境通过拓扑节点串连起来,维护了整体环境表述的全局一致性;而以每个拓扑节点为核心所采用的几何表述则可确保局部精确定位的实现,这样建立的几何一拓扑混合环境模型可将二者的优势都表现出来,使得移动机器人定位和地图构建同时进行,实现容易。

3基于计算机视觉的室内导航

基于计算机视觉的室内导航技术可利用摄像头捕获机器人周围环境的全部信息,对其周身的场景进行反馈,对障碍物进行快速识别和检测,从而确定一条高效的可行的安全路径。本文将计算机视觉室内导航技术主要分为3类:第一类是环境地图事先已知;第二类是定位与地图构建同时进行;第三类是不依赖环境地图。

3.1环境地图事先已知

提前对外界环境特征进行提取和处理,建立全局地图,并将地图信息存储在机器人内存数据库中,在导航的时候实时进行地图匹配,即预存环境地图。在环境地图事先已知的导航中,路标信息保存在计算机内存的数据库中,视觉系统中心利用图像特征直接或间接向移动机器人提供一系列路标信息,一旦路标被确定后,通过匹配观察到的图像和所期望图像,机器人借助地图实现自身精确定位和导航。该导航技术过程可分为以下步骤:

a)图像获取:摄像头获取其周围的视频图像;

b)路标识别及检测:利用相关图像处理算法对图像进行一系列预处理如进行边缘检测和提取、平滑、滤波、区域分割;

c)路标匹配标志:在观察到的图像和所期望图像之间进行匹配,搜索现有的路标数据库进行标志路标;

d)位置计算:当有特征点进行匹配时,视觉系统会根据数据库中的路标位置进行自身精确定位和导航。

在基于计算机视觉的地图匹配定位过程中,主要有2种地图匹配较为典型。

①已知起点,已知地图。这种条件下的定位称为局部定位,采用的是一种相对定位的方法,如图1所示为其位姿估计过程,这种情况目前导航技术研究得最多。

②不知起点,已知地图。这种条件下的定位称为全局定位。当机器人需要重置时,通常使用这种定位方法来检索机器人的当前位置(即姿态初始化)。常用的辅助方法是在环境中添加一些人造信标,如无线收发器,几何信标,条码技术,红外或超声波接收系统进行位置识别,利用视觉系统识别自然标志,自主定位。

3.2定位与地图构建同时进行

不知起点,不知地图。SLAM技术最早由Smith等人于1986年提出,移动机器人在自身位置不确定的情况下根据自身的摄像头获取周围未知环境信息,在作业时逐步构建周围的环境地图,根据构建的增量式地图自主实时定位和导航。在日后的导航研究中,混合地图中的几何一拓扑混合环境模型被得到广泛应用,主要用来解决SLAM问题。

2003年,在解决SLAM技术难题上,Arras等人采用基于Kalman滤波器和最邻近(nearest neighbor)匹配策略的随机地图创建方法。下面是该算法步骤:

a)数据采集:首先初始化系统,从摄像头传感器采集距离数据;

b)状态预测:视觉系统预测机器人运动状态,实时返回新位姿信息和协方差矩阵,预测地图;

c)观测:从原始捕获的信息中提取主要特征信息并将此信息返回给局部地图;

d)测量预测:预测机器人当前位姿的全局地图;

e)位置匹配:应用最邻近滤波器匹配局部地图中的观测点和预测点;

f)估计:使用扩展Kalman滤波器更新地图;

g)创建:将非相关的观测点加入地图,对机器人返回增量式地图;

h)输出地图。

制约机器人视觉系统性能的重要因素是信息实时处理的计算复杂度和处理效率,SLAM算法需要在地图密度与计算效率之间取得权衡。

3.3无环境地图

在这类系统中,机器人不需要依赖任何的环境地图信息,机器人的活动取决于其当时识别和提取出来的环境信息,这些环境信息可能是桌子、椅子和门等,不需要知道这些环境元素的绝对位置。无环境地图的导航技术典型的技术有3大类:基于光流的导航技术、基于外观信息的导航技术、基于目标识别的导航技术和基于目标跟踪的导航技术。

3.3.1基于光流的导航技术

光流是三维空间运动物体在观测成像面上的像素运动的瞬时速度,也是图像亮度的运动信息描述。光流法计算最初是由Horn和Schunck于1981年提出的,其利用二维速度场与灰度,引入光流约束方程,得到光流计算的基本算法。光流计算基于物体移动的光学特性提出了2个假设:①运动物体的灰度在很短的间隔时间内保持不变;②给定邻域内的速度向量场变化是缓慢的。如Santos-Victor等人研发了一种基于光流的robee视觉系统,该系统模拟了蜜蜂的视觉行为。在robee视觉系统中,使用单独的双目视觉方法来模拟蜜蜂的中心反射(Centering Reflex):当机器人移动到走廊两侧的墙壁中心时,左眼捕获场景的瞬时速度与右眼捕获场景的瞬时速度是相同的,几乎没有差别,那么机器人就可以知道他们在走廊的中心。如果眼睛两侧的眼睛的瞬时变化速度不同,则机器人移动到较慢的速度。在自动机器人导航的实现中,基于这个想法是测量摄像机捕获图像场景瞬时速度差异。这种导航技术只能用于室内单通道直走道导航,不能引导机器人改变方向,具有一定的局限性。

3.3.2基于外观信息的导航技术

基于外观的机器人导航方法,不需要构建真实的地图导航,机器人通过自身所携带的摄像头和传感器感知周围目标的外观信息进行自主定位和导航。其中,所述的外观信息多为目标信息的颜色、亮度、形状、空间大小和物理纹路等。机器人在导航时存储连续视频帧的环境图像信息,并将连续视频帧与控制指令相关联,从而再执行指令规划有效路径到达目的地。

3.3.3基于目标识别导航技术

为了达到目标点或是识别目标,机器人很多时候只能获取少量的图像信息。Kim等人提出了一种用符号代替导航各个位置的赋值方法。该赋值方法中,机器人执行命令如“去窗边”“去你后面的椅子旁”等。这样,通过相关的符号命令,机器人自动识别并建立路标,通过符号指令到达目标点。例如“去你后面的椅子旁”,这样的命令就是告诉机器人路标是椅子、路径向后。该导航技术的难点在于目标是否可以准确实时识别路标。第一,识别大量不同类别的物体,室内环境有许多不同类别的物体,需要将它们组织到一个在给定的容易搜索图像数据结构中去,起到容易识别是用什么度量来区分物体;第二,识别大量不同背景下的物体,一个合适的物体表达式有助于将图像组织成片断,而这些片断来自于物体的种类且与物体无关的;第三,在抽象层次上识别物体,机器人可以不需要在看到一个具体的杯子之前便能知道它是一个杯子,相关程序能够类似的物体进行识别和区分。

3.3.4基于目标跟踪的导航技术

基于目标跟踪的导航技术,为机器人构造一个虚拟地图,机器人通过摄像头获取连续的视频序列确定一个跟踪的目标,为了达到对目标的精确定位和实时跟踪,可以利用粒子滤波算法对需要跟踪的目标进行建模。基于粒子滤波的目标跟踪主要包含四个阶段,分别是初始化目标区域,概率转移,目标区域权重计算,目标区域重采样。在机器人导航之前,通过视频序列的当前几帧标注机器人所需要跟踪的目标,在导航时,机器人通过连续的视频帧感知周围的待跟踪目标,同时对所需要跟踪的目标散播粒子,当获取的视频帧对目标区域重采样后足以让机器人确定所需要跟踪的目标时,机器人通过确定的目标为自己规划最有效的路径到达目的地。获取视频序列目标跟踪是計算机视觉领域中的重要分支,它在工业生产、交通导航、国防建设、航空导航等各个领域有着广泛的应用。

4结论

本文对近三十年来基于计算机视觉的室内自主式移动机器人导航技术进行了详细的分类介绍,对于移动机器人是否需要地图匹配的导航系统进行了详细的综述。目前,在做导航和面向任务的决策时,自主机器人尚未能够准确地综合考虑真实环境空间中的各种不确定性,当路径前方突然出现动态场景变化、目标运动、遮档障碍物时便会显得一无所措,无法及时把握室内环境变化的动态信息进行实时导航,而这将是未来计算机视觉研究的一大难点和热点。所以,室内自主移动机器人仍在发展中,还有很多的问题值得研究和探索,现有的机器人大多数都需要人为定期去进行清理和维护,直到今天还没有产生一台真正意义上完全自主的移动机器人。

猜你喜欢
移动机器人栅格计算机
移动机器人自主动态避障方法
基于邻域栅格筛选的点云边缘点提取方法*
计算机操作系统
基于计算机自然语言处理的机器翻译技术应用与简介
信息系统审计中计算机审计的应用
基于Twincat的移动机器人制孔系统
不同剖面形状的栅格壁对栅格翼气动特性的影响
Fresnel衍射的计算机模拟演示
基于CVT排布的非周期栅格密度加权阵设计
极坐标系下移动机器人的点镇定