DOT:视觉SLAM的动态目标物跟踪

2024-08-25 06:18

本文主要是介绍DOT:视觉SLAM的动态目标物跟踪,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点云PCL免费知识星球,点云论文速读。

文章:DOT: Dynamic Object Tracking for Visual SLAM

作者:Irene Ballester, Alejandro Fontan, Javier Civera

翻译:分享者

本文仅做学术分享,如有侵权,请联系删除。欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈分享快乐。

论文阅读模块将分享点云处理,SLAM,三维视觉,高精地图相关的文章。公众号致力于理解三维视觉领域相关内容的干货分享,欢迎各位加入我,我们一起每天一篇文章阅读,开启分享之旅,有兴趣的可联系微信dianyunpcl@163.com。

论文摘要

在本文中,我们提出了DOT(dynamic object tracking,动态目标跟踪)系统,它是在现有SLAM系统的基础上增加的一个前端,可以显著提高SLAM系统在高动态环境下的鲁棒性和准确性。DOT系统结合了实例分割和多视图几何生成动态对象的mask,使基于刚性场景模型的SLAM系统在优化时避免此类mask图像区域。

为了确定哪些目标实际在移动,首先是对潜在的移动对象进行对象的实例分割,然后根据估计的相机运动,通过最小化光度重投影误差来跟踪这些对象。与其他方法相比,这种短期跟踪的方法提高了分割的准确性。最终,根据结果只生成实际的动态对象的mask。我们在三个公共数据集中用ORB-SLAM 2对DOT进行了评估。实验结果表明,该方法显著提高了ORB-SLAM 2的精度和鲁棒性,特别是在高动态场景下。

内容精华

DOT系统概述

下图显示了DOT系统的概述。DOT的输入是一定视频速率下的RGB-D或立体图像,其输出是对场景的静态和动态元素进行编码的mask,可直接用于SLAM或里程计系统。第一个模块(实例分割)对应于CNN,该CNN以像素方式分割出所有潜在的动态对象。在我们的实验中,使用自动驾驶数据集,只有汽车被分割成潜在的运动。由于DOT是从一帧到另一帧跟踪mask图像,因此不需要在每一帧都执行此操作。图像处理模块提取并分割属于图像静态区域的点和动态对象中的点。仅使用场景的静态部分用来跟踪相机位姿。

判断物体在运动吗?使用几何标准确定网络标记为潜在动态的对象是否确实在移动。此信息用于更新编码每个帧的静态和动态区域的mask,并为里程计/SLAM视觉系统提供信息。

最后,DOT动态物体的跟踪不需要对每一帧的运动进行估计(因此不需要对每一帧图像进行新的运动估计)。考虑到实例分割的巨大计算量,这可能是DOT与其他最新方法相比的一个优势所在。

实例分割

使用deep network Detectron2分割图像中所有可能移动的实例。对网络的输出进行了修改,以在一幅图像中获得所有的分割mask。未被划分为潜在移动类别的图像区域被赋予一个“背景”标签,并且在随后的块中被认为是静态的。

相机和目标跟踪

在前一步的实例分割中,我们的目标是估计摄像机和动态物体的运动。由于摄像机的运动和物体的运动在图像中是耦合的,所以我们在两步过程中进行估计。首先将摄像机的姿态作为一个相对变换,然后减去相机的运动来估计目标物的运动

跟踪的质量处理

遮挡、光照条件的变化和分割误差对目标和相机姿态的准确性有重要影响。如算法1所示,在目标跟踪步骤之后开发了几种策略,以减少它们的影响。

判断对象是否运动

这个模块主要根据相机的运动和对象的位移来判断真实的对象是否有移动。

上图为计算流程的一个部分的示例。第一排显示点估计的跟踪相机和对象。请注意,并非所有帧都需要来自网络的分割mask(黄色帧)。下面一行显示由DOT生成的分割mask,这些掩码对运动分类进行编码:运动中(彩色)、静态(黑色)和未观察到(灰色)。

mask传播

DOT系统利用每帧中可用的两个分割mask:一个由神经网络产生,另一个由前一帧传播。将两个mask进行图像映射,可以将不同帧中发现的实例对象可靠地关联到同一个3D对象中。状态传播。将新的语义实例与预先存在的对象关联起来,可以预测它们的运动(这对于快速移动的对象至关重要)。此外,在物体移动到运动不可见的位置时,可以保持运动的分类。独立分割。我们的方案允许语义分割掩码从初始种子在时间和空间上传播,消除了分割每一帧的需要。在低端平台上,以较低的频率运行神经网络使实时目标跟踪更容易。作为进一步的好处,DOT能够填补网络在连续图像之间暂时丢失对象实例化的空白。

● 实验

虽然DOT的潜在应用范围很广,从目标检测到增强现实或自动驾驶,本文中我们提供了一个深入的评估,以证明“了解物体的运动”能在多大程度上提高SLAM系统的精度。

场景内容。所研究的三种构型的样本结果。左:没有mask。中心:圆点mask。右图:所有mask。

