作者:几度春风里

ORB-SLAM2项目实战(3) — ORB-SLAM2稠密地图重建

目录

1 整体思路

2 功能实现

3 结果运行

(1) TUM数据集下载

(2) associate.py用于RGB和Depth匹配

(3) 运行数据集

4 CMakeLists.txt文件修改

5 完整PointCloudMapping.h和PointCloudMapping.cc

6 报错分析

7 思考扩展

8 百度网盘下载链接


文章参考部分开源代码和报错文章

1 整体思路

  • 利用RGB图和Depth图创建稠密点云,在深度值有效的条件下生成点云。
  • 利用跟踪线程的关键帧,利用关键帧生成的点云变换到世界坐标系保存为全局点云地图。
  • 闭环线程中全局BA后用更新的位姿调整全局点云地图。
  • 可视化线程显示全局点云地图 。
  • 主线程中进行全局点云地图的关闭和保存。

2 功能实现

(1) 在PointCloudMapping.cc中创建构造函数,在构造函数中,定义存储稠密点云的mpGlobalCloud,设置滤波参数,创建可视化线程mptViewerThread

    PointCloudMapping::PointCloudMapping()
    {
        std::cout << "Point cloud mapping has structed. " << std::e
lock