这个程序其实并没有过多关注位姿,着重点在Map部分。主要是基于高博的一起来做RGBD-SLAM以及Mask R-CNN进行创造。
- 需要安装:
pcl
,opencv2
,g2o
。 - 原有数据集顺序命名,如果要用TUM数据集,参考
script
生成associtaion.txt
文件。 - 在TUM数据集上,跟踪容易丢失,采用自己用kinect仿照TUM录制数据集。录制参考我的博客
- 处理好数据得到
rgb
,depth
两个彩色图和深度图像文件夹,和高博提供的数据集用顺序命名,该图像采用时间戳命名。稠密建图的图像输入方式也改了,如slamTumDesn.cpp
- 利用Mask R-CNN处理
rgb
中的每一帧图像,输出根据类染色的图片rgb_mask
,参考Repository中的myTest
,在script/MaskRCNN
也有处理代码,就是调用Mask R-CNN进行相应输出,进行语义分割结果的染色。配置Mask R-CNN环境参考原文 - 最终执行的时候修改参数文件
parameters.txt
相应的参数,比如路径等等参数。
- 稠密建图的基础上融合语义信息进行稠密语义地图构建:稠密
slamDense.cpp
,语义slam.cpp
- 支持TUM数据集建图:稠密
slamTumDense.cpp
,语义slamTum.cpp
,执行这两个文件需要输入参数
slamTum.cpp 读取处理tum数据集
./bin/slamTum PATH/TO/ASSOCIATE
本来向通过C++程序里直接调用Mask R-CNN,也参考了Dyna SLAM
等实现一个程序里实现调用的,还是没有成功,如果大佬不吝指教,不慎感激。