SLAM算法与工程实践——SLAM基本库的安装与使用(3):Pangolin库

SLAM算法与工程实践系列文章

下面是SLAM算法与工程实践系列文章的总链接,本人发表这个系列的文章链接均收录于此

SLAM算法与工程实践系列文章链接


下面是专栏地址:

SLAM算法与工程实践系列专栏


文章目录


前言

这个系列的文章是分享SLAM相关技术算法的学习和工程实践


SLAM算法与工程实践------SLAM基本库的安装与使用(3):Pangolin库

Pangolin

安装

(建议源码安装)

强烈推荐

Pangolin 0.6(稳定版) 提取码:45bo

We use Pangolin for visualization and user interface。

下载和安装说明可在以下位置找到:https://github.com/stevenlovegrove/Pangolin

按官网最新的说明

bash 复制代码
# Clone Pangolin along with it's submodules
git clone --recursive https://github.com/stevenlovegrove/Pangolin.git

cd Pangolin

# See what package manager and packages are recommended
# 根据脚本一键安装推荐的包
./scripts/install_prerequisites.sh --dry-run recommended

# Override the package manager choice and install all packages
./scripts/install_prerequisites.sh -m brew all

然后是配置和编译

bash 复制代码
# Configure and build
# 注意下面的两个命令都要执行,且是顺序执行
cmake -B build
cmake --build build

# with Ninja for faster builds (sudo apt install ninja-build)
cmake -B build -GNinja
cmake --build build

# GIVEME THE PYTHON STUFF!!!! (Check the output to verify selected python version)
cmake --build build -t pypangolin_pip_install

# Run me some tests! (Requires Catch2 which must be manually installed on Ubuntu.)
ctest

脚本一键安装依赖

install_prerequistites.sh文件的最后一行是安装库的命令

编译

Pangolin编译完成后,看一下有没有安装,如果没有安装就进入build文件夹进行安装

bash 复制代码
cd build
sudo make install

安装完成后更新一下共享库的缓存

bash 复制代码
sudo ldconfig

验证

bash 复制代码
cd ../examples/HelloPangolin
mkdir build && cd build
cmake ..
make -j
./HelloPangolin

若安装成功,则会弹出以下窗口:

以下为老安装方法

1)安装依赖项

bash 复制代码
sudo apt-get install libglew-dev
sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev
sudo apt-get install libpython2.7-dev

2)安装 Pangolin

bash 复制代码
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOSR=1 ..
make -j
sudo make install

这里的老版本教程可供参考,两种编译方法结果一样

错误

找不到 OpenGL

在编译Pangolin时,报错找不到 OPENGL

bash 复制代码
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
  Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY OPENGL_glx_LIBRARY
  OPENGL_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.16/Modules/FindOpenGL.cmake:397 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  components/pango_opengl/CMakeLists.txt:45 (find_package)
  CMakeLists.txt:114 (include)

原因是没有OpenGL,安装ros后就可以正常编译了

libpango_windowing.so

编译完成后,在测试Pangolin的例子时报错,找不到libpango_windowing.so

bash 复制代码
./HelloPangolin: error while loading shared libraries: libpango_windowing.so: cannot open shared object file: No such file or directory

解决办法:

参考:error while loading shared libraries: libpango_windowing.so: cannot open shared object file: No such

输入命令

bash 复制代码
sudo ldconfig

然后就可以正常运行

相关推荐
倒头就睡的小比特2 天前
算法竞赛C++常用的STL
c++·算法
AI的探索之旅2 天前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
小羊没烦恼!2 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
未济2 天前
linux 配置环境变量
linux
傲世仙尊2 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
美狐美颜SDK开放平台2 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
风合星语2 天前
2026 具身智能技术实战(一):VLA 到底怎么控制机器人?——用 LeRobot 跑通 SmolVLA 推理
pytorch·机器人·具身智能·vla·lerobot·smolvla
鲁邦通物联网2 天前
图书馆机器人跨楼层运行,机器人梯控低噪设计与架构分析
机器人·巡检机器人·机器人梯控·agv梯控·非侵入式采集·机器人乘梯·机器人自主乘梯
猎头南楼2 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
_艾伦 耶格尔.2 天前
进程间通信
linux