!!! This repository constains half-baked code that may not be well-maintained and not suitable for practical purposes. !!!
!!! We don't have resource to maintain this extension library. If you find an issue, please fix it by yourself and open a PR to share the solution. !!!
glim_ext is a set of extension modules for GLIM, 3D LiDAR mapping framework. With this package, we aim to provide reference implementations that demonstrate how GLIM can be extended through the global callback slot mechanism.
Each module in glim_ext uses several external libraries that employ different licensing conditions. You must carefully check and follow their licenses.
Extension modules first try to find the corresponding config path from config.json
in the main GLIM package. It then fallback to config_ext.json
in the glim_ext
package if it failed to find a config path in config.json
.
Example (libflat_earther.so
):
- Tries to find
config_flat_earther
inglim/config/config.json
. The config path may be changed byconfig_path
ROS param (see here). - If not found, find
config_flat_earther
inglim_ext/config/config_ext.json
.
- This modules subscribes to all available callbacks to demonstrate how mapping states can be retrieved
- Validator for LiDAR-IMU transformation configurations.
- Regulating the velocity range.
- Loosely coupled visual odometry constraints based on ORB_SLAM3
- Dependency: ORB_SLAM3 (GPL-3.0)
- Forcing the height of proximiate submaps be the same.
- This is useful in situations only a single floor exists and the height of the sensor from the floor is mostly unchanged.
- GNSS-based constraints for global optimization
- Explicit loop detection based on ScanContext
- Dependency: ScanContext (CC BY-NC-SA 4.0)
!!! We do not and will not support ROS1. While some modules would still work on ROS1, no tests are conducted. !!!
cd ~/catkin_ws/src
git clone https://github.com/koide3/glim_ext
cd ..
catkin_make -DCMAKE_BUILD_TYPE=Release
cd ~/ros2_ws/src
git clone https://github.com/koide3/glim_ext
cd ..
colcon build