OpenStreetMap logo OpenStreetMap

mvexel's Diary

Recent diary entries

A Local Mappers API

Posted by mvexel on 2 May 2019 in English.

There’s been countless times where I was mapping someplace far away, and I’ve wanted to ask a local mapper for advice or help.

There’s not many ways to do that effectively, or easily.

An obvious thing to do is to leave a note either on the feature I have a question about or as a map note. Then hope that someone local reads notes. Or you can find local mappers through the Neis ‘Who’s around me?’ tool, but I find that it turns up a lot of stale mappers (who are not active anymore.) Also the tool is not open source, and you can’t integrate it with other things.

I don’t find either of those options very satisfying.

So perhaps we could have an API that queries for local mappers in a radius.

That begs the question what a local mapper is, in technical, queryable terms. A simple approach would be to look at changesets that have a fairly small bounding box, are close to the point you are interested in, and not too old. Group those by mapper, and that will give you a reasonable proxy for ‘local mappers near a point’.

I whipped up a proof of concept API that does just that.

Here’s a request that fetches local mappers near the center of Münster, Germany:

http://localhost:5000/mappersnearme?lat=51.9610&lon=7.6247

This returns, after some waiting, a list of mappers as JSON:

[
    [
        375,
        1760129,
        "lowlander"
    ],
    [
        100,
        8339,
        "mtmail"
    ],
    [
        78,
        423913,
        "alan1209"
    ],
...

Each record has the number of local changesets, the OSM user ID and username. The list is ordered by that last number so that the most active local mappers should appear at the top.

Here are the mappers at the top of the Münster local mappers list:

Looking at these mappers’ edits, they all seem to be mappers who may be able to answer a question about a local mapping issue. A promising result!

See full entry

GNIS Hamlets

Posted by mvexel on 30 April 2019 in English.

A hamlet in OpenStreetMap is, according to the wiki, “A smaller rural community, typically with fewer than 100-200 inhabitants, and little infrastructure.”. It is smaller than a village but larger than an isolated_dwelling. So, basically, it’s a very small rural town.

Oasis, Nevada. A hamlet in OSM.

According to OpenStreetMap, there are around 750 hamlets in Utah. I know we have a lot of small rural towns but I am not buying that it’s that many. Let’s have a look.

It turns out that all but 20 of the Utah ‘hamlets’ are the result of a poorly documented 2008 import of GNIS points. (There may be more changesets related to this import.) 500 of them have not been touched at all by human mappers since then.

See full entry

MapRoulette 3.3 is out!

Posted by mvexel on 18 April 2019 in English.

tl;dr the release notes 🙂

The biggest new feature in version 3.3 is the introduction of reviewing other mappers’ tasks. If you would like to have someone else review the tasks you complete, you can let MapRoulette know. If you’re an experienced mapper, you can volunteer to review other people’s work. In this post we explain how this works, and review some of the other goodies that made it into this version.

Reviewing Tasks

As you fix things via MapRoulette, you can indicate that you would like someone else to review your work. Here’s how you do that. When you mark a task as fixed, you will see a new confirmation dialog:

If you check the box ‘Need an extra set of eyes?’, the task will be added to the review queue. You can also set a global preference in your User Settings to have all your work reviewed by default (you can override it for individual tasks if desired).

See full entry

How well mapped is a town in OSM? There are many ways to answer that question depending on how you define “well mapped-ness” (or just mappedness). One simple approach is to look at the number of points of interest (POI) mapped. My assumption is that POI are a higher order feature: mappers establish a base layer of roads first, then move on to enriching the map with POI. So having more POI in an area could be a proxy for mappedness. A benefit is that it’s easy to measure. All you need is the POI data from OSM, and town / city boundaries. I took a stab at it. Here’s a preview:

Prepare the data

Getting POI

We need POI from OSM as the quality indicator. As a proxy for POI, I use nodes that have a name tag. This lets me sidestep the curious OSM attribute hierarchy that would require selecting subsets of tourism, shop, amenity and a few other attribute keys from the data. There’s two ways to go about this. For smaller areas you could use Overpass, using a query like this one:

See full entry

Vote For Me

Posted by mvexel on 1 April 2019 in English. Last updated on 11 April 2019.

Update I didn’t get elected, but we have an excellent new board member in Minh. Good luck to the new board!

Hi. Thanks for reading!

tl;dr: I would use my next term to jump-start two permanent OSM US working groups: Growth and Communication. Specifically, I will work with the ED and the rest of the board to recruit 2-4 people for each group and get them started with what they need.

Growth

A new Growth working group will focus on developing and executing new ways to find new mappers, especially from groups not well represented. The OSM US census was a good idea that needs follow up. I feel especially strongly about involving more young people through TeachOSM. And how about an OSM GeoBus? We have a lot of resources ($, ED) and we should put them to use for big ideas that reach new groups of people.

Communication

A new Communication working group will create a deliberate communications strategy. That sounds fluffy but I think it does not need to be. We need to find out who our audiences are and how to bring them a consistent, positive message from OSM US. I don’t want to get ahead of myself, but I suspect that we need hired help with this soon.

About Martijn

See full entry

The upload scripts are a part of the open source OpenStreetCam platform that are probably not as widely known. You can use them to upload images to OSC that you capture using something other than the Android / iPhone app or a OSC Waylens camera. My colleague Bogdan will publish a blog post going into more technical detail on the ImproveOSM blog soon, but I wanted to share my initial experiences using just the basic uploading functionality.

I don’t want to go into the script setup steps here, but if you are having trouble with that part, I am happy to help out.

Detour: Collecting and preparing my images

If you are just interested in the upload scripts, you can skip this part…

This is the setup I use to collect OSC images when I don’t use the app or the Waylens camera:

It consists of:

See full entry

MapRoulette 3.2 is out!

Posted by mvexel on 6 March 2019 in English.

tl;dr the release notes 🙂

✨This is a big one✨ We redesigned MapRoulette to make some things easier to find, improve the workflow, and hopefully make it look prettier 💎 as well. We hope you like it!

First of all you will be greeted by a new homepage. This landing page introduces new users to MapRoulette and suggests some challenges to start working on.

New Homepage

Dashboard

An entirely new section of MapRoulette is the Dashboard. This is your personal window into MapRoulette activity. You can see things like your own recent activity, popular challenges and your tracked tasks here. As with almost everyting in MapRoulette, the Dashboard consists of widgets that you can move around, resize, add and delete to create the layout and information display you desire. You can even switch between multiple layouts.

See full entry

tl;dr the release notes 🙂

If you go to maproulette.org now, you will be greeted with the latest point release: 3.1.3. This is likely the final public release before 3.2, which will be a bigger one featuring a design refresh among other things! For now though, let me summarize the highlights of the 3.1.3 release.

Translations

MapRoulette is now available in Korean, thanks Dongha Hwang!

MapRoulette in Korean

The Japanese translation was updated to fix minor typos. MapRoulette is now available in 7 languages. If you want to contribute a translation file, have a look at the pull request for the Korean translation to get started. Don’t hesitate to ask if you get stuck!

Task Styling

Thanks to a pull request by Ilya Zverev, MapRoulette now lets you style the appearance of your tasks on the map using the simplestyle standard devised by Mapbox. They have a simple example in their documentation to give you an idea of how to apply styling using simplestyle.

Leaderboard Updates

See full entry

MapRoulette 3.1.2 released

Posted by mvexel on 12 January 2019 in English.

MapRoulette 3.1.2 is now available on maproulette.org. Here’s what’s new!

MapRoulette is now available in Japanese

We added a Japanese translation, thanks https://github.com/higa4!

Share your Challenge list

New filters you apply filters to the challenge list to narrow down your results now become part of the URL so you can share that particular list with others. For example, this URL will show you all Challenges that have to do with roads in South Korea: https://maproulette.org/mr3/browse/challenges?challengeSearch=124.28833007812501%2C33.687781758439364%2C132.15454101562503%2C39.6479973237342&keywords=highway&location=withinMapBounds (there are two, and they’re both very useful and fun to work on).

Edit only current object in JOSM

See full entry

MapRoulette 3.1.1 Release Notes

Posted by mvexel on 19 November 2018 in English.

MapRoulette 3.1.1 is now available on maproulette.org. Here’s what’s new!

Mapillary layer

Mapillary images are now available as an overlay on the map. If you’re zoomed in far enough you can select the Mapillary overlay from the Layer dialog.

This is a work in progress. Let us know if you have any suggestions to make it better! And yes, we plan to support OpenStreetCam images soon as well.

Rebuilding Tasks

MapRoulette now supports rebuilding tasks from Overpass based challenges as well as local and remote GeoJSON challenges. You can use the ‘Rebuild’ link at the top of you Challenge maintenance screen to start the process. For Overpass based Challenges, it will simply re-run the Overpass query. For remote GeoJSON files hosted someplace else, it will reload the GeoJSON from there. For local GeoJSON challenges, you will be prompted to select a new GeoJSON file to upload from your computer.

See full entry

MapRoulette 3.10 Release Notes

Posted by mvexel on 12 November 2018 in English.

MapRoulette 3.10 is now available on maproulette.org. Here’s what’s new!

For Mappers

We made changes to the map layer selection. You can select more and more relevant background map layers in MapRoulette. The available layers are retrieved from the OSM Editor Layer Index. For aerial imagery layers, you can also select the Mapbox road overlay.

When browsing for Challenges, you can now sort the results different ways: by age, by popularity and ‘smart’ which also takes into account Featured Challenges and Challenges you saved. The old sorting by name is also still available.

See full entry

TIGER is the street database from the U.S. Census. An old version of TIGER was used to bootstrap OSM in the U.S. back in 2008. We have come a long way since then (see image below) and OSM is now much better than TIGER in most places.

Image from osm.wiki/TIGER_fixup

New versions of TIGER are released every year and they are still useful. Local governments update it with new roads and street names. If you compare new TIGER data with what’s in OSM, you get useful information about where OSM may need improving. If you edit in iD, you get visual cues when roads are missing:

See full entry

MapRoulette Insider - Creating a Challenge

Posted by mvexel on 6 November 2018 in English.

In this post, part of the MapRoulette Insider series, I will show you how to create a MapRoulette Challenge yourself.

The first thing you need is a Challenge idea. Good challenges have tasks that:

  • Are easy to solve (typically less than one minute)
  • Do not require local knowledge
  • Involve only one or two OSM objects

My example challenge meets those criteria. I ask mappers to review motorway_junction nodes in the United States that have name tags. This is uncommon in the U.S. Often mappers will add a name tag that has the destination information on it, so the information renders on the map:

This Overpass query selects all these nodes.

area[name="United States of America"]->.a; node["highway"="motorway_junction"]["name"](area.a); out meta;

See full entry

Updates to Meet Your Mappers

Posted by mvexel on 27 August 2018 in English.

This post first appeared on my blog.

A few weeks ago, I built and released Meet Your Mappers, a web tool that lets you identify OpenStreetMap mappers in an ares of your interest. I received a lot of great feedback and encouragement and have addressed some of the main concerns people raised. Here’s an overview of the updates.

Box shaped areas of interest

The single most important piece of feedback I got is that the tool is too hard to use because of the need to identify the area of interest by looking up an OSM relation ID. This is error prone and unfriendly to those not too well acquainted with how administrative areas are mapped in OSM.

This was partly done by design (I didn’t want to make it too easy to use, because of the demands on my bandwidth and the Overpass API) and partly because I was lazy (I didn’t have to build a map widget).

But folks kept asking for it so I added a map widget so you can draw a bounding box to indicate your area of interest. The relation ID option is still there as well.

See full entry

This and future diary posts also appear on my blog.

After introducing MapRoulette 3, the micro-tasking tool for OpenStreetMap, I would like to follow up with a series of ‘Insider’ posts. Each of them will highlight an interesting feature or function of MapRoulette.

This week, we will look at Virtual Challenges.

Challenges in MapRoulette

MapRoulette consists of Challenges, which are groups of similar Tasks. An example is the Embassies missing representing countries Challenge by user johanemilsson. It asks you to add missing country=* tagging to specify which country the embassy, consulate or mission represents.

See full entry

Introducing MapRoulette 3

Posted by mvexel on 6 July 2018 in English. Last updated on 26 October 2022.

This and future diary posts also appear on my blog.

MapRoulette lets anyone contribute to OpenStreetMap by fixing small mistakes on the map. It works like a roulette wheel: once you select something you want to work on, MapRoulette will give you a random task to work on. Once you fix it, you return to MapRoulette for the next task. Do as few or as many as you like. Be careful, people have been known to get hooked on it!

Since 2013, MapRoulette has been used by thousands of mappers to complete well over 1.5 million small tasks to improve OpenStreetMap. We have put all the feedback we have received and lessons we learned into the latest version: MapRoulette v3.

In a series of posts, I will highlight some great new features of this new version. This is the first post. Enjoy!

Filters

I heard from some mappers that they couldn’t find anything interesting to work on. We spent a lot of time making that easier, by adding different filters.

Location

You can quickly narrow down the list of available Challenges by zooming and panning the map, and selecting ‘Within Map Bounds’ or ‘Intersecting Map Bounds’ from the ‘Location’ dropdown menu. ‘Within Map Bounds’ will only show you Challenges that only have tasks within the current map view. ‘Intersecting Map Bounds’ will also show you Challenges that have some, but not all, their Tasks in the current map view. Additionally, you can narrow down the list to Challenges near your current location. This requires allowing browser access to your location.

See full entry

A while ago I launched a few challenges on the new MapRoulette (new! you should check it out :)) that have to do with motorway exit information in the United States. Lots of exits around here do not have that information, encoded mainly in destination, destination:ref, destination:to and destination:name tags.

