He a'a /'--jÜr - A Gewogen splits Evaluatie van het resultaat gewicht 1 gewicht 1 gewicht 3 wijzig zijde C V. x' Buur C r* \J i i i; *S y wijzig zijde B S, x' 1' 's Buur B i -s einde 'A zijde B Buur A start zijde A Figuur 4 - Bekend maken van links/rechts verwijzingen voor de nieuwe skeletsegmenten. Er wordt gestart op een bestaande grens tussen twee buurviakken. Merk op dat delen van het skelet die dezelfde links/ rechts verwijzing hebben gekregen rood gestippeld worden weergegeven en zullen worden verwijderd. voorzien zijn van de correcte links/rechts info. Aan het einde van deze procedure, kunnen er skeletsegmenten zijn, die zowel links als rechts dezelfde vlakreferentie dra gen. Dit betekent dat deze segmenten in de vlakkenpartitie geheel omsloten zijn door hetzelfde buurvlak. Deze skeletsegmenten worden vervolgens verwijderd. Als laatste stap worden uit de skelet segmenten samen met de aanliggende buurgrenzen zo lang mogelijke polylijnen samengesteld, die de nieuwe grenzen vormen van de aanliggende buren. Deze grenzen (edges in de topologische data structuur) vervangen de grenzen van het gesplitste object en de aanliggende gren zen in de vlakkenpartitie (zie Figuur 1). Om ervoor te zorgen dat buren, die aantrekkelijker zijn grotere delen krijgen toebedeeld, introduceren we nu de gewo gen variant van ons algoritme. Om een gewogen oplossing te krijgen, worden er gewichten toegekend aan de originele vlakgrenzen op basis van de attractiviteit van elke buur. Voor elke vertex van de originele vlakgrenzen kan zo een gewicht worden vastgesteld (waarbij het gemid delde van de attractiviteit genomen wordt als er twee buurgebieden bij een vertex horen). De punten van de skeletsegmenten kunnen op basis van deze gewichten wor den verschoven langs de ongeconstrainde zijdes van de driehoeken in de triangulatie. Hiermee wordt het als het ware mogelijk de nieuw te bepalen vlakgrens meer naar een bepaalde kant in het originele vlakte duwen, waardoor een buur een groter deel van het te splitsen vlak verkrijgt. Figuur 5 illustreert het gebruik van gewichten. Eveneens hadden we als wens dat het mogelijk moet zijn om een originele vlakgrens te behouden, nadat de splits- operatie is uitgevoerd. Dit past in het werken met gewichten, als een gewicht van o geïntroduceerd wordt. Hierdoor kunnen situaties waarbij een buurvlak zeer incompatibel is, worden behandeld, en ook de situatie waarbij een te splitsen object aan de rand van het gekarteerde domein ligt, wordt hiermee opgelost. Als twee klassen objecten zeer incompa tibel met elkaar zijn, dan leidt dit tot een compatibliteitswaarde die nul is (of daar dichtbij ligt). Daarom plaatsen we een gewicht van 0 op alle vertices van grenzen die niet verplaatst mogen worden (en terug moeten komen in de output van de splitsoperatie). Meer details over het werken met gewichten voor de gewogen splits zijn te vinden in (Meijers, 2011). Per splits bekijken we van te voren aan de hand van de attractiviteit wat de theoreti sche oppervlakteverdeling zou moeten zijn. Voor de door het algoritme gerealiseerde verdeling wordt vervolgens een foutwaarde bijgehouden ten opzichte van het ideaal beeld. Hierdoor wordt het mogelijk om in detail te bekijken, welke resultaten niet aan het ideaalbeeld voldoen. Figuur 6 toont hier een aantal varianten van. Na nadere bestudering werd duidelijk dat het ideaalbeeld voor deze gevallen niet gehaald kon worden, doordat het algoritme op triangulatie is gebaseerd (waarbij de ruimtelijke configuratie dan soms 'ongelukkig' uitpakt voor de gewogen splits). De oplossing die we daarvoor heb ben bedacht, is eenvoudig te realiseren: Door aan de grenzen van het te splitsen vlak tijdelijk extra vertices toe te voegen, worden meer driehoeken gegenereerd. Hierdoor wordt de mogelijkheid geboden om een betere vlakverdeling te realiseren. Echter, ook na deze aanpassing, blijkt dat er nog limieten zijn voor de verdeling van een te splitsen vlak, door de manier waarop er getrianguleerd wordt. Om een nog beter resultaat te verkrijgen is het daarom nodig om andere methodes van splitsen te onderzoeken, die bijvoorbeeld exact het midden bepalen en daarbij niet worden Figuur 50 - Gewone splits (alle buren zijn even attractief). Figuur 5b - Gewogen splits (buren verschillen in attractiviteit). Figuur 5 - Gewichten worden toegekend aan de originele vlakgrenzen op basis van de attractiviteit van elke buur en zo wordt het mogelijk om de gegenereerde grenzen binnen het te splitsen vlak te verschuiven. Geo-lnfo 2013-3 17

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

Geo-Info | 2013 | | pagina 19