Skip to content
Suzanne Dazo edited this page Aug 11, 2014 · 2 revisions

About

Author: Suzanne Dazo

What it's for: Privacy Zones is used to specify areas on a semantic map. It does not edit the semantic map, but provides the coordinates and zone data for each area so that it can be processed and applied to robot navigation.

Dependencies

In order to run, it needs Python 2.7, PyQT4, and a semantic map image file supported by PyQT4. Supported file types include:

  • BMP
  • GIF
  • JPG
  • JPEG
  • PNG
  • PBM
  • PGM
  • PPM
  • XBM
  • XPM

Getting it to Run

Make sure the workspace is properly sourced.

source /opt/ros/groovy/setup.bash
#Navigate to the root of the workspace folder and run:
source devel/setup.bash
cd <directory of privacy_zones>
python privacyZones.py

Run it!

Check out the tutorial

Output

Clicking the "Export as..." button will create a YAML file with a list of the zones and their coordinates.

Conversion: #Unused. May contain the map.pgm or yaml file for checking that you don't import the wrong file.
Zone List: 
    - Name: 'Living Area'
      Mode: 2 #0 is no filter, 1 is private, 2 is public
      Points: #These coordinates are in relation to the image used, and are specific to that picture.
          -
            x: 19
            y: 49
          -
            x: 284
            y: 49
          -
            x: 285
            y: 268
          -
            x: 17
            y: 270
    - Name: 'Bathroom'
      Mode: 1
      Points: 
          -
            x: 479
            y: 278
          -
            x: 603
            y: 278
          -
            x: 602
            y: 368
          -
            x: 476
            y: 372

Known bugs and issues

See the issue tracker

To-Do's and improvements

As a note, known bugs and issues should probably be handled before the improvements, but this is the direction we eventually want to go with our interface and the Privacy Interfaces project as a whole.

  • Handle any number (>= 3) points
  • Be able to edit points by dragging them to a different place on the map
  • Be able to delete unwanted zones
  • Be able to draw onto the map instead of clicking to specify individual points (Like a Path tool, maybe)
  • Specify time-of-day and other additional filters
    • Keep Private until X
    • Keep Public from X 'til Y

##If you plan to pick up this project check out our current workflow

Clone this wiki locally