map-merging

Merge multiple SLAM maps from different sessions or robots into one coherent map.

Updated Aug 16, 2026
One-click install
npx skills add https://github.com/three1324/yeonjinautomotive --skill map-merging-three1324
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: map-merging
Source: https://github.com/three1324/yeonjinautomotive/tree/main/.claude/skills/map-merging
Command: npx skills add https://github.com/three1324/yeonjinautomotive --skill map-merging-three1324

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? A single mapping run often cannot cover an entire environment, and multiple robots or sessions produce separate maps that must be combined. This Skill provides concrete techniques for merging partial maps into a single coherent map without losing pose graph structure. ## Core Features & Use Cases - SLAM Toolbox Deserialization: Serialize a partial pose graph, then continue mapping in a new session that loads the graph and extends it. - multirobot_map_merge: Merge OccupancyGrid maps from multiple sources with known or automatically estimated initial poses. - Manual Image Merging: Align and merge PGM/PNG map images in GIMP with correct resolution matching and origin recalculation. - Cartographer Multi-Trajectory: Run multiple trajectories against one shared pose graph with inter-trajectory loop closures. - Use Case: You mapped a building's east wing on Monday and the west wing on Tuesday. Use SLAM Toolbox deserialization to load Monday's serialized graph, start the robot inside the mapped area, and continue mapping into the west wing to produce one unified map. ## Quick Start Ask the AI to merge two SLAM Toolbox maps from separate mapping sessions by serializing the first map and continuing mapping from it in a second session.

Frequently Asked Questions about map-merging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I merge two maps from separate SLAM Toolbox sessions?

Serialize the first session's pose graph with the /slam_toolbox/serialize_map service, then configure the second session with map_file_name pointing to that graph. Start the robot inside the previously mapped area and continue mapping to extend the graph.

What is the difference between SLAM Toolbox deserialization and multirobot_map_merge?

SLAM Toolbox deserialization preserves the full pose graph and supports continued optimization, while multirobot_map_merge only combines 2D OccupancyGrid images without correcting internal drift. Graph-based merging is preferred when available.

How much overlap do maps need for automatic merging?

multirobot_map_merge with unknown initial poses needs roughly 30 percent shared area with distinctive features. With known initial poses, any overlap works, and SLAM Toolbox deserialization only requires the robot to start within the previously mapped area.

Why does SLAM Toolbox map merging fail silently?

Merging fails silently when the robot starts the second session outside the area covered by the loaded map, because no constraints connect old and new graph nodes. Verify the merge by checking for constraints linking old and new nodes in RViz.

Can I merge maps with different resolutions in GIMP?

Both maps must have the same resolution before merging. Rescale one map in GIMP or with ImageMagick to match, then align overlapping features, merge layers by taking the most informative pixel value, and recalculate the YAML origin.