Open matlabbe opened 3 months ago
Workaround is to set Mem/RehearsalSimilarity=1
. That makes memory management not compatible with GTSAM/Incremental
. The cleanest way to solve this issue would be to be able to remove links from external call instead of trying to detect which links/poses have been changed internally.
Issue introduced by https://github.com/introlab/rtabmap/pull/1249, with
GTSAM/Incremental=True
, we could get:that would eventually result in:
From the log, what happens is after triggering a new map, there was a loop closure detected from the new map to old one (e..g,
2659->2702
), which eventually get rejected. The robot was not moving, after 2705 got merged (rehearsal) to 2072, another constraint has been added2659->2702
to input, but not added to factor graph because the nodes already exist. The missing link then caused the first error. For the second error, it happened when a new node not merged to 2072 has been added. I think the errors are related but 2072 should have been already in the values.full log: log.txt