● 总结

DOT是一种新颖的SLAM系统前端算法,它结合实例分割和多视图几何方程,对运动目标进行鲁棒检测和跟踪。用ORB-SLAM2对三个用于自主驾驶研究的公共数据集进行了评估表明,DOT生成的物体运动信息允许我们分割动态内容,显著提高了其鲁棒性和准确性。DOT与SLAM的独立性使得它成为一个多功能的前端,只需最小的集成工作就可以适应任何最先进的视觉里程计或SLAM系统。与其他系统不同,点云的mask跟踪降低了应进行分割(通常涉及高计算成本)的速率,降低了相对于现有技术的计算需求。

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

往期线上分享录播汇总

第一期B站录播之三维模型检索技术

第二期B站录播之深度学习在3D场景中的应用

第三期B站录播之CMake进阶学习

第四期B站录播之点云物体及六自由度姿态估计

第五期B站录播之点云深度学习语义分割拓展

第六期B站录播之Pointnetlk解读

[线上分享录播]点云配准概述及其在激光SLAM中的应用

[线上分享录播]cloudcompare插件开发

[线上分享录播]基于点云数据的 Mesh重建与处理

[线上分享录播]机器人力反馈遥操作技术及机器人视觉分享

[线上分享录播]地面点云配准与机载点云航带平差

点云PCL更多活动请查看:点云PCL活动之应届生校招群

扫描下方微信视频号二维码可查看最新研究成果及相关开源方案的演示:

如果你对本文感兴趣,请点击“原文阅读”获取知识星球二维码,务必按照“姓名+学校/公司+研究方向”备注加入免费知识星球,免费下载pdf文档,和更多热爱分享的小伙伴一起交流吧!

扫描二维码

                   关注我们

让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入免费星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。

分享及合作:微信“920177957”(需要按要求备注)联系邮箱:dianyunpcl@163.com,欢迎企业来联系公众号展开合作。

点一下“在看”你会更好看耶

这篇关于DOT:视觉SLAM的动态目标物跟踪的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1104779

相关文章

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

动态规划---打家劫舍

题目: 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 思路: 动态规划五部曲: 1.确定dp数组及含义 dp数组是一维数组,dp[i]代表

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

代码随想录冲冲冲 Day39 动态规划Part7

198. 打家劫舍 dp数组的意义是在第i位的时候偷的最大钱数是多少 如果nums的size为0 总价值当然就是0 如果nums的size为1 总价值是nums[0] 遍历顺序就是从小到大遍历 之后是递推公式 对于dp[i]的最大价值来说有两种可能 1.偷第i个 那么最大价值就是dp[i-2]+nums[i] 2.不偷第i个 那么价值就是dp[i-1] 之后取这两个的最大值就是d

计算机视觉工程师所需的基本技能

一、编程技能 熟练掌握编程语言 Python:在计算机视觉领域广泛应用,有丰富的库如 OpenCV、TensorFlow、PyTorch 等,方便进行算法实现和模型开发。 C++:运行效率高,适用于对性能要求严格的计算机视觉应用。 数据结构与算法 掌握常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、动态规划等),能够优化代码性能,提高算法效率。 二、数学基础

Verybot之OpenCV应用三:色标跟踪

下面的这个应用主要完成的是Verybot跟踪色标的功能,识别部分还是居于OpenCV编写,色标跟踪一般需要将图像的颜色模式进行转换,将RGB转换为HSV,因为对HSV格式下的图像进行识别时受光线的影响比较小,但是也有采用RGB模式来进行识别的情况,这种情况一般光线条件比较固定,背景跟识别物在颜色上很容易区分出来。         下面这个程序的流程大致是这样的:

LeetCode:64. 最大正方形 动态规划 时间复杂度O(nm)

64. 最大正方形 题目链接 题目描述 给定一个由 0 和 1 组成的二维矩阵,找出只包含 1 的最大正方形,并返回其面积。 示例1: 输入: 1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0输出: 4 示例2: 输入: 0 1 1 0 01 1 1 1 11 1 1 1 11 1 1 1 1输出: 9 解题思路 这道题的思路是使用动态规划

[数据集][目标检测]血细胞检测数据集VOC+YOLO格式2757张4类别

数据集格式:Pascal VOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2757 标注数量(xml文件个数):2757 标注数量(txt文件个数):2757 标注类别数:4 标注类别名称:["Platelets","RBC","WBC","sickle cell"] 每个类别标注的框数:

vue2实践:el-table实现由用户自己控制行数的动态表格

需求 项目中需要提供一个动态表单,如图: 当我点击添加时,便添加一行;点击右边的删除时,便删除这一行。 至少要有一行数据,但是没有上限。 思路 这种每一行的数据固定,但是不定行数的,很容易想到使用el-table来实现,它可以循环读取:data所绑定的数组,来生成行数据,不同的是: 1、table里面的每一个cell,需要放置一个input来支持用户编辑。 2、最后一列放置两个b