Skip to main content

A GUI editor for ROS map files in PGM format

Project description

ROS Map Editor

A GUI tool for editing ROS map files in PGM format. This tool allows you to view and modify occupancy grid maps used in ROS (Robot Operating System) navigation.

.. image:: ./images/ui_advanced.PNG

Acknowledgements

Features

  • Load and display PGM map files used in ROS
  • Edit map cells (occupied, free, unknown)
  • Zoom in/out for detailed editing
  • Minimap for navigation in large maps
  • Automatically saves changes on exit

TODO

  • ☒ BOX Select

.. figure:: images/usage.gif :alt: ROS Map Editor

ROS Map Editor

  • ☒ Line Select

.. figure:: images/usage_line_select.gif :alt: ROS Map Editor

ROS Map Editor

  • ☐ Polygon Select
  • ☐ Rapidly Loading and Editing

Installation

From PyPI


.. code:: bash

   pip install ros-map-editor

From Source

.. code:: bash

git clone https://github.com/sujit-168/ros_map_editor.git -b main cd ros_map_editor pip install -e .

Usage

Command Line


.. code:: bash

   ros-map-editor path/to/your/map

or simply:

.. code:: bash

   python3 ros_map_editor/main.py path/to/your/map

The tool will automatically look for the corresponding YAML file
(map.yaml) in the same directory.

Interface
~~~~~~~~~

-  **Zoom**: Select zoom level from the dropdown menu
-  **Color**: Choose what to draw:

   -  **Occupied**: Mark cells as obstacles (black)
   -  **Free**: Mark cells as free space (white)
   -  **Unknown**: Mark cells as unknown (gray)
   -  **Alternate**: Cycle through states with each click

-  **Minimap**: Shows your current position in the map with a red
   rectangle
-  **Drawing**: Click or drag to modify cells

Map File Format
---------------

The tool works with standard ROS map files:

-  A PGM image file containing the occupancy grid
-  A YAML file with metadata (resolution, origin, thresholds)

Example YAML file:

.. code:: yaml

   image: map.pgm
   resolution: 0.050000
   origin: [-10.000000, -10.000000, 0.000000]
   negate: 0
   occupied_thresh: 0.65
   free_thresh: 0.196

Requirements
------------

-  Python 3.6+
-  PyQt5
-  Pillow (PIL)
-  PyYAML

License
-------

Public domain

Contributing
------------

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ros_map_editor-0.1.2.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ros_map_editor-0.1.2-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file ros_map_editor-0.1.2.tar.gz.

File metadata

  • Download URL: ros_map_editor-0.1.2.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ros_map_editor-0.1.2.tar.gz
Algorithm Hash digest
SHA256 54098195b0917f00b717038bf445a95d8ec1cf904ef21385fae8166678562160
MD5 47d83b12c2f179b4dc65e351ea329e3b
BLAKE2b-256 1b56ba4c9db0f62fdf26a1146e51ce30bb01b72dc74a2eaa399a5826c607ac7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ros_map_editor-0.1.2.tar.gz:

Publisher: python-publish.yml on sujit-168/ros_map_editor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ros_map_editor-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: ros_map_editor-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ros_map_editor-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2f915ba27a2654b20c825327286f2605c73c841b7866188e167b5c1051496685
MD5 fa3982869d97d00dc5d8ef9bc06dd5d4
BLAKE2b-256 05c26f2fbad2cf99a88447d74949426518197f8eb92b8c23a9ac2f13ac8ab5dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for ros_map_editor-0.1.2-py3-none-any.whl:

Publisher: python-publish.yml on sujit-168/ros_map_editor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page