1、g2o是一个基于图优化的库,图优化是一种将非线性理论与图论结合起来的理论,在图优化中将顶点表示优化变量,边表示误差项,从而将非线性最小二乘问题转化成构建一直对应的一个图。g2o库的安装包可以从github上下载(https://github.com/RainerKuemmerle/g2o/),也可以在我的博客中下载,它也是一个CMake工程。安装g2o前需要安装它的依赖库(部分与Ceres由重合):
sudo apt-get install libqt4-dev qt4-qmake libqglviewer-dev libsuitesparse-dev libcxsparse3.1.2
sudo apt-get install libcholmod-dev
其中第二项需libcholmod-dev要table键来填充名称,具体做法如下:
(1)在终端切换成root登录:输入su,回车后输入密码。
(2)打开bash.bashrc:
cd /etc
vi bash.bashrc
#enable bash completion in interactive shells
# if ! shopt -oq posix; then
# if [ -f /usr/share/bash-completion/bash_completion ]; then
# . /usr/share/bash-completion/bash_completion
# elif [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
# fi
# fi
找到上面的内容,将注释去掉,如下:
#enable bash completion in interactive shells
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
然后按esc退出编辑模式,输入:wq 保存退出。
(3)然后在输入
sudo apt-get install libcholmod-dev
在按Table键,之后会出现几个版本(libcholmod1.7.1 libcholmod2.1.2 libcholmod3.0.6),选择一个(例如libcholmod2.1.2),在输入
sudo apt-get install libcholmod2.1.2-dev
即可安装依赖项libcholmod-dev
2、找到下载的g2o解压后切换到g2o目录,执行以下命令:
mkdir build
cd build
cmake ..
make -j4
这个编译过程会花费一些时间。
3、编译完成后安装:
sudo make install
4、安装完成后在目录/usr/local/includ 下能找到g2o目录,在/usr/local/lib 下能找到libg2o_**.so的文件。