Adding an async external landmark
Posted by kojokaro on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Adding-an-async-external-landmark-tp9592.html
Hi Mathieu
I want to be able to add landmarks to the graph without detecting anything, and regardless to the frames injected to rtabmap.
The idea is something like a message with landmark_id and position. When this message arrives, rtabmap will find the nearest node and attach the landmark id to this node.
I tried to follow the logic done when rtabmap detects markers by itself, but seems like I'm missing something. I added landmark with negative id to the node signature's landmarks list, _landmarksIndex and _landmarksSize, and added the landmark itself to _optimizedPoses. Still I don't see the landmark and the link between the node and the landmark in the saved db (I do see landmarks detected by rtabmap).
In addition, can you explain the difference between landmarks and labels? I understand label is set to an existing node, so there's just one position (of the node) and landmark is linked to a node and has its own position. Is that correct? How would you represent docking station or any other important place that you want to mark for the robot after mapping? As a landmark or a label? Is there a difference if the robot was in this 'important place' or not?
Thanks ahead
Keren