Ubuntu18.04下编译安装ORBSLAM2_with_pointcloud_map总结
下载
首先从GitHub上下载,然后解压:
有点没看懂这个单独的第一个文件夹要怎么用,就按其他博客上的来吧
先把上图中的压缩文件解压:
然后就在这里边操作就好。
第一步,编译g2o
1. 进入g2o_with_orbslam2,对cmakelists.txt下的代码进行注释
2. 同时对g2o文件夹下的cmakelists.txt下的代码进行注释
3. 回到g2o_with_orbslam2主文件夹,进行编译cd g2o_with_orbslam2
mkdir build
cd build
cmake ..
make -j
sudo make install
在make过程中出现的报错:
(1)
解决:修改 g2o_with_orbslam2/g2o/types/slam2d/edge_se2_pointxy_bearing.cpp
将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(注意:eigen3.2.8不用修改此处,以上版本需修改,如3.2.10) 我的eigen版本 3.2.10 。
将typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, SparseMatrix::Index> PermutationMatrix;
改为typedef Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic, SparseMatrix::StorageIndex> PermutationMatrix;
应该就是这两个问题了,然后开始
编译ORB_SLAM2_modified
1. 先编译Thirdparty下的DBoW2
编译之前先把之前编译的build删掉
然后修改一下CMakeLists下的opencv版本
然后就是进去DBoW2cd Thirdparty/DBoW2/ rm -rf build
mkdir build
cd build
cmake ..
make -j
这一步应该没什么问题的
2. 编译ORB_SLAM2_modified
- 先修改一下ORB_SLAM2_modified下的CMakeLists下的opencv版本,原来指定的opencv2.4.3,可以根据自己的版本调整,也可以直接把2.4.3删掉,但要注意这里 的opencv版本要和刚刚DBoW2的opencv版本一致。 我是修改成了2.4
由于我用的是2.4,没出现什么问题,直接就编译成功了。
-
但是在之前试了一下用3.X版本的opencv,会出现如下报错:
解决:新版本的OpenCV修改了接口名,将CV_LOAD_IMAGE_UNCHANGED 换为了 cv::IMREAD_UNCHANGED
这应该就没什么问题了!
终于到运行啦
- 由于文件里的Vocabulary这个文件夹是空的,所以要把ORB_SLAM2下的ORBoc.txt复制过来(注意是解压之后的喔)
- 利用association.py,操作就和ORB_SLAM2一样,在Examples/RGB-D/下生成数据集对应的association.txt文件。
cd Examples/RGB-D/
python associate.py /home/y/SLAM/DataSets/TUM/rgbd_dataset_freiburg1_xyz/rgb.txt /home/y/SLAM/DataSets/TUM/rgbd_dataset_freiburg1_xyz/depth.txt > associations_loop.txt
这里注意rgb.txt在前,depth.txt在后。
- 运行
./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM2.yaml /home/y/SLAM/DataSets/TUM/rgbd_dataset_freiburg2_desk /home/y/SLAM/OpenSource/ORB_SLAM2/Examples/RGB-D/associations.txt
在这报错:
解决:把ORB_SLAM2_modified下的CMakeLists中的 -march = native 删掉就ok啦
运行之后,如果看到viewer窗口就是红绿蓝,这个时候华东一下鼠标滚轮就可以看到了。
参考链接
https://blog.csdn.net/dxc7216783/article/details/103736825
https://blog.csdn.net/oliongs/article/details/79696376
https://blog.csdn.net/LOVE1055259415/article/details/79903571
https://blog.csdn.net/Night___Raid/article/details/104298423
完结撒花
本文地址:https://blog.csdn.net/weixin_44694952/article/details/108247118
上一篇: 给定一个序列求指定位数的排列组合数
推荐阅读
-
CentOS 6.5下编译安装MySQL 5.6.20
-
Centos下升级php5.2到php5.4全记录(编译安装)_php实例
-
【安装PHP】如何在openSUSE42.1下编译安装PHP7,opensuse42.1php7_PHP教程
-
linux下编译安装MariaDB 10.4.7,解决错误:cannot access ‘/auth_pam_tool_dir’: No such file or directory
-
Linux下安装MySQL 5.1.31过程总结
-
ubuntu18.04下Kafka安装与部署
-
ubuntu下编译安装xcache for php5.3 的具体操作步骤
-
在openSUSE42.1下编译安装PHP7 的方法,_PHP教程
-
Ubuntu 14.10下编译安装MySQL 5.6.23
-
MySQL5 绿色版windows下安装经验总结