rgb红色范围_【论文阅读18】RGB-D Object-Oriented Semantic Mapping

c7d4a5c7569cc4a8b1a06cad50395713.png

主要内容

基于RGB-D数据的语义建图(SLAM帮助语义)。具体过程如下

  • 首先利用SSD执行单帧RGB图片(2D)物体检测。
  • 接着基于检测结果和深度信息,利用3D分割算法进一步分割3D点云。
  • 最终利用ORB-SLAM2的相机位姿信息将每帧的3D点云分割结果合并到地图中,建立语义点云地图。

特色:

  • 非物体只维护点云,物体维护点云和类别标号。
  • 点云分别在每个观测帧中维护。好处是闭环后点云也可以跟着观测帧的位姿变化。
  • 语义更新:简单累加,取最大值。

未来工作

  • 语义帮助SLAM。利用语义信息提高SLAM的精度,鲁棒性等。

N. Sunderhauf, T. T. Pham, Y. Latif, M. Milford, I. Reid. Meaningful Maps With Object-Oriented Semantic Mapping. IEEE/RSJ International Conference on Intelligent Robots and Systems, 5079-5085, 2017.

摘要

对于智能机器人与环境以有意义的方式交互,它们必须同时理解周围场景的几何和语义性质。至今主要研究已经分别解决了这些建图挑战,专注于几何或者语义建图。Sunderhauf等人解决了同时建立包含语义的物体级别的实体和基于点或网格的几何表示。作者同时建立了已知物体类别的之前未见过实体的几何点云模型,同时创建以这些物体模型为中心实体的地图。作者使用了稀疏,基于特征的RGB-D SLAM,基于图片的深度学习目标检测和3D无监督分割。

1. 介绍

对于移动机器人和环境有意义地交互,它们必须获得一个同时表达几何和语义信息的世界模型。但是,大多数现存在机器人建图和SLAM中的研究专注于建图一些语义类别但是忽略建模分离的物体实例或者需要一个已知的3D物体模型先验

在本文中我们提供了一种创建更多有意义地图的方法,不需要之前方法的需求和限制:地图不仅表达了东西在世界的哪里,还包括了它是什么。我们的方法是及时的,由于专注于几何的机器人SLAM和基于深度学习的检测技术现在都足够成熟来被融合到一个面向物体的语义建图系统,可以创建丰富标号的地图,其具有几十个或者甚至几百个物体类别,同时维护几何准确性。

我们的语义建图是面向物体的,因为单独的物体实例是在我们地图中的关键实体。如图1所示,生成的环境地图富含语义信息,以分离的物体实例的形式。这些物体同时携带几何和语义信息以类别标号和置信度的形式。和早期工作的一个重要区分(如[2])是我们的地图不仅仅包含标号的独立3D点通过投影语义信息从图片到3D结构中。相反,物体是分离的实体,完全独立于地图的非物体部分。这允许更高级的场景理解,例如,机器人可以推理所有属于地图中的某个物体的3D点在操作中将会一起移动。

82046053cd6455d087af1a31dccf3515.png

图1. 我们证实使用RGB-D数据面向物体的语义建图是可行的从小型的桌面环境(左)到办公室环境(中)到整个实验室环境(右)。图片展示了物体染色的3D地图结构。我们没有仅仅投影语义标号到3D点上,而是维护了地图中中心实体的的物体,并且不需要先验3D物体模型[1]。为此,我们的系统创建并扩展3D物体模型同时连续建图环境。物体检测和分类被执行使用卷积网络,同时一个无监督3D分割算法分配3D点的分割为每个物体检测。这些被分割的物体检测然后被融合到一个已知物体或者添加到地图的一个新物体中。ORB-SLAM2提供了一个全局SLAM解决方案,使得我们重建一个环境的3D模型,同时包含非物体的结构和多种物体的结构。

以物体为中心的方法由实例级别语义分割技术支持,其组合图片空间中基于有界框的物体检测和无监督3D分割。与我们的实例级别方法不同,语义分割方法例如[3][4]经常没有物体实例的标记,并且因此在单独的物体需要在地图中随时间被建模和操作的机器人建图设置中不可用。

我们的方法创建并扩展3D物体模型当它在建图环境时不需要如[1]中的先验已知3D模型。这在之前的技术中是非常重要的提高,因为一个语义类别的单独实例比如椅子可以在单个环境中变化很大,并且需要准确的3D模型对于这些变体在实际的机器人应用中是非常受限的。

在本文剩余部分,我们首先讨论相关工作在详细描述我们提出的系统之前。一个定量和定性的评估证实了语义建图系统被提供在第4节。最后我们讨论了结果和获得的启发,接着是在组合几何和语义建图领域的未来研究方向的讨论。

