KITTI数据集leaderboard上单目SLAM方法

因为笔者最近在做Monocular SLAM偏向于定位的工作,所以先是翻翻KITTI数据集上的相关SOTA方法,由于KITTI dataset上的leaderboard只有总榜,所以笔者统计了其中的单目方法(该类方向相比与双目和激光较少),并对其中部分论文进行了简要叙述。

Notes:因为总榜单会持续接受新的方法投稿并且进行排名和更新,所以本文具有一定的时效性;本文最初统计时间为:2022年7月4日

Methods

1 . D3VO(总榜排名:42)

  • D3VO: Deep Depth, Deep Pose and Deep Uncertainty for Monocular Visual Odometry . CVPR2020 (Citations:168)
  • 内容简述:TUM Daniel Cremers教授的工作,一作杨楠大佬;这是一项视觉里程计和深度估计结合的工作,基于双目DSO的单目深度估计算法来提高单目DSO的VO能力和重建效果,是下面DVSO的续作,单目深度估计网络基于Monodepth2;D3VO框架利用网络在三个层面的信息–深度,位姿和不确定性估计。首先提出了一种新颖的训练于双目视频的自监督单目深度估计网络,该网络没有使用任何外部监督信号,通过预测的亮度转换参数将训练图像对调整为相似的光照条件, 此外,还对图像中像素的光度不确定度进行了建模,这样不仅提高了深度估计的准确性还为DSO中的光度残差提供了一个学习过的加权函数。
  • 是否开源:尚未开源;

2 . DVSO(总榜排名:45)

  • 论文:Deep Virtual Stereo Odometry: Leveraging Deep Depth Prediction for Monocular Direct Sparse Odometry . ECCV2018 (Citations:270)
  • 内容简述:和上面D3VO属于同一批作者,一作杨楠;大致原理和上面D3VO相同,在DSO的基础上,基于双目DSO的单目深度估计算法来提高单目DSO的VO能力和重建效果;
  • 是否开源:尚未开源;

3 . MonoROCC(总榜排名:64)

  • 论文:Monocular Outlier Detection for Visual Odometry . IEEE Intelligent Vehicles Symposium (IV) 2017(Citations:19)
  • 内容简述:德国达姆斯塔特工业大学Control Methods & Robotics Lab的工作;作者提出了一种单目方法,目的在于找到具有旋转先验知识的异常值;这种单目方法的主要优点是将离散化的最大坐标不确定性明显地合并在一起,使进一步的参数化变得不必要,以及与深度信息的独立性。
  • 是否开源:尚未开源;

4 . BVO(总榜排名:96)

  • 论文:Backward Motion for Estimation Enhancement in Sparse Visual Odometry . WVC2017 (Citations:7)
  • 内容简述:本文主要提出了一种基于漂移感知的PnP优化算法的单目后向姿态估计系统,并给出了一组可用于大尺度相机姿态估计的不可信特征列表。尺度估计实现了基音恢复机制来纠正尺度偏移,以及基于多属性评分的地面点选择方法。
  • 是否开源:尚未开源;

5 . FTMVO(总榜排名:104)

  • 论文: Fast Techniques for Monocular Visual Odometry . GCPR 2015 . (Citations:25)
  • 内容简述:;该文通过应用迭代5点方法估计瞬时摄像机运动参数在RANSAC算法的背景下,以有效地应对异常值。在我们的方法中,使用概率三角测量方法在空间中定位地标,用于增强最后一个相机姿态的估计。这种增强是通过对地标的多次观测和最小化代价函数来实现的,该代价函数由远地标的极外几何约束和近地标的投影约束组成。
  • 是否开源:尚未开源;

6 . PbT-M1(总榜排名:106)

  • 论文:Keypoint Trajectory Estimation Using Propagation Based Tracking . IV2016. (Citations:18) Multimodal scale estimation for monocular visual odometry. IV2017. (Citations:21)
  • 内容简述:本文提出了一种基于传播的跟踪方法,从单目相机设置的图像序列中获取关键点的二维轨迹。我们不依赖经典的RANSAC来获得精确的关键点对应,而是通过将关键点的三维估计位置传播到下一帧并验证光度一致性来引导关键点匹配的搜索;在这个过程中不断地预测、估计和细化引起极外关系的帧对帧的相对姿态。
  • 是否开源:尚未开源;

