fast-livo2复现-录制自己的数据集

项目地址fast-livo2
代码测试环境:Ubuntu20.04
测试设备:Livox Avia雷达、MV-CA020-10UC相机、6mm镜头、Avia内置IMU
采集设备为JETSON开发板,Ubuntu18.04

1.安装环境包

1.Ubuntu20.04
2.ROS,使用鱼香ROS一键安装
3.PCL,作者要求>1.8,可以直接使用ros自带的1.10版本
4.Eigen,sudo apt-get install libeigen3-dev
5.OpenCV,下载源代码编译安装,4.2版本
6.Sophus,按照作者教程安装即可

git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff
mkdir build && cd build && cmake ..
make
sudo make install

7.Vikit,使用作者提供的修改过的版本

# Different from the one used in fast-livo1
cd catkin_ws/src
git clone https://github.com/xuankuzcr/rpg_vikit.git 

安装这些库的时候可能会出现一些报错,需要对源码进行部分修改,这部分内容网上有详细教程,请大家自行搜索,不再赘述。

2.编译代码

cd ~/catkin_ws/src
git clone https://github.com/hku-mars/FAST-LIVO2
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash

3.运行官方提供的数据集

官方数据集下载地址

roslaunch fast_livo mapping_avia.launch
rosbag play YOUR_DOWNLOADED.bag

4.录制自己的数据集

1.实现硬件同步,参考作者给出的教程
相机分辨率设置为1280x1024,修改相机分辨率可以在海康的客户端中修改,并且需要在客户端中将相机设置为外部触发模式
在这里插入图片描述
2.标定传感器参数,参考这篇教程
相机驱动使用作者提供的mvs_ros_driver包,yaml文件中默认的image_scale为0.5,在标定的时候,先改为1,所有标定都完成后可以改回0.5(这个因子实测在建图效果上差别不大,但是设置0.5可以大幅减少bag的体积,并且这个参数在fast-livo2中的yaml文件也需要对应填写,不然程序无法运行)
在这里插入图片描述

3.使用自己的设备录制数据集
先查看雷达与相机的数据是否同步触发,可以录制一个几秒钟的bag,查看雷达与相机的消息数量,如果相等,或者相差一帧,代表数据是同步触发的,否则需要检查硬件触发设备。
使用命令开始录制

roslaunch mvs_ros_driver mvs_camera_trigger.launch //启动相机节点
roslaunch livox_ros_driver livox_lidar_msg.launch//启动雷达节点
rosbag record /livox/lidar /livox/imu left_camera/image//录制ROS数据

4.将传感器参数:相机内参、畸变参数;雷达与相机的变换矩阵填入fast-livo2的yaml文件
在这里插入图片描述
在这里插入图片描述
5.播放自己录制的bag即可

FastLiVO2 是一个基于 LiDAR 和 IMU 的实时 SLAM(同步定位与地图构建)系统,通常在 Linux 环境下运行。由于 WSL 提供了一个兼容的 Linux 环境,因此可以在 WSL 环境中尝试复现 FastLiVO2 的功能。以下是基于 WSL 的 FastLiVO2 复现步骤及问题排查方法。 ### 三级标题:FastLiVO2 WSL 复现步骤 1. **准备 WSL 环境** 确保已安装 WSL2 并设置为默认版本,可以通过以下命令设置默认版本: ```bash wsl --set-default-version 2 ``` 安装 Ubuntu 或其他支持的 Linux 发行版,并确保系统更新到最新版本[^2]。 2. **安装依赖库** FastLiVO2 依赖于多个库,包括 `CMake`、`Eigen`、`PCL`、`ROS`(Robot Operating System)等。使用以下命令安装基础依赖: ```bash sudo apt update sudo apt install cmake build-essential libeigen3-dev libpcl-dev ros-noetic-desktop-full ``` 如果使用 ROS Noetic,确保已正确配置 ROS 环境变量。 3. **获取 FastLiVO2 源码** 从 GitHub 克隆 FastLiVO2 仓库: ```bash git clone https://github.com/your-repo/FastLiVO2.git cd FastLiVO2 ``` 4. **编译 FastLiVO2** 使用 `catkin_make` 或 `colcon` 编译项目: ```bash catkin_make ``` 或者使用 `colcon`: ```bash colcon build --symlink-install source install/setup.bash ``` 5. **运行 FastLiVO2** 启动 ROS 核心服务并运行 FastLiVO2 节点: ```bash roscore ``` 在另一个终端中启动 FastLiVO2: ```bash roslaunch fastlivo fastlivo.launch ``` ### 三级标题:常见问题排查 1. **ROS 依赖问题** 如果出现 ROS 包缺失问题,可以使用 `rosdep` 安装缺失的依赖: ```bash rosdep install --from-paths src --ignore-src -r -y ``` 2. **PCL 版本不兼容** FastLiVO2 对 PCL 版本有特定要求,若版本不兼容,建议从源码编译 PCL 并手动链接。 3. **WSL 图形界面支持问题** WSL 默认不支持图形界面,若需可视化,建议使用 `X Server` 或 `WSLg`。启用 WSLg 需要 Windows 11 或更新的 WSL 版本。 4. **文件路径问题** WSL 中路径使用 Linux 格式,避免在路径中使用空格或特殊字符。 5. **内核版本过旧** 确保 WSL2 的 Linux 内核版本为最新,可通过以下命令更新: ```bash wsl --update ``` ### 三级标题:WSL 版本切换注意事项 如果需要在 WSL1 和 WSL2 之间切换,可以使用以下命令: ```bash wsl --set-version <distribution name> <versionNumber> ``` 切换版本后,可能需要重新启动 WSL 发行版以确保所有功能正常[^1]。 ### 三级标题:相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值