Re: Integrate external markers from apriltag_ros with Priors

Posted by fboris on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Integrate-external-markers-from-apriltag-ros-with-Priors-tp10358p10410.html

Mathieu,
Thanks for your explanation. I make external apritltag_ros work with rtabmap now. I turn on memory management of rtabmap(--Rtabmap/TimeThr 200 ). To prevent "position jump", I also enable -RGBD/OptimizeFromGraphEnd true(from discussion). But I have problem if WM do include landmark. the localization output will have a lot of offset. It looks like lost constraint from landmark.
it is test what I've done.
1. there is tag at x=0 y= 0 and x=7.4 y=0, i make robot to visible both arpiltag. after a while, i make rotbot to a knownpoit x y z yaw = (4.24, 0.08, 0.01 , 355.6)

2. I try to make robot move between two arpiltag. So robot cannot see apriltag anymore. After a while, the map is looks like twist and  position of known point has a lot of drift. x y z yaw = (4.16,0.24,0.74,353.42)

So It looks like of WM has no landmark inside. the map is going to twist. From the paper and previous discussion, graph optimization is doing in working memory. Is it possible to enforce rtabmap to keep node which saw landmark always inside the working memory to keep landmark constraint? https://github.com/introlab/rtabmap/blob/master/corelib/src/Rtabmap.cpp#L4324 looks like can do the job. But I'm not sure it is correct.