2. 相关工作

SLAM问题的几何方面已经被很好地理解并且达到了成熟的程度,其中城市级别地图可以被实时和准确地建立[5]。但是,这种地图的结果是几何实体(点,面,表面等),其对于建图和定位任务是有用的,但是不能在环境中在展示的实体上安排机器人完成一系列可能的操作。为了与环境进行交互,一种语义表示是必要的。语义标号的粒度依赖手头的任务。一个需要推理从A点移动到B点的机器人需要识别场景(房间,走廊,厨房灯),同时一个操作物体的机器人需要关于物体的识别和赋能信息(可以对这个物体做什么?如何抓取它?在环境中它的状态如何?)。

A. 语义建图

语义建图是一个给建图的实体赋值语义信息的过程(物体类别,身份,行为等)。它使用SLAM作为一个工具来推理环境中传感器的运动和位置,同时语义信息可以从一个不同的源头被获得。

第一批尝试语义建图的方法设计地图重建及重建地图的语义分割[6]-[8]。Pham等人[8]首先使用KinectFusion[9]从RGB-D图片中重建一个稠密3D模型,然后分配给每个3D点一个语义标号通过使用一个分层条件随机场(CRF)模型。Pillai和Leonard[7]使用一个单目SLAM系统来增强视频序列中物体识别的表现。他们展示了物体识别任务的表现被提高通过单目SLAM的时序支持。Herbst等人[6]提出一种无监督的算法用于物体发现通过比较通过多次访问同一场景得到的SLAM重建的3D模型。不像这些方法,我们的方法动态地跟踪相机,检测和重建物体模型。

其他语义建图方法包括在线场景重建和分割[10]-[16]。Mozos等人[10]分割范围传感器构建的地图到功能性的空间(房间,走廊,门口)使用一个隐马尔科夫模型。他们展示获得的语义信息可以被用于转化语义地图到一个拓扑地图。Pronobis等人[11][13]提出一个在线系统来构建环境的语义地图同时使用激光和相机。Cadena等人[14]使用不同物体检测器的机会分布式系统的组合得到的运动估计来超过单独系统。Vineet等人[15]提出一个在线的稠密重建方法,其解决了语义标号问题通过一个稠密连接的CRF。Kundu等人[16]推导了一个3D空间中的CRF模型,联合推理每个栅格的语义类别和占据。我们的工作,相反,建模物体为分别的实体,已经通知机器人它内在的性质(例如操作中的刚体运动等),其对于逐点标号的地图来说是不可能的。虽然我们能够使用一个后3D分割算法从逐点标号的地图中生成物体实例,这种方法对于在线系统来说是不高效的。

语义信息也能被加入到地图中通过物体模板匹配。Civera等人[17]匹配使用单目SLAM系统创建的地图点和一个已知的物体数据库,其使用基于特征的方法进行识别,能够被插入到地图中。这种方法创建了更完整的地图,允许尺度分辨率。类似地,Castle等人[18]在单目SLAM框架中使用平面已知物体。Salas-Moreno等人[1]创建基于物体的地图,其使用RGB-D信息来识别并插入一直物体模型。我们的工作区别于这些方法因为没有物体的先验数据库。我们的方法在线创建物体模型基于一个物体检测器的输出。

B. 物体检测和语义分割

纯几何对于物体检测任务来说是具有奇异性的,受机器学习领域的当前进步,丰富的先验能够从数据本身中被学习。具体地,我们对物体检测任务感兴趣,其能够被用于分离地图中的物体实例。一种用于物体检测的方法是基于建议的物体检测方法,其生成

个物体建议,一般以边界框的形式。每个建议被分类,导致所有类别标号上的
个相互独立的概率分布。该技术首先被R-CNN[19]提出,最近被Fast R-CNN[20]和Faster R-CNN[21],YOLO [22]或者SSD[23]进一步发展。

与物体检测不同,语义分割[4]生成稠密的,逐像素的分类。这种方法用于语义建图的劣势在于它们缺少独立物体实体的标号。对于重叠物体的像素标号,因此,不允许场景中单个物体的识别,其可能导致SLAM框架中数据关联的奇异性。最近使用RGB图片朝向实例级别语义分割的工作包括[24]-[27]。虽然已经取得了巨大的进步,当前这些方法缺乏准确性和用于我们在线框架的速度。

3. 面向物体的语义建图

在本节,我们刻画了组成我们语义建图系统的主要成分。图2可视化了提出方法的关键步骤,同时图3可视化了不同成分之间的信息流。

