ubuntu20.04 运行 lio-sam 流程记录

news2024/11/26 11:55:08

ubuntu20.04 运行 lio-sam

  • 一、安装和编译
    • 1.1、安装 ROS1
    • 1.2、安装 gtsam
    • 1.3、安装依赖
    • 1.4、下载源码
    • 1.5、修改文件
    • 1.6、编译和运行
  • 二、官方数据集的运行
    • 2.1、casual_walk_2.bag
    • 2.2、outdoor.bag、west.bag
    • 2.3、park.bag
  • 三、一些比较好的参考链接

记录流程,方便自己快速复现

一、安装和编译

1.1、安装 ROS1

这里使用的鱼香 ros 一键安装

wget http://fishros.com/install -O fishros && . fishros

1.2、安装 gtsam

sudo add-apt-repository ppa:borglab/gtsam-release-4.0
sudo apt install libgtsam-dev libgtsam-unstable-dev

1.3、安装依赖

sudo apt-get install ros-noetic-fake-localization
sudo apt-get install ros-noetic-robot-localization

1.4、下载源码

创建工作空间 catkin_ws/src

cd ~/catkin_ws/src
git clone https://github.com/TixiaoShan/LIO-SAM.git

1.5、修改文件

第一处:

~/catkin_ws/src/LIO-SAM/include/ 文件夹下的 utility.h 文件,替换其中的 #include <opencv/cv.h> 这一行,改为:#include <opencv2/imgproc.hpp>

第二处:

~/catkin_ws/src/LIO-SAM/ 文件夹下的 CMakeList.txt 文件,替换其中的 set(CMAKE_CXX_FLAGS "-std=c++11") 这一行,改为:set(CMAKE_CXX_FLAGS "-std=c++14"),并且添加

find_package(Boost REQUIRED COMPONENTS timer thread serialization chrono)

1.6、编译和运行

catkin_make
source devel/setup.bash
roslaunch lio_sam run.launch

二、官方数据集的运行

数据集下载链接:
链接: https://pan.baidu.com/s/1IZClZE_YfsrsES3xklBzhQ 提取码: vsks

如果想要保存地图,需要对config/params.yaml文件的这两行做修改

# Export settings
  savePCD: true                              # https://github.com/TixiaoShan/LIO-SAM/issues/3
  savePCDDirectory: "/Downloads/LOAM/"        # in your home folder, starts and ends with

会保存五个pcd

在这里插入图片描述

2.1、casual_walk_2.bag

这个包可以直接运行,不用做任何修改

在这里插入图片描述

2.2、outdoor.bag、west.bag

params.yaml 改成如下,便可运行

extrinsicRot 和 extrinsicRPY 设为单位矩阵

  # Extrinsics (lidar -> IMU)
  extrinsicTrans: [0.0, 0.0, 0.0]
  # extrinsicRot: [-1, 0, 0,
  #                 0, 1, 0,
  #                 0, 0, -1]
  #extrinsicRPY: [0,  1, 0,
  #                -1, 0, 0,
  #                 0, 0, 1]
  extrinsicRot: [1, 0, 0,
                  0, 1, 0,
                  0, 0, 1]
  extrinsicRPY: [1, 0, 0,
                  0, 1, 0,
                  0, 0, 1]

imuTopic: “imu_raw” 改为 imuTopic: “imu_correct”

 imuTopic: "imu_correct"                         # IMU data

outdoor.bag :

在这里插入图片描述
west.bag:

在这里插入图片描述

2.3、park.bag

这个数据集有 gps 数据,更改文件 params.yaml 文件即可使用gps数据;

更改文件第一处:

gpsTopic: "odometry/gpsz"  改为 gpsTopic: "odometry/gps"  

更改文件第二处:

useImuHeadingInitialization: false 改为 useImuHeadingInitialization: true 

运行结果:

在这里插入图片描述

三、一些比较好的参考链接

方便自己查阅

参考链接1-安装liosam的其他问题

