复现fast-livo2中遇到的问题以及解决办法

一,如何复现fast-livo2

github链接:https://github.com/hku-mars/FAST-LIVO2?tab=readme-ov-file

gitee链接:Fast-livo2-native: 原生版fast-livo2

根据这下面的说明来即可,一般不会出现大的问题

二,问题

1,报错error: lvalue required as left operand of assignment    32 |   unit_complex_.real() = 1.;

/home/cp/Sophus/sophus/so2.cpp:32:26: error: lvalue required as left operand of assignment    32 |   unit_complex_.real() = 1.;

解决办法:

找到Sophus/sophus目录下的so2.cpp文件

将:

SO2::SO2()
  {
    unit_complex_.real() = 1.;
    unit_complex_.img() = 0.;
  }

改为:

SO2::SO2()
  {
    unit_complex_.real(1.);
    unit_complex_.img(0.);
  }

就解决了。

2,报错:ModuleNotFoundError: No module named 'netifaces'

如果的python很新,和我一样达到了3.9左右,建议你不要直接这样下载:

sudo apt-get install python3-netifaces

因为这个版本太低了,我写文章的这个时间,应该下载的是(0.10.4-1ubuntu4),不适配python3.9

解决办法:

你可以重新输入命令

pip install netifaces==0.11.0

也可去往netifaces · PyPI找到合适自己的版本。

3,报错

terminate called after throwing an instance of 'image_transport::TransportLoadException'
  what():  Unable to load plugin for transport 'compressed', error string:
According to the loaded plugin descriptions the class image_transport/compressed_sub with base class type image_transport::SubscriberPlugin does not exist. Declared types are  image_transport/raw_sub
[republish-4] process has died [pid 7640, exit code -6, cmd /opt/ros/noetic/lib/image_transport/republish compressed in:=/left_camera/image raw out:=/left_camera/image __name:=republish __log:=/home/cp/.ros/log/7b0e0cb0-f366-11ef-a5fb-0be71178afff/republish-4.log].
log file: /home/cp/.ros/log/7b0e0cb0-f366-11ef-a5fb-0be71178afff/republish-4*.log
[republish-4] restarting process
process[republish-4]: started with pid [7656]

从错误信息来看,image_transport 插件加载失败,特别是 compressed 传输类型的插件无法加载。错误指出加载插件描述时,image_transport/compressed_sub 插件类不存在,而系统只能找到 image_transport/raw_sub 插件类。

解决办法:

安装 image_transport_plugins

sudo apt-get install ros-noetic-image-transport-plugins

### 使用 Livox Mid-360 和 FAST-LIO2 进行点云数据采集和处理复现 #### 安装依赖项 为了确保环境配置正确,在Ubuntu 20.04上安装必要的ROS包和其他依赖项。这通常涉及设置ROS Noetic以及特定于Livox雷达的支持库。 ```bash sudo apt-get update sudo apt-get install ros-noetic-livox-sdk ros-noetic-fast-gicp ros-noetic-tf2-sensor-msgs ``` #### 配置 Livox 中间件驱动程序 启动前需确认已成功编译并安装`livox_ros_driver2`软件包,该软件包负责与硬件通信并将原始测量转换成标准消息格式[^3]。 #### 启动雷达节点 通过运行预定义的发射文件来激活LiDAR设备,并利用RVIZ可视化工具实时查看获取的数据流: ```bash ros2 launch livox_ros_driver2 rviz_MID360_launch.py ``` 此命令会自动加载默认参数并初始化传感器连接过程。 #### 执行FAST-LIO SLAM算法 一旦完成上述准备工作,则可以着手构建地图或执行定位任务。对于静态场景下的离线重放模式而言,应先准备好bag文件作为输入源;而对于在线操作来说,则直接调用相应的launch脚本即可开始工作流程[^1]。 针对已有记录的数据集情况,可采用如下方式重现实验结果: ```bash roslaunch fast_livo mapping_avia.launch rosbag play YOUR_DOWNLOADED.bag --clock ``` 注意替换路径中的占位符为实际存在的文件名[^2]。 #### 数据验证与分析 最后一步是对生成的地图质量或其他中间产物做进一步评估。可以通过比较不同条件下得到的结果差异来进行性能对比研究,或是借助第三方评测平台获得更详尽的技术指标反馈。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值