OpenStreetMap Quality Assurance with a Garmin GPS
I've recently bought myself a new Garmin eTrex Vista HCx GPS to replace my older Garmin eTrex Legend unit. Because I don't want to shell out money for outdated maps, I have spend some time building my own map images for the Garmin with mkgmap and OpenStreetMap data. I will write more on that later.
Because most of the data in OpenStreetMap has been surveyed by volunteers, it is always possible that things are missing or done incorrectly. There are quite a few different tools on-line for quality assurance of the OpenStreetMap data, but I will be looking at two of them only.
OSM Analysis
First of all there is ITO World's OSM Analysis. This tool compares the OpenStreetMap data in the UK to the Ordnance Survey's Locator data. The latter is supposed to be the authoritative source of road names in the UK. For each of the 417 areas in the UK, the tool produces two lists; for example the one for Brent is here: http://www.itoworld.com/product/data/osm_analysis/area?name=Brent.
The first column lists all the corrections that Ordnance Survey ought to make in an updated version because one of OpenStreetMap's surveyors found it incorrect. The second column lists all the streets that are missing from OpenStreetMap.
Because it would be really useful to have this sort of data available on a hand-held GPS to be able to notice any of the highlighted missing roads on the go, I set out to convert this data to a map file suitable for the Garmin devices. I've published the scripts on github so that you can try it for yourself, but I've also put a ready made osmanal.img file on-line for download at http://derick.dev.openstreetmap.org/. In the near future I will use cron to run this conversion about once a week automatically.
Musical Chairs
Another tool that compares OpenStreetMap data with Ordnance Survey's Locator data is OS Locator Musical Chairs. Documentation on this project is available on the OpenStreetMap wiki.
The author of the Musical Chairs tool has provided a data dump highlighting all the disagreements it finds (including missing roads) while comparing OpenStreetMap data against Ordnance Survey's Locator data. I've written a tool that converts this data to another Garmin map image files with the scripts that I have published at github. With those scripts you can make your own image files, but like with the OSM Analysis I have made a ready-made file muschair.img available at http://derick.dev.openstreetmap.org/.
Using the map image files
Before you can use the two Garmin map image files, you either need to convert it to a stand-alone gmapsupp.img file by running:
java -jar /backup/osm/try4/bin/mkgmap-r1946/mkgmap.jar --gmapsupp osmanal.img
or:
java -jar /backup/osm/try4/bin/mkgmap-r1946/mkgmap.jar --gmapsupp muschairs.img
These commands produce a gmapsupp.img file that you can upload to your Garmin device. If you do this, you will not have any road data.
You can also merge this file with all your other maps to keep the road data, by running something like:
java -Xmx2048M -jar /backup/osm/try4/bin/mkgmap-r1946/mkgmap.jar \
--gmapsupp /tmp/music.img /tmp/osmanal.img \
UK/gmapsupp.img \
contours/gmapsupp.img
Which merges the Musical Chairs image file (music.img), the OSM Analysis image file (osmanal.img), the UK maps (UK/gmapsupp.img) as well as my UK contours line file (contours/gmapsupp.img). This again produces a gmapsupp.img file that you can upload to your Garmin GPS.
For further mkgmap usage details I would like you to point to it's page on the OpenStreetMap wiki: http://wiki.openstreetmap.org/wiki/Mkgmap or more generally to http://wiki.openstreetmap.org/wiki/OSM_Map_On_Garmin. I am also intending to publish my UK and contour map creation scripts after I've streamlined this process.
And now the maps have been on my GPS for a few days, I've identified and fixed a "disagreement" from Musical Chairs and a few others from the ITO World OSM analysis tool.
Life Line
I know my French is pretty terrible, but I'm sure I'm closer to the correct answer than what's shown here...
Merge branch 'v2022'
Merge pull request #169 from psumbera/solaris-2
I walked 7.0km in 1h6m48s
Fixed some ffing sidewalks again.
I walked 10.5km in 1h40m26s
Updated a pet_grooming shop
I walked 8.6km in 2h12m58s
I walked 8.7km in 1h24m16s
Updated a restaurant
I walked 2.4km in 24m20s
I walked 6.6km in 1h4m32s
I walked 0.6km in 4m38s
I walked 8.5km in 1h22m35s
Merged pull request #1029
Reflow some comments
Add comments, add end of file newlines, fix php 8.5 compilation
Benchmark Xdebug performance
Merged pull request #1051
PHP 8.6: printf() is now optimised out if it only uses %s and %d (and…
PHP 8.6: The object IDs of objects changed in tests
PHP 8.6: ZSTR_INIT_LITERAL() no longer takes non-literals, so use zen…
PHP 8.6: WRONG_PARAM_COUNT has been removed in favour of zend_wrong_p…
PHP 8.6: zval_dtor() has been deprecated in favour of zval_ptr_dtor_n…
Update test for version constraints, as well as the error messages


Shortlink
This article has a short URL available: https://drck.me/osm-qa-8p4