Context
New communications technologies are constantly challenging how we think about privacy. We address the implications of allowing a remote operator to control a physical device in our private spaces, such as homes and offices. Unlike existing technologies, such as Skype, the remote operator can decide where and when to look, and may even be able to physically move objects around. Although conceptually similar to allowing a tradesman into your house or a co-worker into your office, the presence of an intermediate device (the remote presence system, or RPS) raises challenging questions about expectations of privacy. Where can the RPS go? What can it observe? Additionally, how are we to address these privacy concerns and what is affected in doing so? Does the operator of an RPS suffer decreased task performance if your privacy is properly protected? In such a case, what is the best way to label and protect these privacy concerns? By asking users to perform tasks while controlling an RPS in a workplace environment, we’ll try to address these questions.
Goals
In this project, we are using ROS with privacy interfaces. What I will be looking into specifically is the user interface for these privacy studies. There will be two main types of users. The first is the local user, such as a person living in a home. The second user is the remote operator that must complete a task in the local user’s space. My goal will be to begin the groundwork for an interface that will both allow the local user to best specify a privacy scenario* and allow the operator to complete the task while maintaining those privacy goals. An optimal design would be easy to use and preserve the local user’s desire for privacy under all circumstances when the remove operator is driving the RPS.
In designing this interface, I should not only keep the local user and remote operator in mind, but the expandability of the interface. Limiting navigation is only the first phase of the privacy interfaces, and my project should be well documented and easily expandable so that other researchers can take my code and add more functionality.
A privacy scenario includes who/what/where must be kept private, how it should be kept private (don’t see, don’t go, delete from image, etc.), and any extra conditions to enforce privacy (time of day, if a certain person is in a room, etc.) An example privacy scenario would be: Don’t go into Tom’s office after 5pm.
Work Plan and Timeline
The first study conducted will cover basic movement restrictions such as preventing an RPS from entering a designated area. This will require the local user being able to define zones using the interface and then using those zones to specify if privacy (not entering or leaving the zone) should be enforced. The remove operator should be able to operate the RPS through my designed interface while also receiving enough data to complete the task.
Phase 1: Remote User Interface and basic Navigation
- Week 1-2 : Research on visualization and interfacing with ROS as well as designing mock-ups for development
- Week 3-4 : Implement a GUI to connect to the robot. It should be able to display visual data and a loaded map of the room.
- Week 5 : Allow the robot to be teleoperated through the GUI, using the visual data in conjunction with the map to allow task completion.
Phase 2: Creation of Local User-defined filters
- Week 6-7 : Modify and display the map in such a way that the floor plan can be easily understood by the local user. Allow for the drawing of “zones” on top of this map.
- Week 8 : Labelling and identification of these zones should be able to be understood within ROS. The robot now knows what room it is in based on the zones defined by the local user.
- Week 9 : Allow for zones to be flagged with privacy filters (allow access/disallow access/allow access to ONLY that zone) to prevent unwanted navigation
- Week 10 : Combine the two interfaces so that the local user first modifies the map file, ROS understands the modifications and forces the navigating remote user to abide by these privacy rules.
Backup and Minimal Requirements
Overall, this is a large task to complete from the ground up with minimal knowledge of ROS as well as creating GUIs in python. ROS already has some GUI frameworks using Rviz to obtain data, but I still need to learn how to accomplish this.
At the bare minimum, I should be able to obtain this interfacing to display the two types of data. With or without a GUI, I should also be able to read and modify map data to specify zoning in a way that the robot can understand. If I cannot easily define the zones using purely the map file, we can also use physical markers in the environment and reserve the GUI for only identifying and applying the privacy filter to the zones.
An example for this would be placing cones on the edge of the kitchen, and the robot would know that crossing those cones would be a separate zone.
In my timeline, I focus on navigation prior to focusing on interpretation of map data. There is another privacy experiment requiring the user to navigate a robot to complete tasks, so I want to finish this area of the project for it to be used in the study as well as getting testing and input as early in the process as possible.