【ORB-SLAM2配置】ubuntu16.04安装pangolin库 (详细流程,亲测有效!)

本文主要是介绍【ORB-SLAM2配置】ubuntu16.04安装pangolin库 (详细流程,亲测有效!),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 1.安装Pangolin所需依赖
  • 2.下载源码(旧版本)
  • 3.安装Pangolin(两种编译方法)
  • 4.Pangolin库测试
  • 遇到的问题
  • 解决方法


前言

Pangolin是一个用于OpenGL显示/交互以及视频输入的一个轻量级、快速开发库,下面是Pangolin的Github网址:

https://github.com/stevenlovegrove/Pangolin

下面介绍一下Pangolin的安装过程

1.安装Pangolin所需依赖

sudo apt install libgl1-mesa-dev
sudo apt install libglew-dev
sudo apt install cmake
sudo apt install libpython2.7-dev
sudo apt install python-pip
sudo python -mpip install numpy pyopengl Pillow pybind11
sudo apt install pkg-config
sudo apt install libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols
sudo apt install ffmpeg libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavdevice-dev
sudo apt install libdc1394-22-dev libraw1394-dev
sudo apt install libjpeg-dev libpng-dev libtiff5-dev libopenexr-dev

2.下载源码(旧版本)

默认git版本为0.6-0.8,需下载0.5版本(旧版本安装),以下的两个V0.5链接,均可以尝试:
V0.5版本:

git https://github.com/stevenlovegrove/Pangolin/releases/tag/v0.5
git https://github.com/zzx2GH/Pangolin.git

V0.6版本(原版,会报错):

git clone https://github.com/stevenlovegrove/Pangolin.git

3.安装Pangolin(两种编译方法)

cd Pangolin
mkdir build
cd build

第一种编译方法

#可以直接cmake ..   不知道-DCPP11_NO_BOOST=1 什么意思
cmake -DCPP11_NO_BOOST=1 ..  
// -j 加速Linux的编译过程
make -j 

第二种编译方法

//直接cmake
cmake ../../Pangolin  
//编译生成的makefile
make 
//安装
sudo make install  

4.Pangolin库测试

可以下面代码对pangolin库测试:

cd ~/Pangolin/build/examples/HelloPangolin
./HelloPangolin

在对应的终端输入相应的代码后出现下图结果即表示Pangolin库测试成功。
在这里插入图片描述

遇到的问题

在输入了 make -j 指令之后,编译出现了错误,主要集中在openni.h和XnCppWrapper.h等文件。编译报错代码如下:

/usr/include/ni/XnCppWrapper.h:10019:76: error: macro "XN_VALIDATE_NEW" passed 4 arguments, but takes just 2XN_VALIDATE_NEW(pTrans, StateChangedCallbackTranslator, handler, pCookie)
/home/xxx/SLAM/src/Pangolin/Pangolin-0.5/src/video/drivers/openni.cpp:161:5: error: expected primary-expression before } token
/home/xxx/SLAM/src/Pangolin/Pangolin-0.5/src/video/drivers/openni.cpp: In member function ‘virtual void pangolin::OpenNiVideo::Start():


具体报错的截图如下图所示:
在这里插入图片描述

在这里插入图片描述

解决方法

1.进入下图所示的文件目录,找到CMakeLists.txt文件。
在这里插入图片描述
2.打开CMakeLists.txt文件,找到如下图所示的OpenNI和OpenNI2的部分,并将其全部注释。
在这里插入图片描述
3.按照上述流程,重新编译,如果遇到无法分配内存,尝试增加内存或者多编译几次,编译成功结果如下。

无法分配内存的错误

在这里插入图片描述

这篇关于【ORB-SLAM2配置】ubuntu16.04安装pangolin库 (详细流程,亲测有效!)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/249642

相关文章

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

最新版IDEA配置 Tomcat的详细过程

《最新版IDEA配置Tomcat的详细过程》本文介绍如何在IDEA中配置Tomcat服务器,并创建Web项目,首先检查Tomcat是否安装完成,然后在IDEA中创建Web项目并添加Web结构,接着,... 目录配置tomcat第一步,先给项目添加Web结构查看端口号配置tomcat    先检查自己的to

使用Nginx来共享文件的详细教程

《使用Nginx来共享文件的详细教程》有时我们想共享电脑上的某些文件,一个比较方便的做法是,开一个HTTP服务,指向文件所在的目录,这次我们用nginx来实现这个需求,本文将通过代码示例一步步教你使用... 在本教程中,我们将向您展示如何使用开源 Web 服务器 Nginx 设置文件共享服务器步骤 0 —

SpringBoot集成SOL链的详细过程

《SpringBoot集成SOL链的详细过程》Solanaj是一个用于与Solana区块链交互的Java库,它为Java开发者提供了一套功能丰富的API,使得在Java环境中可以轻松构建与Solana... 目录一、什么是solanaj?二、Pom依赖三、主要类3.1 RpcClient3.2 Public

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

Servlet中配置和使用过滤器的步骤记录

《Servlet中配置和使用过滤器的步骤记录》:本文主要介绍在Servlet中配置和使用过滤器的方法,包括创建过滤器类、配置过滤器以及在Web应用中使用过滤器等步骤,文中通过代码介绍的非常详细,需... 目录创建过滤器类配置过滤器使用过滤器总结在Servlet中配置和使用过滤器主要包括创建过滤器类、配置过滤

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

如何安装 Ubuntu 24.04 LTS 桌面版或服务器? Ubuntu安装指南

《如何安装Ubuntu24.04LTS桌面版或服务器?Ubuntu安装指南》对于我们程序员来说,有一个好用的操作系统、好的编程环境也是很重要,如何安装Ubuntu24.04LTS桌面... Ubuntu 24.04 LTS,代号 Noble NumBAT,于 2024 年 4 月 25 日正式发布,引入了众

如何安装HWE内核? Ubuntu安装hwe内核解决硬件太新的问题

《如何安装HWE内核?Ubuntu安装hwe内核解决硬件太新的问题》今天的主角就是hwe内核(hardwareenablementkernel),一般安装的Ubuntu都是初始内核,不能很好地支... 对于追求系统稳定性,又想充分利用最新硬件特性的 Ubuntu 用户来说,HWEXBQgUbdlna(Har