这篇论文是中科院的,主要综述室内环境下的语义建图问题。日期较新,是今年(2021)二月份出版的。
论文发表在 MDPI(Multidisciplinary Digital Publishing Institute, 多学科数字出版机构)旗下的 Information 月刊上。MDPI 是开源出版社,由瑞士华人林树坤创办。林博士本来从事的是化学方面的研究,后来从商创办上述机构,并于前年(2019)当选瑞士工程科学院院士。MDPI 旗下拥有两百多个期刊,收费不菲,质量良莠不齐。但是其出版速度较快,例如这篇论文,从年初元月四号接收,次月十八号便获收录,四天之后就在线出版,全程只用月余,不可谓之不快。网上对于 MDPI 也有一些议论之声,可供参考。
Information 月刊也以速度标榜,投稿后 15.8 天就可得到初步意见,从录用到出版的天数间隔只有 2.9 天。此刊物被 Scopus、ESCI、Ei Compendex、dblp 等多个检索数据库收录。这里需要注意的是,ESCI 并不是 SCI ,而是为维护 SCI 索引的权威性,作为 SCI 的预备队而存在的。ESCI 一般收录的是拥有潜力,且在学术界已经产生一定影响力的新刊。此外,ESCI 上的刊物也能被 Web of Science 检索到。
SLAM 的全称是 Simultaneous Localization And Mapping 同步定位与建图。即机器人在完全陌生的环境中,通过传感器获得有关自身位置变化的数据,以此估计自身相对于开始位置的运动,是为定位;在定位的过程中,机器人同时通过传感器获得有关周围环境的数据,以此构建周围环境的地图,是为建图。定位和建图的过程同步进行,存在一定的耦合。在 SLAM 中,建图是非常重要的模块。只有先获取与周围环境相一致的地图,才能实现机器人的路径规划、导航等关键功能,而仅仅实现基础的定位是远远不够的。因此,SLAM 技术的不断发展,也促进着空间建图(Spatial Mapping)技术的进步。空间建图所生成的地图称为几何地图(Geometric Map),其描述的是周围环境的空间信息。目前,**空间地图(Spatial Map)**已在移动机器人中广泛应用。
但是,仅仅描述周围环境的几何信息,或者说空间信息,在很多情况下是远远不够的。随着移动机器人技术的不断发展,如今家用机器人渐渐流行,其中最具代表性的是扫地机器人。这类机器人深度参与人类生活,因此也面临一些全新的需求。其中最为重要的是,机器人必须拥有与环境进行交互的功能,以此修正自身的行为。例如机器人不能长久地停留在人的附近或门的附近。上述这些操作,在仅仅拥有周围环境的几何信息的条件下,是无法做到的。
造成如此问题的原因是,机器人与人类,对于环境的描述方式迥然不同。机器人以数学方式存储和表示环境,而人类则以概念知识(Conceptual Knowledge)实现对环境的描述与交互。例如,当任务是去冰箱中取得一杯牛奶时,人类会走向厨房,打开冰箱,拿出牛奶,轻而易举地完成任务;然而机器人却会束手无策,只能在人类的帮助下,将上述任务描述为数学方式,以此完成任务。由此可见,为使机器人能够更加深入地参与到人类生活中,我们就需要在原先的几何地图中,再增添相应的语义信息,以使机器人更好地理解周围环境,是谓语义建图(Semantic Mapping)。
语义建图按照应用的环境的不同,分为室外环境的语义建图和室内环境的语义建图。前者在自动驾驶中得到广泛应用,例如从生成的几何地图中,划分出道路、树木与行人;后者则与人类日常生活密切相关,例如标注出不同的房间与其中的物体。就语义建图而言,室内环境相对于室外环境则面临着许多不同的挑战,其中最为重要的是人类活动的影响——人类活动可以改变周围的环境,例如放置新的物体,丢弃无用的物体或改变物体的位置。面对如此动态且多变的环境,如何进行语义建图,许多人都在进行相关的研究,而本文旨在对上述研究作出全面概述(Comprehensive Overview)。
下面两个表格分别列出与语义建图有关的相关综述,以及典型的和最新的语义建图方法,如下所示:
值得指出的是,表 1 中的 [2] 是第一篇正式对机器人技术中的语义地图作出定义的文献。
在本文中,作者尝试从一个全新的角度看待语义建图系统,将其分为三大模块,分别是**空间建图(Spatial Mapping)**模块、**语义信息获取(Acquisition of Semantic Information)模块以及地图表示(Map Representation)**模块。论文按照此逻辑行文:先是对语义地图进行定义,再依次阐述三个模块,最后讨论一些开放性的问题以及语义建图的未来发展趋势。
尽管对于语义建图的定义,其表达形式各有差异,但是,其中都包含三个共同的特征。
其一,描述场景几何信息的几何地图是语义建图的主体部分,因为其是语义信息附加的基础,并且可以满足机器人工作的基本要求,例如定位、避障和路径规划。
其二,作为人类对环境的理解方式,语义信息可以将物理实体(Physical Entity)与概念元素(Conceptual Element)联系起来,从而弥合人类与机器人,对于环境不同理解方式之间的巨大鸿沟。
其三,需要以适当的结构,将构建的几何地图,与获取的语义信息,有效地结合起来,而这将赋予机器人推理的能力。
根据上述三个特征,由 2D 激光扫描仪构建的二进制栅格地图(Binary Grid Map)可以视为简单的语义地图。在如此类型的地图中,将环境划分为规则的网格单元,每个单元用一位二进制值描述,以表示该单元所处的位置是否被存在障碍物。这样的地图除了可以用于机器人的导航任务外,还可以被人类理解。
语义建图的典型过程可以描述如下:首先采用 SLAM 技术作为前端,通过传感器数据,获取周围环境的几何地图,此模块亦称作空间建图。接下来,机器人同时从传感器数据中,或以离线方式从构建的几何地图中获取语义信息。最后,将构建的几何地图,与获取到的语义信息,以适当的结构组织结合起来,从而使机器人又能力推理出更多信息,并执行更高级复杂的任务。语义建图并非只是简单地将语义信息,加诸几何地图之上,上述是原因之一,原因之二是二者之间可以相互促进,例如两帧之间的相对位姿可以用来进行语义信息的融合。下图即是上述过程的示意图:
空间建图,即从原始的传感器数据中生成对于环境的几何描述。在过去,2D 和 3D 扫描仪曾广泛流行,因为这种传感器可以通过激光反射,获取高精度的距离信息。近年来,由于商用 RGBD 相机的普及,RGBD 相机开始在机器人中广泛应用。RGBD 相机最大的优点在于既可以获取环境的几何信息,也可以同步获取视觉信息。对于深度信息的直接获取,可以有效降低计算量。
&esmp;在建图过程中,机器人会将获取的数据增量式地组织成地图。在移动过程中,机器人会根据其对环境的感知进行对自身的定位。前者基于后者,因此定位与建图问题相互耦合,从而构成所谓的同时定位与建图问题,即 SLAM 问题。SLAM 在四十多年的研究历程中,发展出两种不同的方法,分别是基于滤波器的方法,和基于图的方法。
由于 SLAM 技术可以生成关于环境的几何地图,因此常常用作语义建图的前端,几乎所有语义建图的工作都采用 SLAM 作为其前端。但是,SLAM 和 Semantic Mapping 间是存在区别的:SLAM 中构建的地图,主要用于定位,而稀疏图和稠密图都可达到如此功能;而在语义建图中,地图具有更多功能,很多重要的功能,例如导航,只有在稠密图的条件下,才能更好地实现避障等基础工作。
几何地图分别有三种类别,分别是尺度地图(Metric Map)、拓扑地图(Topological Map)以及混合地图(Hybrid Map)。SLAM 直接输出的是环境的尺度地图。在二维平面环境中,占据栅格地图(Grid Occupancy Map)应用广泛,其在导航中已被成功采用;在三维场景中,主要采用点云或基于面元(Surfel-Based)的表示方法。在一些其他的工作中,从尺度地图中提取拓扑结构,从而以一种混合的方式存储场景的几何信息。其中,尺度地图被离散化为多个点(places),这些点之间则用线(path)相互连接,以此生成环境的拓扑地图。
语义信息获取,即将人类对于环境的理解方式,附加到几何地图上。在过去的文献中,类似的过程存在两种不同的术语,分别是锚定(anchoring)与语义信息提取(Semantic Information Extraction)。前者侧重于物理实体与概念元素之间的配对,后者则更倾向于从视觉图像中实现目标识别或检测。至于**语义信息获取(Acquisition of Semantic Information)**这一概念则拥有更加广泛的内涵意义,首先语义信息理应是多种多样的,可以包括环境的温度和湿度,而不仅仅是物体和房间的类别,其次,语义信息的获取手段也理应不拘一格。
语义信息可以有多种形式,例如物体和房间的类别信息(Category Information)、不同物体的概念信息(Conceptual Information)以及描述物体位置和大小的几何属性信息(Geometric Properties)。
&emsp 语义信息的具体获取方法可以分为三种,人工输入(Human Input)的方法、基于传感器(Sensor-Based)的方法以及推理(Inference)的方法。
人工输入的方法比较简单粗暴,即通过手动编码的方式,直接将概念信息添加到几何地图中,以此生成语义地图。例如在场景中放置一些人工地标,机器人通过检测这些地标,或识别地标上的信息,来获取相应的语义信息。有些餐厅的送餐机器人即采用这种方法——通过天花板上的二维码实现定位与语义信息的获取等各种功能。这种方法的优点是语义信息不会丢失,并且内容上也没有限制,缺点是不知人力可贵,过于麻烦。
基于传感器的方法则可以摆脱人力的掣肘,使机器人拥有自力更生的能力。在早期的工作中,往往都是先构建一个物体数据库(Object Database),再通过视觉或几何的特征,将场景中的物体与数据库中的物体进行匹配,以此获取语义信息。这样作做的缺点也很明显——物体的类别是很多的,构建如此的数据库是很麻烦的。于是后来就出现语义分割的方法,即对于传感器获取的每一帧图像进行语义分割,并将分割结果映射到地图中,进行标注,以此完成语义信息的获取。近些年的工作,几乎都是基于这种方法。
基于推理的方法则将传感器的数据弃而不用,尝试从已有的语义信息中推理出一些新的语义信息。例如,如果在某个房间中发现烤箱,那么就可以推断出该房间大概率是厨房。推理的方法,需要用到已有的语义信息,因此往往只能作为其他获取的方法的一种后处理,用以提取更多的语义信息。
当几何地图构建完成,语义信息获取告终,就需要将空间信息与概念信息有机结合起来,最终构成完整的语义地图。如今有关语义建图的大多数工作,其目的主要是将语义信息获取的结果在场景中形象化地表示出来,因此只是简单地用不同颜色的语义标签,对各个具体的物体进行标注。然而,语义地图的表示方法也是多种多样的,并非只限于如此一种,但是与此同时,这种方式也是如今最为常见的。
在此部分中,作者主要条陈语义建图未来可能的发展方向:
首先,在多传感器融合方面,可以融合 IMU 传感器,以 VIO 作为前端,以此获取更高精度的几何地图。此外,还可以采用温度传感器、触觉传感器(Tactile Sensor)等等。
其次,在动态场景方面,如今大部分的几何地图都被设计为在静态场景中使用,这显然是不符合实际的。这个世界是一个动态的,不断发展着的世界,我们不应该用形而上学的观点去看待这个世界。因此,如何使得机器人能够在动态的环境中正常工作,便是一个发展方向。
再次,将语义建图与云机器人相结合。
复次,可以在地图的表示形式上有所创新,即研发面向任务的地图表示形式(Task-Oriented Map Representation)。计算机程序可以分为算法与数据结构两个部分,那么,机器人任务也可以分为类似的两个部分,分别是对于机器人能力的数学或逻辑描述,这一部分类比算法,用以表达机器人可以完成的功能;地图的语义表示,这一部分类比数据结构,用以描述机器人可以使用的资源。
此篇综述的新颖之处,就是将语义建图的过程区分为三个不同的模块,空间建图模块以 SLAM 技术为基础,主要负责构建原始的几何地图;语义信息获取模块则主要负责从传感器数据或几何地图中获取语义信息,且获取的方式是多种多样的,近年来主要采取的是对于每一帧的基于视觉的分割(Vision-Based Segmentation),并将基于帧的分割(Frame-Based Segmentation)结果增量式地融合为语义语义地图;地图表示模块中,大部分工作都是用不同颜色的语义标签对地图进行标注,以此直观地显示语义建图的结果。
这篇综述基本将室内环境下的语义建图问题讲清楚了,但是综述毕竟是综述,是 Overview ,因此有些具体的过程仍然有待深入了解。