orbslam2 RGBD实验记录(五) ubuntu16.04下 高博ORBSLAM2_with_pointcloud_map-master通过RGBD跑TUM数据集

高翔博士对ORBSLAM2修改增加了点云模块, https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map 在编译过程中,遇到很多问题,特来记录一下。以便之后的同学可以快速上手。注意环境是ubuntu16.04。

1.下载github源码,找到orbslam2_modified.zip,解压得到g2o_with_orbslam2和ORB_SLAM2_modified两个文件夹
2. 进入g2o_with_orbslam2,对cmakelists.txt下的代码进行注释
同时对g2o文件夹下的cmakelists.txt下的代码进行注释
3. 回到g2o_with_orbslam2主文件夹,进行编译
mkdir build
cd build
cmake ..
make

编译过程中,可能会遇到如下两个问题:
(1)修改g2o/types/slam2d/edge_se2_pointxy_bearing.cpp
t.setRotation(t.rotation().angle()+_measurement);
改为
t.setRotation((Eigen::Rotation2Dd)(t.rotation().angle()+_measurement));

(2)修改 g2o/solvers/eigen/linear_solver_eigen.h
typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, SparseMatrix::Index> PermutationMatrix;
改为
typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, SparseMatrix::StorageIndex> PermutationMatrix;

忘了截图了,错误提示:static assertion failed: YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY

4. g2o_with_orbslam2编译应该就成功了,还有问题就google吧。

5.进入ORB_SLAM2_modified文件夹开始编译,会提示Optimizer.cc文件的错误,是unique_ptr的问题,改了很多,可以直接用我改好的 https://download.csdn.net/download/oliongs/10308689,也可以按照 https://www.cnblogs.com/xueyuanaichiyu/p/7921382.html 进行修改

6.编译过程,如遇到
删除Thirdparty下的DBOW2下的build文件夹,重新进行编译。

7. 在ORB_SLAM2_modified文件夹下 按照 https://blog.csdn.net/oliongs/article/details/79696341
运行 ./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM2.yaml data/rgbd_dataset_freiburg2_pioneer_360 Examples/RGB-D/associations.txt

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 60
    评论
评论 60
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值