Historische versie BGT

Hallo Allemaal,

Ik heb een interessant vraagstuk waar mijn collega’s en ik niet helemaal uitkomen. Wij proberen namelijk de BGT op te splitsen per jaartal van 2016 tot en met 2023, hopelijk ben ik hier op de juiste plek voor nieuwe inzichten en mogelijk een oplossing of verklaring.

Ik heb de BGT met hierin de gehele wijzigingshistorie als geodatabase gedownload vanuit de Esri_NL_Datasets group van arcgis. Deze heb ik ingeladen in Arcgis pro, vervolgens heb ik de volgende lagen gecombineerd tot één laag, want ik probeer voornamelijk het oppervlak verharding inzichtelijk te maken:

  • bgt_ondersteunendwegdeel__ondersteunendwegdeel_grijs
  • bgt_wegdeel__wegdeel_grijs
  • bgt_scheiding__scheiding
  • bgt_overigescheiding__overigescheiding
  • bgt_overbruggingsdeel__overbruggingsdeel
  • bgt_onbegroeidterreindeel__onbegroeidterreindeel

Aan de standaard BGT data heb ik zelf een field (MAX_LV_publicatiedatum toegevoegd met hierin per elk uniek id uit het veld “identificatie_lokaalID” de maximaal waarde van LV_publicatiedatum. Om volgens mij zo enkel het meest actuele object uit te filteren op 31 december 2016 volgens het filter op de afbeelding hieronder:

Maar waar ik vervolgens tegen aan loop na het toepassen van dit filter is dat er nog een groot aantal dubbelingen in de geometrie overblijven. Een deel hiervan betreft viaducten etc, deze zijn logisch te verklaren via field “relatieveHoogteligging”, maar ook zitten er objecten tussen met unieke ID’s in field identificatie_lokaalID die grotendeels overlappen en bijna dezelfde oppervlakte hebben en die in objectEindTijd en tijdstripregistratie/eindregistratie elkaar op lijken te volgen (een mutatie fout misschien?).
Bijvoorbeeld deze twee id’s: L0004.752dd8959cd245448b413a747e0524ff, L0004.dc2d5bce890a488a8dd4156f486170e1

Als ik de toelichting bij de BGT goed begrijp zou iedere mutatie hetzelfde identificatie_lokaalID moeten ontvangen behalve als er splitsing of samenvoeging plaatsvind?

Dus mijn vraag is: Heeft iemand misschien inzicht in waar ik iets fout doe of misschien een andere oplossing om te zorgen dat ik een specifiek moment in tijd kan uitfilteren zonder of met minimale te verantwoorden dubbelingen.

Als jullie nog meer info nodig hebben dan hoor ik het graag. Ik zal maandag weer naar de post kijken en eventuele vragen beantwoorden. In ieder geval alvast bedankt en fijn weekend!

2 likes

Als ik het goed begrijp wil je eigenlijk meten in welke mate de verharding toeneemt of afneemt in een gebied?

Dan ben je in elk geval geïnteresseerd in de objecten met een, voor het gemak, lv-publicatiedatum van voor 1 januari 2017, voor het peiljaar 2016, en een einde geldigheid gelijk aan of na 1 januari 2017 of null.

Aangezien je een vergelijking over verschillende jaren wilt doen, zonder dat het veel uitmaakt wat voor soort verharding het is, kan je wellicht per jaargang een raster laag maken. Als er een object een rastercel overlapt, geef je een 1 mee. Zo niet, een 0.
Op die manier kan je via raster analyse heel snel de toename of afname per jaargang zien.
Zo ontloop je het probleem van de lokal-ids en dubbelingen. 1 ‘hit’ met een verharding in de rastercel is genoeg om het als ‘verhard’ aan te merken.

Nog een tip voor wat betreft actualiteit: BGT Bronhouders maken dikwijls ook gebruik van luchtfotomutatiesignalering. Als je 1 januari als peildatum neemt, meet je eigenlijk of het Bronhouders lukt die mutatiesignaleringsbestanden voor de Kerst af te hebben. De luchtfoto opnamedatum is vaak het voorjaar, dus eigenlijk zijn dat ook nog eens de mutaties van het jaar daarvoor (2015).
Neem je bijv 1 maart of 1 april (2017) als peildatum over het jaar ervoor (2016), dan heb je meer kans dat dat lichtfotomutatiebestand is doorgewerkt en dat de mutaties van oktober (2016), november (2016) ook in de BGT zijn verwerkt (per maar-april 2017).

Succes met de analyse!

2 likes

Hey Thomas,

Enorm bedankt voor je reactie.
Klopt ik probeer inderdaad te meten in welke mate de verharding toe- of afneemt.

Ik weet niet helemaal of ik volg wat je hier voorstelt:

Ik interpreteer hem als volgt:

Is dit wat je bedoelde of heb ik het mis? Als ik dit filter toepas krijg ik bij de eerste stap (LV_publicatiedatum is less than 01-01-2017) al geen resultaten terug omdat alle data wordt uitgefilterd. Los daarvan is het ook niet zo dat er met terugwerkende kracht objecten worden gecorrigeerd in de BGT en dus na het betreffende jaartal worden gepubliceerd?

Ik werk zelf eigenlijk nooit met rasterlagen dus misschien een beetje een domme vraag, maar hoe ontloop je precies het probleem van de dubbelingen door de rasterlagen toe te passen. Als er twee objecten over elkaar liggen die beide overlappen met een rastercel, krijgen deze dan niet beide een 1 mee en mis je hiermee ook niet de gelaagdheid zoals bruggen, viaducten parkeergarages etc?

Goeie tip voor de actualiteit, daar had ik zelf nog niet bij stil gestaan. Die gaan we zeker toepassen.

Thanks - Daan

We hebben voor de BGT ook de OGC API features https://api.pdok.nl/lv/bgt/ogc/v1/collection beschikbaar gesteld waarmee je default alle historie opvraagt. Je zou misschien op basis hiervan een subset van informatie kunnen bevragen en gebruiken voor je specifieke analyse?

Dat zou misschien wel handig kunnen zijn, maar het ziet er wel ingewikkeld uit als zo even rondkijk. Ik heb nog nooit eerder iets op deze wijze opgevraagd.

Als ik het volg dan moet ik uiteraard wel precies weten wat ik moet bevragen om de gewenste output te krijgen, en daar gaat het nu in ieder geval nog niet helemaal goed. Of is het makkelijker dan ik denk en kan ik via de API features simpelweg vragen om een specifiek jaartal?

Ik kon zo snel met een beetje rondkijken nog niet helemaal uitvogelen hoe ik de bevraging moet formuleren en hoe het precies te werk gaat. Misschien voor nu nog iets te lastig.

Hallo Daan,

Voor het jaar 2016 zijn de objecten die aan deze twee criteria voldoen:
“LV_publicatiedatum is less then 01-01-2017 AND objecteindtijd is greater or equal to 01-01-20-17”
OR
“LV_publicatiedatum is less then 01-01-2017 AND objecteindtijd is null”

wat je nu aan de computer vraagt zijn de objecten die voor 01-01-2017 zijn gepubliceerd EN een eindtijd na 2017 hebben
OF
alle objecten die geen eindtijd hebben. (onafhankelijk van wanneer ze zijn gepubliceerd).

geen 2016?
Wel vreemd dat er geen objecten van voor 2016 zijn gevonden die intussen beëindigd zijn. In welk gebied zit je? Het kan toeval zijn als het een klein gebied is waar in al die jaren niets is gewijzigd. Of misschien dat die bronhouder toevallig net na 2016 is aangesloten op de BGT zodat er daarvoor niets is gepubliceerd; of na 2016 een keer een complete hervulling heeft gedaan? En dat Esri de historie heeft weggelaten in hun dataset? Maar het klinkt wel vreemd in mijn oren.

Rasterlaag
wat betreft de rasterlaag per jaargang moet het juist precies andersom. Wat je wilt is een leeg rasterlaag aanmaken en per rastercell een waarde 1 “inbranden” als er overlap is met een verhardingpolygoon en een 0 of NULL als er geen overlap is.
Vervolgens kun je de jaargangen met elkaar vergelijken om de toe- of afname te visualiseren.

Rasteren lijkt mij te gecompliceerd, en hoeft ook niet naar mijn mening. In een casus als deze is het eigenlijk noodzakelijk dat je per tijdsinterval dat je wilt bestuderen (ik zou in dit geval voor jaar kiezen), je een snapshot maakt. Vervolgens Dissolve je geometrieen die elkaar overlappen (vanwege dubbelingen, of vanwege relatieve hoogteligging, of wat voor reden dan ook). Van elk dissolved snapshot geef je de geometrieën dezelfde datum naar keuze, en dan kun je (in ieder geval in QGis) met een tijdslider de verschillende geometrieën zichtbaar maken gebaseerd op die datum. Je kunt er dan zelfs (wederom door QGis) de plaatjes voor een filmpje van maken. Maar ook word het dan eenvoudiger om verschillende selecties van elkaar af te trekken, en zo delta’s te genereren.
De reden van het kiezen van een snapshot-moment, en het dissolven, is dat 1 en hetzelfde objeect meerdere wijzigingen in een jaar kan ondergaan. Dus je moet ergens een grens trekken, en zeggen: in dit jaar was de situatie zo en zo, ondanks dat een object wel 3 keer voorkomt in dat jaar, met mogelijk meerdere wijzigingen in geometrie en/of attributen.

Grootste probleem dat ik hier zou hebben is dat ik het datamodel van de BGT niet goed genoeg ken, omdat ik die nooit gebruik. Dus ik durf niet te zeggen hoe je het beste alle selecties per tijdsinterval maakt, maar dat is wel een essentieel onderdeel van deze aanpak. Dit is de manier waarop ik zoiets zou aanvliegen.

En als laatste: let ook op verschillen tussen bronhouders. Dat kan nog wel eens behoorlijk zijn, zeker in het buitengebied (de voornaamste reden dat ik de BGT nooit gebruik).

Ik heb bovenstaande onder de aandacht van de beheerders van de BGT gebracht, mogelijk kunnen zij je nog een stapje verder helpen.

2 likes

Ik vond het zelf inderdaad ook al raar dat er geen objecten van voor 2016 werden gevonden. Maar kon niet direct een logische verklaring vinden waarom dit het geval was. Dat ESRI historie heeft weggelaten lijkt mij niet heel waarschijnlijk, maar wie weet.

Het gebied waar ik mij nu op richt is Den Haag met als kader de stadsgrenzen vanuit openbare data van het CBS. Ik zal jouw nieuw voorgestelde filter nog eens proberen.

Dit is inderdaad de aanpak die ik ook voor ogen had. De Dissolve tool had ik zelf nog niet gevonden, maar eigenlijk is het wel zonde dat je hierdoor de hoogteverschillen kwijt bent. Hoewel dit op zijn minst te verantwoorden is in tegenstelling tot de huidige dubbelingen. Wellicht is dit de oplossing, maar ik ben benieuwd of het ook kan zonder dat dit ten koste gaat van de hoogteverschillen.

Dan blijft alleen de kwestie van de juiste filters toepassen over, maar dat blijkt dus nog ietsje lastiger te zijn dat gedacht.

In ieder geval bedankt voor het meedenken en de tip van de Dissolve tool.

Natuurlijk kan dat, maar het maakt de analyses wat gecompliceerder. Hoeft geen probleem te zijn, en is heel erg afhankelijk van je informatievraag. Over het algemeen (ik ken ArcGis Pro niet meer zo goed, heb er al heel lang niks meer mee gedaan) kun je je dissolve rekening laten houden met attributen, dus daarmee zou je de relatieve hoogteligging mee moeten kunnen nemen. Je blijft dan een zekere mate van overlap houden, zoals bij het Hubertus-viaduct en het Prins Clausplein, dus met bijvoorbeeld oppervlakte berekening zul je daar rekening mee moeten houden.

Ik kon het niet laten toch zelf wat uit te proberen (op mijn manier met die rasters :slight_smile: ).

Hoe donkerder het groen, des te recenter gemuteerd.
Al komt nog niet zo lekker uit de verf of het van groen > groen is gemuteerd of dat het echt grijs (Verhard, onbegoeid) was en nu een begroeid terreindeel is geworden.

In opvolging van mijn eerdere bericht: vanuit BGT en PDOK lijkt het er meer op dat het uitzoekwerk zit in de visualisatie en analyse van de gegevens in de gebruikte software dan dat er sprake is van issues in voorkomens/objecten. Met andere woorden datatechnisch zou er geen issue moeten zijn.
Volgens mij ben je al een eind op weg geholpen @DaanJansen ?