ORBSLAM3_Dense 是一个支持深度相机、双目相机稠密重建的SLam二次开发项目,并且对于针孔相机和鱼眼相机传感器类型也是支持稠密重建。该项目不仅使用了PCL建立三维稠密点云图,还在双目没有提供视差图时采用了ELas算法计算双目视差图,以达到快速开始使用的目的。
- Ubuntu 20.04
- Boost 1.71.0
- Eigen3
- Pangolin 0.6版本
- PCL 1.10
- OpenCV 4.5.5
当你满足项目环境时
sh build.sh
见 DataPrepare。
对于深度相机数据集,每个图像的名称必须是1,2,3,...
的数字,因为内部采用了字符串转换为数字来排序的算法读取图像,可以使用经典的Tum数据集做示例.
- root_dir
- rgb
- 1.jpg
- 2.jpg
...
- depth
- 1.png
- 2.png
...
上述的数据当你配置好rgbdslam.yaml
文件后,即可运行
./MyExample/rgbd_slam -r /root_dir
如果你想查看参数,添加选项 --help
./MyExample/rgbd_slam --help
对于双目数据集,格式如下,图像名称也必须是数字,否则内部图像排序算法无效.
- root_dir
- left
- 1.jpg
- 2.jpg
...
- right
- 1.png
- 2.png
...
- disp(optional)
- 1.png
- 2.png
...
可以利用作者的百度网盘 Euroc
数据集,示例代码的 stereoslam.yaml
或者 stereoslam_disp.yaml
文件就是 Euroc
的配置文件,可以参照这个文件修改运行自己的数据集,即可运行
# 有视差图
./MyExample/stereoslam_disp -l root_dir/left -r root_dir/right -d root_dir/disp
# 无视差图
./MyExample/stereoslam_disp -l root_dir/left -r root_dir/right
命令行添加--help
选项,可以知晓参数怎么输入
./MyExample/stereoslam_disp --help
# 无视差图
./MyExample/stereoslam_disp --help
对于上述代码的展示想过,可以根据链接效果 查看.