Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程

我在编译过程中主要参考了以下几篇博客:

Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map_Andyoyo007的博客-CSDN博客编译高博ORBSLAM2_with_pointcloud_map,用TUM数据集测试。_Seven的博客-CSDN博客

编译安装高翔的ORBSLAM2_with_pointcloud_map,获取点云地图_站在巨人的肩膀上coding-CSDN博客_高翔orbslam2

1、下载源代码

git clone https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map.git

2、将其中的压缩包解压,将压缩包中的ORB_SLAM2_modified用原来的根目录下的ORB_SLAM2_modified来代替。

3、编译安装g20_with_orbslam2并对一些常见的错误进行处理

1) 修改 g2o_with_orbslam2/CMakeLists.txt ,注释如下代码:

Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程_第1张图片

2)修改 2)g2o_with_orbslam2/g2o/CMakeLists.txt ,注释如下代码:

 Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程_第2张图片

 3)报错1

Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程_第3张图片

解决:修改 g2o_with_orbslam2/g2o/types/slam2d/edge_se2_pointxy_bearing.cpp

  1. t.setRotation(t.rotation().angle()+_measurement);

  2. 改为

  3. t.setRotation((Eigen::Rotation2Dd)(t.rotation().angle()+_measurement));

4)报错

Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程_第4张图片

解决:修改g2o_with_orbslam2/g2o/solvers/eigen/linear_solver_eigen.h(注意:eigen3.2.8不用修改此处,以上版本需修改,如3.3.7)     我的eigen版本  3.3.7 。 


typedef Eigen::PermutationMatrix PermutationMatrix;
改为
typedef Eigen::PermutationMatrix PermutationMatrix;

5)安装成功

Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程_第5张图片

4、编译ORB_SLAM2_modified

暂时还没有编译出来hh

你可能感兴趣的:(自动驾驶,c++)