SLAM论文速递【SLAM—— RDS-SLAM:基于语义分割方法的实时动态SLAM—4.24(1)
论文信息
题目:
RDS-SLAM:Real-Time Dynamic SLAM Using Semantic Segmentation Methods
RDS-SLAM:基于语义分割方法的实时动态SLAM
论文地址:
https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9318990
发表期刊:
IEEE Access ( Volume: 9)
开源代码
https://github.com/yubaoliu/RDS-SLAM.git
论文标签
摘要
在典型的视觉同时定位与地图构建(vSLAM)算法中,场景刚性是一个很强的假设。这种强大的假设限制了大多数vSLAM在动态现实环境中的使用,而动态现实环境是增强现实、语义地图、无人驾驶汽车和服务机器人等几个相关应用的目标。人们提出了许多解决方案,使用不同类型的语义分割方法(例如Mask R-CNN,SegNet)来检测动态对象并删除异常值。然而,据我们所知,这类方法在其体系结构中需要在跟踪线程中等待语义结果,并且处理时间依赖于所使用的分割方法。本文提出了RDS-SLAM,一种基于ORB-SLAM3的实时视觉动态SLAM算法,增加了一个语义线程和一个基于语义的优化线程,用于在动态环境中实时鲁棒跟踪和建图。这些新线程与其他线程并行运行,因此跟踪线程不再需要等待语义信息。此外,本文还提出了一种算法来获取尽可能最新的语义信息,从而使不同速度的分割方法能够以统一的方式使用。我们使用移动概率更新和传播语义信息,将其保存在地图中,并使用数据关联算法从跟踪中删除异常值。
内容简介
由于语义线程与跟踪线程并行运行,我们使用映射点来保存和共享语义信息。如图1所示,我们利用移动概率更新和传播语义信息,并根据移动概率阈值将地图点分为静态、动态和未知三类。这些分类的地图点将用于在跟踪中选择尽可能稳定的数据关联。本文的主要贡献包括:
(1)提出了一种新的基于语义的实时动态vSLAM算法RDS-SLAM,使得跟踪线程不再需要等待语义结果。
(2)提出了一种关键帧选择策略,将尽可能最新的语义信息作为去除异常值的关键帧,以一种统一的方式与任何不同速度的语义分割方法进行对比。
(3)实验结果表明,所提方法的实时性优于现有的使用TUM的同类方法数据集。


