Real-time Multi-Adaptive-Resolution-Surfel 6D LiDAR Odometry using Continuous-time Trajectory Optimization
Jan Quenzel 1,
Sven Behnke 1,
1University of Bonn, Autonomous Intelligent Systems Group
$ git clone https://github.com/AIS-Bonn/lidar_mars_registration.git --recursive
$ sudo apt-get install python3-catkin-pkg
$ catkin build lidar_mars_registration
$ rosrun lidar_mars_registration lidar_mars_registration_node
This runs with parameters specified in ./config/live.cfg If you want to run it with a specific parameter set (multiple defined in config subfolder), then use the following:
$ rosrun lidar_mars_registration lidar_mars_registration_node _config_file_rel:="./config/urban_loco_ca.cfg"
Make sure, that "use_ros" is set to true for the registration_adaptor.
To build with better visualization, you must have first installed EasyPBR.
Afterwards this example can be build with
$ make
After building one can run the executable created in the build folder with
$ ./build/temp.linux-x86_64-3.6/run_lidar_mars_registration
or
$ python3 python/registration.py
Make sure, that "use_ros" is set to false for the registration_adaptor.
@inproceedings{quenzel2021mars,
title={{Real-time Multi-Adaptive-Resolution-Surfel 6D LiDAR Odometry using Continuous-time Trajectory Optimization}},
author={Quenzel, Jan and Behnke, Sven},
booktitle={Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
year={2021}
}
The modified A-LOAM and floam used within our paper comparison can be found in the following forks: floam and A-LOAM
For SuMa we first converted the bag files into KITTI binary format and used the original implementation by Behley and Stachniss: SuMa
We make our code available under the BSD 3-clause License.