5b5f7082267ab62e33c0932a3b1eff51.png

图2. 在我们提出方法中的关键步骤可视化:(上-左)SSD[23]生成由边界框组成的物体建议框,类别标号和置信度。(上-右)我们的无监督3D分割算法在当前的RGB-D帧中对于每个物体创建了一个3D点云分割。(下一行)我们获得了一个包含语义实体的地图:物体携带一个语义标号,置信度,和几何信息。语义标号被染色在下左图片中。浅蓝色:显示器,粉色:书,红色:杯子,深蓝色:键盘。

A. SLAM

我们的语义建图需要观测一个场景时当前相机位姿的信息。该信息可能来自一个在后端运行的SLAM系统或者来自在一个已知地图上的定位。在本工作中,我们使用一个ORB-SLAM2的可用的RGB-D版本[5]来跟踪和建图,其同时使用RGB和深度信息用于稀疏跟踪。由深度通道生成的点云被投影到对应的传感器位置来得到一个环境的地图。

我们小心地称我们的方法是“语义SLAM”因为这需要两方面的信息流:SLAM帮助语义同时语义帮助SLAM。在提出的方法中,语义流只是单向的,即SLAM帮助语义;SLAM的输出(相机位姿,地图)被用于环境的一致语义标号。因此我们的工作属于“语义建图”的类别。但是,该系统可以被扩展到组合双向信息流但是现在被留到未来工作中。

B. 用于语义建图的物体检测

单独的物体在语义建图中是重要的实体。因此,一种定位和识别图片中不同物体实例的方法是需要的。即使这被认为是实例级别语义分割的过程[24]-[28],但是这些工作不足够快对于我们的语义建图框架。例如,DeepMask[28]一张图片需要1.6s。相反地,基于深度学习的物体检测方法已经展示处良好的结果和实时性表现[19]-[23]。

我们使用SSD方法[23]对每个关键帧以边界框的形式生成固定数量的物体建议框。SSD对每个建议提供一个类别标号和一个置信度得分

。它已经证实了高度竞争力的结果在现存的计算机视觉基准MS COCO[29],PASCAL VOC和ILSVRC[30]中。

我们使用在COCO数据集上训练的网络用于我们的工作,其能够识别80类。一个前向传播通过网络的

个变量,即,需要建议和分类,在一个TitanX GPU上耗时86ms。

C. 3D 分割

基于图片的物体检测方法很难返回适合物体的边界框(见图2上左)。但是,对于物体模型重建来说,生成一个准确的物体边界是需要的。为此,我们利用深度信息来生成一个准确的物体分割,然后将每个物体分割关联其中一个检测的物体标号或者不关联。

为了分割深度图片到物体中,我们跟随[31]中提出的无监督方法。我们首先过分割深度图片为超体素,并且构建一个连接临近超体素的邻接图。物体分割任务然后被构建为将图分割为连接的分量。但是,不像[31],它的图边通过分类边为1(保留)或0(切割)来启发式地切割,我们在每条边上设置一个权重,然后发现最优的输出通过使用Kruskal算法[32]。相同物体中的超体素之间的边应该保持地权重,否则高权重。令

表示连接超体素
之间的边,其分别具有法向量
,它的权重被计算如下:

我们建议读者参考[31]来了解提取3D场景中支持平面的技术细节,和[33]用于凸/凹计算。当执行时,3D分割一般消耗175ms。

D. 数据关联

在分割算法将一个3D点云分配给每个物体检测后,数据关联步骤确定是否被检测的物体已经在地图中存在或者作为一个新的物体对象被添加到地图中。我们执行这个通过一个两步流程:首先对于每个检测,一组候选物体路标被选择基于对应点云中心的欧式距离。然后我们执行一个路标和检测中3D点之间的最近邻搜索,并计算关联点对的欧式距离。一个K-D树结构帮助我们保持该步骤是高效的。一个检测被关联到一个已存在路标如果至少它的3D点的50%具有小于2cm的距离。数据关联步骤一般消耗30ms对于每个检测路标对。

E. 物体模型更新

如图3所示,在我们地图中的每个物体(i)分割的具有颜色的3D点云通过数据关联步骤关联到每个物体(ii)一个ORB-SLAM的因子图中路标被观测到的位姿的变量的索引。(iii)SSD物体检测器提供的每一类的置信度。后者是一个长度为

的向量,其中
是已知物体的类别集合。无论检测是否关联到一个地图物体,
都被更新根据
,其中
是SSD给出的类别ID和对应的置信度。每个物体的类别标号被确定通过累积得分
和最终的置信度
可以被分配为
,其中
是对于那个物体的整体观测次数。

