鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    地图扩展

    已定时 已固定 已锁定 已移动 未解决
    综合问题
    地图建立 ros
    2
    2
    777
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 小
      小树苗zzsquzz
      最后由 编辑

      我想实现地图扩展:在已有的地图的基础上,添加上未构建的其他区域,形成一张新的地图。有什么好办法吗?

      若 1 条回复 最后回复 回复 引用 0
      • 若
        若海 @小树苗zzsquzz
        最后由 编辑

        @小树苗zzsquzz 有两种方案来实现你说的这个问题
        方案一:使用map_server的多地图合并
        ROS2的map_server支持加载多个地图文件并进行合并:

          1. 首先保存你现有的地图:
           ros2 run nav2_map_server map_saver_cli -f ~/map_existing
        
           2. 在新区域构建地图后,保存新地图:
           ros2 run nav2_map_server map_saver_cli -f ~/map_new_area
        
           3. 使用图像处理工具(如ImageMagick)合并两个地图图片:
           convert map_existing.pgm map_new_area.pgm -append combined_map.pgm
        

        方案二:通过SLAM扩展地图
        在现有地图基础上继续SLAM建图:

          1. 启动导航系统并加载现有地图:
           ros2 launch nav2_bringup navigation_launch.py map:=/path/to/existing_map.yaml
        
           2. 使用slam_toolbox在现有地图基础上继续建图:
           ros2 launch slam_toolbox online_async_launch.py
        

        推荐方案二,因为可以保持地图的一致性,同时能够自动处理坐标系对齐。还有一种方案是使用地图拼接工具,涉及地图数据的坐标变换和重叠区域处理

        1 条回复 最后回复 回复 引用 0
        • 第一个帖子
          最后一个帖子
        皖ICP备16016415号-7
        Powered by NodeBB | 鱼香ROS