Ubuntu18.04LTS+ros-melodic+Pangolin +opencv3.4.2+Eigen3+boost_1.65.0
为了保证软件版本直接不具有冲突,本文完全按照github源代码中介绍的按照环境版本。
系统版本:Ubuntu18.04LTS
操作平台:ros-melodic
所有的环境包的源码均打包在了:云盘地址。
链接:https://pan.baidu.com/s/1FxtpSWrAxbvE6OFYkiRNJQ
提取码:e2sf
复制这段内容后打开百度网盘手机App,操作更方便哦
这些都可以直接用 sudo apt-get install 安装
1).安装依赖
*// 更新*
sudo apt-get update
*// 搜到所有的boost库*
sudo apt-cache search boost
*// 安装相应的库*
sudo apt-get install libboost-all-dev
2).下载并解压
下载链接:https://boostorg.jfrog.io/artifactory/main/release/1.65.1/source/
这里下载的是和1.65.0版本的,解压后
进入./boost_1_65_1路径
3).编译和安装
//编译
sudo ./bootstrap.sh
//安装
sudo ./b2 install
4).测试
用于可视化界面的显示
1). 安装依赖
sudo apt-get install libglew-dev libpython2.7-dev
2). 克隆项目
git clone https://github.com/stevenlovegrove/Pangolin.git
3). 编译和安装
cd Pangolin
mkdir build
cd build
cmake ..
make -j
sudo make install
如果遇到Could not find GLEW:
Build type not set (defaults to release)
-DCMAKE_BUILD_TYPE=Debug for debug
CMake Error at CMakeModules/FindGLEW.cmake:51 (MESSAGE):
Could not find GLEW
Call Stack (most recent call first):
src/CMakeLists.txt:174 (find_package)
解决办法:
sudo apt-get install libglew-dev
sudo apt-get install cmake
sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev
1). 安装依赖
这里依赖一定要安装,否则编译后程序会有问题。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ia2mr6od-1620698907590)(C:\Users\windows10\AppData\Roaming\Typora\typora-user-images\image-20210506142649992.png)]
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
下载源码: https://github.com/opencv/opencv/archive/refs/tags/3.4.2.zip
解压后,将文件夹放自己喜欢的地方,这里就放在/home下
将解压后的文件夹重新命为opencv3,这个随便,不是重点)
在opencv3文件夹下新建build文件夹
mkdir build
cd build
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
sudo make -j8 (如果出现报错,试试sudo make -j)
sudo make install
可以使用sudo make -j 8 、sudo make -j4 、sudo make
我这里就使用sudo make -j8了
用gedit打开/etc/ld.so.conf
在文件中加上一行 /usr/local/lib
其中/user/loacal是opencv安装路径也就是makefile中指定的安装路
sudo gedit /etc/ld.so.conf
sudo apt-get install libeigen3-dev
DBoW2是DBow库的改进版本,DBow库是一个开源的C++库,用于索引图像并将其转换为单词表示形式。
g2o是一个开源的C ++框架,用于优化基于图的非线性误差函数。
这两个库在ORB-SLAM2项目的第三方文件夹中,在此不单独编译,后续统一编译。
具体参考《国内源安装ROS》安装文档。
安装后,需要配置一下环境变量。
具体操作为:
gedit ~/.bashrc
然后在最后一行添加
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:PATH/edgeslam/Examples/ROS
注意实际安装时将PATH替换为实际的edgeslam的路径。
克隆项目
编译build.sh
编译build_ros.sh
git clone https://github.com/droneslab/edgeslam.git edgeslam
cd edgeslam
chmod +x build.sh
chmod +x build_ros.sh
./build.sh
./build_ros.sh