参考:https://github.com/bharath5673/ORB-SLAM3
step 1. 安装依赖项
sudo apt update
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt install libglew-dev libboost-all-dev libssl-dev
step 2.安装Eigen3
sudo apt install libeigen3-dev #我安装了3.4.0
step 3.安装opencv
sudo apt install libopencv-dev #ubuntu22.04支持opencv 4.,如果安装其他版本,需要从opencv.org->github找到对应版本的源码,编译安装。
pkg-config --modversion opencv4 #我安装了4.5.4
#如果不确定系统中是否已经安装opencv,可以:
apt policy libopencv-dev #输出 已安装:4.5.4+dfsg-9ubuntu4
pkg-config --cflags opencv4 #输出安装路径
step 4. 安装ORB-SLAM3
git clone https://github.com/UZ-SLAMLab/ORB_SLAM3 --recursive
cd ORB_SLAM3/Thirdparty
git clone https://github.com/stevenlovegrove/Pangolin
step 4.1 安装Pangolin
cd Pangolin
#如pangolin官网所述,安装依赖
./scripts/install_prerequisites.sh recommended
mkdir build
cd build
cmake ..
make -j4
sudo make install
#测试是否安装成功
cd ../examples/HelloPangolin
mkdir build
cd build
cmake ..
make
./HelloPangolin #出现窗口显示一个RGB立方体。
step 4.2 编译ORB-SLAM3
修改CmakeLists.txt:
(1) std c++11标准修改为14
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
(2) opencv版本修改为兼容性更广
#find_package(OpenCV 4.4)
find_package(OpenCV 4)
修改build.sh中make -j 为make -j4,防止CPU线程卡死。
chmod +x build.sh #赋予build.sh脚本权限
./build.sh
step 5. 运行数据集
以TUM-RGBD 为例,需要用TUM提供的associate.py对齐RGB和Depth图像的时间戳,结果保存至associate.txt
./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml /path to/rgbd_dataset_freiburg1_desk /path to/rgbd_dataset_freiburg1_desk/associate.txt
step 6. ROS实时跑本地
TODO ...