RTABMAP Optimizer problem
I am using RtabMap along with Ros2 Galactic and I have received the following warning after several seconds working:
[rtabmap-1] [ WARN] (2022-08-13 13:03:18.500) Optimizer.cpp:129::create() GTSAM optimizer not available. TORO will be used instead.
[rtabmap-1] [ WARN] (2022-08-13 13:03:22.597) Rtabmap.cpp:1244::process() Update map correction based on last localization saved in database! correction = xyz=16.608225,-0.877015,0.000000 rpy=0.000000,-0.000000,0.853309, nearest id = 312 of last pose = xyz=16.291098,-1.225761,-0.779420 rpy=0.020526,-0.003285,0.849649, odom = xyz=-0.471276,0.009644,-0.173527 rpy=-0.051436,0.141646,-0.003660
[rtabmap-1] [ WARN] (2022-08-13 13:03:23.869) OptimizerTORO.cpp:151::optimize() TORO optimizer doesn't support prior or gravity links, use GTSAM or g2o optimizers (see parameter Optimizer/Strategy). Link 1 ignored...
[rtabmap-1] [ WARN] (2022-08-13 13:03:23.869) Rtabmap.cpp:3337::process() Localization was good, but waiting for another one to be more accurate (RGBD/MaxOdomCacheSize>0)
[rtabmap-1] [ WARN] (2022-08-13 13:03:24.983) OptimizerTORO.cpp:151::optimize() TORO optimizer doesn't support prior or gravity links, use GTSAM or g2o optimizers (see parameter Optimizer/Strategy). Link 1 ignored...
I have checked that the galactic version of rtabmap includes GTSAM and g2o too, which I also tried, so I don't know why is it that I get this error...
Thank you for your help!
Asked by marpeja on 2022-08-13 06:33:16 UTC
Answers
It seems rtabmap_ros
is linking on a rtabmap
library built without g2o and gtsam support. g2o and gtsam builds should work on ROS2 (it is independent of ros). The ROS2 binaries should have g2o dependency. You can try to debug which rtabmap is on the PATH:
$ which rtabmap
and check version and dependencies of that version:
$ rtabmap --version
This could help in case you have multiple rtabmap versions installed.
Asked by matlabbe on 2022-11-06 13:38:23 UTC
Comments