How do I orient fake_localization with stage?
Hello,
I am confused about coordinate frame orientation when using stage and fakelocalization. First of all, I have my simulation working with amcl, but I want to use fakelocalization to get better performance.
So, I have a worldfile for stage that loads a map. The map origin is the bottom left corner, and I give stage an offset, so that the map is centered in the stage window: (from my stage .world file)
floorplan (
# Size in meters (the image has 870x672 pixels x 0.05 resolution in the .yaml)
size [43.5 33.6 1]
# Where to make the origin (rotate and offset)
pose [21.75 16.8 0 0] # Center of the image
bitmap "../../maps/3rdFloorNorth.pgm"
)
Next, I include fake_localization in my launch file.
<node pkg="fake_localization" type="fake_localization" name="fake_localization" respawn="false">
<param name="delta_x" value="0"/>
<param name="delta_y" value="0"/>
<param name="delta_yaw" value="0"/>
The issue is, the odom and amclpose do not match. In the example above, I put a robot in the world file at position [25 28 0 0]. I can see this when I rostopic echo odom. However, when I rostopic echo amclpose, I get x=28 and y=-25! Is there a rotation happening here? I thought that the /map was loaded with the origin at the bottom left corner, same as with stage? Is this something that I set with the fake_localization delta values, or is there something bigger happening here?
Thanks in advance!
Asked by ceverett on 2012-09-17 19:25:24 UTC
Answers
this problem also happen with me, and others: http://answers.ros.org/question/28561/why-base_pose_ground_truth-isnt-publishing-the-real-position-in-stageros/
Asked by Procópio on 2012-09-17 21:28:28 UTC
Comments