一、摘要

  当前单目SLAM系统能够实时稳定地在静态环境中运行,但是由于缺乏明显的动态异常处理能力,在动态场景变化与运动中往往会失败。作者为解决高度动态环境中的问题,提出一种语义单目SLAM架构,结合基于特征和直接方法实现具有挑战的条件下系统的鲁棒性。作者所提出的方法利用专业概率模型从场景中提取的语义信息,使跟踪和建图的概率最大化依赖于那些相对于相机没有呈现相对运动的场景部分。在KITTI和Synia数据集上,作者展示了在动态环境中更稳定的姿态估计效果以及相比当前最好静态场景下不错的表现。

二、贡献

1、提出了一个概率模型,该模型不仅仅依赖于逐帧的语义信息,还考虑了所有帧的语义信息,以估计每个地图点的语义。除了语义信息之外,作者还使用时间运动信息来论证某个地图点是动态的还是静态的。

2、设计了一个高效在线概率更新模型,该模型的内存消耗较低。

3、提出了一种基于CNN预测的语义先验信息的联合概率模型来建模动态异常值的单目SLAM方法。

三、论文总结

  通过依赖关于场景语义的知识,可以检测潜在的动态对象,而不需要直接地跟踪它们。通过对场景中建筑物、车道标线等静态部分的分割,可以指导这些区域的特征提取和匹配。

  本文针对高动态环境,提出了一种基于CNN预测的语义先验信息的联合概率模型建模动态异常值的单目SLAM方法。为了提取快速运动相机和无纹理环境中的特征,作者使用描述性与直接特征的组合的方法。与其他方法相比,概率异常模型允许静态和动态之间的平滑过渡,而这在交通场景中很常见。通过近似推理获得的有效在线更新允许实时应用。每个像素的语义信息仅返回对象的类。在户外环境中,静态像素的强度可能受到附近动态对象的影响,例如在道路上。特别是对于直接方法,这会导致产生沿着动态对象的阴影边界的特征,而这些特征并不是想要的。将用于语义分割的CNN延展到以一种基于图像上下文的方式直接预测像素属于动态对象的概率,可以减少获得可靠内点率估计所需的观察次数。使用有效的在线更新方法可以引入观察数据中的时相依赖性。

  来自CityScapes数据集的一个示例,该数据集是一个困难且高度动态的场景,其中车辆正站在交通灯前。大部分图像区域属于仅暂时静止且将开始缓慢移动的对象,因此导致仅基于运动线索的异常检测过程失效如图(b)。在图(c)中语义掩膜忽略了潜在动态区域中的所有关键点,因此不会使用停放的车辆进行姿态估计。本文的方法(如图d)使用深度方差以及融合语义信息(如图a)的逐点异常值估计。红圈表示估计的离群点测量值,绿圈表示用于姿态估计的内点。

四、算法结构

  ORB-SLAM方法中将直接提取的特征扩展到了建图模块中的匹配过程,因此这些特征可以用于追踪模型中的姿态估计。作者结合了概率模型来更新每个地图点的状态。位姿估计仅使用动态的地图点。增加或者修改模型,集成直接特征和概率内插模型,在图中用红色表示。

