diff --git a/README.md b/README.md index 8ef8997..e8fcb6a 100644 --- a/README.md +++ b/README.md @@ -18,17 +18,17 @@   •   Issues   •   - Examples + Examples

-This repository contains algorithms designed for map-based robot localization, specifically when dealing with maps composed of triangle meshes or complete scene graphs. These maps may be provided by architects who have designed the building in which the robot operates, or they can be autonomously generated by the robot through Simultaneous Localization and Mapping (SLAM) methods. It's crucial to note that map-based localization differs from SLAM; it focuses on estimating the robot's pose within a potentially large map, whether the initial pose is roughly known (tracking) or entirely unknown from the start aka kidnapped robot problem. Map-based localization is essential for precisely planning the robot's missions in a given map. +This repository contains algorithms designed for map-based robot localization, specifically when dealing with maps composed of triangle meshes or complete scene graphs. These maps may be provided by architects who have designed the building in which the robot operates, or they can be autonomously generated by the robot through Simultaneous Localization and Mapping (SLAM) methods. It's crucial to note that map-based localization differs from SLAM; it focuses on estimating the robot's pose within a potentially large map, whether the initial pose is roughly known (tracking) or entirely unknown from the start aka kidnapped robot problem. Map-based localization is essential for precisely planning the robot's missions on a given map. ## MICP-L -MICP-L: Mesh ICP for Robot Localization using Hardware-Accelerated Ray Casting. +MICP-L: Mesh-based ICP for Robot Localization Using Hardware-Accelerated Ray Casting. An approach to directly register range sensor data to a mesh in order to localize a mobile robot using hardware-accelerated ray casting correspondences (See publications). [![Teaser](.resources/micp.gif)](http://www.youtube.com/watch?v=G-Z5K0bPFFU) @@ -39,7 +39,7 @@ An approach to directly register range sensor data to a mesh in order to localiz | MICP-L Hilti Video | MICP-L MulRan Video | Requirements: -- At least one range sensor equipped and running +- At least one range sensor is equipped and running - Triangle mesh as map - Prior odometry estimation of the robot given as TF @@ -47,18 +47,18 @@ IMU prior is also possible as long as it is integrated as TF-Transform, e.g. wit ### Publication -MICP-L has been accepted to IROS'24! Please reference the following paper when using the MICP-L method in your scientific work. +Please reference the following paper when using the MICP-L method in your scientific work. -```latex +```bib @inproceedings{mock2024micpl, - title={{MICP-L: Mesh-based ICP for Robot Localization using Hardware-Accelerated Ray Casting}}, + title={{MICP-L: Mesh-based ICP for Robot Localization Using Hardware-Accelerated Ray Casting}}, author={Mock, Alexander and Wiemann, Thomas and Pütz, Sebastian and Hertzberg, Joachim}, booktitle={IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)}, year={2024}, } ``` -The [preprint](https://arxiv.org/abs/2210.13904) will be updated soon. +The [preprint](https://arxiv.org/abs/2210.13904) will be updated soon. Experiments are available at https://github.com/amock/micp_experiments (mostly for ROS 1). ### Usage @@ -284,7 +284,7 @@ sensors: # list of range sensors - at least one is required ## Installation Dependencies: -- Download and install [Rmagine](https://github.com/uos/rmagine) (v >= 2.2.9): Compile from source (not debian packages). +- Download and install [Rmagine](https://github.com/uos/rmagine) (v > 2.2.9): Compile from source (not debian packages). - Recommended: Install OptiX backend if NVIDIA GPU is available - For rmagine version >= 2.2.9 it is possible to put rmagine into your ROS workspace for easier compilation - ROS2 (check compatible branches) @@ -300,15 +300,15 @@ If you want to see the map in RViz, use for example the `rviz_mesh_tools_plugins ## Examples -To learn how to use RMCL ROS nodes in your project, visit https://github.com/aock/rmcl_examples. +To learn how to use RMCL ROS nodes in your project, visit https://github.com/amock/rmcl_examples. -To learn how to use RMCL library in your ROS-Node: `rmcl_ros/src/nodes`. +To learn how to use RMCL library in your Node: `src/nodes/examples`. ## Mesh Navigation To navigate a robot automatically and safely through uneven terrain, the combination RMCL + Mesh Navigation Stack is very suitable: [https://github.com/naturerobots/mesh_navigation](https://github.com/naturerobots/mesh_navigation). As we presented on [ROSCon 2023](https://vimeo.com/879000775): -MICP-L ROSCon 2023 Video +MICP-L ROSCon 2023 Video ## Roadmap