3. Vektorizace bitmapy3.1. PředpokladyZáměrem vektorizace je konverze bitmapy na posloupnost útvarů lemovaných spline křivkami10, které rekonstruují původní obraz s nastavitelnou přesností.Pro vektorizaci (anglicky též jako surface-fitting či curve-fitting) existuje více algoritmů vytvořených bud pro zcela obecné použití či optimalizovaných pro převod bitmapy splňující určité podmínky.V našem případě prezentujeme algoritmus, který využívá oproti zcela obecnému případu tato specifika sociomap:1) Funkce generující rastr jsou hladké.2) Minimální vzdálenosti mezi lokálními extrémy jsou dostatečně velké.Myslíme tím, že existuje dostatečný počet pixelů mezi lokálními extrémy.Dostatečná vzdálenost je potřeba, aby rastr, který rekonstruuje hladkou funkci, bylo možné vnímat též jako „hladký“ (derivaci v rastru vnímáme jako rozdíl hodnot sousedních pixelů).3) Fakt, že v přímé i nepřímé sociomapě barva vyjadřuje výšku, takže můžeme na zdrojovou bitmapu nahlížet jako by byla kódována jen stupni šedi (výška).Výstupem modulů generujících přímou i nepřímou sociomapu je reálná čtvercová matice Mr×r s hodnotami transformovanými na , dále budeme matici M značit jako rastr.Věta o spojitosti terénu: Funkce generující rastr přímé i nepřímé sociomapy jsou hladké.Dčkaz: U přímé sociomapy plyne z interpolace (viz kapitola 2.6).U nepřímé sociomapy se na sebe přičítají hladké funkce, tj.výsledná mapa je též hladká.3.2. AlgoritmusNíže popsaný algoritmus převede rastr sociomapy na posloupnost uzavřených spline křivek tak, že křivky kopírují terén v dané výškové hladin.Výšku v daném bodě vyjadřuje hodnota rastru.
正在翻譯中..
