Observe — photos, traces, way geometry editing and more!
Posted by geohacker on 13 July 2020 in English.A little over a year ago, I wrote about Observe — a new field mapping tool for OpenStreetMap that works offline. There was a lot of interest from the community to use Observe and we got a lot of great feedback. Ever since, we have slowly been working on adding new features and improving the overall performance.
Few weeks ago, we released a new version of Observe. I’m excited to invite you all to test this version and give us feedback. I’ll highlight some of the changes in this release.
You can download the development version of Observe for Android and iOS from here. Note that this uses the OSM Dev API. If you don’t have an account, you can create one. You can read about all Observe features and how to use them in the user manual.
Taking photos and recording traces
Two important features that we wanted to add to improve the field mapping experience of Observe is being able to capture photos and record traces. Photos are critical when it comes to mapping outdoors, as we tend to take pictures of features so we can refer to them later on to create additional tags. For example, I take pictures of the sign boards of businesses so I can enter address and opening hours when I’m back at my computer.
1. Taking geotagged photos. 2. Taking photos associated to features
Observe allows users to take photos that are geotagged, but more importantly, photos can be associated with existing OpenStreetMap features or a feature that you just created.
Recording the path a field mapper took during the mapping exercise can be really useful to compare routes from different mappers, use it for accountability, or turning those into roads or sidewalk geometries later on. While mapping, users can turn on recording and Observe will prepare a GeoJSON line string of the entire path followed.
Photos and traces captured through Observe Mobile will be available offline and uploaded to the Observe Dashboard when the user comes online.
Observe Dashboard
To manage photos and traces generated from Observe Mobile and to allow for further integrations of these auxiliary data, we built Observe Dashboard.
Photos can be downloaded and traces can be opened directly in JOSM using the remote control. We hope this integration will make it easier for mappers to introduce additional tags to features they added during the field exercise.
At the moment, any user can login to Observe Dashboard with their OSM dev account to see all photos and traces uploaded to the API. Since this is the development version, data that you send to the dashboard could be deleted anytime.
Editing and creating way geometries
When we released Observe last year, users could only add and edit point geometries. A lot of people expressed interest to have basic geometry editing functionality. We know way geometry editing can be problematic especially when modifying shared nodes or editing features that are members of relations.
Our approach has drawn inspiration from tools like GoMap!! and Vespucci, and rely on using map styles and offering the user several decision points before changes are made to feature geometries. Users can draw lines and polygons, modify existing lines and polygons, add and delete nodes, snap to existing nodes, and merge nodes.
We don’t allow users to delete nodes and ways that are part of relations, or change the preset / feature type of such features. When editing features that are members of relations, there’s a warning that communicates to the user the impact of what they are about to do.
These steps safeguards against accidental edits, but is definitely not a comprehensive approach. We look forward to hearing more ideas and feedback from you.
Future
There has been a lot of interest in using Observe outside of adding geometries to the map. One of the strong ideas we’ve been working on is adding capabilities to design surveys and campaigns. We might also consider integrating with existing tools like Tasking Manager.
Observe is still in a development mode and there are no production builds for OpenStreetMap. If your project could use this tool and are interested in collaborating, please reach out to us (sajjad@developmentseed.org). Figuring out a roadmap to get Observe on the app stores is something that we are working on right now, though, there’s no timeline for this.
Discussion
Comment from Zverik on 15 July 2020 at 06:57
First, I love the UI you did for these features — both for uploading photos and for geometry editing.
It saddens me a little that this development seems to be done without actual in-the-field testing. What’s been done is 1) duplicating Mapillary, 2) duplicating Go Map / Vespucci. All three of these work offline. Why not focus on things these apps do not do?
In the first post, you wrote: “Observe makes field surveying and verification easy for mappers”. This is not easy. You could focus on perfecting editing point features — which of all OSM-based apps only Maps.Me does tolerably. Collecting point features (shops, benches, trees, potholes, addresses) it still an unsolved problem in OSM field mapping.
Drawing lines on screen in a manner of vector editing is tedious. You would basically just stand at a corner for half an hour trying to move lines on your small screen. What could have been done is free-drawing on top of imagery: few strokes for service roads — and you continue your surveying. And these could be shared via a backend to JOSM: drawing lines using these hand-drawn hints would be much faster and simpler.
Comment from geohacker on 15 July 2020 at 08:13
Ilya - thank you for taking the time to give this a shot and your feedback. I want to respond to a few things and also ask your opinion on some.
I agree we need to streamline this a lot. But, we have had several groups of people using Observe for various things over the last year. The way editing functionality is new but the workflow is something our teams in Peru have tested a fair bit. It’s true that they are advanced mappers, but we definitely test. We’ve also had groups within HOT giving this a test :)
Do you mind going a bit deeper into this and perhaps outline what are the things you wish that’s different in the current landscape of POI mapping in OSM, Observe included? What specifically do you think is unsolved? I’m personally really interested in trying make this better and I’d love if we can primarily focus Observe in this direction, for sure.
I agree this would be a much easier approach to drawing new features and something we would like to do. Perhaps someone can guide us on what the best approach to implement this would be in a ticket keeping in mind how one would handle nodes and memberships. Also very intrigued by the JOSM integration approach. Would love to read more about how you imagine that as well and how it’s different from using traces.
Comment from Marcos Dione on 15 July 2020 at 12:46
Is this Free Software? Any change to get this on F-Droid?
Comment from 4004 on 15 July 2020 at 15:50
While I see how you’d want to offer same functionality as Mapillary (as some people are uneasy with Facebook owning them), I’d agree with Ilya on the editing bit. One thing I avoid when mapping in the field is bothering myself with geometries. Only ways I could see it working is either points for buildings or rough outlines, converted into shapes with post editing at home/AI. There are 2 polar opposites in Mobile osm editing - StreetComplete/OSM Competionist and Go Map/Vespucci. Between them, there are/were many apps. Where do you plan to fit in with Observe?
Comment from geohacker on 17 July 2020 at 05:33
Marcos – that’s a good idea. I think we might be able to do that faster than on the PlayStore. I’ll read more and see if this something our team can do soon. If you have experience and time and are willing to help, please let me know. Thank you!
Comment from geohacker on 17 July 2020 at 10:23
Hi! I take your point about being able to draw without having to bother with the many steps to add nodes to create ways. Drawing like that isn’t exactly very performant when it comes to looking up node memberships, associating with existing ways etc. We’ll see what we can do!
In terms of where we see Observe fit in, there are few ways I’ve been personally thinking about. I’m sure other developers have more thoughts. But please consider these are open for further fine tuning. The point is not to prove that Observe is superior to other apps.