A destination being added based on a Mapillary image

These tags are helpful for navigation users, so they can match what they see on the sign to what they see on their app. Many navigation apps, including OsmAnd, MAPS.ME and Scout use these tags.

Obviously, this information cannot be added from aerial images, but now that there is plenty of street level images from OpenStreetCam / Mapillary to choose from, adding destination info as a non-local mapper becomes much easier. That’s why I created these challenges.

See full entry

fixme=streetlevel

Posted by mvexel on 4 June 2018 in English.

I was going over unnamed ‘main’ roads in my area using this Overpass query in JOSM:

Most of the time I can use the TIGER overlay to add the missing names. Sometimes I stumble upon a way that should have been tagged as a roundabout or a link (and those usually do not have a name tag). There are some cases when a mapper has added a newly built road from survey or aerial images that does not appear on TIGER yet:

See full entry

The weather is nice and I want to go out mapping a little later. It would be nice to have a file and map with things that I wanted to check. Today I will use Overpass Turbo, a great web interface to the Overpass API that gives you all the tools you need to create a quick Survey Kit that you can take with you: a map you can print, and a GPX file to put on your phone or GPS receiver.

Let’s say I am interested in businesses that have no opening hours so I can go and add those while I am out. This is a query that would give you exactly that. It is probably not complete and could maybe be simpler, but it is quick for small areas and it does what I need :)

I run this query on a commercial / retail area near my house:

I can then export this as a PNG map to print

See full entry