Kartografické generalizační algoritmy Generace bodových prvků/skupin. Generalizace liniových prvků/skupin. Generalizace plošných prvků/skupin. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie. Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 1 / 155
Obsah přednášky 1 Ukázka použití 2 Kartografická generalizace Generalizace bodových prvků Generalizace liniových prvků Generalizace plošných prvků 3 Algoritmy pro generalizaci bodových prvků 4 Algoritmy pro zjednodušení tvaru liniových prvků 5 Hodnocení efektivity generalizace liniových prvků 6 Vyhlazovací algoritmy pro lomené čáry Vyhlazování průměrem Vyhlazení filtrováním 7 Algoritmy pro zjednodušení obvodu plošných prvků 8 Algoritmy pro změnu prostorové dimenze plošných prvků 9 Algoritmy pro zjednodušení tvaru plošných prvků 10 Algoritmy pro generalizaci plošných prvků agregací 11 Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 2 / 155
Ukázka použití 1. Ukázka geometrické generalizace, liniový prvek Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 3 / 155
Ukázka použití 2. Ukázka geometrické generalizace, liniový prvek Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 4 / 155
Ukázka použití 3. Ukázka geometrické generalizace, polygon Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 5 / 155
Ukázka použití 4. Ukázka geometrické generalizace, polygon Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 6 / 155
Ukázka použití 5. Generalizace budov, výchozí stav Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 7 / 155
Ukázka použití 6. Generalizace budov, výsledek Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 8 / 155
Kartografická generalizace 7. Prostorová data Prostorová data mohou být prezentována ve statické či dynamické formě. Interakce s uživatelem: zoom, rotace, posuny. Prostorová data jsou reprezentována v různých měřítcích multicale representation. V každém měřítku nemohou být zobrazeny všechy podrobnosti. Při přechodu mezi měřítky (z většího do menšího) lze zobrazit pouze podmnožinu původních dat, nutno upravit či změnit jejich prostorovou reprezentaci. Změna prostorové reprezentace závislá na čase: Data Update. Změna prostorové reprezentace závislá na měřítku: Data Generalization. Důvody změn prostorové reprezentrace dat: hardwarové: minimalizace HW nároků (zoom, animace), kartografické: mapa jakožto věrný obraz terénu napříč měřítky. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 9 / 155
Kartografická generalizace 8. Prostorová reprezentace dat Změny prostorové reprezentace dat zahrnují: Geometrické transformace Cílem úprava geometrických parametrů prvků v datasetu. Přemístění, zjednodušení tvaru, eliminace, typifikace, vyhlazení. Transformace vzájemných vztahů Úprava vzájemných prostorových vztahů jednotlivých prvků. Topologické vztahy, významové vztahy (vzájemná pozice objektů). Tematické tranformace Změna kartografické reprezentace objektů. Agregace, regionalizace. Důsledkem změn prostorové reprezentace dat je kartografická generalizace. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 10 / 155
Kartografická generalizace 9. Kartografická generalizace Definice kartografické generalizace dle ČSN 73046: Kartogracká generalizace spo ívá ve výb ru, geometrickém zjednodu²ení a zev²eobecn ní objekt, jev a jejich vzájemných vztah pro jejich gracké vyjád ení v map ovlivn né ú elem, m ítkem mapy a kartograckého znázor ování. Charakteristika kartografické generalizace: Proces řízené redukce dat, výsledkem nové kartografické dílo, které je odvozeno z původního kartografického díla. Dochází k nevratné ztrátě informací. Subjektivní proces, významnou roli hraje osoba kartografa. Abstrakce Algoritmizace kartografické generalizace velmi obtížná, neexistence exaktních kritérií hodnotících výsledky generalizačního procesu. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 11 / 155
Kartografická generalizace 10. Faktory kartografické generalizace Ovlivňují postup a výsledek generalizačního procesu. Přehled faktorů kartografické generalizace: Účel mapy Ovlivňuje obsah mapy, podrobnost obsahu, stanovuje, které prvky jsou podstatné/nepodstatné v závislosti na účelu mapy. Měřítko mapy Na základě vztahu měřítka původní a generalizované mapy stanoveno množství objektů použitých v generalizované mapě (nepřímá úměrnost). Charakteristika území Zohlednění vlastností a charakteru území, generalizaci nelze provádět mechanicky pouhou redukcí obsahové složky mapy. Kartografické vyjadřovací prostředky Volba vhodných kartografických vyjadřovacích prostředků v závislosti na generalizačním procesu. Generalizační algoritmy aplikovány hromadně ve formě tzv. generalizačních schémat. Důležitá posloupnost jednotlivých kroků. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 12 / 155
Kartografická generalizace Generalizace bodových prvků 11. Generalizace jednotlivých bodových prvků Metody generalizace (transformace) jednotlivých prvků: Metoda AJ ekviv. Popis metody Přemístění Displacement Odstranění bodového prvku z datasetu, pokud je vzdálenost mezi ním a dalším prvkem datasetu příliš malá. Eliminace Elimination Odstranění bodového prvku z datasetu, pokud je příliš malý Zvětšení Magnification, Exxagregation Bodový prvek zvětšen tak, aby mohl být znázorněn v měřítku mapy Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 13 / 155
Kartografická generalizace Generalizace bodových prvků 12. Ukázka metod generalizace bodových prvků (Zhilin, 2007) Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 14 / 155
Kartografická generalizace Generalizace bodových prvků 13. Generalizace množin bodových prvků Metody generalizace (transformace) množin bodových prvků: Metoda AJ ekviv. Popis metody Agregace Aggregation Nahrazení množiny bodových prvků jedním. Regionalizace Regionalization Ohraničení bodové množiny polygonem, převod na plošnou reprezentaci. Selektivní vynechání Zjednodušení struktury Selective Omission Structural Simplification Výběr významných bodových prvků a jejich ponechání. Zjednodušení složitosti struktury bodové množiny odstraněním některých bodových prvků. Typizace Typification Odstranění bodových prvků se zachováním vzoru. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 15 / 155
Kartografická generalizace Generalizace bodových prvků 14. Ukázka metod generalizace množin bodových prvků Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 16 / 155
Kartografická generalizace Generalizace liniových prvků 15. Generalizace (transformace) liniových prvků Metody generalizace (transformace) liniových prvků: Metoda AJ ekviv. Popis metody Přesun Displacement Přesun liniového prvku zadaným směrem. Eliminace Elimination Odstranění liniových prvků, které jsou příliš úzké. Měřítkově závislá generalizace Scale driven generalization Vytvoření nového liniového prvku z původního prvku při zachování jeho tvarové charakteristiky. Částečný posun Partial Modification Posun prvků tak, aby byl uchován jejich prostorový vztah. Redukce počtu bodů Points reduction Odstranění počtu bodů použitých pro reprezentaci liniového prvku se zachováním tzv. kritických bodů. Vyhlazení Smoothing Úprava liniového prvku tak, aby se jevil hladší. Typizace Typification Odstranění některých prvků při zachování vzoru. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 17 / 155
Kartografická generalizace Generalizace liniových prvků 16. Ukázka metod generalizace liniových prvků (Zhilin, 2007) Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 18 / 155
Kartografická generalizace Generalizace liniových prvků 17. Generalizace (transformace) skupin liniových prvků Metody generalizace (transformace) skupin liniových prvků: Metoda AJ ekviv. Popis metody Selektivní vynechání Selective Omission Výběr a zachování nejvýznamnějších prvků z datasetu. Zhroucení Collapsing Změna prostorové dimenze prvku. Rozšíření Enhacement Úprava prostorových vztahů mezi prvky. Spojení Merging Spojení jednoho či více liniových objektů v jeden. Přesun Displacement Přesun jednoho či více liniových prvků množiny. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 19 / 155
Kartografická generalizace Generalizace liniových prvků 18. Ukázka metod generalizace skupin liniových prvků (Zhilin, 2007) Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 20 / 155
Kartografická generalizace Generalizace plošných prvků 19. Generalizace (transformace) plošných prvků Metody generalizace (transformace plošných prvků: Metoda AJ ekviv. Popis metody Zhroucení Collapse Změna prostorové dimenze prvku Přesun Displacement Přesun prvku na novou lokaci s cílem zabránit prostorovým konfliktům. Zvětšení Exaggregation Zvětšení plochy prvku tak, aby byl zobrazitelný v mapě. Odstranění Elimination Odstranění prvku s příliš malou plochou. Zjednodušení tvaru Simplification Zjednodušení tvaru prvku se zachováním tvarové charakteristiky při zachování kritických bodů. Rozdělení Split Rozdělení plošného prvku na dva prvky. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 21 / 155
Kartografická generalizace Generalizace plošných prvků 20. Ukázka metod generalizace plošných prvků (Zhilin, 2007) Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 22 / 155
Kartografická generalizace Generalizace plošných prvků 21. Generalizace (transformace) skupin plošných prvků Metody generalizace (transformace plošných prvků: Metoda AJ ekviv. Popis metody Seskupení Agglomeration Vynechání mezer mezi blízkými plošnými prvky. Agregace Aggregation Spojení blízkých plošných prvků oddělných mezerou v jeden plošný prvek. Sloučení Amalgmation Spojení blízkých plošných prvků oddělných jiným prvkem v jeden plošný prvek. Rozpouštění Dissolving Rozpouštění malých oblastí a připojení jejich částí k sousedním oblastem. Spojení Merging Spojení malé oblasti se sousední oblastí. Přemístění Relocation Přesun plošného prvku s cílem zamezit prostorovým konfliktům. Zjednodušení Structural Zjednodušení struktury množiny vynecháním méně významných prvků. Tomášstruktury Bayer bayertom@natur.cuni.cz Simplification (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 23 / 155
Kartografická generalizace Generalizace plošných prvků 22. Ukázka metod generalizace skupin plošných prvků (Zhilin, 2007) Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 24 / 155
Algoritmy pro generalizaci bodových prvků 23. Agregace bodových prvků Cílem nahrazení skupiny bodových prvků jedním bodovým prvkem, tzv. centroidem. Snaha o minimalizaci rozptylu geometrických parametrů centroidu vzhledem k původním prvkům (např. suma vzdáleností mezi centroidem a původními prvky). Postup tvořen dvěma fázemi: Automatizované/manuální sdružení prvků podobných vlastností sdružovány do tříd či clusterů. Využití clusterovacích algoritmů. Nevýhodou pomalost či omezená možnost omezeného automatizovaného stanovení parametrů (ruční zadání počtu clusterů). Aproximace třídy centroidem. Nejběžnější clusterovací algoritmy: K-Means, ISODATA. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 25 / 155
Algoritmy pro generalizaci bodových prvků 24. Ukázka algoritmu K-Means Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 26 / 155
Algoritmy pro generalizaci bodových prvků 25. Aproximace centroidem Metody aproximace centroidem: aritmetický průměr x x = 1 n střední hodnota souboru (medián) x, prvek nejbližší k průměru x i n x i, i=1 d(x i, x) = min. vážený půměr : vahou atribut jednotlivých symbolů (např. počet obyvatel) n p i x i x =. p i i=1 Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 27 / 155
Algoritmy pro generalizaci bodových prvků 26. Ukázka aproximací centroidem: vstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 28 / 155
Algoritmy pro generalizaci bodových prvků 27. Ukázka aproximací centroidem: medián Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 29 / 155
Algoritmy pro generalizaci bodových prvků 28. Ukázka aproximací centroidem: arit. průměr Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 30 / 155
Algoritmy pro generalizaci bodových prvků 29. Ukázka aproximací centroidem: nejbližší k průměru Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 31 / 155
Algoritmy pro generalizaci bodových prvků 30. Selektivní vynechání prvku V měřítku generalizované mapy nelze zobrazit všechny podrobnosti. Kartograficky méně významné prvky budou vynechány. Nutno provádět automatizovaně. Kartografický význam prvku dán hodnotou jednoho či více atributů (např. počet obyvatel). Problém nastává u významných prvků ležících blízko sebe, při automatickém zpracování mohou být vynechány některé významné prvky. Metody: Settlement Spacing Ratio Circle Growth Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 32 / 155
Algoritmy pro generalizaci bodových prvků 31. Settlement Spacing Ratio Ze vstupního datasetu na základě hodnoty kritéria vybrány prvky generalizovaného datasetu. Kolem bodových prvků vytvořeny buffery. Buffery představovány kružnicemi, poloměr volen nepřímo úměrně významu prvku(importance Factor). r i = C I i. Konstanta C obvlivňuje míru generalizace. Princip algoritmu: Prvky zpracovávány dle vzestupně dle hodnoty r i (od nejvýznamnějších). Méně významný prvek nemůže vymazat významnější. Pokud v bodovém bufferu posuzovaného i-tého prvku s nižší prioritou leží jiný prvek s vyšší prioritou, je posuzovaný prvek s nižší prioritou z datasetu odstraněn. Implementace prioritní frontou, body ve frontě dle r i. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 33 / 155
Algoritmy pro generalizaci bodových prvků 32. Ukázka Settlement Spacing Ratio: vstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 34 / 155
Algoritmy pro generalizaci bodových prvků 33. Ukázka Settlement Spacing Ratio: konstrukce bodových bufferů Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 35 / 155
Algoritmy pro generalizaci bodových prvků 34. Ukázka Settlement Spacing Ratio: výstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 36 / 155
Algoritmy pro generalizaci bodových prvků 35. Srovnání vstupních a výstupních dat Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 37 / 155
Algoritmy pro generalizaci bodových prvků 36. Circle Growth Algorithm Ze vstupního datasetu na základě hodnoty kritéria vybrány prvky do generalizovaného datasetu. Poloměr bufferů kolem bodových prvků volen přímo úměrně významu prvku. r i = C I i Princip algoritmu: Prvky zpracovávány dle vzestupně dle hodnoty 1/r i (od nejvýznamnějších). Pokud v bodovém bufferu posuzovaného i-tého prvku s vyšší prioritou leží prvek s nižší prioritou, je prvek s nižší prioritou z datasetu odstraněn. V dalším kroku inkrementace šířky bufferu přičtením konstanty (aditivní konstanta) nebo přenásobením konstantou (multiplikativní konstanta). r i = k C I i r i = C I i + k Algoritmus je iterativní, opakuje se, pokud existuje alespoň jeden prvek, který může být vyřazen. Implementace prioritní frontou, body ve frontě dle 1/r i. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 38 / 155
Algoritmy pro generalizaci bodových prvků 37. Ukázka Circle Growth Algorithm: vstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 39 / 155
Algoritmy pro generalizaci bodových prvků 38. Ukázka Circle Growth Algorithm: 1. iterace Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 40 / 155
Algoritmy pro generalizaci bodových prvků 39. Ukázka Circle Growth Algorithm: 2. iterace Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 41 / 155
Algoritmy pro generalizaci bodových prvků 40. Ukázka Circle Growth Algorithm: 3. iterace Zhodnocení CGA: Poskytuje lepší výsledky než SSR. Vyšší míra generalizace než SSR. Nevhodná volba volba k způsobí nadměrnou generalizaci. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 42 / 155
Algoritmy pro generalizaci bodových prvků 41. Circle Growth Algorithm: vstupní a výstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 43 / 155
Algoritmy pro generalizaci bodových prvků 42. Regionalizace Cílem náhrada bodového datasetu jeho plošnou reprezentací, tj. polygon. Dochází ke změně prostorové dimenze prvků: 0D 2D. Při generalizaci využívány pomocné planární geometrické struktury: konvexní obálky, Delaunay triangulace, Do algoritmu vstupuje řada proměnných: počet bodových prvků datasetu, váha bodových prvků, prostorové rozložení bodů v datasetu (náhodný, pravidelný, clusterovaný) počet přirozených sousedů (Natural Neighbours), počet výstupních polygonů (jeden či více). Algoritmus výpočetně jednoduchý, poskytuje kvalitní výsledky. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 44 / 155
Algoritmy pro generalizaci bodových prvků 43. Regionalizační algoritmus Na vstupu množina n bodových prvků. Výstupem k disjunktních polygonů. Postup: 1 Clusterizace datasetu, Výsledkem k clusterů. 2 Konstrukce DT nad každým clusterem. 3 Opakuj pro každý cluster A) Odstranění nevhodných trojúhelníků Z datasetu ostraněny trojúhelníky s hranou větší než 2 d ležící na konvexní obálce. Okrajování konvexní obálky výsledkem nekonvexní polygon. B) Generalize hranice Hranice generalizována vhodným algoritmem pro polygony (Douglas -Peucker) Algoritmus poskytuje kvalitní výsledky. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 45 / 155
Algoritmy pro generalizaci bodových prvků 44. Ukázka regionalizačního algoritmu: vstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 46 / 155
Algoritmy pro generalizaci bodových prvků 45. Ukázka regionalizačního algoritmu: Delaunay triangulace Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 47 / 155
Algoritmy pro generalizaci bodových prvků 46. Ukázka regionalizačního algoritmu: aproximace konvexní obálkou Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 48 / 155
Algoritmy pro generalizaci bodových prvků 47. Ukázka regionalizačního algoritmu: okrajování konvexní obálky Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 49 / 155
Algoritmy pro generalizaci bodových prvků 48. Ukázka regionalizačního algoritmu: okrájená konvexní obálka bez triangulace Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 50 / 155
Algoritmy pro generalizaci bodových prvků 49. Ukázka regionalizačního algoritmu: generalizace Douglas-Peucker Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 51 / 155
Algoritmy pro generalizaci bodových prvků 50. Strukturální zjednodušení Cílem zjednodušení vnitřní struktury bodového datasetu. Nutno zachovat jeho základní tvarové charakteristiky. Při generalizaci využívány planární geometrické struktury Voronoi teselace. Myšlenka: strukturálně podobné množiny generují podobné voronoi diagramy. Na vstupu množina n bodových prvků, k% redukce. Výstupem množin m bodových prvků k = n m 100. Princip algoritmu: 1 Konstrukce V(P) nad datasetem Pro každou V(p i ) spočítat plochu A i. Každému p i přiřazena váha w i = A i. Body v prioritní frontě dle w i 2 Opakuj, dokud k < n m 100 A) Odstraň bod na vrcholu fronty. B) Aktualizuj Voronoi Diagram. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 52 / 155
Algoritmy pro generalizaci bodových prvků 51. Ukázka strukturální generalizace: vstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 53 / 155
Algoritmy pro generalizaci bodových prvků 52. Ukázka strukturální generalizace: Voronoi diagram vstupních dat Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 54 / 155
Algoritmy pro generalizaci bodových prvků 53. Ukázka strukturální generalizace: redukce množiny o 10% Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 55 / 155
Algoritmy pro generalizaci bodových prvků 54. Ukázka strukturální generalizace: redukce množiny o 10% Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 56 / 155
Algoritmy pro generalizaci bodových prvků 55. Ukázka strukturální generalizace: výstupní data s 20% redukcí Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 57 / 155
Algoritmy pro generalizaci bodových prvků 56.Strukturální generalizace: vstupní a výstupní data (-20%) Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 58 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 57. Algoritmy pro zjednodušení tvaru liniových prvků tzv. Point Reduction Algorithms. Cílem snaha o nejlepší aproximace tvaru polylinie co nejmenším množstvím bodů. Odstranění takových vrcholů, jejichž geometrické parametry nejsou významné v celkovém kontextu polylinie. Vyvíjeny od 60. let 20. stol z důvodu snížení hardwarových nároků při práci s vektorovými daty. Existuje několik desítek takových algoritmů, problematika velmi podrobně zpracována. Každý z algoritmů je vhodný pro jiný typ polylinií. Univerzální použití: Douglas-Peucker, Bend Simplify. Hodnoty geometrických parametrů prvků srovnávány s mezními hodnotami. Nejčastěji používané parametry: Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 59 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 58. Kritické body Při zjednodušení tvaru nutno zachovat tzv. kritické body (Critical points). Kritické body lze snadno detekovat s využitím geometrických parametrů: lokální / globální maxima, lokální / globální minima, inflexní body, body s maximální křivostí, dody s minimální křivostí. Tyto body by měly být nezávislé na měřítku, rotaci, posunu mapy. Kritické body detekovány generalizačními algoritmy řadou různých technik. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 60 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 59. Formulace problému Dáno: Lomená čára L v R 2. Hledáme: Tvarově zjednodušená lomená čára L L Tvarově zjednodušené prvky L výsledkem procesu zvaného generalizace. Vlastnosti generalizovaných prvků: Počet vrcholů L je nejvýše roven počtu vrcholů L. Odstraňovaný vrchol p i není počátečním ani koncovým bodem L. Žádné dva segmenty generalizovaného prvku se nesmějí protínat Žádný segment jednoho generalizovaného prvku nesmí protínat segment jiného generalizovaného prvku (Non-Intersective Algorithm). Pro snadnější splnění poslední podmínky vhodné, aby prvky byly lineárně separovatelné, tj. jejich konvexní obálky se neprotínaly. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 61 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 60. Lineárně separovatelné a neseparovatelné objekty Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 62 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 61. Metody detekce kritických bodů Metody detekce: Přímý výpočet Kritické body detekovány při jednom průchodu. Iterativní výpočet Pro detekci kritických bodů nutno provést více průchodů. Lokální zpracování Detekce kritických bodů z podmnožiny vrcholů. Globální zpracování Detekce kritických bodů ze všech vrcholů. Rekurzivní zpracování Dělení polyline na kratší segmenty. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 63 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 62. Metody klasifikace algoritmů Existence velkého množství generalizačních algoritmů (řádově desítky), každý poskytuje jiný výsledek. Mnoho hledisek, podle kterého lze algoritmy klasifikovat. Metody klasifikace algoritmů: Klasifikace dle způsobu detekce kritických bodů. Klasifikace dle počtu bodů zpracovaných v jednom kroku. Metody konstrukce generalizované linie: Odstraňování nekritických bodů z generalizované linie. Výběr kritických bodů a jejich přidání do generalizované linie. Většina algoritmů založena na prvním přístupu. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 64 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 63. Kasifikace dle způsobu detekce kritických bodů Zhilin, 2007. Klasifikace dle způsobu, jakým jsou detekovány kritické body. Rozdělení do 3 základních kategorií. Algoritmy děleny do 3 skupin: Sekvenční algoritmy Postupné procházení vstupních bodů polyline s cílem nalezení nejdelšího možného segmentu splňujícího geometrickou podmínku. Body podél něho splňující geometrickou podmínku odstraněny. Koncový bod nejdelšího segmentu je kritickým bodem. Iterativní algoritmy Rekurzivní dělení polyline na menší segmenty na základě geometrické podmínky. V každém rekurzivním poddělení nalezen kritický bod. Algoritmy založení na funkčních kritériích V každém lomovém bodě spočtena křivost. Kritické body: absolutní hodnoty křivosti (lokálně) maximální. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 65 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 64. Klasifikace dle velikosti okolí McMaster and Shea, 1987. Klasifikace dle počtu bodů bodů zpracovaných v jednom kroku při detekci kritického vrcholu. Ovliňuje s jak velkým okolím bodu pracujeme, z kolika bodů určujeme geometrické parametry. Výpočet geometrických parametrů z většího množství bodů v jednom kroku větší relevance. Klasifikace dle velikosti okolí bodu: algoritmy nezávislé na tvaru prvku, lokální algoritmy, rozšířené lokální algoritmy, globální algoritmy. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 66 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 65. Algoritmy nezávislé na tvaru a lokální algoritmy Algoritmy nezávislé na tvaru prvku Při hledání kritických bodů nejsou zohledněny geometrické parametry prvku. Za kritické body prohlásí i takové, které jimi nejsou a naopak. Neprovádí kartografickou generalizaci, mnohdy odstranění významných segmentů. Lokální algoritmy Zohledňují pouze lokální okolí vrcholu p i a tvar prvku neposuzují komplexně. V generalizované linii ponechávají kritické body. V každém kroku odstraňují z L takové vrcholy p i, které nesplňují vzhledem k sousedním vrcholům p i 1, p i+1 zadanou geometrickou podmínku. Lokální algoritmy nedosahují dobrých výsledků, neprovádějí skutečnou kartografickou generalizaci. V praxi nejsou příliš často používány. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 67 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 66. Rozšířené lokální algoritmy a globální algoritmy Rozšířené lokální algoritmy Algoritmus nepracuje pouze s lokálním okolím bodu (tj. se sousedy generalizovaného bodu), ale s rozšířeným okolím bodu. Geometrická kritéria bodu p i jsou posuzována nejen k sousedním bodům p i 1 a p i+1, ale k většímu okolí bodu p i (nikoliv však k celé L!). Přidáním dalších vrcholů do prohledávané množiny se snaží zohlednit skutečný tvar L a posuzovat ho komplexněji. Provedená generalizace má rysy kartografické generalizace. Globální algoritmy Globální algoritmy zohledňují tvar prvku jako celku, posuzují geometrické parametry vrcholu p i vzhledem ke všem ostatním vrcholům lomené čáry L. Většinou detekce kritických bodů a jejich přidání do generalizované linie, nikoliv odstraňování nektritických bodů. Z výše uvedených skupin poskytují nejlepší výsledky, blíží se postupům, pomocí kterých kartograf analyzuje vizuálně tvar lomené čáry. Tuto generalizaci je možno považovat za kartografickou. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 68 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 67. Přehled vybraných generalizačních algoritmů Zhin McMaster Algoritmus SE IT FU NE LO LR. GL Vynechání bodu x x Eukleidovská vzdálenost x x Vzdálenost bodu od strany x x Jenks x x Reumann Witkam x x Opheim x x Lang x x Min-Max x x Douglas&Peucker x x Whyatt x x Bend Simplify x x Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 69 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 68. Vynechání bodu/bodů Neprovádí kartografickou generalizaci, nejsou zohledněny geometrické parametry prvku. Vynechání k-tého bodu: Při generalizaci je vynecháván každý k-tý vrchol lomené čáry. Vynechání náhodného bodu: Při generalizaci vynecháván náhodný bod. Algoritmus není deterministický, pro opakovaný běh jiný výstup. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 70 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 69. Eukleidovská vzdálenost mezi sousedními body Vynechávány vrcholy p i+1 které mají vzdálenost d(p i, p i+1 ) od předchozího vrcholu p i menší než délkové kritérium d min, tj. d(p i, p i+1 ) < d min Algoritmus posuzuje pouze délky stran, nikoliv jejich úhly. Nedosahuje příliš dobré výsledky. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 71 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 70. Kumulativní Eukleidovská vzdálenost Modifikace předchozího algoritmu. Vzdálenosti od vrcholu měřeny po lomené čáře (tj. kumulativní vzdálenost). Vynechávány vrcholy p j které mají kumulativní vzdálenost n j=i d(p j, p j+1 ) od vrcholu p i menší než délkové kritérium d min, tj. n d(p j, p j+1 ) < d min Algoritmus také nedosahuje příliš dobré výsledky. j=i Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 72 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 71. Vzdálenost bodu od strany Při generalizaci zpracovávány trojice za sebou následujících vrcholů p i 1, p i, p i+1. Algoritmus posuzuje vzdálenost d(p i, p i 1 p i+1 ) s mezní hodnotou d min. Pokud d(p i, p i 1 p i+1 ) < d min, je vrchol p i vypuštěn. Algoritmus i přes svou jednoduchost dosahuje dobrých výsledků. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 73 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 72. Jenks Algorithm Při generalizaci zpracovávány trojice za sebou následujících vrcholů p i 1, p i, p i+1. Algoritmus pracuje se třemi parametry: vzdálenostmi d(p i 1, p i ), d(p i, p i+1 ) a úhlem p i 1, p i, p i+1, které porovnává s mezními hodnotami d 1 min, d 2 min, ω min. Pokud d(p i 1, p i ) < d 1 min d(p i, p i+1 ) < d 2 min π p i 1, p i, p i+1 < ω min, je vrchol p i vypuštěn. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 74 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 73. Reumann-Witkam Algorithm Testovací oblast tvořena koridorem o šířce h (průnik 3 polorovin), jehož osa je tvořena stranou p i p i+1 s počáteční hranou procházející bodem p i. Princip algoritmu: Pokud je m vrcholů (p i+1, p i+1+m ) lomené čáry L tvarově nevýznamných (tj. oscilují kolem p i p i+1 ), leží zřejmě uvnitř nějakého koridoru s šířkou h. Podmnožina L tvořená takovými m vrcholy (p i, p i+1+m ) nahrazena přímou spojnicí p i p i+1+m a mezilehlé body(p i+1, p i+m ) odstraněny z L. Testovacím kritériem vzdálenost bodu p i+1+j, kde j 1, m od strany p i p i+1, které je porovnáváno se šířkou koridoru h/2. Dokud d(p i+1+j, p i p i+1 ) < h 2, odstraň bod p i+j z L. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 75 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 74. Ilustrace Reumann-Witkam Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 76 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 75. Implementace Reumann-Witkam Algorithm Implementace algoritmu poměrně jednoduchá. Algoritmus dosahuje poměrně dobrých výsledků, často používán v 80. letech. Algoritmus podrobně analyzován, problémy u L s náhlými změnami směru, dlouhých stran navazujících na krátké strany protínající se pod úhly blížící se π 2. Algoritmus 1: Reumann-Witkam(L, h) 1: Inicializace p a = p 0 ; p b = p 1. 2: Opakuj pro p i, i 2, n 3 : 3: if (d(p i, p a p b ) < h/2: 4: Pop p i 1 from L. 5: i = i 1; 6: else 7: p a = p i 1 ; p b = p i. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 77 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 76. Ilustrace nevhodné konfigurace bodů pro R-W lgoritmus Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 78 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 77. Opheim Algorithm Modifikace Reumann-Witkam algoritmu, cílem odstranění nedostatků předchozího algoritmu. Snaha, aby nebyly eliminovány dlouhé strany (tvar generalizované linie ovlivněn nejdelšími stranami). Algoritmus zavádí dvě délková kritéria: minimální délka strany d min a maximální délka strany d max. Tvar koridoru: Tvar koridoru upraven zavedením d min a d max, představuje průnik původního koridoru a mezikruží tvořeného kružnicemi k 1 (p i, d min ), k 2 (p i, d max). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 79 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 78. Opheim Algorithm Modifikace generalizačních pravidel: Eliminace blízkých bodů: Pokud vzdálenost bodů p i, p i+1 bod p i+1 odstraněn z L. d(p i, p i+1 ) < d min, Úprava vztahu bodu a koridoru: Důležitá nejen vzdálenost analyzovaného bodu p i+1+j od generující strany koridoru p i p i+1, ale i vzdálenost d(p i, p i+1+j ). Bod p i+1+j leží uvnitř koridoru, jestliže d(p i+1+j, p i p i+1 ) < h 2 d(p i, p i+1+j ) < d max. Podmnožina L tvořená takovými m vrcholy (p i, p i+1+m ) ležícími v koridoru nahrazena přímou spojnicí p i p i+1+m a mezilehlé body(p i+1, p i+m ) odstraněny z L (analogie s Reumann-Witkam). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 80 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 79. Ilustrace Opheim Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 81 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 80. Lang Algorithm Testovací oblast tvořena koridorem o šířce h, na rozdíl od Reumann-Witkam není osa koridoru tvořena stranou L a jeho poloha se mění. Dalším parametrem počet bodů m, koridor spojuje body p i a p i+j, kde j m, 2. Podobná myšlenka jako v předchozích případech, pokud je část linie tvořená m + 1 vrcholy tvarově málo členitá, může být nahrazena přímou spojnicí. Princip algoritmu: A) Vygenerován koridor spojující body p i a p i+j, kde j m, 2 a otestována poloha všech mezilehlých bodů ( p i+1, p i+j 1 ). B) Pokud alespoň jeden bod ( p i+1, p i+j 1 ) vně koridoru, dekrementuj j = j 1 a jdi na A). C) V opačném případě vytvoř novou hranu p i, p i+j, odstraň ( pi+1, p i+j 1 ) z L, ikrementuj i = i + 1 a jdi na A). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 82 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 81. Ilustrace Lang Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 83 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 82. Ilustrace Lang Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 84 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 83. Implementace Lang Algorithm Algoritmus má složitost Ω(n 2 ). Poskytuje velmi dobré výsledky, je však pomalejší. V praxi volíme nejčastěji m < 10. Algoritmus 2: Lang(L, h, m, n) 1: Inicializace i = 0; b = m + 1. 2: Opakuj, dokud i < n 2: 3: if (b > n 1) b = n 1; 4: Opakuj pro j (b, 0): 5: if d(p i+j, p i p b ) > h 2 b = 1. 6: b = b 1; 7: break 8: if (j = 0)&(b > 0) 9: pop (p i+1, p b ); 10: i = i + 1, b = i + m + 1, n = n b i 1; Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 85 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 84. Min-Max Algorithm Rekurzivní algoritmus založený na opakovaném hledání lokálních extrémů polylinie, tj. bodů x min, x max, y min, y max. Hledání je provedeno vzhledem k lokálnímu souřadnicovému systému (0, x, y ) natočenému dle spojnice p start, p end. Lokální extrémy se stávají novými kritickými body polylinie (nejsou-li totožné s koncovými body zpracovávané polylinie). Polylinie rekurzivně dělena na 2-5 nových polylinií. Pro nepříliš komplikované tvary rozpad na 2-3 nové polylinie. Ukončovací kritéria: minimální počet prvků polylinie, mezní hodnoty souřadnic (tj. vzdálenosti od souřadnic). Rekurzivní algoritmus, implementace zásobníkem S. Z kartografického hlediska dosahuje algoritmus velmi kvalitních výsledků. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 86 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 85. Ilustrace Min-Max Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 87 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 86. Implementace Min-max algoritmu Algoritmus 3: Min-Max Algorithm(L, c max ) 1: Inicializace (0, x, y ) = (0, x, y). 2:S push(l). 3: while (true) 4: L pop(s); 5: c = crit(l);//compute termination criterion 6: if (c > c max ) break; //Stop 7: rotate (0, x, y ) = (0, x, y) using ϕ L ;//Rotate by L bearing. 8: find extremal points: x min, x max, y min, y max. 9: Split L = {L 1, L 2, L 3, L 4, L 5 }; //Split polyline 10: S push(l 1, L 2, L 3, L 4, L 5 ); //Add new polylines to the Stack Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 88 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 87. Douglas & Peucker Algorithm Rekurzivní algoritmus využívající jako testovací oblast koridor o zadané šířce h. Na rozdíl od ostatních algoritmů neodstraňuje z L vrcholy nesplňující geometrickou podmínku, ale přidává do ní postupně kritické body podmínku splňující. Jeden z nejlepších generalizačních algoritmů, velmi často implementován v GIS software. Princip algoritmu: A) Vytvoření hrany e = p 1 p n ; lomená čára L nahrazena úsečkou. B) Hledán kritický bod p ležící vně koridoru takový, že d(p, e) = max(d(p i, e)). Pokud takový bod p neexistuje, ukonči algoritmus. C) Hrana e rozdělena na dvě hrany e 1 = p 1 p, e 2 = p, p n. D) Nad e 1, e 2 opakovány body B) - D). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 89 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 88. Ilustrace Douglas&Peucker Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 90 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 89. Ilustrace Douglas&Peucker Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 91 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 90. Implementace Douglas&Peucker Algorithm Rekurzivní procedura DouglasPeucker, L představuje generalizovanou linii, start, end indexy počátečního a koncového bodu zpracovávané hrany. Algoritmus 3: DouglasPeucker(L, h, start, end) 1: if (end > start + 1) do: 2: max = start + 1; 3: d max = dist(p max, p startp end ) 4: i = max + 1 5: Opakuj dokud (i < end): 6: d = dist(p i, p startp end ) 7: if (d > d max) do: 8: max = i; d max = d; 9: i = i + 1; 10: if (d max > h): 11: DouglasPeucker(L, h, start, max); 12: DouglasPeucker(L, h, max, end); 13: push(l, p max); Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 92 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 91. Whyatt Algorithm Algoritmus zpracovává trojice bodů p i 1, p i, p i+1. Testovací kritérium založeno na výpočtu plochy trojúhelníku p i 1, p i, p i+1. Čím významnější je z geometrického hlediska p i, tím leží dále od spojnice p i 1 p i+1 a plocha p i 1, p i, p i+1 je větší. Princip algoritmu: A) Plocha A trojúhelníku p i 1, p i, p i+1 porovnávána s mezní hodnotou A min. Pokud A( p i 1, p i, p i+1 ) < A min, je bod p i odstraněn z L. B) Po odstranění bodu p i dvojice bodů (původní p i+1 tvoří nový p i ) p i 1, p i doplněna následujícím bodem na trojici p i 1, p i, p i+1 a je opakován bod A). Postup opakován tak dlouho, dokud existuje alespoň jeden trojúhelník nesplňující podmínku. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 93 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 92. Ilustrace Whyatt Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 94 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 93. Ilustrace Whyatt Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 95 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 94. Implementace Whyatt Algorithm Snadná implementace algoritmu. Dosahuje horších výsledků než Douglas-Peucker. Algoritmus 2: Lang(L, h, m, n) 1: Opakuj, dokud i 1, n 2 : 2: Vytvoření (p i 1 p i, p i+1 ) 3: Výpočet A( (p i 1 p i, p i+1 )) 4: if (A < A min ): 5: pop (p i ) 6: n = n 1; 7: i = i 1; Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 96 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 95. Bend Simplify Algoritm Detekce kritických bodů v místech s maximální změnou křivosti s využitím LLR kritéria. Často implementován v GIS. Délka křivky mezi body A, B kde Local Length Ratio (LLR) l AB = ˆ B A ( x t )2 + ( y t )2 x = x(t) y = y(t) LLR AB = l AB d AB. Poměr délky křivky mezi body A, B a jejich Eukleidovské vzdálenosti (obdoba fraktální dimenze). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 97 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 96. Ukázka LLR Libovolná křivka: LLR 1. Úsečka: LLR = 1. Čím se křivka více odchyluje od A, B, tím větší hodnoty LLR nabývá. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 98 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 97. Porovnání hodnot LLR LLR 1 < LLR 2 < LLR 3 < LLR 4 Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 99 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 98. Ukázka výpočtu LLR Kritérium LLR počítáno v každém vrcholu lomené čáry. Algoritmus invariantní vůči poloměru kružnice. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 100 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 99. Hodnoty LLR pro jednotlivé body Nakos & Mitropulos, 2004 Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 101 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 100. Hodnoty LLR kritérií Na základě hodnot LLR kritérií vrcholy rozděleny do tří skupin: LLR (1.04, 1.15) Úhel mezi sousedními segmenty větší než 120, hladké přechody. LLR (1.15, 1.30) Úhel mezi sousedními segmenty v intervalu 90 120. Ostré zlomy mezi sousedními segmenty. LLR > 1.30 Úhel mezi sousedními segmenty menší než 90, velmi ostré přechody. Křivka má v těchto místech lokální extrémy. Body 2. a 3. kategorie zpravidla považovány za kritické body. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 102 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 101. Charakeristika Bend Simplify algoritmu Princip Bend Simplify algoritmu: Nad lomenou čarou spočteny hodnoty LLR kritérií. Body s LLR > LLR min představují kritické body. Volba LLR min ovlivňuje míru generalizace, zpravidla LLR min (1.1, 1.3). Bend Simplify vs Douglas&Peucker Srovnánání výsledků obou algoritmů: Bend Simplify detekuje menší množství kritických bodů než Douglas&Peucker. Bend Simplify uchová méně tvarových detailů lomené čáry než Douglas&Peucker. Bend Simplify zachovává křivost lomené čáry více než Douglas&Peucker. Douglas&Peucker generuje linie velmi tvarově podobné originální linii, avšak mezi segmenty ostré přechody (není kartograficky věrné). Bend Simplify generuje linie tvarově méně podobné, mezi segmenty plynulejší přechody (kartograficky věrnější). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 103 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 102. Ukázka generalizace algoritmem Bend Simplify Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 104 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 103. Douglas&Peucker vs Bend Simplify: zdrojová data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 105 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 104. Douglas&Peucker: výstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 106 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 105. Bend Simplify: výstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 107 / 155
Algoritmy pro zjednodušení tvaru liniových prvků 106. Srovnání obou výsledků Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 108 / 155
Hodnocení efektivity generalizace liniových prvků 107. Hodnocení efektivity generalizace liniových prvků (1/2) Vzájemné hodnocení efektivity generalizačních algoritmů důležité. Žádný z algoritmů není univerzálně použitelný, každý se hodí pro jiné typy prvků. Pro hodnocení použita dvě základní kritéria (McMaster, 1983) založená na analýza změny polohy generalizovaných bodu (Displacement Analysis): Analýza změny ploch (Areal Displacement). Analýza změny polohy (Vector Displacement). Analýza změny ploch: Plochy nacházející se vlevo od L mají záporné znaménko: A. Plochy vpravo od L mají kladné znaménko: A +. Kritérium A = A + + A. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 109 / 155
Hodnocení efektivity generalizace liniových prvků 108. Hodnocení efektivity generalizace liniových prvků (2/2) Analýza změny polohy: Založena na výpočtu vzdálenosti odstraněného bodu p původní linie L od hrany p i p j generalizované linie L takové, že bod p leží mezi body p j p j+1. Kritériem suma těchto vzdáleností nad všemi odstraněnými vrcholy. Necht m představuje počet odstraněných vrcholů a j index výsledných bodů v L. Pak D = m d(p i, p j p j+1 ) i=1 Čím algoritmus efektivnější, tím D 0. Pro obě kritéria dosahuje nejlepších výsledků Douglas-Peucker Algorithm. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 110 / 155
Hodnocení efektivity generalizace liniových prvků 109. Ilustrace Area and Vector Displacement Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 111 / 155
Vyhlazovací algoritmy pro lomené čáry 110. Vyhlazovací algoritmy pro lomené čáry Úprava tvaru prvků, nejčastěji lomených čar. Generalizační vs. vyhlazovací algoritmy: Generalizační algoritmy z L odstraňují takové p i, které nesplňují zadanou geometrickou podmínku. Vyhlazovací algoritmy do L přidávají nové body, některé body posunují či ruší. Cílem vyhlazení odstranění nevhodných lomů a náhlých změn tvaru prvku. Takto upravené prvky působí v mapách přirozeněji a estetičtěji než původní nevyhlazené prvky, jsou bližší kartografickému popisu reality. Důležité je zvolit přiměřenou míru vyhlazení, v opačném případě může dojít k potlačení významných tvarových charakteristik prvku. Metody: Vyhlazování průměrováním bodů. Vyhlazování filtrováním. Vyhlazování za použití aproximačních křivek. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 112 / 155
Vyhlazovací algoritmy pro lomené čáry 111. Ilustrace činnosti vyhlazovacího algoritmu Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 113 / 155
Vyhlazovací algoritmy pro lomené čáry Vyhlazování průměrem 112. Vyhlazení průměrováním bodů Posun p i tak, aby byly odstraněny nevhodné lomy L, do L nejsou přidávají žádné další vrcholy. Nová poloha p i je určena z polohy sousedních m bodů. Sousední body mohou mít stejnou nebo různou váhu. Míra vyhlazení je závislá na: Počtu vrcholů m: Pro větší hodnoty m dosáhneme vyššího vyhlazení. Počet opakování k: Vyhlazovací algoritmus může být na L aplikován opakovaně, zvýší se tak míra vyhlazení. Pokud vzdálenosti mezi vrcholy lomené čáry přibližně stejné, je vhodné použít aritmetický/geometrický průměr, v opačném případě vážený průměr. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 114 / 155
Vyhlazovací algoritmy pro lomené čáry Vyhlazování průměrem 113. Vyhlazení aritmetickým průměrem McMaster and Shea, 1992. Nový vrchol p i určen jako aritmetický průměr m okolních bodů. Hodnota m volena lichá, (m 1)/2 bodů před p i, (m 1)/2 bodů za p i. p i = i+ m 1 2 p i m 1 i 2 m Pak m + 1 segmentů původní linie mezi body p i m 1 2 segmentů p i m 1 2, p 1 i a p i, p i+ m 1. +1 2, p 1 i+ m 1 nahrazeno dvojicí +1 2 Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 115 / 155
Vyhlazovací algoritmy pro lomené čáry Vyhlazování průměrem 114. Vyhlazení aritmetickým průměrem s faktorem vyhlazení Vyhlazený vrchol p vypočtený touto metodou leží na spojnici p i p i. Vyhlazovací faktor f, f < 0, 1 >, který udává míru vyhlazení. Pro f = 0 nedojde k vyhlazení, bod p i = p i. Pro f = 1 maximální vyhlazení, bod p i = p i. Pak p i = p i + (p i p i ) f. Váhy všech vrcholů vstupujících do výpočtu jsou stejné. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 116 / 155
Vyhlazovací algoritmy pro lomené čáry Vyhlazování průměrem 115. Vyhlazení váženým průměrem McMaster and Shea, 1992. Nový vrchol p i určen jako aritmetický průměr m okolních bodů. Vrchol p i do výpočtů není zahrnut, označen jako p. Váhy q i okolních m vrcholů p i voleny nepřímo úměrně jejich vzdálenosti od bodu p q i = Vrchol p i vypočten váženým průměrem p i = i 1 1 p p i i (n 1)/2 q ip i + i+(n 1)/2 i+1 q i p i i 1 i (n 1)/2 q i +. i+(n 1)/2 i+1 q i Posun se zavedením vah lépe zohledňuje polohu okolních vrcholů. Největší váhu mají vrcholy, které se nacházejí nejblíže vrcholu p, vrchol p i bude bližšími vrcholy více přitažen. Efekt se výrazněji projeví, pokud se budou délky segmentů L výrazně lišit. Možno zavést vyhlazovací faktor f, f < 0, 1 > p i = p i + (p i p i ) f. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 117 / 155
Vyhlazovací algoritmy pro lomené čáry Vyhlazování průměrem 116. Porovnání vyhlazení aritmetickým průměrem a váženým průměrem Vyhlazení aritmetickým průměrem (červeně) a váženým průměrem (modře). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 118 / 155
Vyhlazovací algoritmy pro lomené čáry 117. Chaikins Algorithm Vyhlazení filtrováním Provádí diskrétní aproximaci B-spline křivkou, nazýván také 4 Points Algorithm (Chaikins, 1975). Algoritmus nahrazuje posloupnost lomových bodů {p 1, p 2,..., p n } lomené čáry L posloupností nových lomových bodů tak, že platí {q 1, r 1, q 2, r 2,..., q n, r n } q i = 3 4 p i + 1 4 p i+1 r i = 1 4 p i + 3 4 p i+1 Výpočet rekurentním vzorcem velmi jednoduchý, snadno se algoritmizuje. Lze aplikovat i na uzavřené útvary. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 119 / 155
Vyhlazovací algoritmy pro lomené čáry Vyhlazení filtrováním 118. Ilustrace Chaikins Algorithm Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 120 / 155
Algoritmy pro zjednodušení obvodu plošných prvků 119. Algoritmy pro zjednodušení obrysu plošných prvků Zjednodušení obrysu regionu jeho nahrazením novým regionem jednoduššího tvaru. Technika použitelná jako prvotní aproximace generalizovaného prvku. Výhodou snadná konstrukce ohraničujícího regionu. V mnoha případech příliš náhlá změna obrysu prvku: negativně ovlivňuje kartografické vnímání. Typy ohraničujících regionů: Min-max box, Konvexní obálka, MBR. Kružnice. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 121 / 155
Algoritmy pro zjednodušení obvodu plošných prvků 120. Aproximace Min-max boxem Nejjednodušší metoda aproximace obrysu prvku s využitím nenatočeného obdélníku. Nerespektuje tvar prvku ani jeho natočení, v praxi se příliš nepoužívá. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 122 / 155
Algoritmy pro zjednodušení obvodu plošných prvků 121. Aproximace konvexní obálkou Lepší tvarová aproximace zejména u regionů, které se blíží konvexním, respektuje natočení prvku. U výrazně nekonvexních regionů příliš nerespektuje obrys prvku. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 123 / 155
Algoritmy pro zjednodušení obvodu plošných prvků 122. Aproximace MBR Aproximace obrysu prvku natočeným obdélníkem. Respektuje natočení prvku, méně tvar. Využití pro generalizaci budov. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 124 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 123. Algoritmy pro změnu prostorové dimenze plošných prvků Algoritmy provádějí změnu prostorové dimenze prvku, tzv. Collapsing. Nejčastější varianty: 2D 1D: region na bod, 2D 0D: region na polylinii. Dělení do dvou kategorií: úplná změna prostorové dimenze, částečná změna prostorové dimenze. Využití dalších geometrických struktur: straight skeleton. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 125 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 124. Změna prostorové dimenze: 2D 0D Použití u prvků, které nelze zobrazit jako region měřítku generalizované mapy, např. sídla. Náhrada bodovým prvkem, který je zpravidla umístěn v těžišti (centroidu) generalizovaného prvku. Region P = {p i } n i=1, kde p i = [x i, y i ]. Souřadnice centroidu C = [x c, y c ] regionu x c = 1 6A y c = 1 6A n (y i x i+1 x i y i+1 )(x i + x i+1 ) i=1 n (y i x i+1 x i y i+1 )(y i + y i+1 ) i=1 Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 126 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 125. Ukázka změny prostorové dimenze: 2D 0D Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 127 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 126. Změna prostorové dimenze: 2D 1D Použití u protáhlých a úzkých prvků, které nelze zobrazit v měřítku generalizované mapy jako region. Využití zejména vodních toků či vodních ploch, které nelze v měřítku mapy zobrazit břehovkou. Náhrada regionu lomenou čarou s vhodnými parametry skeleton. Nejčastěji použit Straight Skeleton. Princip algoritmu Konstrukce skeletonu S(P) vstupní oblasti P grafová reprezentace: strom. Nalezení optimální cesty grafem (např. spojení ústí a výtoku). Tvarově velmi dobrá aproximace původního prvku. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 128 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 127. Ukázka změny prostorové dimenze: 2D 1D: konstrukce skeletonu Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 129 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 128. Ukázka změny prostorové dimenze: 2D 1D: nalezení optimální cesty Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 130 / 155
Algoritmy pro změnu prostorové dimenze plošných prvků 129. Ukázka změny prostorové dimenze: 2D 1D Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 131 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 130. Algoritmy pro zjednodušení tvaru plošných prvků Dáno: Uzavřený ohraničený region C v R 2. Hledáme: Tvarově zjednodušený region C C Výsledkem generalizace tvarově zjednodušený prvek C. Vlastnosti generalizovaných prvků: Počet vrcholů C je nejvýše roven počtu vrcholů C. Odstraňovaný vrchol p i není uzlovýn bodem C. Žádné dva segmenty generalizovaného prvku se nesmějí protínat. Žádný segment jednoho generalizovaného prvku nesmí protínat segment jiného generalizovaného prvku (Non-Intersective Algorithm). Lineární separovatelnost polygonů podmínkou úspěšné generalizace. Při generalizaci hledány kritické body (obdoba algoritmů pro zjednodušení tvaru liniových prvků). Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 132 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 131. Algoritmy pro zjednodušení tvaru plošných prvků Zjednodušování geometrických charakteristik plošných prvků. Algoritmy založené na detekci kritických bodů. Při generalizaci musí být uchována topologie prvků. Metody: Generalizace dekompozicí na lomené čáry Topologie zachována rozpadem polygonů na lomené čáry spojující dva sousední uzly. Na takto vzniklé lomené čáry aplikovány algoritmy pro zjednodušení tvaru lomených čar. Modifikované algoritmy pro lomené čáry Úprava algoritmů zjednodušujících tvar lomených čar pro použití u regionů. Topologie zachována vyjmutím uzlových bodů z generalizace. Jako kritické body proto označeny všechny uzlové body regionů. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 133 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 132. Generalizace dekompozicí na lomené čáry Není použit žádný specializovaný algoritmus, využití stávajících algoritmů pro generalizaci liniových prvků. Jednotlivé C uloženy v DCEL, tj. uchovávány topologické vazby. Necht m představuje počet uzlových bodů C. Princip generalizace: Tvořen následujícími kroky: A) Uzavřená oblast C dekomponována na m lomených čar {L 1,..., L m }. Koncové body L j, j (1, m) tvořeny uzly oblasti C (uzly nemohou být generalizovány). B) Každá lomená čára L j generalizována samostatně, nejčastěji použit Douglas-Peucker Algorithm. Lomená čára společná incidujícím oblastem, nedochází k narušení topologie. C) Z generalizovaných L j složena C. Výhodou jednoduchost a výpočetní nenáročnost. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 134 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 133. Generalizace dekompozicí na lomené čáry, vstupní situace Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 135 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 134. Generalizace dekompozicí na lomené čáry, vlastní dekompozice na polylinie Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 136 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 135. Generalizace dekompozicí na lomené čáry, generalizace polylinií Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 137 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 136. Generalizace dekompozicí na lomené čáry, výsledek Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 138 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 137. Modifikované algoritmy pro lomené čáry Neprovádějí umělou dekompozici C na posloupnost lomených čar. Oblast C generalizují se zachováním topologie, tj. uzlových bodů. Uzlové body označeny jako kritické. Zástupcem je modifikovaný Douglas-Peucker Algorithm Princip modifikovaného Douglas-Peucker Algorithm: Vzhledem k vlastnostem generalizačního algoritmu topologie zachována přidáním uzlů do C (nemusí být vyjmuty z generalizačního procesu). Postup tvořen třemi kroky: A) Aproximace C První aproximací generalizované oblasti C představuje 4-úhelník C, jehož hrany tvoří spojnice extrémních bodů p i množiny C. B) Přidání uzlů Do C přidány všechny uzly C. C) Aplikace Douglas-Peucker Nad hranami C spuštěn Douglas-Peucker, do C přidávány další vrcholy p i. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 139 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 138. Ilustrace modifikovaného Douglas-Peucker algoritmu, konstrukce MBR Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 140 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 139. Ilustrace modifikovaného Douglas-Peucker algoritmu, oblast C Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 141 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 140. Ilustrace modifikovaného Douglas-Peucker algoritmu, přidání uzlů do C Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 142 / 155
Algoritmy pro zjednodušení tvaru plošných prvků 141. Ilustrace modifikovaného Douglas-Peucker algoritmu, další generalizační krok Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 143 / 155
Algoritmy pro generalizaci plošných prvků agregací 142. Generalizace plošných prvků agregací Cílem nahrazení skupiny plošných prvků ležících dostatečně blízko jedním plošným prvkem. Použití u takových plošných prvků, které by se díky své blízkosti v měřítku generalizované mapy opticky splynuly v jeden prvek. Využití planárních 2D struktur: konvexní obálka. Princip algoritmu: Na vstupu množina k polygonů. Konstrukce konvexní obálky nad všemi polygony. Nevýhoda je vysoká míra generalizace neodpovídající skutečnosti (při rozložení vstupních polygonů tvořících výrazně nekonvexní množinu. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 144 / 155
Algoritmy pro generalizaci plošných prvků agregací 143. Ukázka generalizace plošných prvků agregací: vstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 145 / 155
Algoritmy pro generalizaci plošných prvků agregací 144. Ukázka generalizace plošných prvků agregací: konvexní obálka Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 146 / 155
Algoritmy pro generalizaci plošných prvků agregací 145. Ukázka generalizace plošných prvků agregací: výstupní data Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 147 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 146. Generalizace plošných prvků rozpuštěním/spojením Odstraňování oblastí malých rozměrů či oblastí splňujících/nesplňujících zadanou podmínku. Od určitého měřítka mapy nelze takové objekty zobrazovat samostatně. Metody: spojení oblasti. rozpuštění oblasti. Metoda spojení oblasti (Merging): Oblast C sloučena s některou incidující oblasti (operace sjednocení). Výběr oblasti, se kterou bude sloučena dle atributových kritérií (např. stejné využití) i geometrických kritérií (délka společné hranice). Nevýhodou přílišná dominance sjednocené oblasti vůči okolí. Z kartografického hlediska nevypadá přirozeně. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 148 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 147. Ilustrace generalizace spojením Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 149 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 148. Generalizace oblasti rozpouštěním Generalizovaná oblast C rozpuštěna (Dissolve), tj. rozdělena mezi sousední oblasti. Jakým způsobem vést dělící hranice, aby alespoň vystihovaly tvar C a byla zaručena topologická korektnost? Využití topologické kostry, zejména Straight Skeletonu. Dělící hranice jdou po hranách skeletonu. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 150 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 149. Princip generalizace oblasti rozpouštěním Necht oblast C tvoří m uzlových bodů označených p j, w j představuje nejkratší cesta mezi dvěma uzly p j, p j 1, oblast C je dělícími hranicemi rozdělena na m oblastí c j a oblast C inciduje s m oblastmi C j. Postup generalizace: 1: Vygenerování skeletonu S(C), skeleton lze reprezentovat binárním stromem T. 2: Nalezení dělících hranic C. a) Nalezení m uzlových bodů oblasti C. b) Pro každý uzlový bod p j, j (m, 1), opakuj: Nalezení nejkratší cesty w j =d min (p j, p j 1 ) mezi incidujícími uzlovými body p j, p j 1 v T. Dělící hranice C mezi uzlovými body p j, p j 1 tvořena touto cestou. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 151 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 150. Princip generalizace oblasti rozpouštěním 3: Rozdělení C s využitím dělících hranic, vznik m podoblastí {c 1,.., c m }, kde c j C. Pro každý uzlový bod p j opakuj: Spoj seznam vrcholů mezi p j 1, p j se seznamem w j. Výsledkem oblast c j. 4: Spojení c j s incidující oblastí C j. Pro každý uzlový bod p j opakuj: sjednocení c j C j. Dissolve dosahuje lepších výsledků než agregace, nedochází k nadměrné dominanci generalizované oblasti vzhledem k ostatním. Nelze použít vždy, každá strana C musí mít souseda, tj. C nesmí ležet na okraji. Postupy poměrně náročné na implementaci, pro určité konfigurace bodů Tomáš méně Bayer vhodný bayertom@natur.cuni.cz tvar skeletonu. (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 152 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 151. Ilustrace generalizace technikou rozpouštění Konstrukce skeletonu a nalezení nejkratších cest. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 153 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 152. Ilustrace generalizace technikou rozpouštění Spojení seznamů a konstrukce c j. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 154 / 155
Algoritmy pro generalizaci plošných prvků rozpouštěním/spojením 153. Ilustrace generalizace technikou rozpouštění Spojení c j a C j. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Kartografické geoinformatiky generalizační a algoritmy kartografie. Přírodovědecká fakulta UK.) 155 / 155