From the mapping chapter, we learn that the SLAM algorithm can create a map while localizes the robot in an unknown environment. I wonder whether the localization of robot in SLAM is with respect to which frame? (e.g. odom frame, map frame etc). Meanwhile how can we extract the real time localization info (e.g. location) of the robot in ROS? Thanks!
The localization is with respect to the map frame. During the mapping process, it’s not possible to get this information (as far as I know). You will be able to get this data in the next step, when you launch the amcl node (which will also generate the transform from the map frame to the your robot).
Thanks for your replying, but doesn’t SLAM imply that we can map the environment and localize the robot (get the robot location with respect to map frame) simultaneously? If we acquire the location of robot by MCL afterward, localizing robot and mapping are not simultaneous. Could you clarify more about this? Appreciate for your time.
Yes, that’s right. During the mapping process, the localization (pose) of the robot is being tracked, but this data is not provided through a topic in order to be checked. Have a look at this talk: https://answers.ros.org/question/207352/gmapping-localization-information/