040af85b0d05e9608e3b63d575a3df47.png

图3. 我们语义建图系统的综述。ORB-SLAM2执行每一帧RGB-D帧的相机定位和建图,SSD[23]检测每个RGB帧中的物体。我们改进的3D无监督分割方法分配一个3D点云分割到每个检测中。基于类似ICP匹配的数据关联得分决定是否在地图中创建一个新物体或者关联检测到一个现存物体中。在后者的情形中,地图物体的3D模型通过新检测的3D结构被扩展。每个物体存储3D点云分割,ORB-SLAM中的位姿图指针和每一类的置信度得分,当出现新的观测时被在线更新。

存储每个物体的点云分割允许我们重建一个物体模型当SLAM系统更新它的轨迹估计时,例如在闭环后。为了数据高效性,我们存储下采样点云,具有5mm的空间分辨率。该稀疏模型也被使用在上面描述的数据关联步骤中。

F. 地图生成

在我们系统中的地图被隐式地维护通过存储(i)在每个相机关键帧处观测的3D点云和(ii)存储分割的3D点云对于每个物体,和ORB的位姿图的指针。如果地图(或者它的子集)显式地被需要,例如用于路径规划或抓取点选择,我们可以通过根据对应位姿的最优估计投影存储的点云。当以这种方式创建地图时,我们维护1cm的分辨率对于非物体和0.5cm的分辨率对于物体。依赖应用需求,稀疏点云地图可以被转化为稠密网格通过合适的算法。

为了保证数据关联具有最新的信息,我们更新物体的点云模型当它被观测到时。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/564696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7价 半导体掺杂_掺杂工艺(一)

概述半导体材料的独特性质之一是它们的导电性和导电类型(N型或P型)能被产生和控制。在本章中,描述在晶圆内和表面上特别的小块导电区和PN结的形成。介绍扩散和离子注入两种掺杂技术的原理和工艺。简介使晶体管和二极管工作的结构就是PN结。结(junction)就是富含电子…

数据增强_imgaug图像数据增强必备工具

导读我们经常会遇到训练模型时数据不够的情况,而且很多时候无法再收集到更多的数据,只能通过做一些数据增强或者其它的方法来合成一些数据。常用的数据增强方式有裁剪、旋转、缩放、亮度对比度色度饱和度变换、仿射变换、透视变换等,这篇文章…

深度学习多模态融合_3D目标检测多模态融合综述

0前言本篇文章主要想对目前处于探索阶段的3D目标检测中多模态融合的方法做一个简单的综述,主要内容为对目前几篇几篇研究工作的总结和对这个研究方面的一些思考。在前面的一些文章中,笔者已经介绍到了多模态融合的含义是将多种传感器数据融合。在3D目标检…

自适应宽_移动端实现自适应缩放界面的方法汇总

作者 | 唐宋元明清2188来源 | http://www.cnblogs.com/kybs0/在开发App端的网页时,要适配iphone、ipad、ipod、安卓等各种机型,一般是直接使用em、px转em、界面缩放。本章是通过将界面缩放,等比例显示在各机型上。过程中遇到了些问题和大坑~然…

Java继承简介

继承是面向对象的三大特征之一。继承和现实生活中的“继承”的相似之处是保留一些父辈的特性,从而减少代码冗余,提高程序运行效率。 Java 中的继承就是在已经存在类的基础上进行扩展,从而产生新的类。已经存在的类称为父类、基类或超类&…

各种说明方法的答题格式_初中语文阅读答题公式 语文阅读理解万能公式大全...

很多人想知道初中语文阅读理解有哪些答题公式,语文阅读理解的万能公式有哪些呢?下面小编为大家介绍一下!初中语文阅读理解答题公式大全(一)某句话在文中的作用:1、文首:开篇点题;渲染气氛(散文),埋下伏笔(记叙类文章)&#xff0c…

esp8266手机端网络调试助手_esp8266定时控制

要实现定时控制,需要先实现手动控制,或者app控制。实测定时精度,北京时间,误差不超过1秒。第一、远程App控制或手动控制下载esp8266示例程序下载地址: 点击下载本demo 是利用arduino IDE开发,关于arduino IDE 的ESP826…

集成学习之Adaboost(提升方法)

Adaboost 提升方法就是从弱学习器出发,反复学习,得到一系列弱分类器(基本分类器),然后组合这些弱分类器,构成一个强分类器。 基本思路 待解决问题 1、每一轮如何改变训练数据的权值或概率分布 2、如何将…

93没有了_杭州1米93程序员征婚贴火了!年薪50万,孩子随妈姓,没有皇位要继承...