参考链接2-适配自己的传感器

参考链接3-论文学习和数据运行

参考链接4-数据格式要求和标定

参考链接5-lio-sam 适配 Mid360(livox雷达)

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

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

相关文章

新质生产力崛起,运营商前端运营如何跃升

“新质生产力”一个当前的热搜高频词&#xff0c;今年还被首次写进政府工作报告&#xff0c;是2024年十大工作任务的首位。那么什么是“新质生产力”&#xff1f;它对于我们的生活、学习、工作及未来发展有什么影响呢&#xff1f;今天小宝就抛砖引玉来讲一讲“新质生产力”对于…

数字化服务升级:数字乡村改善农民生活质量

随着信息技术的迅猛发展&#xff0c;数字化浪潮已经深入社会的各个角落&#xff0c;为人们的生活带来了翻天覆地的变化。在乡村地区&#xff0c;数字化服务的升级正在逐步改变农民的生活方式&#xff0c;提高他们的生活质量。本文将围绕数字化服务升级&#xff0c;探讨数字乡村…

【精心整理】2024最新Web安全攻防教程资料PPT大合集

以下是学习资料目录&#xff0c;如需要下载&#xff0c;请您前往星球查阅和获取&#xff1a;https://t.zsxq.com/18YLzWtDI 1、Sqlmap Tamper脚本编写介绍-01.pptx 2、Tamper脚本分析&#xff08;支持所有类型数据库的Tamper脚本&#xff09;-01.pptx 3 、Sqlmap Tamper脚本分析…

一款强大的逆向分析工具-Ghidra

工具介绍 Ghidra 是由美国国家安全局&#xff08;NSA&#xff09;研究部门开发的软件逆向工程&#xff08;SRE&#xff09;套件&#xff0c;用于支持网络安全任务。包括一套功能齐全的高端软件分析工具&#xff0c;使用户能够在各种平台(Windows、Mac OS和Linux)分析编译后的代…

Flutter应用发布流程详解:从开发到上架一站式指南

引言 Flutter是一款由Google推出的跨平台移动应用开发框架&#xff0c;其强大的性能和流畅的用户体验使其备受开发者青睐。然而&#xff0c;开发一款应用只是第一步&#xff0c;将其成功上架到苹果商店才是实现商业目标的关键一步。本文将详细介绍如何使用Flutter将应用程序上…

Qt使用opencv打开摄像头

1.效果图 2.代码 #include "widget.h"#include <QApplication>#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp>#include <QImage> #include <QLabel> #incl…

为什么蓝牙信道探测将引领高精度定位服务?

从蓝牙耳机到智能家居设备&#xff0c;蓝牙技术因其成熟的音频流和数据传输功能已成为我们生活中的一部分。一项新技术——蓝牙信道探测&#xff08;Bluetooth Channel Sounding&#xff09;正向高精度定位服务市场迈进。 本文信驰达&#xff08;RF-star&#xff09;将介绍蓝牙…

java学习之路-数组定义与使用

目录 ​编辑 1.什么是数组 2.数组的创建及其初始化 2.1数组的创建 2.2数组的初始化 3.数组的使用 3.1数组元素访问 3.2遍历数组 4.数组是引用类型 4.1jvm的内存分布 4.2基本类型变量与引用类型变量的区别 4.3引用变量详解 4.4 null 5.数组的使用场景 5.1存储数据 5…

基于SpringBoot+微信小程序的图书借阅管理系统(包运行调试)

介绍 系统介绍 是一套图书借阅管理系统&#xff0c;包括用户小程序以及后台管理系统。 前台商城系统包含用户注册登录、首页门户、图书查询、在线借阅、个人中心、我的信息、我的借阅、押金充值。 后台管理系统包含统计分析、用户管理、分类管理、图书管理、借阅管理、管理员…

硬件了解 笔记

