Presented together with Jan-Willem van Aalst and Frank Steggink at the Dutch CartoDay, March 15, 2017. See full program here: http://www.cartodag.nl/programma-cartodag-2017. Subject was how to eventually create online topographical maps from Open but Raw datasets: how to transform (ETL), create maps (QGIS), and publish on the web using Open Source service components like MapServer and MapProxy via http://map5.nl
Abstract in Dutch:
Om bruikbare kaarten te maken is tegenwoordig veel goede open geodata beschikbaar. Maar wat komt er allemaal bij kijken om dat zo praktisch mogelijk te doen? Deze sessie neemt je mee in de levenscyclus van open geodata met tooling zoals NLExtract , GDAL en QGIS . Een greep uit wat er langs komt in dit uur: het maken van PostGIS databases uit PDOK data; het maken van hillshading (reliëfschaduw) uit de AHN2/3; het maken van de OpenTopo kaartbeelden uit combinaties van PDOK bestanden; en het tegelen en opnieuw publiceren van allerlei kaartproducten, bijvoorbeeld op map5.nl .
De Levenscyclus van Open Geodata met Open Source Tools
1. De levenscyclus van Open
Geodata met Open Source
tools
Just van den Broecke Jan-Willem van Aalst Frank Steggink
Cartodag 2017 – Rotterdam – 15 maart 2017
www.nlextract.nl www.opentopo.nl
2. • NLExtract en vectordata (Just)
• NLExtract en rasterdata (Frank)
• OpenTopo: van PostGIS naar kaartbeeld
(J.W.)
• Kaartproducten publiceren (Just)
• Vragen en discussie over deze levenscyclus
In dit uur
20. Bron Resolutie Projectie Licentie
AHN 2+3 0,5 RD CC-0
Vlaanderen 1 Lambert 72 Vlaamse Open Data licentie 1.0
Wallonië 1 Lambert 72 Closed source
Nordrhein-
Westfalen
1 ETRS89 – UTM
zone 32N
Datenlizenz Deutschland
Namensnennung 2.0
Nord-Pas de
Calais
10 RGF-93 Open data (onbekend)
EU-DEM 25 ETRS89 Open data (Copernicus)
Ook ALOS World 3D – 30m is gebruikt, maar hier zitten teveel artefacten
in, wat een lelijk resultaat gaf.
Bronnen
24.
Data is al opgevuld
Herprojectie naar RD, met resolutie 50cm
Hillshade genereren
Datasets combineren: beste resolutie gebruiken
Verwerking buitenland
30. • PC met veel SSD, veel geheugen & snelle
processor
• PostgreSQL met PostGIS extensie
(www.postgres.org)
• QGIS (www.qgis.org)
• PDOK Plugin in QGIS
• PostGIS databases van NLExtract.nl (kan > 100 GB
zijn!)
• Hillshade rasterbestanden van NLExtract.nl
• Enig cartografisch gevoel
• Veel uren en geduld
Wat heb je nodig
38. • Bóven terreinvlakken, ónder water en
gebouwen!
• Op 80% transparantie, anders te dominant
• Bilinear / gemiddelde
Hillshading toepassen
39. 1. BAG pandvlakken of BRT/Top10NL
pandvlakken?
• Parkeergarages, kassen, hoogbouw…
2. Generalisatie: via andere datasets of via
visualisatie?
3. Labels afkappen langs de rand van de kaart
4. POI labels uit OSM of uit BRT/Top10NL?
5. Labels door QGIS laten plaatsen of uit
TopNamen?
6. Bomen uit BGT of uit BRT/Top10NL?
7. Wanneer is detail teveel detail? Doel van je
kaart?
Cartografische dilemma’s
40. BGT: bronhouders die andere keuzes
maken… toch maar TOP10NL erbij halen?
Cartografische dilemma’s
44. 5x per jaar het volgende proces:
1.Per 9e
van de maand BAG en BRK ophalen van NLExtract
2.Per 15e
van de maand OSM dumps + PostGIS ophalen van NLExtract
3.Per 18e
van de maand BGT PostGIS ophalen van NLExtract
4.Rond de 20e
van de maand Top10NL PostGIS ophalen van NLExtract
5.Overige kaartlagen bijwerken: PRK/RRGS, RWS
6.Data preparatie in Postgres PgAdminIII (vooral tekstlabels)
7.Schalen genereren met QGIS atlas composer @96dpi (8, 54, 153, 543,
1047, 3300 bladen, resp. 1, 2, 6, 12, 52, en 135 uur renderen)
8.Uitsnijden en comprimeren met GDAL
9.Conversie naar JPG en GeoTIFF met GDAL
10.Publiceren op data.nlextract.nl
OpenTopo publicatieproces
45. Op data.nlextract.nl:
1./bag/postgis: ~2 GB (uitgepakt ~45 GB XML)
2./bgt/postgis: ~10 GB en groeiend (~80% gereed per feb. 2017)
3./brk/postgis: ~1 GB (lijnen; ~3 GB vlakken)
4./osm/nl/: ~3 GB
5./osm/buitenland: ~3 GB
6./top10nl/postgis: ~2 GB
•Samen uitgepakt > 120 GB in de PostGIS database
•Geotifs en jpg’s OT/OST samen > 370 GB
Ruime hoeveelheid SSD (1 TB of meer) is aan te bevelen!
OpenTopo: “Big Data”…
52. NLExtract: de mensen
Jan-Willem van Aalst
Just van den Broecke
Bas Couwenberg
Matthijs van der Deijl
Richard Duivenvoorde
Stefan de Konink
Milo van der Linden
Edward Mac Gillavry
Tom Pesman
Reinout van Rees
Luuk Schaminée
Frank Steggink
Geodan
OpenGeoGroep
Stukje historie recapituleren: Vanaf 1 jan 2012 is het bergopwaarts gegaan met OpenGeoData in Nederland.
Stukje historie recapituleren: We kunnen downloaden….
Hoewel het soms even lastig vinden is. Hint: de BAG dataset via PDOK downloads heet “inspireadressen". En wat zijn nou weer Atom Feeds? Waarom niet gewoon een FTP Server? Of beter, zoals Ordnance Survey dat doet: een uniforme “product” interface en steeds meerdere download-formaten per dataset?
Tja, dan open je een .zip bestand, waarin weer andere .zip bestanden zitten. Uiteindelijk komen er files, maar probeer je die in je GIS-tool te slepen of zeg een BAG-bestand naar Excel met de verwachting adressen te zien, dan loopt de boel vast…
De leveringen bevatten uiteindelijk XML/GML, zoals beschreven in de serie IM* standaarden en bijbehorende XSDs (XML Schemas), vaak te vinden via Kadaster of Geonovum. Deze ruwe olie moet eerst geraffineerd worden, dus we kunnen ons opmaken voor een potje Data Wrangling!
Met een mooi geo-woord: gazetteer!
Ik hoef niet meer het belang van PostGIS uit te leggen, zeker gezien de spreker (Wouter Boasson) voor mij.
Als de data eenmaal in PostGIS zit, kunnen we alle kanten op: met QGIS kaarten opmaken, de adreszoeker, of met Map/GeoServer data ontsluiten als WMS/WFS.
NLExtract is dus niet 1 programma, maar een serie programma’s en verdere scripts en configuratie bestanden (bijv SLDs) georganiseerd per dataset. Er is dus een NLExtract-BAG tool, NLExtract-top10NL tool. De tools zijn vandaag de dag nog wel allen commandline maar we staan open voor GUI-bijdragen hierin.
Hierbij de datasets die momenteel door NLExtract worden ontsloten. In grijs/italic de datasets op de TODO lijst. 3D komt zo aan de orde vandaar de uitroeptekens daar.
Directory van data.nlextract.nl van februari 2017
Vanaf hier de slides van Jan-Willem, over hoe je met de PostGIS data de OpenTopo kaart met hillshading maakt.
Om in QGIS met PostGIS data aan de slag te gaan, heb je wel het een en ander nodig om goed te kunnen werken.
Als de data eenmaal in PostGIS zit, kunnen we alle kanten op: met QGIS kaarten opmaken (bijv. OpenTopo JW van Aalst).
Om snel met grote databestanden te kunnen werken in QGIS, heb je niets aan GML. Die moet eerst worden geconverteerd naar PostGIS, onderdeel van PostGRES. Dat moet je dus eerst installeren..
De PostGIS dumps van NLExtract kun je lokaal bewaren en met PGAdminIII restoren naar de PostGRES database. Die kan uiteindelijk meer dan 100 GB worden!
Als je de PostGIS databases eenmaal gerestored hebt, moet je nog wel in QGIS per database een verbinding definiëren.
Een voorbeeld van één kaartlaag uit de Top10NL, zonder opmaak/styling.
Stijlen maken kost even tijd, maar als je hebt dan zijn ze zeer nuttig.
De PDOK plugin van Richard Duivenvoorde in het zonnetje.
De Hillshaded bestanden van NLExtract zet je met 80% transparantie in de achtergrond, boven de terreinlagen, maar ónder de watervlakken.
Enige cartografische dilemma’s die je tegenkomt als je met meerdere bronnen werkt, en bijv. het plaatsen van labels.
Enige cartografische dilemma’s die je tegenkomt als je met meerdere bronnen werkt, en bijv. het plaatsen van labels.
Enige cartografische dilemma’s die je tegenkomt als je met meerdere bronnen werkt, en bijv. het plaatsen van labels.
Met de QGIS Atlas composer kan een serie aan kaartbladen worden gegenereerd.
Als de data eenmaal in PostGIS zit, kunnen we alle kanten op: met QGIS kaarten opmaken, de adreszoeker, of met Map/GeoServer data ontsluiten als WMS/WFS.
Als de data eenmaal in PostGIS zit, kunnen we alle kanten op: met QGIS kaarten opmaken, de adreszoeker, of met Map/GeoServer data ontsluiten als WMS/WFS.
Als de data eenmaal in PostGIS zit, kunnen we alle kanten op: met QGIS kaarten opmaken, de adreszoeker, of met Map/GeoServer data ontsluiten als WMS/WFS.
Zie ook https://github.com/opengeogroep/NLExtract/graphs/contributors