高翔SLAM十四讲ch12实践部分避坑(有需要可以参考)

博主在高翔SLAM十四讲第12讲实践部分遇到库安装和代码编译问题,主要涉及PCL库的安装与C++11兼容性、Eigen容器类型修改以及MLS函数适配。通过参考其他教程和调整代码,成功解决问题并分享了解决方案。
摘要由CSDN通过智能技术生成

高翔SLAM十四讲ch12实践部分避坑(有需要可以参考)

在12讲的实践部分是遇到最多问题的,一个是库的安装,一个是代码的问题,下面就讲讲我的方法(有需要可以参考一下,希望能帮到大家)

库的安装方面

在slam十四讲书中说在ubuntu18.04只要用一句命令就可以安装点云库PCL

sudo apt-get install libpcl-dev pcl-tools

我试了很多次都不行,不过官网好像也是说这样安装的

安装方面就不仔细说了,参考下面的文章吧(我是按照这些来装的,综合两个教程吧,感谢这两个教程)

Qt5和VTK

安装依赖方面

代码方面

因为时间比较长了,我们的库可能和高博之前的不一样,所以编译代码的时候会遇到很多错误

  1. CmakeList文件

    我在编译时好像遇到了C++11用不了,所以在文件里面修改了C++版本

    set(CMAKE_CXX_STANDARD 14)
    

    把原来的改了试试

  2. 代码

    原来pointcloud_mapping和octomap_mapping的代码中是这样写的

    vector<Eigen::Isometry3d> poses;
    

    编译错误,所以改成如下(参考这个博客

    vector<Eigen::Isometry3d,Eigen::aligned_allocator<Eigen::Isometry3d>> poses; 
    

    还有在surfel_mapping代码中

    mls.setPolynomialFit(polynomial_order > 1);
    

    这个函数好像用不了,我根据CLion的提示改成下面的形式就可以了

    mls.setPolynomialOrder(polynomial_order > 1);
    

成功,上图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值