文丨三秋桂子自从二胎政策开放以来,很多宝妈都希望二宝能随自己姓,但有些男方家庭却不同意,双方就孩子的“冠名权”一事争论不休。可最近有位小伙却因为征婚贴火了,原因有两个,一是小伙瞩目的身高,二是小伙…

李航《统计学习方法》之HMM隐马尔可夫模型

李航《统计学习方法》之HMM隐马尔可夫模型 文章目录前言一、基本概念1、语言描述:2、符号表示3、基本假设4、例子5、隐马尔可夫模型解决的三个基本问题二、概率计算算法1、向前算法算法:例题2、向后算法三、学习算法1、监督学习算法背景方法2、无监督学习…

6000毫安以上智能手机_展望2021年智能手机市场:这5大技术要爆发

2020年是极不平凡的一年,在黑天鹅、政治动荡等事件的冲击下,许多行业都按下了暂停键,智能手机行业自然也不例外。销售渠道受阻、供应链生产紧张,导致智能手机市场整体出货量呈现持续下跌的状况,严峻的市场行情让智能手…

无监督学习之聚类方法(K-Means、层次聚类)

一、导入 无监督学习中需要对无标记样本进行训练学习进而找到数据的内在性质和逻辑结构,聚类方法是为了为无监督学习的数据分析提供的基础学习方法。 聚类将数据集划分为若干个子集(每个子集称为类或者簇),如果一个样本只属于一个…

js调用python接口_JavaScript如何调用Python后端服务

欢迎关注【无量测试之道】公众号,回复【领取资源】, Python编程学习资源干货、 PythonAppium框架APP的UI自动化、 PythonSelenium框架Web的UI自动化、 PythonUnittest框架API自动化、 资源和代码 免费送啦~ 文章下方有公众号二维码,可直接微信扫一扫关注…

详细地图_一目了然:蒙城学区划分详细地图

从明天(8月5日)起,小学一年级,初中一年级可在网上注册、报名了。根据区域内适龄学生人数、学校分布、学校规模、班额规定、交通状况等因素,以街道、路段、门牌号、居住小区、村组等构成要件,按照确保公平和免试就近入学的原则&…

奇异值分解SVD(证明全部省略)

SVD知识梳理一、引入二、SVD的定义、性质定义例题奇异值分解一定存在紧奇异值分解和截断奇异值分解几何解释三、SVD算法计算过程四、SVD与矩阵近似五、python实现六、应用一、引入 主成分分析PCA、潜在语义分析都会用到SVD 不要求A矩阵是方阵,SVD是线性代数中相似对…

jq 比较两个时间是否在同一天_jq: 属性-class

.aadClass() 添加class用法和前面的text方法一样&#xff0c;可以传字符串&#xff0c;可以传函数。值用空格隔开可以增加多个class<.removeClass() 移出class值<他们在一起也可以链式调用。链式调用: 取值的时候返回return结果&#xff0c;赋值返回this,表示可以继续调用…

李航《统计学习方法》之EM算法及其推广

EM算法是一种迭代方法&#xff0c;可以看作用坐标下降法来最大化对数似然估计下界的过程。 一、引入 &#xff08;一&#xff09;算法介绍 1、例题 有三枚硬币&#xff0c;ABC他们出现正面的概率分别是Π&#xff0c;p和q。进行如下投掷实验&#xff1a;先投掷A&#xff0c…

获取选中_【字节】如何实现选中复制的功能

Barnett Demesne公园中在白雪覆盖的山坡上玩耍的一家&#xff0c;北爱尔兰贝尔法斯特(© Stephen Barnes/Alamy)本题摘自于我 github 上的面试每日一题&#xff1a;https://q.shanyue.tech&#xff0c;并有大厂面经及内推信息&#xff0c;可在左下角打开本题原文链接在一些…

c语言 bool_程序的数据要放到哪里呢?|C语言第二篇

在C语言第一篇里我写到了编译器&#xff0c;在这里补充一个点&#xff0c;文本编辑器&#xff0c;编译器&#xff0c;IDE(集成开发环境)的区别。文本编辑器是用作编写普通文字的应用软件&#xff0c;如window的记事本&#xff0c;atom&#xff0c;sublime&#xff0c;它常用来编…

项目职责_项目经理的9个职责

虽说懂技术是项目经理的一个必要项&#xff0c;但事实上&#xff0c;很多技术出身的人&#xff0c;根本干不好项目经理。当项目经理之前&#xff0c;是活儿管你&#xff0c;让你干什么你就干什么&#xff0c;只对任务结果负责&#xff0c;对整体目标不负责。当项目经理之后&…