如何将 map 和 world 文件的坐标轴进行对齐
TIPS
- 在建图过程中,假设你的 gazebo 中的世界坐标系是
world
,进行 slam 建图时的地图坐标系是map
- 在
SLAM
建图时,map_server 会以机器人坐标系
下的x
轴和y
轴对齐为标准建立 map 坐标系。 - 如果你希望 gazebo 中的
model_state
与估算的odom 里程计
保证对齐时,则需要保证world
坐标系下的x
轴和y
轴与map
坐标系下的x
轴和y
轴对齐。
Rviz 显示对齐后的模型
yaml
image: tianracer_racetrack.pgm # 注意:最好去除 map_server 保存该文件时在该行使用的绝对路径,降低了可移植性
resolution: 0.025000
origin: [-12.200000, -12.500000, 0.000000] # 这里的 3 个数比较关键,在 map frame_id 下的 x(m),y,theta(rad)3 个关键参数
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
image: tianracer_racetrack.pgm # 注意:最好去除 map_server 保存该文件时在该行使用的绝对路径,降低了可移植性
resolution: 0.025000
origin: [-12.200000, -12.500000, 0.000000] # 这里的 3 个数比较关键,在 map frame_id 下的 x(m),y,theta(rad)3 个关键参数
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
如何修改地图
在ROS
中,.pgm
文件是 Rviz 显示地图时使用的文件,它保存了地图的像素信息。
TIPS
那么.pgm
文件是什么呢?
PGM 文件是以便携式灰度图(PGM)格式保存的灰度图像文件,每个像素用一个或两个字节(8 或 16 位)进行编码。它包含标题信息和数字网格,这些网格表示从黑色(0)到白色(最多 65,536)的不同灰色阴影。PGM 文件通常存储在 ASCII 码 文本格式,但也有二进制表示形式。
旋转图像
ImageViewer
一般情况下在ImageViewer
中,可以对图像进行旋转操作。
提示
但是不支持.pgm
格式哈
GIMP
在GIMP
中,可以对图像进行旋转操作。
效果展示
map_server 导入旋转过后图片
如何检查
添加 axes
选择 axes 类型
可以看到,默认状态下的坐标轴朝向
然后手动选择参考系为map
可以看到,axis
参考为map
,仍然符合预期。