1 安装部署
在之前测试了FastLio并在样机上进行了部署华北舵狗王:四足机器人雷达-视觉导航4:测试FAST-LIO-LC,这边测试另外一个雷达惯性里程计项目DLO文。其提出了一种轻量前端激光雷达里程计解决方案,用于在计算能力受限的机器人平台上,具有快速和精确的定位能力,我们的直接激光雷达里程计(DLO)方法包括几个关键的算法上的创新,这些创新优先考虑计算效率,并使用稠密的、预处理最少的点云实时提供准确的姿势估计,基于该方法同时在无人机和四足机器人上进行了验证,并参加了DAPAR地下挑战赛:

代码

依据项目介绍首先安装依赖,如果可以运行FastLio基本不需要安装其他依赖:

- Ubuntu 18.04 or 20.04
- ROS Melodic or Noetic (`roscpp`, `std_msgs`, `sensor_msgs`, `geometry_msgs`, `pcl_ros`)
- C++ 14
- CMake >= `3.16.3`
- OpenMP >= `4.5`
- Point Cloud Library >= `1.10.0`
- Eigen >= `3.3.7`

在编译cmakelist中其增加了新的功能,对于老版本cmake需要去除:

sudo apt install libomp-dev libpcl-dev libeigen3-dev

之后正常编译无误,则运行如下:

roslaunch direct_lidar_odometry dlo.launch

这里采用的数据包为:

链接:https://pan.baidu.com/s/1ZG9DM1u1VZd-0FrGyy0r7A
提取码:pi70
—来自百度网盘超级会员V3的分享

同时修改启动launch中雷达与IMU的数据,这里在配置文件中尚未找到IMU和雷达变换安装关系的地方,但是由于数据包IMU与雷达是基本对齐,因此可以直接运行测试:

测试结果如下:


DLO最终发布了里程计和位姿数据,另外还有关键帧和Map点云,但是并没有像Fastlio一样发布对雷达降采样的点云数据:


最终,可以看到DLO建图效果还是很不错,发布的里程计定位数据默认为10H:


地图发布为1Hz,可以在yaml中修改,但是由于DLO发布的地图实际是全局固定的地图,因此修改频率并不会让地图刷新显示更快,但可以修改leafSize 精度:

mapNode:
    publishFullMap: true
    publishFreq: 1.0
    leafSize: 0.25

最终与Fastlio进行对比:


2 样机测试

 <!-- RViz -->FAST-LIO-LC部署与测试教程_OLDX飞控的博客-CSDN博客  <!-- RViz -->
  <node pkg="rviz" type="rviz" name="dlo_rviz" args="-d $(find direct_lidar_odometry)/launch/dlo.rviz"/>
  <node pkg ="tf" type="static_transform_publisher" name="link1" args="0 0 0 0 0 0 robot/odom map 100" />