Ubuntu18.04安装A-Loam保姆级教程

news2024/10/5 15:23:02

 系统环境:Ubuntu18.04.6 LTS

1.A-Loam的安装前要求:

1.1 ROS安装:参考我的另一篇博客

Ubuntu18.04安装ROS-melodic保姆级教程_灬杨三岁灬的博客-CSDN博客还是那句话,有时候加了这行也不好使,我是疯狂试了20+次,最后打了一局游戏,回来就过了,这就得看网络看命了,不行就在网上搜搜终极大招(动手能力差的不建议)。有时候加了这行也不好使,我是疯狂试了10+次,出现3.3之后就能用了,这就得看网络看命了,不行就在网上搜搜终极大招(动手能力差的不建议)。多试几十次,不行几百次,换手机网络也是,多试几次,这东西很玄学,不一定哪次就过了。多试几十次,不行几百次,换手机网络也是,多试几次,这东西很玄学,不一定哪次就过了。1.1.设置sources.list。https://blog.csdn.net/qq_23473839/article/details/131719477icon-default.png?t=N7T8https://blog.csdn.net/qq_23473839/article/details/131719477

1.2 PCL安装:

Ubuntu18.04安装PCL保姆级教程_灬杨三岁灬的博客-CSDN博客Ubuntu18.04安装PCL保姆级教程https://blog.csdn.net/qq_23473839/article/details/132128455?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22132128455%22%2C%22source%22%3A%22qq_23473839%22%7Dicon-default.png?t=N7T8https://blog.csdn.net/qq_23473839/article/details/132128455?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22132128455%22%2C%22source%22%3A%22qq_23473839%22%7D1.3 Ceres Solver安装:

建议用ceres-solver-1.14.0版本,尝试ceres-solver-2.2.0、ceres-solver-2.1.0编译A-Loam报错,尝试修改CMakeLists.txt依旧报错,果断降级不要再试了!

wget ceres-solver.org/ceres-solver-1.14.0.tar.gz #下载1.14.0


# 安装依赖
# CMake
sudo apt-get install cmake
# google-glog + gflags
sudo apt-get install libgoogle-glog-dev libgflags-dev
# Use ATLAS for BLAS & LAPACK
sudo apt-get install libatlas-base-dev
# Eigen3
sudo apt-get install libeigen3-dev
# SuiteSparse (optional)
sudo apt-get install libsuitesparse-dev


# 正式安装
tar xvf ceres-solver-1.14.0.tar.gz
cd ceres-solver-1.14.0
mkdir build
cd build
cmake .. # 如果提示cmake版本不够,看1.4装一下新版cmake就行
make -j4
make test
# Optionally install Ceres, it can also be exported using CMake which
# allows Ceres to be used without requiring installation, see the documentation
# for the EXPORT_BUILD_DIR option for more information.
sudo make install # 这里一定要加sudo否则报错


# 测试一下
bin/simple_bundle_adjuster ../data/problem-16-22106-pre.txt

若结果出现上图则证明ceres安装成功。

卸载ceres命令:

