- 该repo主要参考论文PointLIO实现,与官方代码存在较大差异;
- 目前主要支持mid360,支持较高的lidar采集频率(10-100hz);
- 目前仅支LIDAR+IMU(IMU作为观测,更新状态量)的方式;
- ubuntu 20.04
- ros neotic
- Eigen
- pcl
- LIVOX-SDK2
- livox_ros_driver2
sudo apt install libpcl-dev libeigen3-dev
git clone https://github.com/Livox-SDK/Livox-SDK2.git
cd ./Livox-SDK2/
mkdir build && cd build
cmake .. && make -j
sudo make install
mkdir -r ws_livox/src
git clone https://github.com/Livox-SDK/livox_ros_driver2.git ws_livox/src/livox_ros_driver2
cd ws_livox/src/livox_ros_driver2
source /opt/ros/noetic/setup.sh
./build.sh ROS1
git clone https://github.com/liangheming/MPointLIO.git
source ${livox_ros_driver2的安装目录}/devel/setup.bash
cd MPointLIO && catkin_make
- 启动里程计节点并播包
roslaunch point_lio point_mid360.launch
rosbag play your.bag
- 基于mid360实时进行里程计
roslaunch livox_ros_driver2 msg_MID360.launch publish_freq:=100
roslaunch point_lio point_mid360.launch
- PointLIO本质上来一个点就进行一次预测和更新,理论上频率和点(一个点而不是点云)采集频率一致;
- 对于一般的sdk如Livox-SDK2,往往累积一帧点云后才发布,所以实际运行时最高频率为min(imu_hz,lidar_hz);
- 该repo以点云的频率为主,然后在一帧点云之间插入imu数据的方式进行数据同步,所以最高频率是lidar的频率(mid360的sdk目前最高100hz)
链接: https://pan.baidu.com/s/1MgnHttpSgqGySmz8GUhmFg?pwd=1mgw 提取码: 1mgw
--来自百度网盘超级会员v7的分享