7 . MLM-SFM(总榜排名:109)

  • 论文: Robust Scale Estimation in Real-Time Monocular SFM for Autonomous Driving . CVPR 2014 . (Citations:145) Real-time Monocular Visual Odometry . ICRA 2013.
  • 内容简述:本文提出了一种实时单目SFM系统,该系统使用一种新颖的提示组合框架对地面平面估计进行尺度漂移校正,在长驾驶序列中产生可媲美双目视觉的精度.
  • 是否开源:尚未开源;

8 . LTMVO(总榜排名:132)

  • 论文:Learning Monocular Visual Odometry via Self-Supervised Long-Term Modeling . ECCV2020 (Citations:27)
  • 内容简述:NEC美研的工作;大概方法:一个自监督深度学习的CNN+LSTM方法,该系统主要由两部分组成:深度网络和位姿网络。单目图像深度网络采用编解码器结构,并具有跳跃连接。位姿网络由一个FlowNet流网主干、一个两层LSTM模块和两个位姿预测头(每个LSTM层后有一个)组成。在两层循环体系结构中,第一层侧重于预测连续帧运动,而第二层改进了第一层的估计。
  • 是否开源:尚未开源;

9 . MonoDepth2(总榜排名:136)

  • 论文:Digging into self-supervised monocular depth estimation .ICCV 2019. (Citations:1099)
  • 内容简述:作者来自UCL、Caltech和Niantic;monodepth2可是太火了,自监督深度学习的方式将单目深度估计拉高了一个台阶.输入单张图像就能估计出深度,输入两张图像就能估计出图像间的变换关系;核心思想:使用深度估计和姿态估计网络的组合来预测单帧图像中的深度; 它通过在一系列运动的图像(包括单目和双目)序列上训练一个建立在自监督损失函数上的架构来实现,这一架构包括两个网络,一个用来在单目图像上预测深度,另一个在运动图像之间预测姿态; 此方法不需要标注训练数据集,相反,它使用图像序列中的连续时间帧和姿态的重投影关系来进行训练。
  • 是否开源:开源,https://github.com/nianticlabs/monodepth2

10 . SC-SfMLearner(总榜排名:140&143)

  • 论文:Unsupervised scale-consistent depth and ego-motion learning from monocular video . NeurIPS 2019 (Citations:259)
  • 内容简述:一作是阿德莱德大学博士生边佳旺;本文是首篇单目无监督深度估计与视觉里程计,其效果超越(部分)双目算法;出发点:在以SFMLearner为代表的单目深度估计训练框架中,无法解决尺度一致的问题动态物体的问题;为了解决这两个问题,本文一方面提出了一个几何一致性约束,来加强depth net和pose net的尺度一致性;另一方面提出self-discovered mask,检测动态物体和遮挡
  • 是否开源:开源,https://github.com/JiawangBian/SC-SfMLearner-Release

11 . CC(总榜排名:141)

  • 论文: Competitive collaboration: Joint unsupervised learning of depth, camera motion, optical flow and motion segmentation . CVPR 2019 (Citations:391)
  • 内容简述:作者来自马克斯普朗克智能系统研究所、NVIDIA和MIT;出发点:在同一个场景中,单目视觉深度信息、相机运动、光流、运动分割这些因素往往是相互联系、相互制约的,基于这一点作者提出了一种无监督方法,同时对这几种因素进行学习,并用他们的相互关系进行约束和增强,以此简化各个单独的问题;大致思路为利用四个子网络完成4个子任务(单张图片的深度估计,相机的运动估计,光流估计(包括对场景中的背景、运动物体的光流),图像中静态区域和动态区域的分割),网络训练模式类似于EM算法,固定某几个训练其他,再固定其他训练某个;
  • 是否开源:开源,https://github.com/anuragranj/cc

12 . OABA(总榜排名:142)

  • 论文:Object-Aware Bundle Adjustment For Correcting Monocular Scale Drift . ICRA2012 (Citations:64)
  • 内容简述:牛津大学机器人小组的工作;主要思想是利用深度学习进行目标检测,将物体表示为球体,进而约束单目SLAM,减少其漂移程度。
  • 是否开源:尚未开源;

Evaluation And Detailed Results

Evaluation

  • 评估指标:平移误差和旋转误差(translational and rotational errors);评价表根据这些值的平均值对方法进行排名,其中平移误差用百分数衡量,旋转用每米度衡量;

  • KITTI数据集官方说明:KITTI数据集目前只接受 具有重大的新异,从而导致能够在会议或期刊上进行同行评议的论文 提交;不允许对现有算法或学生研究项目进行微小修改;此外,官方会定期删除所有6个月前的、但仍然是匿名的或没有相关论文的提交;对于会议来说,6个月足以决定一篇论文是否被接受,并添加参考论文信息,对于更长的评审周期,你需要重新提交你的结果。

Detailed Results:测试数据集是sequences 11-21,benchmark是所有可能子序列的平移和旋转误差,评估时根据这些值的平均值对方法进行排序;不同轨迹长度和驾驶速度的细节可以在网页的图中找到。此外,前5个测试轨迹和误差图在网页上。

SUMMIT

因为笔者本人也是小白入门,并未有过在KITTI数据集上提交相关代码和数据的经历,这里只是简单叙述一下官网上的提交方法;

注册账号之后可以在官网下载数据集,如果想在官网上提交相关算法结果,需要添加相关申请,审核通过后信息如下:

请添加图片描述
请添加图片描述

请添加图片描述

Notes

1 . ORB-SLAM2在KITTI上提交的是效果最好的双目版本,所以该方法并没有在上述Methods部分中出现;

2 . 一些直接使用激光、深度或者是其他先验知识的方法不被包含在内,另一些通过深度学习方法计算出相关深度的方法将在上面列举;

3 . 该文章中并没有统计 leaderboard 中没有出版论文的方法;

4 . 总榜102的GFM(Good feature matching)有单目和双目两个版本,作者在KITTI上传的为双目版本,所以并未记录在内;

5 . 部分工作通过分割地面形成额外的约束只列举了一种,其余的并未包含在内;

Reference

1 . 单目视觉里程计性能估计: https://blog.csdn.net/wujianing_110117/article/details/106436357

2 . 笔记:Competitive Collaboration: Joint Unsupervised Learning of Depth, Camera Motion… :https://blog.csdn.net/Siyuada/article/details/89036968

3 . 无监督单目深度估计及VO的尺度一致性解决:https://zhuanlan.zhihu.com/p/212497013

4 . 强大的自监督深度估计monodepth2:https://zhuanlan.zhihu.com/p/101533728

5 . 通过自监督长期模型学习视觉里程计 :https://www.sohu.com/a/434105609_715754

Update

后续持续更新…

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Redis 是一个开源的高性能键值存储数据库,常用于缓存、队列等场景。在实现榜单功能时,可以利用 Redis 的有序集合(sorted set)数据类型来实现。 有序集合(sorted set)是一种有序的数据结构,其中的每个元素都会关联一个分数(score),根据分数进行排序。利用这个特性可以实现榜单的功能,将每个用户或物品作为有序集合的一个成员,分数即为该用户或物品的排名。 首先,我们需要将用户或物品的分数和排名信息存储到 Redis 中。可以通过命令`ZADD`向有序集合中添加成员及其分数,例如: ``` ZADD leaderboard 1000 "user1" ZADD leaderboard 800 "user2" ZADD leaderboard 500 "user3" ``` 上述命令表示向名为`leaderboard`的有序集合中添加了三个成员,分别为`user1`、`user2`和`user3`,对应的分数分别为 1000、800 和 500。 接下来,我们可以利用`ZREVRANGE`命令按照分数的高低返回排行榜的前几名,例如: ``` ZREVRANGE leaderboard 0 2 WITHSCORES ``` 上述命令表示返回`leaderboard`有序集合中分数最高的 3 个成员及其分数。通过这个命令可以获取榜单的排名和分数信息。 另外,还可以通过`ZINCRBY`命令对某个成员的分数进行增减操作,例如: ``` ZINCRBY leaderboard 100 "user1" ``` 上述命令表示将`user1`成员的分数增加 100,可用于更新用户或物品的排名。 通过以上的 Redis 命令,我们就可以实现榜单的功能。在实际应用中,可以结合定时任务或触发器,周期性地更新榜单中的成员分数,从而保证榜单的准确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GRF-Sunomikp31

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值