ORB-SLAM3/ORB-SLAM3-UESTC/Docs/ORB-SLAM3环境配置.md

70 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2023-12-15 16:08:00 +08:00
# ORB-SLAM3环境配置
> [ORB-SLAM3配置安装及运行---Ubuntu20.042021年_1900_的博客-CSDN博客](https://blog.csdn.net/holly_Z_P_F/article/details/118031317)
>
> [GitHub - electech6/ORB_SLAM3_detailed_comments: Detailed comments for ORB-SLAM3](https://github.com/electech6/ORB_SLAM3_detailed_comments/blob/master/euroc_examples.sh)
## 一、Linux环境下常见问题解决方案
### 1.1 error: slots_reference was not declared in this scope
**解决方法:**
[https://blog.csdn.net/BigHandsome2020/article/details/123458612](https://blog.csdn.net/BigHandsome2020/article/details/123458612)
**不是pangolin的问题**
**sed -i 's/++11/++14/g' CMakeLists.txt**
**问题2: realsense2**
![Untitled](ORB-SLAM3-Image/Untitled.png)
**解决方法:**
[https://blog.csdn.net/weixin_43901418/article/details/121475001](https://blog.csdn.net/weixin_43901418/article/details/121475001)
```shell
sudo apt-key adv --keyserver [keyserver.ubuntu.com](http://keyserver.ubuntu.com/) --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
sudo add-apt-repository "deb [https://librealsense.intel.com/Debian/apt-repo](https://librealsense.intel.com/Debian/apt-repo) $(lsb_release -cs) main" -u
sudo apt-get install librealsense2-dkms
sudo apt-get install librealsense2-utils
sudo apt-get install librealsense2-dev
```
**问题3在运行build.sh 时最后一步make -j4 构建panglin失败**
```shell
cd Pangolin
mkdir build
cd build
cmake ..
cmake --build .
```
[https://github.com/raulmur/ORB_SLAM2/issues/22](https://github.com/raulmur/ORB_SLAM2/issues/22)
需要重新安装panglin版本如果比较新则需要切换到C++14
### 1.4 没有可视化界面只有轨迹结果
Monocular程序运行Euroc数据集或者其他官方数据集的时候运行结果**只有轨迹结果,但没有可视化界面**。
```shell
./Examples/Monocular/mono_euroc ./Vocabulary/ORBvoc.txt ./Examples/Monocular/EuRoC.yaml
```
这是因为原始灰度图像的输出是需要通过代码设置开启的mono_euroc.cc修改
```c++
// 这里的第三个参数为bool类型用于控制是否显示摄像头的灰度图像
ORB_SLAM3::System SLAM(argv[1], argv[2], ORB_SLAM3::System::MONOCULAR, false);
// 如果需要显示摄像头的内容设置为true即可
ORB_SLAM3::System SLAM(argv[1], argv[2], ORB_SLAM3::System::MONOCULAR, true);
```
### 1.5 c++: fatal error: Killed signal terminated program cc1plus
内存爆了,用 make -j 不要给太多任务