sudo rm -r /usr/local/lib/cmake/Ceres
sudo rm -rf /usr/local/include/ceres /usr/local/lib/libceres.a
sudo rm -r /usr/local/share/Ceres

 1.4 cmake升级:(上面没报错可不升级

Ubuntu18.04安装Cmake教程_灬杨三岁灬的博客-CSDN博客文章浏览阅读267次。注:文件路径是可以指定的,一般选择在/opt或/usr路径下,这里选择/opt。如果已经安装了ROS等其他库,卸载会出现很多问题!_ubuntu18.04安装cmakehttps://blog.csdn.net/qq_23473839/article/details/132132907

2.安装:

2.1.建立catkin工作空间(我取名为A-LOAM)

2.2.建立src文件夹

2.3.编译

cd ~/A-LOAM/src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
cd ../
catkin_make

3.编译出现的问题:

3.1.ceres版本问题:

/usr/local/include/ceres/internal/integer_sequence_algorithm.h:67:21: error:​

原因:ceres版本太高

解决办法:使用ceres1.14.0编译A-Loam即可

4.运行Loam:

Shell1:

source devel/setup.bash

roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch

Shell2:(跑Loam的数据集)

rosbag play ~/Dataset/A-LOAM/nsh_indoor_outdoor.bag

Shell3:保存地图

用bag_to_pcd方法保存点云图
rosrun pcl_ros bag_to_pcd xxx.bag /laser_cloud_surround pcd


用pointcloud_to_pcd方法保存点云图
mkdir pcd
cd pcd
rosrun pcl_ros pointcloud_to_pcd input:=/laser_cloud_surround

运行结束,可以看到生成了一个pcd文件夹,将里面的文件按照修改时间排序,最新的就是最后的点云地图pcd文件。

结果:

看到别的博客上,这个工具可以将点云地图转换成二维栅格地图(暂时还没试,感兴趣的同学可以试试):

git clone -b develop https://github.com/Hinson-A/pcd2pgm_package

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1248163.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用XMind2TestCase,测试更轻松

📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢交流讨论:欢迎加入我们一起学习!📢资源分享:耗时200小时精选的「软件测试」资…

(Java版)新一代最强开源UI自动化测试神器Playwright(模拟移动设备和浏览器行为)

使用 Playwright,你可以在任何浏览器上测试你的应用程序,也可以模拟真实设备,例如手机或平板电脑。只需配置你想要模拟的设备,Playwright 就会模拟浏览器行为,例如“userAgent”、“screenSize”、“viewport”以及是否…

PCB板材有哪些分类

1、按板材的刚柔程度分为刚性覆铜箔板和挠性覆铜箔板两大类。 2、按增强材料不同,分为:纸基、玻璃布基、复合基(CEM系列等)和特殊材料基(陶瓷、金属基等)四大类。 (一)纸基板 酚醛纸基板(俗称…

一些在使用Python中常用网页字符串处理方法

嗨喽~大家好呀,这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 首先一些Python字符串处理的简易常用的用法。 1.去掉重复空格 s "hello hello hello" s .join(s.split())2.去掉所有回车(或其他字…

浅析linux中的信号

人们往往将信号称为“软件中断”,它提供了异步事件的处理机制,这些事件可以来自系统外部(如用户按下ctrlc产生中断符),也可能来自程序或者内核内部的执行动作(如进程除零操作)。进程收到信号&am…

老生常谈 - 从输入URL到页面加载的过程(详细版)

从输入URL到页面加载的过程 之前一直都是直接看一下总结的八股文章,对于实际的整个链路并不是特别熟悉,这次花了一天多的时间看了很多资料,对于整个页面加载的流程有了自己的理解,从前端开始访问的浏览器多线程、缓存等问题&#…

在华为昇腾开发板安装gdal-python

作者:朱金灿 来源:clever101的专栏 为什么大多数人学不会人工智能编程?>>> 在华为昇腾开发板安装gdal-python分为两步:编译gdal库和下载gdal对应的python包。 1.编译gdal库 首先下载gdal库,。在linux(arm架构)上编译的gdal库及其第三方库源码,内含一个编译…

100%纯血鸿蒙来了,Android程序员影响甚大

“纯血鸿蒙”来了! 近日,美团、网易、今日头条、钉钉等多家互联网头部企业密集发布对鸿蒙系统相关人才的招聘信息,再度引爆市场对“纯血鸿蒙”的热议。 操作系统之“国货之光” 自2019年8月发布至今,鸿蒙系统已经更新到4.0版本…

为医药数据建起坚不可摧的堡垒——上海迅软DSE终端防泄密的力量!

某医药公司是一家综合性的医药产业公司,具有一定的规模和实力。其经营范围大范围,涉及到多个领域,包括药品、医药器械等的批发零售以及相关的互联网信息服务等。该公司在人员配置和知识产权方面也具备一定的优势,为其在医药产业的…

实验题【网关设置+VRRP+静态路由+OSPF】(H3C模拟器)

嘿,这里是目录! ⭐ H3C模拟器资源链接1. 实验示意图2. 要求和考核目标3. 当前配置3.1 PC1、PC2、PC3、PC4和PC5配置3.2 SW配置3.2.1 SW2配置3.2.2 SW3配置3.2.3 SW4配置3.2.4 SW1配置 3.2. R配置3.2.1 R1配置3.2.2 R2配置 ⭐ H3C模拟器资源链接 H3C网络…

SQL常见函数整理 _ LAG() 向上偏移

1. 用法 窗口函数,用于访问窗口中当前行之前的行的数据。该函数可以根据需要计算当前行之前的值,使我们能够轻松地比较不同行之间的差异和变化。 2. 基本语法 LAG(column, offset, default_value) OVER (ORDER BY column)column:代表在返回…

【Django笔记】10大模块md文档第6篇:Django视图、Cookie和session状态、模板和过滤器

Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展…

H5ke12--2--学生选课表格的编辑

方法1不可以修改的用label,如何按了哪一行 就会在下面有个文本显示可编辑的一行 方法2每一行后面都有一个编辑, 3对每一个修改,每一个td失去焦点都会有,直接到达我们服务器 注意 如果用span的每一个html元素都可以自己定义属性 Data-属性名,data-Address links也要给为span 1…

当班主任工资会高一些吗?

很多人在选择职业的时候,都会考虑到工资这一方面。而班主任这个职业,往往被认为是一种高收入的工作。那么,班主任的工资真的会比其他科任老师高吗? 班主任除了教学任务之外,还要负责管理班级的日常事务,包括…

Python入门03变量

目录 1 什么是变量2 变量声明3 变量命名规则4 变量类型5 类型转换总结 1 什么是变量 编程语言中变量就像容器一样,可以用来存放东西 我的变量就像杯子一样,可以用来盛放各种饮料。在Python中变量用来存放各种各样的数据,比如整数、浮点数、…

transformer训练与推理

以下transformer基于中译英任务 数据集原本的目标语言标签dec添加完padding后, 如果在dec前面加一个S构成了dec_input,而如果在dec后面加一个E构成了dec_output(输出的标签) attention 有两种,self attention(encoder里面的是源语言输入句子…

基于Springboot的冬奥会科普平台(有报告),Javaee项目,springboot项目。

演示视频: 基于Springboot的冬奥会科普平台(有报告),Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层…

jetson NX部署Yolov8

一,事情起因,由于需要对无人机机载识别算法进行更新,所以需要对yolov8算法进行部署到边缘端。 二,环境安装 安装虚拟环境管理工具,这个根据个人喜好。 我们需要选择能够在ARM架构上运行的conda,这里我们选择conda-forge 下载地址 安装即可 剩下的就是和conda 创建虚拟…

【Vue】vue指令

目录 V-html v-show和v-if v-show 显示 隐藏 v-if 显示 隐藏 总结 显示隐藏的应用场景 未登录的情况 登录的情况 v- else 和 v-else-if v-if 和v-else v-if 和 v-else-if 总结: v-on 语法一: 语法二: 调用传参 v-bind…

ruoyi-plus-vue部署

安装虚拟机 安装docker 安装docker 安装docker-compose 可能遇到的错误 Failed to deploy ruoyi/ruoyi-server:5.1.0 Dockerfile: ruoyi-admin/Dockerfile: Cant retrieve im age ID from build stream 安装 vim 命令 yum install vim -y 修改文件 vim /etc/resolv.conf …