fast-lio有ros2版本吗?
FAST-LIO 有 ROS2 版本,名为 FAST_LIO_ROS2,是由香港科技大学维护的开源项目,专为 ROS2 设计,支持激光雷达(LiDAR)与惯性测量单元(IMU)的紧耦合联合定位与建图。以下是详细说明:
技术特点
-
算法核心
- 采用迭代扩展卡尔曼滤波器(IEKF),紧密融合激光雷达特征点与 IMU 数据,实现高精度定位。
- 通过并行 KD-Tree 搜索算法优化特征点匹配,降低计算复杂度,支持高频激光雷达数据实时处理。
-
环境适应性
- 适用于动态、嘈杂或杂乱环境(如快速运动、遮挡场景),定位稳健性强。
- 支持多种激光雷达类型,包括旋转式(如 Velodyne、Ouster)和固态激光雷达(如 Livox Avia、Horizon、MID-70)。
-
硬件兼容性
- 支持 ARM 架构平台(如 Khadas VIM3、Nvidia TX2、Raspberry Pi 4B),便于嵌入式部署。
技术实现
-
ROS2 适配
- 基于 ROS2 的
rclcpp
(C++)或rclpy
(Python)开发,使用 ROS2 的分布式通信机制(如 DDS)替代 ROS1 的roscpp
/rospy
。 - 消息类型和接口已迁移至 ROS2 标准(如
.msg
文件替换为.hpp
,tf
替换为tf2_ros
)。
- 基于 ROS2 的
-
依赖库
- PCL(Point Cloud Library):用于点云处理(版本 ≥1.8)。
- Eigen:线性代数运算(版本 ≥3.3.4)。
- Livox ROS2 驱动:支持 Livox 激光雷达数据接入(如
livox_ros_driver2
)。
应用场景
- 机器人导航
- 在仓储物流、制造业等场景中,为自主移动机器人提供高精度定位与建图能力。
- 无人驾驶
- 结合激光雷达与 IMU 数据,实现车辆高精度定位,提升行驶安全性。
- 无人机应用
- 支持无人机实时定位、地图构建及路径规划,适用于搜索救援、农业巡检等任务。
安装与配置
-
系统要求
- 操作系统:Ubuntu 20.04 或更高版本。
- ROS2 版本:推荐 ROS2 Humble 或 Foxy。
-
关键步骤
- 安装依赖库:
sudo apt-get install libpcl-dev libeigen3-dev ros-<DISTRO>-ros-core
- 克隆并编译 Livox ROS2 驱动:
git clone https://github.com/Livox-SDK/livox_ros_driver2.git cd livox_ros_driver2 && colcon build --symlink-install
- 克隆 FAST_LIO_ROS2 并编译:
git clone https://github.com/Ericsii/FAST_LIO_ROS2.git --recursive cd FAST_LIO_ROS2 && rosdep install --from-paths src --ignore-src -y colcon build --symlink-install
- 安装依赖库:
-
运行示例
- 启动 Livox 激光雷达驱动:
ros2 launch livox_ros_driver2 msg_MID360_launch.py
- 启动 FAST_LIO_ROS2 建图:
ros2 launch fast_lio mapping.launch.py config_file:=mid360.yaml
- 启动 Livox 激光雷达驱动: