ubuntu上G2O库的安装
发布网友
发布时间:2022-11-10 08:48
我来回答
共1个回答
热心网友
时间:2023-11-24 06:48
一、什么是G2O库?有什么用?
g2o 是一个图优化库。常常在SLAM 中被使用。
图优化本质上仍然是非线性优化。只不过利用图的方式表现出来,使问题 可视化 ,然后可以根据可视化的结果来更好的调整优化过程。
图 是一种数据结构。在图优化中,用 顶点 (vertex) 表示 优化变量 ,用 边 (edge) 表示 误差项 。于是,对于任意一个上述形式的非线性最小二乘问题,都可以构建一个与之对应的图。
在视觉SLAM 十四讲中,常用的后端优化库有两个:g2o 和ceres。ceres 是google 的一个优化库,文档详尽且友好,就不再赘述了。但对于g2o,除了源码,官方用doxygen 生成的帮助文档,就只有论文 g2o: A general framework for graph optimization 和这篇github 的 文档 。
二、如何安装G2O库?有哪些依赖项?在安装和使用的过程中,会遇到哪些问题,以及如何解决?
1安装步骤
git clone https://github.com/RainerKuemmerle/g2o.git
cd g2o
mkdir build
cd build
cmake …/
make
sudo make install
2在编译时,我卡在opengl的库安装问题上。
glut库安装:
sudo apt-get install freeglut3-dev
总是提示
Err:1 http://cn.archive.ubuntu.com/ubuntu bionic/universe amd64 freeglut3 amd64 2.8.1-3
connetciton failed [IP:91.189.91.39 80]
Err:2 http://cn.archive.ubuntu.com/ubuntu bionic/universe amd64 freeglut3-dev amd64 2.8.1-3
connetciton failed [IP:91.189.91.39 80]
E:Failed to fetch http://cn.archive.ubuntu.com/ubuntu/pool/universe/f/freeglut/freeglut3_2.8.1-3_amd64.deb connection failed [IP:91.189.91.39 80]
E:Failed to fetch http://cn.archive.ubuntu.com/ubuntu/pool/universe/f/freeglut/freeglut3-dev_2.8.1-3_amd64.deb connection failed [IP:91.189.91.39 80]
E:Unable to fetch some archives, maybe run apt-get install libglut-dev
最终 解决方案 , 更换 sources.list 阿里源 清华镜像。
apt-get update
apt-get upgrade
3在使用g2o时,编译用到了g2o库的project,遇到报错error: ‘index_sequence’ is not a member of 'std'
解决方案 ,修改project的CMakeLists.txt添加:set(CMAKE_CXX_STANDARD 14)
参考链接:
Ubuntu18.04 更换 sources.list 阿里源 清华镜像 – 小固件 (atmcu.com)
(81条消息) 视觉SLAM十四讲 报错 error: ‘index_sequence’ is not a member of ‘std‘_CSSDCC的博客-CSDN博客
(81条消息) 视觉SLAM十四讲 报错 error: ‘index_sequence’ is not a member of ‘std‘_CSSDCC的博客-CSDN博客
热心网友
时间:2023-12-16 07:46
一、什么是G2O库?有什么用?
g2o 是一个图优化库。常常在SLAM 中被使用。
图优化本质上仍然是非线性优化。只不过利用图的方式表现出来,使问题 可视化 ,然后可以根据可视化的结果来更好的调整优化过程。
图 是一种数据结构。在图优化中,用 顶点 (vertex) 表示 优化变量 ,用 边 (edge) 表示 误差项 。于是,对于任意一个上述形式的非线性最小二乘问题,都可以构建一个与之对应的图。
在视觉SLAM 十四讲中,常用的后端优化库有两个:g2o 和ceres。ceres 是google 的一个优化库,文档详尽且友好,就不再赘述了。但对于g2o,除了源码,官方用doxygen 生成的帮助文档,就只有论文 g2o: A general framework for graph optimization 和这篇github 的 文档 。
二、如何安装G2O库?有哪些依赖项?在安装和使用的过程中,会遇到哪些问题,以及如何解决?
1安装步骤
git clone https://github.com/RainerKuemmerle/g2o.git
cd g2o
mkdir build
cd build
cmake …/
make
sudo make install
2在编译时,我卡在opengl的库安装问题上。
glut库安装:
sudo apt-get install freeglut3-dev
总是提示
Err:1 http://cn.archive.ubuntu.com/ubuntu bionic/universe amd64 freeglut3 amd64 2.8.1-3
connetciton failed [IP:91.189.91.39 80]
Err:2 http://cn.archive.ubuntu.com/ubuntu bionic/universe amd64 freeglut3-dev amd64 2.8.1-3
connetciton failed [IP:91.189.91.39 80]
E:Failed to fetch http://cn.archive.ubuntu.com/ubuntu/pool/universe/f/freeglut/freeglut3_2.8.1-3_amd64.deb connection failed [IP:91.189.91.39 80]
E:Failed to fetch http://cn.archive.ubuntu.com/ubuntu/pool/universe/f/freeglut/freeglut3-dev_2.8.1-3_amd64.deb connection failed [IP:91.189.91.39 80]
E:Unable to fetch some archives, maybe run apt-get install libglut-dev
最终 解决方案 , 更换 sources.list 阿里源 清华镜像。
apt-get update
apt-get upgrade
3在使用g2o时,编译用到了g2o库的project,遇到报错error: ‘index_sequence’ is not a member of 'std'
解决方案 ,修改project的CMakeLists.txt添加:set(CMAKE_CXX_STANDARD 14)
参考链接:
Ubuntu18.04 更换 sources.list 阿里源 清华镜像 – 小固件 (atmcu.com)
(81条消息) 视觉SLAM十四讲 报错 error: ‘index_sequence’ is not a member of ‘std‘_CSSDCC的博客-CSDN博客
(81条消息) 视觉SLAM十四讲 报错 error: ‘index_sequence’ is not a member of ‘std‘_CSSDCC的博客-CSDN博客