littlebot
Published on 2025-04-08 / 0 Visits
0

【源码】基于ROS和Livox SDK的激光雷达数据处理系统

项目简介

本项目是基于ROS(Robot Operating System)和Livox SDK的激光雷达数据处理系统,主要用于实时处理来自Livox激光雷达的点云数据和IMU数据。系统借助ROS节点订阅和发布数据,实现点云数据的预处理、特征提取、地图构建和可视化等功能。

项目的主要特性和功能

  1. 点云数据处理:订阅激光雷达的点云与IMU数据,进行滤波和下采样等预处理,并提取特征点用于地图构建和状态估计。
  2. 地图构建:实时构建与更新地图,运用增量式k - d树(ikd - Tree)高效管理和检索点云。
  3. 状态估计:使用迭代的卡尔曼滤波器(Iterated Kalman Filter)估计机器人位姿、速度等状态,同步激光雷达和IMU数据保证时间一致性。
  4. 数据发布:发布机器人位姿、速度、地图等信息,支持ROS PointCloud2、自定义的Livox格式、pcl的Pxyzi格式等多种数据格式。
  5. 可视化:可视化机器人运动轨迹和构建的地图,提供数据对比功能展示处理前后数据变化。

安装使用步骤

1. 环境准备

  • 安装ROS,版本要求ROS >= Melodic。
  • 安装PCL(点云库)和Eigen库,要求PCL >= 1.8,Eigen >= 3.3.4。

2. 项目构建

bash cd ~/$A_ROS_DIR$/src cd ExtractCloud_v1.0 mkdir include catkin_make source devel/setup.bash

3. 运行项目

bash cd ~/work_space/src source devel/setup.bash roslaunch extract_pc crz.launch rosrun fast_lio putoutCommand

4. 提取点云

当需要提取点云时,发布以下命令: bash rostopic pub /command std_msgs/Bool true

5. 查看演示视频

演示视频

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】