droid-SLAM 简介
droid-SLAM,DORID(Differential Recurrent Optimized-Inspired Design)实现了端到端可微的SLAM系统,于21年发表在Advances in neural information processing systems,仅使用仿真数据集Tartan Air训练就达到了SOTA精度,同时说明算法的泛化性能很强。
运行速度及硬件要求:
根据论文,使用两台3090,一台用于前端,一台用于后端,将图像降采样并适当降低帧率,可以在Euroc、TUM-RGBD数据集上实时推理,如果仅适用前端,则可以在一台1080Ti上跑,但需注意内存可能不足。
流程及原理:
通过在光流估计模块(RAFT)后添加可微的DBA(Dense Bundle Adjusr)模块,实现了端到端可微的SLAM系统。在DBA模块通过RAFT的光流估计优化图像序列状态(包括位置姿态和深度估计),并根据现有图像序列的状态重新计算光流,再将新计算的光流传入RAFT中更新纠正,通过多次迭代更新,光流趋于真值,通过光流迭代更新的图像序列状态也得到高精度解算。
光流估计网络的loss使用了位姿和光流,通过DBA模块计算得到以上两个loss,即DBA模块也参与了后向传播(back propogation)过程,使得网络参数权重朝着使DBA模块残差降低的方向学习。在深度学习网络中融入了几何约束,实现了传统算法与深度学习算法的结合。
在论文的Appendix B中也补充说明了如果在训练过程中没有包含DBA模块,也即直接拼接RAFT和DBA,结果会不稳定并产生较大误差。
代码结构:
目前只看完了推理部分。训练部分大同小异。
主要结构:
depth_video: 存储视频序列各帧的状态,包括位姿、深度、内参等。同时包含了帧间距离计算以及BA函数,方便因子图时调用。</

本文介绍了droid-SLAM,一种在ANIPS2021上发表的端到端可微的SLAM系统,使用RAFT和DBA模块实现高精度定位。它在3090硬件上实现实时推理,并探讨了硬件需求、流程原理、代码结构和坐标转换。文章还涉及光流估计、后端处理和回环检测方法。
最低0.47元/天 解锁文章
518

被折叠的 条评论
为什么被折叠?



