运行LIO-SAM踩坑问题

本文解决LIO-SAM功能包在ROS环境下的几个常见问题,包括升级过程中动态链接库缺失、编译时版本冲突以及保存地图设置等。通过修改配置文件与源代码,确保LIO-SAM正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述 一

Same issue when upgrading ROS Melodic code from 4.0.2 to 4.0.3 on Ubuntu 18.04. ROS code compiled correctly however at runtime gave error:

error while loading shared libraries: libmetis-gtsam.so: cannot open shared object file: No such file or directory

解决方案

Adding export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH to ~/.bashrc resolved the issue as mentioned above.

source ~/.bashrc

问题描述二

编译LIO-SAM功能包时遇到错误提示:

static assertion failed: Error: GTSAM was built against a different version of Eigen

原因

这是由于gtsam自带eigen版本与系统ros中自带eigen版本之间冲突问题,需要修改gtsam包的CMakeLists.txt文件,使其编译时使用系统eigen,然后重新编译安装gtsam。

解决方法

解决办法就是让GTSAM编译的时候使用系统的eigen。
首先看一下gtsam编译在执行了cmake …后的一段日志信息:
在这里插入图片描述
从这个日志信息可以看出,GTSAM默认编译并没有使用系统eigen。

在gtsam的CMakeLists.txt文件中找到:

if(GTSAM_USE_SYSTEM_EIGEN)
     find_package(Eigen3 REQUIRED)
     …

if(GTSAM_USE_SYSTEM_EIGEN) 上方添加一句:

set(GTSAM_USE_SYSTEM_EIGEN ON)

然后重新编译安装GTSAM即可。
在这里插入图片描述

问题描述 三

保存地图,需要对config/params.yaml文件进行如下修改:

# 保存地图设置为true
savePCD: true                              # https://github.com/TixiaoShan/LIO-SAM/issues/3
# 设置地图保存路径
savePCDDirectory: "自己设置的路径"        # in your home folder, starts and ends with "/". Warning: the code deletes "LOAM" folder then recreates it. See "mapOptimization" for implementation

更改了配置文件后,还需更改一下_TIMEOUT_SIGINT参数,否则可能造成地图保存失败(这是由于ros会在_TIMEOUT_SIGINT秒后关闭ros节点,但是地图过大时,保存地图会花费一些时间,如果_TIMEOUT_SIGINT太小,很可能造成地图还未保存,节点就已经关闭了,所以需要适当调高_TIMEOUT_SIGINT值),具体方法如下:

sudo gedit /opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/nodeprocess.py

找到_TIMEOUT_SIGINT并调整数值(默认15s,我的参考值60s)
参考:github:https://github.com/TixiaoShan/LIO-SAM/issues/3

LIO-SAM是一个激光雷达惯性里程计框架,可以用于定位和建图。根据引用\[1\]和引用\[2\]的内容,LIO-SAM可以使用六轴(三轴加速度、陀螺仪)或九轴(三轴加速度、陀螺仪、磁力计)的数据进行测试和评估。根据引用\[1\]中的评估结果,六轴的效果在轮廓一致性和偏移量方面比九轴更好。而引用\[2\]中提到,在使用Ouster-128激光雷达数据和不同的IMU数据进行测试时,LIO-SAM遇到了一些问题,但最终解决了这些问题。因此,LIO-SAM可以根据具体需求选择使用六轴或九轴的数据进行定位和建图。 #### 引用[.reference_title] - *1* *3* [三.全局定位--LIO-SAM在RTK全局约束下建图和定位(1)](https://blog.youkuaiyun.com/weixin_36773706/article/details/124846894)[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^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [LIO-SAM-自采数据运行](https://blog.youkuaiyun.com/wxc_1998/article/details/130591183)[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^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值