OpenStreetMap

Spot checking the openstreetmap-carto style

Posted by lxbarth on 19 December 2012 in English (English)

Andy Allan recently ported the OpenStreetMap standard style from pure Mapnik XML to CartoCSS and TileMill. This is exciting as it's a huge step towards making contributing to the style more accessible. The port is nearly perfect and kinks are being worked out right now. I took a minute to spot check and pull together a couple of screenshots showing just how close this awesome piece of work is. I hope to see this go up soon on OpenStreetMap.org. Andy's port wouldn't change anything about how tiles are being rendered on OpenStreetMap, all that changes is how the style for those styles would be created: In the future, we'd use TileMill and generate the Mapnik XML from user friendly Carto CSS.

Here is San Francisco in the new OSM-carto port, just looks like the existing map:

Setup

For spot checking I use the comparison app that Ian and Tom cobbled together using OpenStreetMap US servers and bl.ocks.org. It shows the existing OSM Standard style to the left (I'll just call this style 'OSM' for the remaining post) and the new port to Carto CSS on the right (I'll call it 'OSM-carto' for the remaining post). Note: right now it's slow / down as performance problems are being figured out.

What follows here is a quick log from my review, others have been busy spot checking, too, head over to the issue queue to find out more.

School labels are different

School labels aren't bold in the new OSM-carto style. This has been fixed in the meantime.

OSM (existing):

OSM-carto (new):

Complex junctions

Complex junctions seem to be rendering great with roads correctly rendered on top of each other and labels placed well.

OSM (existing):

OSM-carto (new):

OSM-carto has halo on secondary

OSM has no halo on secondary, while OSM-carto does have one in orange (see Castro street label) #25.

OSM (existing):

OSM-carto (new):

OSM-carto has no halo on tertiary

To the contrary, OSM has a white halo on tertiary highways where OSM-carto has none #24.

OSM (existing):

OSM-carto (new):

Label placement seems to be slightly different

This might be due to slightly stale data and generally doesn't seem to make a difference in terms of cartographic quality. In this difference rendition between the OSM and the OSM-carto style you can see how all labels seem to be offset by a certain factor and some street labels are placed at different positions along the way.

Low zoom levels

Low zoom levels look almost perfect at quick inspection. I do not know where differences in labels (see Sapporo for instance) come from.

OSM (existing):

OSM-carto (new):

Mid zoom levels are almost 100% the same

OSM (existing):

OSM-carto (new):

Difference:

Differences in landcover order

There are some known differences in the order of land cover. This is being worked out right now in #15. Here is an example where the difference in landcover order surfaces in the visual result.

OSM (existing):

OSM-carto (new):

Comment from Gnonthgol on 20 December 2012 at 20:35

I see a flaw in your setup that might be the cause of a lot of the differences. Mapnik is not very determenistic and small variance in the input data such as order of elements etc. can make a big difference in the rendered map. You are using a relativly newly imported database for the carto rendering and a very old database for the osm rendering. For a propper comparason you should use the same database for both maps.

However the differences that are now are not important at all and I think the carto style is a lot closer to the original mapnik style then necessary.

I would love to see some new development on the osm style.

Hide this comment

Comment from lxbarth on 20 December 2012 at 20:47

I see a flaw in your setup that might be the cause of a lot of the differences. Mapnik is not very determenistic and small variance in the input data such as order of elements etc. can make a big difference in the rendered map. You are using a relativly newly imported database for the carto rendering and a very old database for the osm rendering. For a propper comparason you should use the same database for both maps.

Thanks for pointing this out, Gnonthgol. I sort of had this hunch especially with label placement.

I would love to see some new development on the osm style.

Can't wait for that, personally.

Hide this comment

Leave a comment

Parsed with Markdown

  • Headings

    # Heading
    ## Subheading

  • Unordered list

    * First item
    * Second item

  • Ordered list

    1. First item
    2. Second item

  • Link

    [Text](URL)
  • Image

    ![Alt text](URL)

Login to leave a comment