mirror of
https://github.com/introlab/rtabmap.git
synced 2026-10-05 17:47:49 +08:00
5c9cfa98fec6968cab08f811865e2dc6b0f71c84
Several places look up a multimap with find(key) and then iterate while iter->first == key, assuming find() returns the first element with that key. The standard does not guarantee this, and recent libc++ (Apple clang 21 / libc++ 2200) returns an arbitrary matching element. graph::findLink() then misses existing links and Optimizer::getConnectedGraph() aborts with "Condition (kter!=linksIn.end()) not met!" on graphs with loop closures or multiple sessions (rtabmap-export --opt 0, rtabmap-reprocess, etc.). Replace find() with lower_bound() at those sites and add a regression test. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Co-authored-by: matlabbe <[email protected]>
rtabmap
RTAB-Map library and standalone application.
- For more information (e.g., papers, major updates), visit RTAB-Map's home page.
- For installation instructions and examples, visit RTAB-Map's wiki.
- For the C++ API of the library, see the API documentation, which also lists all parameters and command-line tools.
To use RTAB-Map under ROS, visit the rtabmap page on the ROS wiki.
Acknowledgements
This project is supported by IntRoLab - Intelligent / Interactive / Integrated / Interdisciplinary Robot Lab, Sherbrooke, Québec, Canada.
CI Latest
|
|
ROS Binaries
ros-$ROS_DISTRO-rtabmap
| ROS 1 | Noetic | |
| ROS 2 | Humble | |
| Jazzy | ||
| Kilted | ||
| Lyrical | ||
| Rolling | ||
| Docker | rtabmap |
Languages
C++
63.8%
C
29.7%
CMake
1.7%
Java
1.5%
Swift
0.9%
Other
2.3%
