编译高翔的ORBSLAMwithPointcloudMapping

参考链接:

解压方法及数据及关联:https://blog.csdn.net/qq_28467367/article/details/92998030

编译方法及数据测试:https://blog.csdn.net/qq_25349629/article/details/88350374

使用kinect相机:https://blog.csdn.net/qq_25349629/article/details/88528765

1、下载源码

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

2、解压 orbslam2_modified.zip

解压会得到两个文件夹,分别为 g2o_with_orbslam2 和 ORB_SLAM2_modified,与原ORB_SLAM2_modified合并到同一个文件夹(这步一定要有,要不然后边编译不了,最后就剩一个文件夹ORB_SLAM2_modified,g2o_with_orbslam2在ORB_SLAM2_modified下)

3、编译g2o_with_orbslam2cd g2o_with_orbslam2

mkdir build
cmake ..
make -j8
sudo make install


–遇到编译错误时,作如下修改:

(1)打开/g2o_with_orbslam2/g2o/types/slam2d/edge_se2_pointxy_bearing.cpp

(这个即使安装libeigen3-dev_3.2.0-8_all.deb也要改)

//t.setRotation(t.rotation().angle()+_measurement);
改为:
t.setRotation((Eigen::Rotation2Dd)(t.rotation().angle()+_measurement));  


(2)打开/g2o_with_orbslam2/g2o/solvers/eigen/linear_solver_eigen.h

(这个安装libeigen3-dev_3.2.0-8_all.deb以后就不用改)

//typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, SparseMatrix::Index> PermutationMatrix;
改2为:
//typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, SparseMatrix::StorageIndex> PermutationMatrix;
typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, int> PermutationMatrix;

(3)解决办法:其实是版本问题,在这个网站上https://launchpad.net/ubuntu/trusty/amd64/libeigen3-dev/3.2.0-8,下载.deb文件,
然后安装:sudo dpkg -i libeigen3-dev_3.2.0-8_all.deb
或者:

4. 编译DBoW2

cd ORB_SLAM2_modified/Thirdparty/DBoW2
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make 
编译成功后,会在/lib目录下生成 libDBoW2.so,将该库文件拷贝到系统目录下:

sudo cp ../lib/libDBoW2.so /usr/local/lib

5、进入/ORB_SLAM2_modified文件夹

chmod +x build.sh
./build.sh

(1)–opencv版本错误进入CMakeLists.txt修改。
(2)–如果遇见DBoW2和g2o错误,例如报optimizer.cc未引用或者指针错误,作如下修改:
进入Thirdparty文件下,删除DBoW2和g2o里面的build文件
回到/ORB_SLAM2_modified文件夹,重新编译:./build.sh

(3)这里其实已经用不到原来的g2o了,直接删除就可以了

./Examples/RGB-D/rgbd_tum /Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml Examples/RGB-D/rgbd_dataset_freiburg1_desk2 Examples/RGB-D/rgbd_dataset_freiburg1_desk2/associations.txt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值