每一帧都将首先通过跟踪线程。在上一帧跟踪后估计当前帧相机的初始姿态,并通过局部地图跟踪进一步优化。然后选取关键帧用于语义跟踪、语义优化和局部线程映射;在跟踪和局部映射线程中修改多个模型,利用语义信息去除摄像机自运动估计中的异常值。在跟踪线程中,提出了一种数据关联算法,尽可能地利用静态对象的特征。语义线程与其他语义线程并行运行,从而不阻塞跟踪线程,将语义信息保存到图谱中。利用语义标签生成先验动态对象的掩码图像;利用语义信息更新与关键帧中特征点匹配的地图点移动概率;最后,利用图谱中的语义信息对相机位姿进行优化。
评价
提出了一种基于RGB-D相机的动态环境下基于语义的实时视觉SLAM (RDS-SLAM)系统。对ORB-SLAM3进行了改进,增加了语义跟踪线程和语义优化线程,利用语义信息消除动态对象的影响。这些新线程与跟踪线程并行运行,因此,跟踪线程不会因为等待语义信息而阻塞。提出了一种语义分割关键帧选择策略,以获取尽可能最新的语义信息,以应对不同速度的分割方法。我们使用移动概率更新和传播语义信息,使用数据关联算法检测和删除跟踪中的异常值。使用TUM数据集评估了算法的跟踪性能和处理时间。与主流vslam算法的对比实验表明,该算法具有良好的跟踪性能,能够实时地跟踪每一帧图像。该系统的最快速度约为30HZ,与ORB-SLAM3的跟踪速度相近。在未来的工作中,我们将尝试1)在真实的机器人上部署该系统,2)将该系统扩展到立体相机和单相机系统,以及3)构建语义地图
阅读总结
文章解决的问题如下:
1、ORB-SLAM3不能解决动态场景的问题
2、大多数动态SLAM实时性不够的问题
文章提出的解决方法如下:
1、改进ORB-SLAM3增加语义分割的功能
2、提出语义线程和跟踪线程并行的策略(非阻塞模型)
总的来说,该文章的工作量比较大,介绍得比较仔细,值得借鉴和引用。其中的利用移动概率传播来剔除动态特征点的方法还没研究
相关文章:
SLAM论文速递【SLAM—— RDS-SLAM:基于语义分割方法的实时动态SLAM—4.24(1)
论文信息 题目: RDS-SLAM:Real-Time Dynamic SLAM Using Semantic Segmentation Methods RDS-SLAM:基于语义分割方法的实时动态SLAM论文地址: https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber9318990发表期刊: IEEE Access ( Volum…...
OJ练习第82题——填充书架
填充书架 力扣链接:1105. 填充书架 题目描述 给定一个数组 books ,其中 books[i] [thicknessi, heighti] 表示第 i 本书的厚度和高度。你也会得到一个整数 shelfWidth 。 按顺序 将这些书摆放到总宽度为 shelfWidth 的书架上。 先选几本书放在书架…...
OHOS IDE和SDK的安装方法
参照OpenHarmony应用开发环境安装流程,下载安装OHOS的IDE,过程中需要全程联网。 IDE,安装至D:\Tools\Huawei\DevEcoStudio。 IDE安装成功之后,按照提示下载安装HOS和OHOS的SDK。 nodejs,安装至D:\Tools\Huawei\nodejs…...
New Year Garland(计数类DP)
New Year Garland 题意 用m种颜色的球装饰n层的圣诞树,圣诞树的第i层由 l i l_{i} li个彩球串成,且同一层相邻的球颜色不同,相邻的层之间彩球颜色的集合不同,问有多少种方案,对p取模。 分析 首先先计算每一…...
32岁阿里P7,把简历改成不知名小公司,学历改成普通本科,工作内容不变,投简历全挂!...
hr靠什么来招人? 一位猎头讲述了自己和朋友打赌的故事: 朋友在阿里云,32岁,P7,他把简历上的公司改成不知名,学历改成普通本科,工作内容不变,结果投其他公司(比如京东&…...
从三室心脏MRI影像检测主动脉瓣病变
Detecting Aortic Valve Pathology from the 3-Chamber Cine Cardiac MRI View 摘要 背景 心脏磁共振(CMR)是量化心脏容量、功能和血流量的金标准。定制的MR脉冲序列定义了对比机制,采集几何形状和定时,可以在CMR期间应用,以实现独特的组织…...
【JavaWeb】JavaScript
1、JavaScript 介绍 Javascript 语言诞生主要是完成页面的数据验证。因此它运行在客户端,需要运行浏览器来解析执行 JavaScript 代码。 JS 是 Netscape 网景公司的产品,最早取名为 LiveScript;为了吸引更多 java 程序员。更名为 JavaScript。 JS 是弱…...
Apache Doris 1.2.4 Release 版本正式发布|版本通告
亲爱的社区小伙伴们,我们很高兴地宣布,Apache Doris 于 2023 年 4 月 27 日迎来 1.2.4 Release 版本的正式发布!在 1.2.4 版本中,Doris 团队已经修复了自 1.2.3 版本发布以来近 150 个问题或性能改进项。同时,1.2.4 版…...
【C++STL】map
文章目录 一. map的介绍二. map的使用结束语 一. map的介绍 map是关联容器,它按照特定的次序(按照key来比较)存储由键值key和值value组合而成的元素在map中,键值key通常用于排序和唯一地标识元素,而value中存储与此键值…...
vue2项目PC端如何适配不同分辨率屏幕
项目构建:基于vue-cli3构建,使用postcss-px2rem px2rem-loader进行rem适配 实现原理:每次打包,webpack通过使用插件postcss-px2rem,帮我们自动将px单位转换成rem单位前方有坑:UI框架部分组件使用JavaScript…...
CorelDRAW2023最新版本图像设计软件
CorelDRAW 2023作为最新版的图像设计软件,在功能上做了较大提升,主要新的功能特性如下: 1. 全新界面设计:采用简约现代的 UI 设计,菜单和工具重新组织,更加直观易用。提供自动提示与设计指导,易于上手。 2. 智能工具与提示:运用 AI技术对用户操作行为和设计习惯进行分析,给出…...
第64章 树型结构数据的前端渲染渲染显示示例
1 \src\views\TreeTestView.vue <template> <div class"wrap"> <!--注意:1、“回到顶部”组件及其回滚内容都必须包含到同1个div容器中。--> <!-- 2、div容器中必须有1个唯1性的样式类(例如:wrap)…...
超级国际象棋:第二个里程碑已完成
获取Cartesi资助的项目的最新进展,现在将完全去中心化的Web3国际象棋带到你的手中 “Ultrachess是一个完全基于区块链的国际象棋应用程序,由Cartesi Rollup技术支持,允许用户将真实价值投入到比赛中,不仅仅是他们的Elo分数。 此…...
vue3 HTML 和静态资源
目录 静态资源可以通过两种方式进行处理: URL 转换规则 public 文件夹 何时使用 public 文件夹 public/index.html 文件是一个会被 html-webpack-plugin 处理的模板。在构建过程中,资源链接会被自动注入。另外,Vue CLI 也会自动注入 re…...
5G基站外市电改造建设方案 (ppt可编辑)
本资料来源公开网络,仅供个人学习,请勿商用,如有侵权请联系删除 外市电定义及分类 定义:由供电部门提供的专用高压电源或非专用高压电源或低压电源均称为市电。分类: (1)按电压等级分类 ①提供…...
C++ 类和对象(上)
类 面向对象的三大特性:封装,继承,多态 C语言结构体中只能定义变量,在C中,结构体内不仅可以定义变量,也可以定义函数。比如: 之前在数据结构初阶中,用C语言方式实现的栈,…...
【BIM+GIS】BIM模型导入GIS软件之前的一些处理设置
文章目录 一、模型位置发生偏移二、模型对象丢失或增加三、模型材质发生变化四、导出过程缓慢五、模型属性批量丢失一、模型位置发生偏移 在视图→可见性/图形替换模型类别→场地(VV可见性快捷),勾选项目基点。 单击选中项目基点,在属性中修改几点坐标。 即使修改了项目基…...
js FileReader的常用使用方法
FileReader 对象允许 Web 应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File 或 Blob 对象指定要读取的文件或数据。 主要的读取方法: readAsArrayBuffer(): 开始读取指定的 Blob 中的内…...
网络威胁情报:数据的力量
在一个日益互联和数字化的世界中,网络威胁已成为一项重大挑战,可能危及您组织的声誉、财务稳定性和整体运营效率。 事实上,根据 IBM 2022 年的一份报告,数据泄露的平均成本现在为 435 万美元。 鉴于网络威胁的重要性和影响日益突…...
shell:清理指定目录中指定天数之前的旧文件
前言 我们在服务器运行一些服务经常会产生很多临时文件,而有些临时文件不定期处理很容易就打满了整个磁盘;所以有必要去定期清理,基于这个需求我们就可以搞一个脚本结合crontab或者服务调度这些来使用; 脚本实现 #!/bin/bash# …...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...
高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...
使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度
文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
基于SpringBoot在线拍卖系统的设计和实现
摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...
