OSM quality assessment with QGIS: network length

In my previous post, I presented a Processing model to determine positional accuracy of street networks. Today, I’ll cover another very popular tool to assess OSM quality in a region: network length comparison. Here’s the corresponding slide from my FOSS4G presentation which shows an example of this approach applied to OSM and OS data in the UK:


One building block of this tool is the Total graph length model which calculates the length of a network within specified regions. Like the model for positional accuracy, this model includes reprojection steps to ensure all layers are in the same CRS before the actual geoprocessing starts:


The final Compare total graph length model combines two instances of “Total graph length” whose results are then joined to eventually calculate the length difference (lenDIFF).


As usual, you can find the models on Github. If you have any questions, don’t hesitate to ask in the comments and if you find any issues please report them on Github.

  1. Admin said:

    Thanks for work. I am unable to understand what values would be submitted for region and field ID when comparing the two street maps. In addition does this check for the completeness of the map in terms of attributes. I would be thankful for your valuable time.

    • Hi. This test only checks network length. Attribute completeness is not part of this evaluation. As input you need to specify regions (e.g. the cells shown in the example on the slide with unique ids). Additionally, you need to tell the script which field contains the unique ids, that’s specified as “region id field”.

      • Admin said:

        Thanks for reply,
        1. If in case some data set does not have those region ID, what can be done? OSM data has osm-id but the second data does not have it.
        2. How to input the regions and field ID in the model?


      • When you create the region dataset, make sure to add an id field e.g. using field calculator.

  2. Admin said:

    Mam ,

    As i am new to QGIS, if you share the link/step to create region and ID of map data. I would really appreciate it. as i think very near to start using your plugin. Thanks once again

    • If you use the Vector | Research tools | Vector grid tool, it can create a polygon grid (make sure you check the option!) which comes with an ID attribute. If instead you want to use some other region data, you can add ids using the $rownum function in Field Calculator. For more questions, please use http://gis.stackexchange.com

      • Admin said:

        thanks for information,
        Total length of graph worked and got total length by region id .

        But when i try to use compare graph and positional accuracy model with all parameters, it executes and without showing output, qgis quits automatically. I tried many times.

  3. Admin said:

    I compared using the testdata provided by you it also show the -ve values in inbufPERC and inbufLEN. what is the maning of -ve values there and is the length in meters?


    • Admin said:

      Can this be the problem of Operating System ?

      • These models were created for Processing 1.1. Currently, QGIS ships with Processing 2.4 and not all models seem to be compatible. You will have to recreate the second model using the tools depicted in the screenshot of the old model.

%d bloggers like this: