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

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雷达)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

管理项目有哪些好用的系统?

不论在公司是什么角色&#xff0c;不过不管是负责哪一块&#xff0c;项目型公司的管理难点都会经历过&#xff0c;特别是中小型的做建筑装饰类的业务。 一般都会存在合同进度统计难、项目成本管控难、上下游结算难等问题&#xff0c;除了资金方面的原因&#xff0c;也有数据核…

c++对象指针

对象指针在使用之前必须先进行初始化。可以让它指向一个已定义的对象&#xff0c;也可以用new运算符动态建立堆对象。 定义对象指针的格式为&#xff1a; 类名 *对象指针 &对象; //或者 类名 *对象指针 new 类名(参数); 用对象指针访问对象数据成员的格式为&#xff1a…

ubuntu16.04不能在主机和虚拟机之间拷贝文本

问题 ubuntu16.04不能在主机和虚拟机之间拷贝文本。 原因 vmware tools没安装好。 解决办法 让虚拟机加载C:\Program Files (x86)\VMware\VMware Workstation\linux.iso光盘文件&#xff0c;设置如下&#xff1a; 拷贝虚拟机光盘中的VMwareTools-10.3.22-15902021.tar.gz文…

点旋转 与 坐标系旋转

之前想明白过&#xff0c;隔了一段时间没看&#xff0c;现在又忘记了。重新复习一下。 这篇博客写的很明白 推公式的话从坐标旋转开始推&#xff0c;容易理解&#xff0c;又容易推导。 1、坐标系中点的旋转的旋转矩阵 xrcos(αβ) r(cosαcosβ-sinαsinβ) xcosβ-ysinβ…

虹科Pico汽车示波器 | 免拆诊断案例 | 2019款别克GL8豪华商务车前照灯水平调节故障

一、故障现象 一辆2019款别克GL8豪华商务车&#xff0c;搭载LTG发动机&#xff0c;累计行驶里程约为10.7万km。车主反映&#xff0c;车辆行驶过程中组合仪表提示前照灯水平调节故障。 二、故障诊断 接车后试车&#xff0c;起动发动机&#xff0c;组合仪表上提示“前照灯水平…

线上剧本杀小程序开发,剧本杀行业的发展趋势

剧本杀一时火爆全网&#xff0c;剧本杀门店也是迅速占领了大街小巷&#xff0c;成为年轻人热衷的游戏娱乐方式。 不过&#xff0c;线下剧本杀因为价格高、剧本质量不过关等问题&#xff0c;迎来了“寒冬期”&#xff0c;线下剧本杀门店的发展逐渐“降温”。 随着互联网的发展…

跨平台内容策略:Kompas.ai让你的内容在各大平台上发光发热

在数字化营销的今天&#xff0c;品牌需要在多个社交媒体平台上建立强大的在线存在。每个平台都有其独特的用户群体和内容消费习惯&#xff0c;这就要求品牌制定精准的跨平台内容策略&#xff0c;以确保在不同的社交环境中都能发光发热。本文将深入探讨不同社交媒体平台的特点及…

一次性邮箱API发送邮件的步骤?如何使用?

一次性邮箱API发送邮件的注意事项&#xff1f;怎么确保安全发信&#xff1f; 使用一次性邮箱API发送邮件&#xff0c;不仅能保证邮件发送的高效性&#xff0c;还能确保用户邮箱信息的安全性。下面&#xff0c;AokSend将详细介绍使用一次性邮箱API发送邮件的具体步骤。 一次性…

ngAlain下使用nz-select与文件上传框出现灵异bug

bug描述 初始化页面&#xff0c;文件上传框无法出现&#xff1a; 但点击一次选择框以后&#xff0c;就会出现&#xff1a; 真的很神奇。。。 下面逐步排查看看是什么原因。 设想一&#xff1a; 选择框与文件框不可同时存在&#xff0c;删掉选择框看看&#xff1a; 还…

【OpenCV】 基础入门(一)初识 Mat 类 | 通过 Mat 类显示图像

&#x1f680; 个人简介&#xff1a;CSDN「博客新星」TOP 10 &#xff0c; C/C 领域新星创作者&#x1f49f; 作 者&#xff1a;锡兰_CC ❣️&#x1f4dd; 专 栏&#xff1a;【OpenCV • c】计算机视觉&#x1f308; 若有帮助&#xff0c;还请关注➕点赞➕收藏&#xff…

Windows11 使用WSL安装虚拟机

Windows11 使用WSL安装Unbuntu 安装Unbuntu 使用管理员命令打开powershell&#xff0c;执行如下命令&#xff0c;默认安装Unbuntu最新版本 wsl --install使用如下命令&#xff0c;获取在线的所有版本 wsl --list --online指定版本安装 wsl --install <Name>默认安装…

操作系统:动静态库

目录 1.动静态库 1.1.如何制作一个库 1.2.静态库的使用和管理 1.3.安装和使用库 1.4.动态库 1.4.1.动态库的实现 1.4.2.动态库与静态库的区别 1.4.3.共享动态库给系统的方法 2.动态链接 2.1.操作系统层面的动态链接 1.动静态库 静态库&#xff08;.a&#xff09;&…

Rust---复合数据类型之元组

目录 元组的使用输出结果 元组的使用 fn main() {// 创建一个元组let my_tuple : (i32, &str, f64) (10, "hello", 3.14);// 打印元组中的元素println!("{:?}", my_tuple);// 访问元组中的元素let first_element my_tuple.0; // 访问第一个元素let…

openldap(一):简介和安装

目录 1 OpenLDAP简介1.1 LDAP介绍1、什么LDAP2、为什么要使用LDAP3、LDAP 的特点4、LDAP常用关键字5、LDAP的objectClass6、LADP使用场景 1.2 OpenLDAP介绍1、什么OpenLDAP2、OpenLDAP特点3、OpenLDAP的组件 2 OpenLDAP安装3 简单使用3.1 创建用户1、创建ou2、创建Group 3、创建…

来成都的国际数字影像产业园,开启文创产业园之旅

走进位于成都金牛区福堤路的国际数字影像产业园&#xff0c;仿佛置身于一个充满创意与活力的场域。这里是成都数字产业的聚集地&#xff0c;汇聚了上百家数字媒体相关企业&#xff0c;为成都文创产业注入了新的活力。在这里&#xff0c;你可以感受到浓厚的创新氛围&#xff0c;…

10.图像高斯滤波的原理与FPGA实现思路

1.概念 高斯分布 图像滤波之高斯滤波介绍 图像处理算法|高斯滤波   高斯滤波(Gaussian filter)包含很多种&#xff0c;包括低通、高通、带通等&#xff0c;在图像上说的高斯滤波通常是指的高斯模糊(Gaussian Blur)&#xff0c;是一种高斯低通滤波。通常这个算法也可以用来模…

[mmu/cache]-ARM cache的学习笔记-一篇就够了

快速链接: 【精选】ARMv8/ARMv9架构入门到精通-[目录] &#x1f448;&#x1f448;&#x1f448; 应用场景——什么时候需要刷cache 1、在不同硬件之间共享数据时 场景&#xff1a;CPU往src地址处写入了一串数据&#xff0c;然后交给Crypto硬件进行加解密处理&#xff0c;加解…

LabVIEW电力设备在线监测系统

LabVIEW电力设备在线监测系统 在电力行业中&#xff0c;变电站的稳定运行对于保障电力系统的安全性和可靠性至关重要。开发了一种基于LabVIEW软件开发的变电站电力设备在线监测系统&#xff0c;实时监控变电站内部的电力设备状态&#xff0c;确保电力传输的高效与安全。通过对…

vue广告悬浮框,页面来回移动,鼠标放上停止,离开移动

1.dom <div class"popup-dialog" id"popupDialog" mouseover"onMmouseover" mouseout"onMouseout"><p>vue广告悬浮</p></div>2.js mounted() {this.initPopup();},beforeDestory() {if (this.times) {clearIn…

IDEA无法连接虚拟机中的Redis的解决方案,无法连接Jedis,无法ping通虚拟机的解决方案

首先&#xff0c;笔者先说明一下自身的情况&#xff0c;怎么连接都连不上&#xff0c;网上的教程全部都看了一遍&#xff0c;基本上没用得上的&#xff0c;这篇文章里面的解决方案包括了笔者能在网上找到了最全面的办法总结&#xff0c;最后终于是连上了 目录 一.连接Jedis出错…