Ubuntu 20.04编译GPMP2过程记录

6 篇文章 0 订阅
5 篇文章 0 订阅
本文详细介绍了如何在Ubuntu20.04环境下下载和编译GTSAM及GPMP2的Python接口,包括安装GTSAM的Pythonwrapper、GPMP2的下载与构建步骤,以及测试运行实例。
摘要由CSDN通过智能技术生成

前言

GPMP2是董靖博士等人在16-17年提出的结合GTSAM因子图框架与Gaussian Processes完成motion planning的一项工作。前身源于Barfoot教授的课题组提出的STEAM(Simultaneous Trajectory Estimation and Mapping)问题及其相关工作。在提出董靖博士提出GPMP2后,borglab则不断在这个基础上延伸,包括: GPSLAM(再次回归SLAM领域), VIMP(同样是Motion Planning问题,但在GPMP2上引入变分推断Varational Inference), 以及与Learning from Demonstration相结合一些工作。

本文大致与GPMP2官方仓库中的ReadMe一致,但是为了更好地学习GPMP2, 本文集中于为使用GPMP2提供的Python接口方面的编译问题进行总结。


编译过程

  1. 下载GTSAM, Ubuntu20.04直接使用最新版本(4.3a0)

    git clone https://github.com/borglab/gtsam
    

    这里我直接将gtsam安装与home目录下

  2. 安装GTSAM, 为了把GPMP2应用起来,需要先编译GTSAM的Python Wrapper。这样可以免去额外再安装wrap的步骤,参考链接为: Link
    安装相关依赖:

    cd ~/gtsam
    pip3 install -r ~/gtsam/python/requirements.txt
    

    安装Python-wrapper:

    cmake .. -DGTSAM_BUILD_PYTHON=1 -DGTSAM_PYTHON_VERSION=3.8.10 -DGTSAM_WITH_TBB=OFF
    

    这里我没有TBB,所以加上了这一选项.
    编译与安装:

    make
    make python-install
    

    执行完上面的步骤,可以进入python3中通过import gtsam查看是否安装成功。

  3. 下载GPMP2并进行安装:
    下载GPMP2:

    git clone https://github.com/borglab/gpmp2
    

    第二步中只是为Python3安装GTSAM模块,为了安装GPMP2需要返回GTSAM目录内进行安装,下面是GPMP2中ReadMe部分内容:

    cd gtsam
    mkdir build && cd build
    cmake -DGTSAM_ALLOW_DEPRECATED_SINCE_V42:=OFF .. #disable deprecated functionality for compatibility
    make -j4 check # optional, run unit tests  
    sudo make install
    

    添加库搜索路径到bashrc中:

    echo 'export LD_LIBRARY_PATH=/usr/local/lib:${LD_LIBRARY_PATH}' >> ~/.bashrc
    echo 'export LD_LIBRARY_PATH=/usr/local/share:${LD_LIBRARY_PATH}' >> ~/.bashrc
    source ~/.bashrc
    

    启动CMake中的Python相关选项,安装GPMP2:

    cd gpmp2 && mkdir build && cd build
    cmake -DGPMP2_BUILD_PYTHON_TOOLBOX:=ON ..
    make -j8 # build
    make python-install # install the python package
    

测试GPMP2运行效果:

  1. 进入gpmp2/python/examples文件夹内运行:python3 Arm2FactorGraphExample.py

  2. 效果如下:
    目标位置
    planning过程

卸载GTSAM的命令为:

cd gtsam/build
xargs rm -rf < install_manifest.txt
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
回答: 要在Ubuntu 20.04编译内核,可以按照以下步骤进行操作。 首先,在终端中打开/etc/apt/sources.list文件: ``` sudo gedit /etc/apt/sources.list ``` 在文件末尾添加以下两行内容以更新软件源: ``` deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main universe ``` 保存并关闭文件。 接下来,安装make-kpkg工具: ``` sudo apt install kernel-package ``` 然后,使用make-kpkg编译并生成deb安装文件。以下是一个示例命令: ``` sudo make-kpkg --initrd --append-to-version -20220228 --revision 001 kernel_image kernel_headers -j4 ``` 这个命令将生成内核映像和头文件的deb安装文件。可以根据需要修改命令中的版本号等参数。 最后,更新软件包列表并安装编译所需的依赖项: ``` sudo apt-get update sudo apt-get install gcc g sudo apt-get install libncurses5-dev sudo apt-get install build-essential sudo apt-get install kernel-package sudo apt-get install libssl-dev sudo apt-get install libc6-dev sudo apt-get install bin86 sudo apt-get install flex sudo apt-get install bison sudo apt-get install qttools5-dev sudo apt-get install libelf-dev ``` 完成上述步骤后,您可以根据需要对Ubuntu 20.04进行编译。请注意,这只是一个示例过程,您可能需要根据您的具体需求进行适当的修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [手把手一步步实现 Ubuntu20.04编译Android10系统源码](https://blog.csdn.net/h5630/article/details/127715207)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Linux内核开发——编译Ubuntu 20.04内核代码](https://blog.csdn.net/feihe027/article/details/125424910)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值