动态环境下SLAM学习笔记汇总

2022-06-16

动态环境SLAM是目前slam方向的一个热门研究领域。

代码:https://github.com/ivipsourcecode/DS-SLAM 主要思想:(语义+几何) 1.SegNet进行语义分割(单独一个线程); 2.对于前后两帧图像,通过极线几何检测外点; 3.如果某一物体外点数量过多,则认为是动态,剔除; 4.建立了语义八叉树地图。 讨论:这种四线程的结构以及极线约束的外点检测方法得到了很多论文的采纳,其缺点在于:1.极线约束的外点检测方法并不能找到所有外点,当物体沿极线方向运动时这种方法会失效 2.用特征点中的外点的比例来判断该物体是否运动,这用方法存在局限性,特征点的数量受物体纹理的影响较大 3.SegNet是2016年剔除的语义分割网络,分割效果有很大提升空间,实验效果不如Dyna-SLAM

  • 3.Detect-SLAM(2018 IEEE WCACV, 北京大学)

论文:Detect-SLAM: Making Object Detection and SLAM Mutually Beneficial 代码:https://github.com/liadbiz/detect-slam 主要思想: 目标检测的网络并不能实时运行,所以只在关键帧中进行目标检测,然后通过特征点的传播将其结果传播到普通帧中 1.只在关键帧中用SSD网络进行目标检测(得到的是矩形区域及其置信度),图割法剔除背景,得到更加精细的动态区域; 2.在普通帧中,利用feature matching + matching point expansion两种机制,对每个特征点动态概率传播,至此得到每个特征点的动态概率; 3.object map帮助提取候选区域。

  • 4.VDO-SLAM(arXiv 2020)

论文:VDO-SLAM: A Visual Dynamic Object-aware SLAM System 代码: https://github.com/halajun/vdo_slam 主要思想: 1.运动物体跟踪,比较全的slam+运动跟踪的系统; 2.光流+语义分割。

  • 5.Co-Fusion(ICRA 2017)

论文:Co-Fusion: Real-time Segmentation, Tracking and Fusion of Multiple Objects 代码:https://github.com/martinruenz/co-fusion 主要思想: 学习和维护每个物体的3D模型,并通过随时间的融合提高模型结果。这是一个经典的系统,很多论文都拿它进行对比

  • 6.Learning Rigidity in Dynamic Scenes with a Moving Camera for 3D Motion Field Estimation(2018,ECCV,NVIDIA)

论文:Learning Rigidity in Dynamic Scenes with a Moving Camera for 3D Motion Field Estimation 代码:https://github.com/NVlabs/learningrigidity.git 主要思想: 1.RTN网络用于计算位姿以及刚体区域,PWC网络用于计算稠密光流; 2.基于以上结果,估计刚体区域的相对位姿; 3.计算刚体的3D场景流; 此外还开发了一套用于生成半人工动态场景的工具REFRESH。

  • 7.ReFusion(2019 IROS)

论文:ReFusion: 3D Reconstruction in Dynamic Environments for RGB-D Cameras Exploiting Residuals

代码:https://github.com/PRBonn/refusion 主要思想: 主流的动态slam方法需要用神经网络进行分实例分割,此过程需要预先定义可能动态的对象并在数据集上进行大量的训练,使用场景受到很大的限制。而ReFusion则使用纯几何的方法分割动态区域,具体的:在KinectFusion稠密slam系统的基础上,计算每个像素点的残差,通过自适应阈值分割得到大致动态区域,形态学处理得到最终动态区域,与此同时,可得到静态背景的TSDF地图。 讨论:为数不多的不使用神经网络的动态slam系统

  • 8.RGB_D-SLAM-with-SWIAICP(2017)

论文:RGB-D SLAM in Dynamic Environments Using Static Point Weighting 代码:https://github.com/VitoLing/RGB_D-SLAM-with-SWIAICP 主要思想: 1.仅使用前景的边缘点进行跟踪( Foreground Depth Edge Extraction); 2.每隔n帧插入关键帧,通过当前帧与关键帧计算位姿; 3.通过投影误差计算每个点云的静态-动态质量,为下面的IAICP提供每个点云的权重; 4.提出了融合灰度信息的ICP算法–IAICP,用于计算帧与帧之间的位姿。 讨论: 前景物体的边缘点能够很好地表征整个物体,实验效果令人耳目一新。但是文中所用的ICP算法这并不是边缘slam常用的算法,边缘slam一般使用距离变换(DT)描述边缘点的误差,其可以避免点与点之间的匹配。论文Robust RGB-D visual odometry based on edges and points提出了一种很有意思的方案,用特征点计算位姿,用边缘点描述动态区域,很好地汲取了二者的优势。

  • 9.RDS-SLAM(2021,Access)

论文:RDS-SLAM: Real-Time Dynamic SLAM Using Semantic Segmentation Methods 代码:https://github.com/yubaoliu/RDS-SLAM.git 主要思想:克服不能实时进行语义分割的问题 1.选择最近的关键帧进行语义分割; 2.基于贝叶斯的概率传播; 3.通过上一帧和局部地图得到当前帧的外点; 4.根据运动概率加权计算位姿。

Dynamic Object Detection and Tracking

Researchers

🥼1. Berta Bescos

**主页:谷歌学术 个人主页 GitHub**

博士学位论文: Visual slam in dynamic environments

代表性工作

🥼2. Yubao Liu

Walk Into AI World

主页:谷歌学术 GitHub

代表性工作:

  1. RDS-SLAM: real-time dynamic SLAM using semantic segmentation methods
  2. KMOP-vSLAM: Dynamic Visual SLAM for RGB-D Cameras using K-means and OpenPose
  3. RDMO-SLAM: Real-time Visual SLAM for Dynamic Environments using Semantic Label Prediction with Optical Flow

    3. Guoquan Huang(SLAMMOT)

4. Shenshao Jie(MOT)