Semantic Monocular SLAM for Highly Dynamic Environments面向高动态环境的语义单目SLAM的更多相关文章

  1. 动态环境下的slam问题如何解决?

    作者:颜沁睿链接:https://www.zhihu.com/question/47817909/answer/107775045来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  2. 海量数据挖掘MMDS week7: 相似项的发现:面向高相似度的方法

    http://blog.csdn.net/pipisorry/article/details/49742907 海量数据挖掘Mining Massive Datasets(MMDs) -Jure Le ...

  3. 单目、双目和RGB-D视觉SLAM初始化比较

    无论单目.双目还是RGB-D,首先是将从摄像头或者数据集中读入的图像封装成Frame类型对象: 首先都需要将彩色图像处理成灰度图像,继而将图片封装成帧. (1) 单目 mCurrentFrame = ...

  4. 微软面向高并发应用而推出的新程序库——TPL Dataflow

    TPL Dataflow库的几个扩展函数 TPL Dataflow是微软面向高并发应用而推出的新程序库.借助于异步消息传递与管道,它可以提供比线程池更好的控制.本身TPL库在DataflowBlock ...

  5. Improving RGB-D SLAM in dynamic environments: A motion removal approach

    一.贡献 (1)提出一种针对RGB-D的新的运动分割算法 (2)运动分割采用矢量量化深度图像 (3)数据集测试,并建立RGB-D SLAM系统 二.Related work [1]R.K. Namde ...

  6. 浅读《视觉SLAM十四讲:从理论到实践》--操作1--初识SLAM

    下载<视觉SLAM十四讲:从理论到实践>源码:https://github.com/gaoxiang12/slambook 第二讲:初识SLAM 2.4.2 Hello SLAM(书本P2 ...

  7. 单目三维稠密重建方案:Quadtree-accelerated Real-time Monocular Dense Mapping

    论文:This is a monocular dense mapping system following the IEEE Robotics and Automation Letters (RA-L ...

  8. 巧用dynamic给对象字段动态赋值(经测试无效,使用反射解决)

    动态把json对象的字段值赋给某个对象的字段 var dt=Utils.JsonDataTableConvert.ToDataTable(tableJson); foreach (DataRow ro ...

  9. Sentry 监控 - Environments 区分不同部署环境的事件数据

    系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...

随机推荐

  1. springboot freemark linux 找不到ftl文件

    文件路径: 再idea中这样写是可以正常导出文件,但是 打成jar放到linux上就找不到文件了. String templatePath =WordUtils.class.getResource(& ...

  2. PE文件动态加载执行过程

    主要步骤: 1.将要加载的文件读取到内存中(简称为文内),检查文件格式无误后,根据可选PE头(简称op头)的SizeOfImage,申请出一块空间用于存储该文件加载到内存后展开的数据(简称为内内).记 ...

  3. Scala 基础(九):Scala 函数式编程(一)基础(一)概念、定义、调用机制

    1 概念的说明 1)在scala中,方法和函数几乎可以等同(比如他们的定义.使用.运行机制都一样的),只是函数的使用方式更加的灵活多样. 2)函数式编程是从编程方式(范式)的角度来谈的,可以这样理解: ...

  4. JVM 专题二十:垃圾回收(四)垃圾回收器 (一)

    1. GC分类与性能指标 垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商.不同版本的JVM来实现.由于JDK的版本处于高速迭代过程中,因此Java发展至今已经产生了众多的GC版本.从不同角度分 ...

  5. python 面向对象专题(三):继承

    目录 Python面向对象03 /继承 1. 初识继承 2. 单继承 3. 多继承 4. 总结 1. 初识继承 概念:专业角度:如果B类继承A类,B类就称为子类,派生类,A类就称为父类,超类,基类 种 ...

  6. 保存与恢复变量和模型,tensorflow官方文档阅读笔记

    官方中文文档的网址先贴出来:https://tensorflow.google.cn/programmers_guide/saved_model tf.train.Saver 类别提供了保存和恢复模型 ...

  7. Java设计模式 --- 七大常用设计模式示例归纳

    设计模式分为三种类型,共23种: 创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式.原型模式 结构型模式:适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模式 行为型模式:模 ...

  8. 机器学习 | SVD矩阵分解算法,对矩阵做拆分,然后呢?

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题第28篇文章,我们来聊聊SVD算法. SVD的英文全称是Singular Value Decomposition,翻译过来 ...

  9. SpringDI四种依赖注入方式详解

    文章已托管到GitHub,大家可以去GitHub查看阅读,欢迎老板们前来Star!搜索关注微信公众号 [码出Offer] 领取各种学习资料! LOGO SpringDI(依赖注入) 一.DI概述 De ...

  10. go : 连接数据库并插入数据

      package main import ( "database/sql" "fmt" "log" "net/http" ...