motherboard的高低端区别在哪里&#xff1f; 核心&#xff1a;从单核变成双核&#xff0c;多核&#xff08;几核就是几个打工人&#xff09; 多线程&#xff1a;6核本来对应6个线程&#xff0c;但是多线程就是说6核对应12个线程 频率 主频&#xff1a;平时打工的速度 睿频&…

图书馆信息管理系统(项目测试)

图书馆管理系统系统分析与设计 图书馆信息管理系统&#xff08;项目需求和计划、项目设计&#xff09; 图书馆信息管理系统&#xff08;项目实现&#xff09; 图书馆信息管理系统&#xff08;项目测试&#xff09; 图书馆信息管理系统&#xff08;总&#xff09; 目录 一、项目…

【SQL Server】1. 认识+使用

1. 创建数据库的默认存储路径 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2008 R2 当我们选择删除数据库时&#xff0c;对应路径下的文件也就删除了 2. 导入导出数据工具的路径 3. 注册数据库遇到的问题 ??? 目前的问题就是服务器新建…

赛氪网在长沙宣布启动“徽文化外宣翻译大赛”

2024年3月30日下午&#xff0c;在美丽的星城长沙&#xff0c;赛氪网作为承办方&#xff0c;在中国翻译协会年会期间成功举办了备受瞩目的“AI科技时代竞赛与就业分论坛”。此次论坛汇聚了众多翻译界、科技界和教育界的专家学者&#xff0c;共同就科技、实践、就业与竞赛人才培养…

LabVIEW齿轮箱噪声监测系统

LabVIEW齿轮箱噪声监测系统 齿轮箱作为机械设备的“心脏”&#xff0c;其健康状态对设备的性能有着重要的影响。传统的齿轮箱监测方法依赖于直接的振动信号分析&#xff0c;但这种方法不仅成本高昂&#xff0c;而且在安装和拆卸过程中可能对设备造成损害。针对这些问题&#x…

在 Langchain 中使用 RAPTOR 实现高级 RAG

RAPTOR&#xff1a;树结构的索引和检索系统的递归抽象处理-CSDN博客 原文地址&#xff1a;implementing-advanced-rag-in-langchain-using-raptor 2024 年 3 月 24 日 RAPTOR 简介 递归抽象处理树组织检索(RAPTOR)是种全新而强大的索引和检索技术&#xff0c;它全面适用于L…

基于springboot的实习生管理系统

文章目录 项目介绍主要功能截图&#xff1a;部分代码展示设计总结项目获取方式 &#x1f345; 作者主页&#xff1a;超级无敌暴龙战士塔塔开 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &…

SV学习笔记(二)

接口 什么是接口&#xff1f; 接口 主要用作验证 &#xff0c;国外有些团队会使用sv进行设计&#xff0c;那么接口就会用作设计。验证环境中&#xff0c;接口可以 使连接变得简洁而不易出错 。interface和module的使用性质很像&#xff0c; 可以定义端口&#xff0c;也可以定…

【单片机家电产品--晶闸管】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 单片机家电产品–晶闸管 前言 记录学习单片机家电产品内容 已转载记录为主 一、知识点 晶体管和晶闸管之间的区别 晶体管和晶闸管之间的区别 什么是可控硅&#xff08;…

观察和配置MAC地址表

目录 原理概述 实验目的 实验内容 实验拓扑 ​编辑1&#xff0e;基本配置 2.观察正常状态时的MAC地址表 4.配置静态MAC地址表项 原理概述 MAC 地址表是交换机的一个核心组成部分&#xff0c;交换机主要是根据 MAC 地址表来进行帧的转发的。交换机对帧的转发操作行为一共有…

Linux 命令 top 详解

1 top命令介绍 Linux系统中&#xff0c;Top命令主要用于实时运行系统的监控&#xff0c;包括Linux内核管理的进程或者线程的资源占用情况。这个命令对所有正在运行的进程和系统负荷提供不断更新的概览信息&#xff0c;包括系统负载、CPU利用分布情况、内存使用、每个进程的内容…