Reporting back from State of the Map 2019

I’m just back from State of the Map 2019, the annual global OpenStreetMap meetup. I gave a talk about the solar mapping project (video here) and had lots of great conversations with people.

Here are some notes from conversations I had about solar PV mapping:

  • I had a good talk with the people from Mapillary. Mapillary have a good collection of street-level imagery, they do automatic detection of objects, and they are already integrated into OSM (e.g. a Mapillary JOSM plugin helps people to use their imagery and even their auto-detections). Note that they’re a private company and so I guess they don’t share their ML methods or pre-trained networks, though they do explicitly share imagery (and some of their detections) with OSM. They do NOT currently have a tag for solar PV or suchlike. Here’s a plan:

    1. They’re going to add a “solar panel” tag into their online system. This will be about two weeks from now.
    2. People (us?) will then be able to use their online editor to tag solar PV objects in street-level imagery. This does not directly mean anyone’s going to be doing any auto-detection. But it does give us a new and different source of imagery to spot solar PV in.
    3. We’ll be able to use the Mapilary plugin (I think) to add those streetside-spotted items to the map.
    4. If we can tag a good diverse set of small-scale solar PV - say, a few hundred of them, in different countries - then we will be in a position to start chatting to Mapillary about whether they’re interested in training some auto-detection for that tag.
  • In the UK we’ve mapped solar farms with the power=plant tag, which is good because it makes them clearly different from the individual solar panels tagged as power=generator. However, around the world this isn’t the case. Lots of people have mapped solar farms with single large power=generator tags. This is not necessarily terrible because we can identify large objects when we postprocess. It’s problematic if people are using single nodes to mark solar farms though, since it’s hard to tell the difference between a 10 kW and a 100MW installation without more detail. I hope we can convince the wider community that our way of tagging (which comes directly from the established power tagging) is the way to go.

    • Although the editing tools have a preset for solar panels, they don’t have one for solar farms / solar parks. We should try to propose a preset for JOSM and iD. It would fill in the basic tags, and offer a textbox for entering the capacity. Also it’d be good to ofer a text box for the start date, to gather that if known. QUESTION: Any other metadata important to gather about a solar farm, that has meaning worldwide?
    • The default map rendering on doesn’t render anything for the power=plant tag. This may be acting as an incentive for people to stick with power=generator, because of the visibility of the results. (Some people add landuse=industrial to solar farms, which is no problem for us; I don’t know if they’re doing it because it renders quite nicely.) We should ask the maintainers of the openstreetmap-carto rendering style if they’re willing to render solar farm areas, perhaps just the standard industrial colour.
  • I met Julien Minet who had created a highly detailed service for the city of Brussels. The city commissioned a LiDAR survey of all the buildings, giving them a very detailed 3D model. The developers used this model to predict the solar energy yield for every single roof part (can be multiple on each building!), and made this into a very nice app for people to predict their personal projected benefit of installing solar PV. This is the kind of detail that only a well-organised city can feasibly manage… It’s a high-res version of what “open solar map” did for France, which is a more scalable example.

  • How to vectorise blobs from pixelwise detections… it seems it’s fairly common knowledge. QGIS at least has a function for it (“polygonize”) which offers at least a starting point, though it’s very simple-minded (it traces all the edges of pixels - you need to run a “simplify geometries” afterwards). Facebook’s new “rapid” ML-assisted editing tool proposes building shapes for the user to add, so they are doing the process too somehow. (I’m pretty confident they’re doing that as postprocessing, not some fancy ML that directly spits out geometries.) I don’t know which are the current leading methods for this.

  • I like the look of Facebook’s approach to machine-augmented editing. They made a modified version of the iD editor (and named it rapiD), which offers machine-proposed areas for the user to confirm-and-edit one by one. I wasn’t able to attend their demo though so I don’t have more details e.g. whether it’s stable, whether we could adapt it.

  • There’s lots of latent interest in trying machine learning detectors on aerial imagery - I saw a couple of talks about doing this for other purposes. Largely using methods we’d recognise from other work (i.e. convnets). I saw a talk from IBM using CycleGAN which seemed to me a very odd choice of method, I’d not recommend that! On the other hand, I started to wonder whether we should be organsing a small-scale-solar-PV-detection data challenge. (We don’t need to worry about detecting large-scale solar, there’s existing work on this already.) We’ve got sufficient annotations for the UK now to make ML training sets - I guess the key question is whether we can get good enough imagery, and whether it’s something that’d be of benefit. We could use aerial or even streetside imagery. As well as Mapillary I chatted to Maxar (aerial imagery providers) - the Maxar fellow mentioned a US company/charity called something like CrowdSpark (I THINK - or maybe it was a different company) that has organised data challenges related to development/aid. If we did put together a data challenge, what approach would be most likely to lead to detections that (a) could help us complete the UK, (b) would help us to scale globally? I don’t know if this is worth pursuing though - can perhaps simply rely on existing object detectors rather than assuming it needs novel effort - TBC.

  • I caught up with Jerry (SK53) who was a key player in the OSM UK solar mapping. Didn’t manage to catch up with Jez Nicholson - somehow we missed each other!

Overall, there was lots of enthusiasm for the idea of mapping all the solar PV, and I’m really glad to have been at SotM to talk about it.


Thanks loads for this excellent write-up, Dan!

QUESTION: Any other metadata important to gather about a solar farm, that has meaning worldwide?

Tilt angle & orientation would be useful.

Terrific thanks Dan.
Let me know if there are specific tasks you think I can help with.

I love the idea of a small scale ML PV challenge. I was thinking OpenAerialMap would be a good source for that, and when I last looked I think there are maybe 50-100 surveys with PV there to use.
There’s also the NY state aerial survey imagery which is open and has PV labels. So we might have all the imagery we need for a challenge.
Do you think we need any other partners? Should there be a prize?

For panels on flat roofs which are angled is it reasonable to expect the tilt angle to be close to optimal for the location? We may need to discriminate between panels which sit directly on the roof and those mounted in a framework on the roof (relatively unusual and mostly on commercial buildings). Building height & basic roof geometry can help with tilt for the rest.

I looked at using EA Lidar to calculate roof steepness, but the resolution of 1m is not really adequate. There is certainly a degree of variation: BISF houses have a very shallow roof profile whereas most 1930’s houses are around 30 degrees (10 m deep, approx. 5m high to bargeboards & 7.5-8 m max roof height). House age may be a decent proxy in the first instance.