Zpracování distančních dat a nové přístupy v konstrukci povrchů

Transkript

Zpracování distančních dat a nové přístupy v konstrukci povrchů
Univerzita Pardubice
Fakulta ekonomicko-správní
Ústav systémového inženýrství a informatiky
Zpracování distančních dat a nové přístupy
v konstrukci povrchů
Disertační práce
Autor: Ing. Jan Hovad
Školitel: doc. Ing. Jitka Komárková, Ph.D.
Pardubice 2015
University of Pardubice
Faculty of Economics and Administration
Institute of system engineering and informatics
Distance data processing and new approaches in the
terrain construction
Dissertation
Author: Ing. Jan Hovad
Supervisor: doc. Ing. Jitka Komárková, Ph.D.
Pardubice 2015
Prohlašuji:
Tuto práci jsem vypracoval samostatně. Veškeré literární prameny
a informace, které jsem v práci využil, jsou uvedeny v seznamu použité
literatury. Byl jsem seznámen s tím, že se na moji práci vztahují práva
a povinnosti vyplývající ze zákona č. 121/2000 Sb., autorský zákon, zejména
se skutečností, že Univerzita Pardubice má právo na uzavření licenční
smlouvy o užití této práce jako školního díla podle § 60 odst. 1 autorského
zákona, a s tím, že pokud dojde k užití této práce mnou nebo bude poskytnuta
licence o užití jinému subjektu, je Univerzita Pardubice oprávněna ode mne
požadovat přiměřený příspěvek na úhradu nákladů, které na vytvoření díla
vynaložila, a to podle okolností až do jejich skutečné výše.
Souhlasím s prezenčním zpřístupněním své práce v Univerzitní
knihovně Univerzity Pardubice.
V Pardubicích dne 1. 3. 2015
Ing. Jan Hovad
Poděkování
Rád bych poděkoval své školitelce Doc. Ing. Jitce Komárkové, PhD. za
ochotu a vstřícný přístup při řešení této práce a během mého studia. Děkuji za
odborné vedení a poskytnuté cenné rady. Dále bych rád poděkoval Mgr.
Pavlu Sedlákovi, Ph. D. a prof. Ing. Janu Čapkovi, CSc. za cenné rady,
připomínky a vedení během samotného studia. Poděkování patří i mé rodině –
za jejich podporu a zájem o dílčí výsledky, které vedly k vytvoření této práce.
Anotace
Doktorská práce obsahuje návrh nového postupu pro komplexní zpracování
surových dat technologie LIDAR. Navržený postup je implementován a na jeho výstupu je
fotorealistický model povrchu určený k dalšímu využití v oblasti modelování a simulací.
Tento nový přístup využívá všech oblastí informačních technologií včetně počítačové
grafiky, datových struktur a programování, geografických informačních systémů, big data
technologií, statistiky či pokročilé vizualizace. Model povrchu je adaptivní, procedurální,
parametrický, fotorealistický s přesností odpovídající 8 bitové hloubce řídících rastrů.
Využití modelu je možné např. v strojírenství, geografii, hydrometeorologii, dopravě a
komunikacích a mnoha dalších.
Annotation
Dissertation presents a proposal of a new approach for the complex raw LIDAR
data processing. Proposed approach is implemented and on its output is the photorealistic
model of the surface, which is suitable for another utilization in the area of simulations and
modelling. This new approach utilizes various parts of information technology, including
computer graphics, data structures and computer programming, geographical information
systems, big data technology, statistics and advanced visualisation. Surface model is
adaptive, procedural, parametric, photorealistic with the precision corresponding to the 8
bit depth of the object leading rasters. Use of this model can be found, for example, in
engineering, geography, hydrometeorology, transport and communications and many more
sectors.
Klíčová slova
LIDAR, DSM, DTM, Modelling, Simulation, Visualisation, Algorithm
Key words
LIDAR, DSM, DTM, Modelování, Simulace, Vizualizace, Algoritmus
Obsah
1 Analýza současného stavu v oblasti tématu ......................................................................... 3
1.1 Technologie LIDAR .......................................................................................................... 3
1.2 Typy LIDAR zařízení ....................................................................................................... 4
1.2.1 Letecké skenování ...................................................................................................... 4
1.2.2 Mobilní mapování ...................................................................................................... 4
1.2.3 Statické záznamy ........................................................................................................ 4
1.3 Implementovatelné polygonové struktury ...................................................................... 4
1.4 Výpočty a modelování objektů na povrchu .................................................................... 6
1.5 Distribuované systémy ...................................................................................................... 7
1.5.1 Paralelní a distribuované systémy ........................................................................... 11
1.6 Agregace dílčích oblastí do jednotného modelu ........................................................... 12
2 Definice cílů disertační práce na základě analýzy současného stavu .............................. 16
2.1 Hlavní cíl .......................................................................................................................... 16
2.2 Dílčí cíle ............................................................................................................................ 16
2.2.1 Redukce nerovnoměrné bodové struktury ............................................................... 17
2.2.2 Nahrazení využívané trojúhelníkové polygonové sítě lépe vyhovující strukturou . 17
2.2.3 Adaptivní rozlišení terénu a snížené hardwarové nároky modelu .......................... 18
2.2.4 Zapojení geostatistických metod pro hodnocení a korekce modelu ....................... 18
2.2.5 Atributová dědičnost laserem zachycených objektů na polygonové modely .......... 19
2.2.6 Parametrický a procedurální přístup ....................................................................... 19
2.2.7 Implementace časově náročných výpočtů distribuovaným způsobem .................... 19
2.2.8 Selektivní úpravy algoritmů pomocí imperativních a funkcionálních přístupů .... 20
3 Přehled dosažených vlastních výsledků ............................................................................. 21
3.1 Schéma navrhovaného řešení problematiky................................................................. 21
3.2 Vstupní data .................................................................................................................... 23
3.2.1 Vektorová data základní báze geografických dat .................................................... 23
3.2.2 Laserový záznam zájmové oblasti ............................................................................ 24
3.2.3 Družicové snímky NOAA/JSMSG ........................................................................... 25
3.2.4 Reprezentace laserových dat .................................................................................... 26
3.3 Použitý hardware a software ......................................................................................... 27
3.3.1 Hardware .................................................................................................................. 27
3.3.2 Software .................................................................................................................... 27
3.4 Filtrace, čištění a chyby laserových záznamů ............................................................... 28
3.5 Redukce dat pomocí hromadné interpolace v C++ ...................................................... 31
3.5.1 Interpolace bodových mračen .................................................................................. 31
3.5.2 Hromadná implementace interpolačních algoritmů ............................................... 32
3.5.3 Tvorba adaptivních gridů závislých na sklonu terénu ............................................ 36
3.6 Geostatistika a korekce interpolovaných modelů ........................................................ 38
3.6.1 Metoda rozdělení vstupního souboru interpolovaných gridů ................................. 39
3.6.2 Moranova I statistika (globální) odchylek interpolovaného modelu ...................... 44
3.6.3 Spearmanův pořadový test ....................................................................................... 48
3.6.4 3D skriptování interpolovaných adaptivních gridů ................................................. 50
3.7 Rekonstrukce digitálních modelů budov ...................................................................... 53
3.8 Polygonové parametrické a procedurální modelování ................................................ 54
3.8.1 Segmentace a klasifikace DTM ............................................................................... 55
3.8.2 Využití základních množinových operací pro dědění atributů ................................ 56
3.8.3 Osazení modelu parametrickými objekty ................................................................. 57
3.9 Dědičnost LIDAR atributů, distribuce pomocí hodnot uchovaných v rastrech ........ 59
3.9.1 Filtrování dat a návrh algoritmu pro rozpoznávání vegetace ................................. 60
3.9.2 Transformace rastru ................................................................................................ 65
3.9.3 Řízená distribuce objektů pomocí vytvořených rastrů ............................................ 67
3.10 Implementace stavu počasí v reálném čase z družic NOAA ....................................... 68
3.11 Paralelizace a distribuovaný přístup k dílčím úlohám ................................................ 69
3.11.1 Implementace distribuovaných výpočtů na bázi Google® File Systému................ 69
3.11.2 Paralelizace............................................................................................................... 70
3.11.3 Distribuované systémy .............................................................................................. 71
3.12 Tvorba náhodných statických či dynamických výstupů z vytvořeného 3D modelu . 73
Závěr........................................................................................................................................... 78
Vysvětlení zkratek a pojmů ...................................................................................................... 80
Seznam obrázků ........................................................................................................................ 83
Seznam použité literatury......................................................................................................... 85
Uvedení vlastních publikací souvisejících s tématem............................................................. 90
Přílohy ........................................................................................................................................ 92
Úvod
Light Detection and Ranging Technology (LIDAR) je technologie, která
se v současné době stále častěji využívá k velmi přesnému mapování terénu a objektů
na jeho povrchu. Zachycení zájmových oblastí probíhá pomocí pohybujících se objektů,
ke kterým je snímací zařízení připevněno, např. automobilu a letadla, či pomocí statických
skenerů. Výstupem celého procesu je tzv. mračno bodů, které je řádově tvořeno miliony
body. Výhodou tohoto záznamu je jeho přehledná struktura, nevýhodou hardwarová
náročnost na zpracování a vizualizaci dat. Tento problém je způsoben především velkým
datovým objemem výstupu, který dosahuje velikosti v řádech gigabajtů či dokonce
terabajtů. Tato problematika se tak promítá do všech současných vědeckých prací
a znatelně limituje jejich využití.
Zájmové oblasti jsou obvykle charakteristické velmi malou rozlohou a velkým
počtem zobrazených bodů, které kladou velké nároky na paměť zařízení. Obdobným
způsobem je ovlivněna i samotná 3D struktura terénu, který je obvykle reprezentován
trojúhelníkovými polygony či pouze sítí vektorů. Výpočtově jednodušší triangulace však
nevytváří dostatečně kompatibilní a selektivně tvarovatelný polygonový model terénu,
který by byl široce využitelný i v jiných odvětvích (strojírenství, stavebnictví, simulace).
Nadměrné množství bodů se tak stává v určitém pohledu přítěží a limituje praktické využití
výstupů v konkrétních situacích. Samotné výstupy z bodových dat jsou díky těmto
faktorům velmi omezené a často segmentované do tříd, které abstrahují, pro daný obor
nepodstatné, objekty (model vegetace, model zástavby, model terénu).
Cílem této práce je navržení optimálního řešení, které sjednotí dílčí oblasti
zpracování laserových dat s ohledem na navržení nových postupů, které eliminují negativní
faktory současně používaných řešení. Výstupem je vytvoření 3D polygonového,
parametrického, procedurálního, atributově reálného a velmi rozlehlého modelu povrchu,
založeného na laserovém mračnu, které pokrývá zájmovou oblast v ČR. V navrženém
modelu lze kombinovat preciznost laserových hodnot s architektonickými návrhy,
technickými výkresy, analýzami průhybů, vizualizacemi, simulacemi, přímým 3D tiskem
a mnoha dalšími prvky. Celý návrh je orientovaný na prezentaci ve fotorealistické kvalitě.
Model obsahuje transformovanou bodovou formu dat do adaptivní čtvercové,
parametrické a procedurální polygonové formy. Postup navrhovaného řešení je proveden
1
s ohledem na abstrakci specifického softwaru a případnou možnost implementace
v libovolném, žánrově blízkém, prostředí. Práce využívá nejmodernější technologie a
přístupy z různých směrů IT, konkrétně, počítačové grafiky, geografických systémů,
programování a datových struktur, vizualizace či matematických a statistických metod.
2
1 Analýza současného stavu v oblasti tématu
Tato kapitola je rozdělena do tří částí. První část představuje technologii LIDAR,
druhá část je zaměřena na analýzu historických prací v oblasti tématu a třetí část
na aktuální výzkum, který byl pomocí technologie proveden v poslední časové dekádě.
1.1 Technologie LIDAR
LIDAR je technologie, jejíž funkcionalita je založena na měření vzdálenosti
objektů prostřednictvím elektromagnetického záření, které je na specifické vlnové délce
odraženo od povrchu objektu. Využití omezuje celá řada faktorů jako je například formát
uložení dat, vlastnosti samotného skeneru či monitorované prostředí.
Zařízení se skládá z několika částí, první je samotný laser. Operuje na specifických
vlnových délkách a to v oblasti od 650 - 1000 nm a 1000 - 1500 nm. Oblast bližší vnímání
lidského oka je pro laser také méně vhodná, výkon není z důvodu možného poškození
zraku tak velký. Delší vlny jsou proto vhodnější pro záznam na delší vzdálenost, umožnují
využití například v oblastech, kde nehraje velkou roli prostorové rozlišení. Odraz paprsku
je zaznamenán detektorem. Detektor funguje na principu zpětného odrazu světla. Část
intenzity paprsku je tak odražena ve směru, pod kterým paprsek dopadl na povrch objektu
a je detekován. Jedná se o opak funkce zrcadla, kde je valná většina záření odražena
pod stejným úhlem. Na základě částečného a v čase postupného rozptylu paprsku,
například skrze koruny stromů, je možné tvořit i přesné výškové modely vegetace
(Weitkamp 2005).
Rozlišení výsledného obrazu je ovlivněno frekvencí rotujícího zrcadla, rychlostí
letu letadla, schopností ukládat záznam a mnoha dalšími parametry. Technologie
je specifická velkým množstvím dat k uložení, které musí být při skenování zpracováno
v omezeném časovém intervalu. Nad celou strukturu je napojený polohový systém, který
obsahuje Globální Navigační Satelitní Systém (GNSS) a základní měřící jednotku (IMU).
Klasická GPS může být v některých případech nevhodná a to díky nedostatečné rychlosti
aktualizace polohy. Například při mobilním mapování kde je nositelem LIDAR
technologie automobil, dochází při pohybu rychlostí 40 km/h k aktualizaci každých 11
metrů. K laserovým datům může být pořízena i fotografie pokrývající zájmovou oblast.
V případě sférických fotografií je zapojeno paralelně několik jednotek, které jsou namířeny
3
do všech stran tak, aby došlo k eliminaci nezachycených míst při průjezdu/průletu terénem.
Například aktuální systém od firmy NAVTEQ je schopen zachytit 1.5 milionů bodů
za sekundu, přičemž využívá 64 paralelně zapojených jednotek (Kingslake 1992).
1.2 Typy LIDAR zařízení
Využití technologie lze rozdělit do 3 základních oblastí dle typu použití.
1.2.1 Letecké skenování
Zařízení je připevněno k trupu letadla s detektorem namířeným směrem k zemi.
Výstupem je bodové mračno zachycené v podobě linií, z kterých lze sestrojit digitální
model terénu (DTM) či digitální model povrchu (DSM). Použít jej lze například v geologii
při analýzách pobřežních oblastí a při vytváření velmi přesných elevačních modelů.
Druhým typem je mobilní mapování.
1.2.2 Mobilní mapování
Zařízení je připevněno k povrchu vozidla. Při průjezdu zájmovým územím
je sféricky okolí zachyceno. Kvalitu tak ovlivňuje rychlost vozidla, použitý úhel, který
ovlivňuje rozlišení výstupu či vyčítací rychlost. Vždy je nutné zvolit takové parametry,
aby došlo k minimalizaci "hluchých" míst, které byly po určitou dobu neviditelné
a je nutné je zachytit opakovaně při dalším snímacím intervalu. Třetím typem jsou statické
záznamy.
1.2.3 Statické záznamy
Mezi statické záznamy patří například izolované objekty nebo velké oblasti zájmu.
Skenery jsou nejvíce používané v oblasti analýzy povrchů, při realistickém modelování
předmětů (strojírenství) nebo v architektuře při vytváření detailních modelů domů. Mimo
těchto zmíněných lze LIDAR využít například pro detekci vzdáleností automobilů
(parkování, automatické řízení vozidel), analýzách solárních či větrných elektráren
a při mnoha dalších příležitostech.
1.3 Implementovatelné polygonové struktury
Technologie LIDAR poskytuje surová data v bodové podobě - pro využití
v polygonovém 3D prostoru je zapotřebí zvolit vhodnou strukturu polygonu. Omasa a kol.
4
v roce 2008 publikovali studii s využitím LIDAR technologie při rekonstrukci
příměstského parku a to včetně vegetace. Počet bodů a jejich struktura však neumožnila
aplikování obdobného přístupu algoritmicky na mnohem rozlehlejší oblasti. Tento deficit
byl již zlepšován mnoha autory. Např. Axelsson v roce 2000 implementoval adaptivní
rozlišení polygonů na model terénu. Strukturou byl však manuálně složitě editovatelný
trojúhelník (TIN). TIN představuje nejvíce využívanou formu v GIS, která reprezentuje
výsledný povrch terénu. Obvykle je pro tvorbu využit algoritmus Delaunay Triangulation,
který vyvinul Boris Delaunay ve 40. letech minulého století. Implementace tohoto
algoritmu je v tomto případě nevhodná a to z důvodů zmíněných v kapitole Nahrazení
využívané trojúhelníkové polygonové sítě lépe vyhovující strukturou.
Popsané negativní jevy jsou viditelné při zkušební tvorbě TINu v zájmové oblasti
(Obrázek 1). Na první pohled je patrná nepředvídatelnost v toku hran, nemožnost dělit
povrch, velmi omezená možnost osazení terénu objekty na jeho povrchu a například
využitelnost při dynamických simulacích. Tato demonstrativní implementace byla
vytvořena dle adaptivního přístupu viz. (Axelsson 2000).
Obrázek 1 - LIDAR bodové mračno reprezentované jako TIN (Zdroj: Autor)
Při využití struktury TIN zvažoval autor práce obalení bodových mračen souvislou,
předem nadefinovanou pravidelnou strukturou. Kladnými a zápornými vlivy tohoto
přístupu byl autor seznámen například ve vědecké studii Mandlburgera a kol. (2009), kteří
testovali přesnost polygonových struktur při modelování a následných simulacích nad
DMP rakouských vodních toků. Změnou tvaru na pravidelné čtverce může být vyřešen
5
problém mezi lichým a sudým počtem hran a tedy i editovatelností včetně snížení
hardwarových nároků. Poznatky z výstupů těchto autorů naznačují, že čtvercové struktury
lze lépe implementovat například pro organickými objekty či objekty, které se hýbou či
ohýbají (Obrázek 2). V tomto případě lze situaci demonstrovat na změně reliéfu terénu v
čase, který by při simulacích vyvolával v trojúhelníkové podobě problémy při výpočtech
dopadu fotonů elektromagnetického záření, světla. Například pro optimalizaci procesů
demonstrovaných ve studiích Li a kol. v roce 2008.
Dělitelnost čtverce se 4 hranami 4/2 při první iteraci, je roven 2, tedy sudé číslo
beze zbytku. U trojúhelníku je výsledek 3/2 reálné číslo, které tvoří čtyřhran a trojhran nevhodná struktura. Sudý počet hran tak řeší celou řadu problémů, stanovených v kapitole
Nahrazení využívané trojúhelníkové polygonové sítě lépe vyhovující strukturou.
Obrázek 2 - LIDAR bodové mračno reprezentované jako QRN (Zdroj: Autor)
1.4 Výpočty a modelování objektů na povrchu
Modelování a simulace nad samotnou vegetací a dalšími objekty osazenými nadmodelem terénu (DMT), byly četným předmětem diskuzí a výzkumu v oblasti využití
technologie LIDAR. Kromě prostorových metod (Naesset 2004), v kterých šlo především
o extrakci dílčích objektů - například stromů, byly implementovány i techniky na detekci
plošných parametrů. Například tvar koruny stromů, jejich výšku či samotný druh. Většina
metod je založena na hledání objektů na základě odlišného lokální maxima (CHM). Napří-
6
klad Hyypa a kol. (2001) interpolují CHM speciální mřížkovou technikou a následně model vyhlazují Gaussovským filtrem. Prostorové objekty jsou většinou detekovány za pomocí watershed algoritmu (Pyysalo a Hyyppa, 2002) nebo algoritmem, který propočítává
odlišnost sklonu v daném okolí prostorového rozlišení (Persson a kol., 2002). Mnoho autorů zkoumá i přesnost detekce objektů přičemž používají různé globální ukazatele. Například Solberg a kol. (2006) aplikují algoritmus s přesností detekce 66%. Peterson a kol.
(2002) uvádějí přesnost detekce 71% a to pro skandinávské lesy, v kterých dominují borovice a smrky. Heurich (2006) však demonstruje tuto techniku s přesností 51% a to se zaměřením na obecně jehličnaté lesy. Segmentace je tak značně závislá na typu vegetace. Hlavní nevýhodou je v těchto případech využívání interpolovaných dat, které vstupní mračno
vyhlazují a způsobují nepřesnosti v aplikaci samotných algoritmů pro detekci objektů.
Aktuální výhody v oblasti přináší především technologický progres v oblasti množství dat zachytitelných samotným LIDAR zařízením. Možnost dekompozice vlnové délky
společně s mnohem větší hustotou záznamu umožňuje dosáhnout velmi přesné detekce a to
i v oblasti velmi malých detailů. Problémem však i nadále zůstává velká hardwarová náročnost a zpracování/uchování dat pro další využití. Konkrétní aplikaci nad dekompozicí
vlnové délky zpracovat Wagner a kol. (2006). Výzkum byl zaměřen na klasifikaci vegetace. Odraz paprsku a dekompozici zkoumal i Kirchhof a kol. (2008), který prezentoval metodu při detekci budov obklopených vegetací.
Nedostatky v oblasti modelování objektů na povrchu terénu jsou autorem shledány
především v redukci zachycených bodů, využití distribuovaných výpočtů ke zpracování dat
a vytvoření abstraktních modelů s udržením kvality surových dat, přidat fotorealistickou
kvalitu bodovým datům a poskytnout výsledný model v univerzálním nativním formátu i
dalším odvětvím.
1.5 Distribuované systémy
Z výše popsaného popisu je patrné, že implementace distribuovaného výpočtu
je poměrně složitou záležitostí, v které samotné řešení konkrétního problému, zabírá jen
malou část celého procesu. Tento problém byl řešen firmou Google®, která se snažila
o vývoj souborového systému vhodného pro zpracování nadměrného množství dat
vyprodukovaného vyhledávacím systémem.
7
Hlavním cílem bylo využití běžně dostupných kancelářských PC pro distribuované
výpočty v clusteru. Abstrakce řešení problémů s přístupy k vláknům, segmentace a redukce
vstupních dat, řízení přidělování Map/Reduce operací centrálním prvkem, minimalizace
datových přenosů, řešení kritických okamžiků - selhání pracovních stanic, selhání
hardwaru a mnoha dalších problematických faktorů. Uživateli tak odpadla nutnost řešit
celou řadu oddělených problémů a byla tak zpřístupněna možnost zaměřit se na
naprogramování samotné Map a Reduce fáze zpracování dat. V současné době je GFS
implementován i v open source alternativě, kterým je Framework Apache Hadoop®
využívající Hadoop® File Systém (HDFS) či Amazon AWS v podobě služby EMR.
Výpočtové prostředí je v současné době ve vývojové verzi dostupné výhradně pro
Unixové operační systémy (Linux). Alternativní implantace pro platformu Windows je
přístupná pouze ve fázi betatestování na platformě Windows Azure jako dílčí část mnoha
cloudových služeb. Princip funkčnosti frameworku spočívá ve funkcionálním přístupu
vysvětleném v předchozí kapitole. Je však rozšířen o ošetření všech kritických míst.
Struktura GFS, která bude použita v dalším postupu viz. Obrázek 3 (Dean a Ghemawat
2004, Holmes 2012).
Obrázek 3 - Google File Systém (GFS) (Zdroj: Autor na základě Dean a Ghemawat 2004)
Schopnost zpracovávat paralelizovatelné operace na definované struktuře
předpokládá běh frameworku na Unixovém operačním systému, korektní nastavení SSH
pro přístup mezi všemi uzly, nastavení vlastnických práv uživatele a také správně
8
nakonfigurovaný Java 1.6+ (Sun), kořenový adresář. V případě správné konfigurace celý
proces začíná v bodě Obrázek 3, 1a při sběru vstupních dat. V tomto případě mají data
podobu LIDAR bodového mračna, tedy textových souborů se záznamy oddělenými novým
řádkem. Dílčí hodnoty jsou separované mezerami. Data jsou získána pomocí leteckého
přeletu nad zájmovým územím, nicméně vstupní soubory mohou být získány plně
automaticky například přímo z webu.
Vstupní soubor (nebo množina souborů) je uložen na lokálním file systému, např.
EXT3/4, JFS, Raiserfs ad. Datový soubor je překopírován do prostoru vymezeného
GFS/HDFS, přičemž je replikován na tzv. Data node, datové uzly. Datový uzel,
označovaný též jako Slave (otrok) představuje zároveň v pozdější fázi pracovní stanici
vykonávající
potřebné
dílčí
výpočty.
Replikace
zajišťuje
redundanci
dat
a to
v minimálním/základním počtu 3 datových bloků (méně důležité soubory) nebo obvykle
vyšším (více důležité soubory). Tímto je zajištěna bezpečnost a dostupnost dat v případě
ztráty spojení s datovým uzlem. Informace ohledně rozložení replikovaných částí souboru
jsou uchována v tzv. Name node na straně Master PC (řídící PC). Tato struktura tzv.
metadat (informace o datech), má například pro ilustrovaný soubor následující podobu
(Obrázek 4), (Ghemawat a kol. 2003, Apache Software Foundation 2010).
Obrázek 4 - Replikace dat (Zdroj: Autor)
V další části procesu je vstupní soubor rozdělen na M Map úloh (Obrázek 3, bod 2).
Jedná se o podobné rozdělení jako u segmentace obrazu, v tomto případě jsou však dělena
textová/číselná/… data, určená pro výpočtové operace. Každá z Map úloh je pomocí
Master uzlu naplánována na zpracování Map funkcí na jednom z dostupných Slave uzlů.
Master uchovává informace ohledně stavu jednotlivých Map částí v podobě těchto atribut:
čeká na přidělení Map úlohy/vykonává Map úlohu, přidělené úlohy splněny, tedy Slave
9
uzel je volný. Map funkce je plně definována uživatelem v některém z podporovaných
programovacích jazyků (Java, Python, C++).
Z důvodu minimalizace datových přenosů je ze strany Mastera vždy snaha
o alokaci Map úlohy přímo na místě výskytu odpovídajících replikovaných dat, nebo
v případě nevyhovění této podmínky, v těsném okolí Slavu uzlu. Například v rámci
jednoho switche tak, aby nebyla zbytečně zatížena propustnost celé sítě. Slave uzel
paralelně dle svých vláknových možností (počet CPU/HTT podpora) vypočtené Map
výstupy ukládá do své paměti a následně zapisuje na svůj lokální disk do definovaného
dočasného adresáře (Obrázek 3, bod 3). Tento adresář však není fyzicky umístěn
v GFS/HDFS ale je na nereplikovaném běžném souborovém systému daného Slave uzlu.
Toto umístění je uchováno v podobě metadat na straně Master uzlu (Obrázek 3, bod 4)
Výstup z Map funkce má strukturu <klíč, hodnota> přičemž náplň těchto dvou
hodnot závisí na typu úlohy. V případě LIDAR dat například <nadm. výška (klíč), výskyt
(hodnota) >. Pro Master uzel v pravidelných intervalech vysílá ping směrem k Slave uzlům
a zjišťuje odezvu. V případě, že uzel nereaguje, stornuje všechny Map úlohy, které
naplánoval a naplánuje je znovu. Včetně těch, které již byly vypočteny a to z toho důvodu,
že nebyly replikovány v síťovém úložišti, ale pouze na lokálním disku Slave uzlu - nelze
se k nim v případě poruchy dostat. Zároveň je upravena NameNode tabulka s metadaty
vypočtených Map úloh a případní čekající Slave uzly jsou od Master uzlu informováni
o změně - odstranění záznamu o vypočtené Map úloze (Map N: IP, port Slave uzlu).
To proto, aby v pozdější fázi zpracování nebyl Slave uzel mylně informován o fyzické
přítomnosti Map výpočtu v místě, kde z důvodu nedostupnosti již přítomný není.
Společně s ošetřeným přístupem v případě selhání na straně Slave uzlů je nutné
ošetřit i selhání samotného Master uzlu. To je provedeno periodickou zálohou celé tabulky
metadat. Tato záloha představuje možný bod obnovení, který je aktivní vždy se zpožděním
maximálně několika málo sekund. Záloha se provádí na skryté, tzv. Shadow Master uzly.
Volně přeloženo, šedé řídící uzly. Pro zajištění spolehlivějšího zpracování dat může být
těchto uzlů i více.
Po dokončení Map fáze výpočtů následuje příprava pro Reduce fázi v podobě tzv.
rozdělení map úloh Slave uzlům (tzv. partitioning). Slave uzly mohou začít s redukcí až
v době, kdy jsou všechny Map úlohy zpracované. Redukce dat probíhá na základě redukční
10
funkce, která je definovaná uživatelem. Vstupem do redukční funkce jsou seřazené
hodnoty dle klíče ve tvaru <klíč, seznam(hodnot)> a je zajištěno, že každý Slave uzel
dostane k redukci odpovídající seřazený seznam hodnot dle klíče (tzv. shuffle fáze) (Bloch
2008, Borthakur 2007).
V posledních několika desítkách let docházelo velmi často k citování Gordona
Moora a jeho zákona o zdvojnásobování počtu tranzistorů v 18 měsíčních cyklech. Toto
tvrzení je známo jako tzv. Moorův zákon. V období několika posledních měsíců je však
patrná drobná odchylka od, do nedávné doby, stálého trendu. Faktorů je celá řada. Většina
procesorů se dnes pohybuje ve frekvenčním rozmezí 2-4 GHz, toto číslo už se dramaticky
nemění a i pokud by frekvence stoupla na dvojnásobnou hodnotu, nebyla by plně využita
z důvodů pomalého vyčítání dat z paměti. Velikost tranzistorů téměř klesla na extrémně
nízkou úroveň a další zmenšování v současné době není možné. Moorův zákon
tak poodkrývá oblast distribuovaných výpočtů a klade otázku, zda je lepší 18 měsíců
vyčkat na řádově výkonnější PC, což už nemusí být pravda, nebo spojit několik
současných strojů za účelem urychlení výpočtu.
1.5.1 Paralelní a distribuované systémy
Z historického pohledu lze v tomto směru narazit na dva pojmy. Paralelní
a distribuované výpočty. Paralelní výpočty byly první tohoto typu a jsou populární
až do dnešní doby. Z hlediska architektury jsou zaměřené buď vektorově (1 dimenzionální
pole), nebo vláknově. Mezi známé stanice tohoto druhu se řadí například super PC Cray
(SPC). Paralelní výpočty jsou charakteristické zpracováním fyzicky na 1 PC, případně
na 1 PC a více vláknech. Distribuované výpočty jsou zpracovávané na N PC, přičemž
každé PC může mít více CPU. Spojení několika PC přidává do problematiky další faktor
a to síťové spojení. V současné době je oproti investici do SPC ekonomicky mnohem více
dostupné řešení distribuované a to v podobě propojení 1-N běžně dostupných
kancelářských PC.
11
1.6 Agregace dílčích oblastí do jednotného modelu
Dle výše zmíněných poznatků dílčích odvětví jsou vzaty v potaz i práce
kombinující praktické využití algoritmů či jejich vzájemnou kombinaci a integraci.
V případě této práce je surový datový sken tvořen individuálními body s povinnými
souřadnicemi X, Y a Z. Zájmové území je charakteristické bodovou nepravidelnou
strukturou, která obsahuje miliony zachycených bodů. Kompletní záznam představuje
digitální model povrchu (DSM) a lze jej dále filtrací a segmentací dělit na další části. Jedná
se o digitální výškový model (DEM), obvykle využívaný pro rekonstrukci terénu. DEM je
distribuovaný obvykle již v zjednodušené, rastrové či bodové, pravidelné podobě. Digitální
model terénu (DTM) je například zpracovaný DEM s tím rozdílem, že již obsahuje hrany a
tvoří snáze rozpoznatelný reliéf terénu.
Dalším je digitální výškový model vegetace (DCHM), který je charakteristický
nepovinným atributem, jenž obsahuje pořadí odražených laserových paprsků. Toto pořadí
je možné využít pro analýzu ve zvolených řezech celé vegetační struktury - například růst
obilí a optimalizace využití hnojiv. Digitální model budov (DBM) obsahuje výškové
informace budov, které lze využít pro analýzy viditelnosti, predikce signálů, zásahů do
ochranných pásem radarů a mnoha dalších postupech. Digitální model počasí (DWM) je
obvykle využit v meteorologii, obsahuje informace ohledně jednotlivých vrstev oblačnosti,
výskyt a intenzitu srážek a celou řadu další hodnot, které jsou obvykle k dispozici v 15
minutových intervalech. Tyto dílčí části celého bodového mračna jsou obvykle zpracovány
a využívány separátně například ve výzkumu autorů Broveli a kol. 2004, Omasa a kol.
2008, Chen a kol. 2012.
Časově vzdálenější výzkum lze segmentovat do kategorií na základě použití
různých metod. Tvorba DTM je často prvotní využití dat po jejich očištění. V posledních
20 letech bylo objeveno celé spektrum algoritmů vhodných k tvorbě DTM (Hu 2003,
Elmqvist 2002, Kraus a Pfeifer 2001). Jedním z nejlépe akceptovaných návrhů byl
představen autory Kraus a Pfeifer (1998). Algoritmus je zaměřen na lineární predikci, který
řeší tvorbu DTM v zalesněných oblastech. Ve všech případech se však jedná o zpracování
či demonstraci problematiky na velmi malých oblastech.
Proces využívá residua, výškové váhy a iterativní přístup. DTM je obvykle tvořen
polygonovou, trojúhelníkovou nerovnoměrnou sítí, angl.. Triangulated Irregular Network
12
(TIN). Výzkum v oblasti tvorby TIN byl kombinován ve směru analyzování vztahů mezi
residui a samotnou sítí. Problém s řezem hran byl vyřešen pomocí metody zrcadlení bodů.
Planární povrchy byly vytvořeny pomocí metod Rozděl a panuj (Axelsson 2000). Dalším
způsobem extrakce DTM z DSM je zaměření se na segmentaci a klasifikaci. V tomto
případě jsou body DSM funkcionálně zkopírovány a vytváří samostatný model.
Porovnávací studie různých metod byla provedena autory Sithole a Vosselman (2003).
Další kategorie zahrnují predikci DTM, analýzu přesnosti vůči reálným datům
a zjednodušování celého LIDAR mračna. Velmi často není možné zachytit záznam
ve všech lokacích zájmového území a proto je nutné tyto místa dodatečně dopočítat.
Prostorová interpolace vypočítává neznámé hodnoty z množiny známých bodů. Tento
postup také napomáhá k transformaci nerovnoměrné struktury do podoby pravidelné
čtvercové sítě, angl.. Quad Regular Network (QRN). Tato procedura může být vypočtena
na základě různých lokálních či globálních interpolačních algoritmů, například RenkaCline, Shepard, IDW a další. Renka-Cline využívá bivarietní funkci F(X,Y) a interpoluje
datové hodnoty F(Xi,Yi) = Zi, i = 1..N. Body jsou poté spojeny hranami do podoby
trojúhelníků. Poté mohou být použity dva pohledové přístupy, lokální (bere v úvahu
omezené množství bodů) či globální (všechny body). Každý z přístupů poskytuje různé
výstupy. Globální přístup odhaduje parciální derivace F se zaměřením na X a Y pro
všechny body bodového mračna. Lokální metoda využívá body limitované vzdáleností (R.
J. Renka a A. K. Cline 1984).
Tento problém by zkoumán například autory McLain (1976), Lawson (1977) a
Akima (1978). Shepardův algoritmus je zaměřen na váhovém přístupu k naměřeným
hodnotám individuálních bodů. Vytváří tak přesné aproximace (Shepard 1968, Berry a
Minser 1999). Postup může být také modifikován (Modifikovaný Shepard), a to tak, aby
vytvořil kvadratický, kubický nebo lineární model (Thacker a kol. 2011). Tento postup lze
implementovat jak lokálním tak distribuovaným způsobem např. vzdáleně pomocí Amazon
AWS EMR či na vlastní Hadoop architektuře. Časová náročnost je závislá na velikosti
aproximované mřížky a hustotě vstupních bodů. Velmi často jsou v oblasti GIS využity
algoritmy Inverse Distance Weighting (IDW) nebo Kriging. IDW poskytuje jednoduchou
formu interpolace. Využívá vážený průměr hodnot naměřených bodů v okolí
interpolovaného bodu. Váhy se zvyšují se zkracující se vzdáleností. Existuje celá řada
variací tohoto algoritmu lišící se svojí implementací a konceptuálními aspekty (Bartier a
13
Keller 1996). IDW je snadno implementovatelný a zakomponovaný ve většině
matematických či geografických aplikací. Použity mohou být i další interpolační algoritmy
jako je například metoda Splines, RBF, které odhadují hodnotu v dané lokaci na základě
váženého součtu hodnot z okolních bodů, či variace algoritmu Kriging, které přiřazují váhy
na základě datově řízené vážící funkce (Isaaks a Srivastava, 1989, Lloyd a kol. 2006).
Současné aplikované využití DTM je velmi bohatá a neustále se rozšiřující oblast,
která protíná velkou šíři vědeckých disciplín. DTM a jeho hybridní formy jsou využity
například ve výzkumu autorů Mandlburger a kol. (2009) k analyzování toků řek
v Rakousku. Mandlburger podtrhuje omezení redukce dat, která v určitých situacích zanáší
nezanedbatelné množství chyb do výpočtů. DBM jsou tvořeny mnoha přístupy jako
je například výpočet změny sklonů mezi body (Zhou a kol. 2004), extrakcí budov
z družicových snímků (Tack a kol. 2011) nebo byly vytvořeny přímo za použití DEM
(Priestnall a kol. 2000). DBM lze využít pro predikci pokrytí signálu jednotky GPS. Li
a kol. (2007) poukazuje ve svém výzkumu na metody tzv. Ray tracingu, které predikuje
kvalitu GPS signálu v hustě zastavěných zónách. Autor popisuje komplikovanou
dostupnost ucelených 3D modelů měst a na fakt, že kvalita DBM a DTM přímo ovlivňuje
výsledek predikce.
Implementace viditelnosti satelitů v reálném čase byla zkoumána autory Taylor a
kol. (2006). Jejich částečný výstup byl závislý na kvalitě DSM, která musela být velmi
velká, aby byla dosažena kvalitní predikce. Kromě GPS lze DBM využít i k přímé analýze
osvitu střešních ploch slunečním zářením, například pro podkladové analýzy pro
konstrukci solárních panelů. Takováto studie byla částečně provedena autory Nguyen a
kol. (2012). Vědecký výzkum a aplikované využití technologie LIDAR je také přímo
směřované do oblasti zemědělství a lesnictví. Optimalizace DTM a porovnání dílčích
struktur byla provedena autorem Klimanek (2006). Klimánek testoval hodnoty globálního
ukazatele RMSE (Root Mean Square Error), interpolovaných modelů v aplikaci TOPOL a
GRASS. Použil různé DTM a data ze stejné databáze, která byla dostupná i pro tuto práci
(ZABAGED®). Omasa a kol. (2008) vytvořil 3D model městského parku se stromy, který
byl umístěn v centru Tokia. Využil kombinaci statického přenosného pozemního LIDAR
skeneru a leteckých laserových snímků, které byly pořízeny z helikoptéry.
14
Omasa a spol. využili charakteru bodových dat. První puls, který dopadl na koruny
stromů jako první, tvořil výškovou informaci vegetace. Poslední puls, který dopadl na
terén, tvořil výškovou informaci o samotném terénu. Digitální model vegetace (DCHM)
byl poté vytvořen extrakcí těchto dvou vrstev. Takahashi (2005) odhadoval individuální
výšku stromů v Japonských lesích a prezentoval metodu identifikace stromů a odhadu
jejich výšek. Bartie a kol. (2011) spojil tvorbu DBM, DTM a DCHM k definování analýzy
viditelnosti v zastavěném prostředí. Tímto rozšířil běžnou analýzu viditelnosti využívající
DBM.
Technologie LIDAR je velmi často diskutovaná, ale její aplikace může být stále
v mnoha ohledech rozšířena. Každý algoritmus a metoda je obvykle využita pro jeden
konkrétní účel. Proto je potřeba vytvořit hybridní metodu, která by kombinovala různé
kroky a algoritmy z výše popsaných dílčích oblastí a integrovala je do jednoho
komplexního modelu. Dostupnost virtualizace, instantní tvorby libovolných clusterů,
distribuovaných sebe replikujících se databázových systémů pouze podtrhuje rozšiřitelnost
tématiky. Problematika tohoto charakteru je hlavním tématem této práce.
15
2 Definice cílů disertační práce na základě analýzy současného
stavu
V této kapitole budou objasněny hlavní i dílčí cíle práce. Veškeré body vytyčené
autorem jako důležité jsou vyvozené z dosavadního výzkumu mnoha autorů zmíněných
v rešerši. Navržený postup a inovace znatelně mění směr tvorby 3D modelu terénu
založeného na bodových mračnech technologie LIDAR.
2.1 Hlavní cíl
Hlavním
cílem
práce
je
vytvoření
3D
polygonového,
parametrického,
procedurálního, atributově reálného a velmi rozlehlého modelu povrchu, založeného
na laserovém balíku DMR 5G a DMP 1G. Na základě analýzy současného stavu
v problematice zpracování LIDAR bodových mračen, byla autorem stanovena celá řada
kritérií pro dosažení stanoveného cíle. K dispozici autor využil pouze surová bodová data,
v některých případech i pomocné vektorové vrstvy ZABAGED® (Obrázek 5).
Obrázek 5 - Hlavní cíl (Zdroj: Autor)
2.2 Dílčí cíle
Celá série dílčích cílů tvoří spojnici mezi vstupními daty a požadovaným výstupem
práce. Dílčí cíle představují ty nejdůležitější aspekty procesu, které vyžadují úpravu
a návrh nových či hybridních postupů pro tvorbu 3D modelu terénu.
16
2.2.1 Redukce nerovnoměrné bodové struktury
Velký problém, který je limitní pro nadměrnou většinu analyzovaných prací,
je nepravidelná struktura bodů, nadměrná hustota a nároky na úložný prostor. V případě
DMR 5G, který obsahuje 3 sloupce hodnot, dosahuje velikost záznamu pro jeden bod
44 B. V oblasti 10 × 10 km je zachyceno cca 20 milionů bodů, vynásobením této hodnoty
lze získat datovou velikost 880 MB. Toto zájmové území je však velmi malé, oblast
o velikosti 100 × 50 km ve stejné hustotě záznamu vyžaduje již 44 GB úložného prostoru.
Celá Česká republika cca 300 GB, Evropa 55 TB.
Technicky vyspělejší zařízení obsahují kromě základních 3 atributů (souřadnice
XYZ) i další, volitelné záznamy, které nároky na úložný prostor několikanásobně navyšují.
Práce s tak velkým množstvím bodů je v reálných situacích prakticky neproveditelná a
řada autorů je tímto faktem limitována na zájmové území dosahující maximální rozlohy
v řádek stovek metrů či několika kilometrů. Cílem tohoto kritéria je redukce dat v poměru
0:3 až 0:1000 s ohledem na minimalizování nepřesnosti ve snímaném terénu. Toto
kritérium umožní využití vytvořeného modelu na velmi rozlehlých zájmových oblastech,
jejichž velikost bude prakticky neomezená (státy, kontinenty), (Obrázek 6).
Obrázek 6 - Velikost laserového skenu (Zdroj: Autor)
2.2.2 Nahrazení využívané trojúhelníkové polygonové sítě lépe vyhovující
strukturou
Společně s redukcí počtu bodů je nutné upravit i samotnou strukturu polygonové
plochy. Většina autorů využívá Delaunay triangulaci, která je z jednoho pohledu výpočetně
velmi rychlá, na druhou stranu však velmi omezeně použitelná. Prvním omezením
je nekonzistentní struktura celého povrchu. Trojúhelníky jsou buď velmi malé (velká
hustota bodů), nebo naopak velmi velké, protáhlé, případně zahrnující slepé a vizuálně
evidentní plochy. V případě velké hustoty bodů je efekt znásoben i šumem, který
je v laserových měřeních přítomen. Tento jev se projevuje i po aplikaci triangulace.
17
Trojúhelníky se obvykle překrývají nebo vykazují chaotické natáčení své plochy vůči
svému okolí. Jsou tedy zašuměné stejným způsobem, jako body, z kterých jsou plochy
vytvořeny. V případě velkých trojúhelníků je velkým problémem snížené rozlišení plochy
a velmi omezená možnost editace.
2.2.3 Adaptivní rozlišení terénu a snížené hardwarové nároky modelu
Dílčím cílem práce je možnost tvorby velmi rozsáhlých modelů terénu. Velmi
detailní rozlišení polygonové mřížky není možné zachovat/zpracovat pro území o rozloze
odpovídající například celým státům. Na základě tohoto předpokladu je zapotřebí
navrhnout a implementovat adaptivní povrch terénu, který je závislý na měnícím se sklonu
terénu.
2.2.4 Zapojení geostatistických metod pro hodnocení a korekce modelu
Velké množství analyzovaných prací využívá k ohodnocení kvality výškového
modelu globální ukazatele - např. Root Mean Square Error (RMSE) (Svobodova 2011).
Samotné globální analýzy však nejsou dostačující a je proto nutné najít rovnovážný bod
mezi globálními ukazateli a přesnými, měřitelnými hodnotami. Lze se velmi často setkat
s velmi obsáhlými komparacemi desítek výškových modelů terénu, z kterých je následně
vybrána hrstka těch, které mají minimalizovaný vybraný globální ukazatel. Tento přístup je
však poměrně nepřesný, protože porovnání probíhá již na interpolovaném modelu, který
obsahuje celou řadu nepřesností.
Na základě prací mnoha autorů je patrné, že se globální aspekty DEM mění
v závislosti na prostorovém rozmístění dat, charakteristikou terénu a samotnou kvalitou
datového skenu. Je tedy nutné využít dodatečné porovnávací metody, případně některé
současné
metody modifikovat
tak,
aby byla
zachována
preciznost
obsáhlého
nerovnoměrného datového balíku. V tomto případě, kdy autor disponuje surovými
bodovými daty, není vhodné charakterizovat veličiny pomocí globálních ukazatelů, tedy
výpočtů RMS, STDEV či indexů, např. Hammock.
Tyto globální ukazatelé nacházejí uplatnění v situaci, kdy autor disponuje již
zpracovaným interpolovaným modelem a porovnává ho s referencí, přičemž bere na
vědomí fakt, že reference nepředstavuje přímo naměřené hodnoty. Vstupní data této studie
18
jsou ale přímá, bodová, tudíž je možné využít některou z lepších alternativ, která využije
i lokálních vztahů hodnot dat.
2.2.5 Atributová dědičnost laserem zachycených objektů na polygonové
modely
Laserové záznamy objektů na povrchu terénu jsou obvykle neúplné, obsahující
velmi řídký bodový záznam. Jedná se většinou o velmi složité objekty, které by pro svoji
plnou polygonovou rekonstrukci vyžadovaly mnohem hustší záznam. Jedná se například
o stromy, sloupy elektrického vedení či pohybující se objekty. Díky této nevýhodě nejsou
body vhodné pro komplexní nahrazení polygony, a pokud jsou v modelu ponechány jako
body, zbytečně zvyšují hardwarové a paměťové nároky. Tento přístup velmi často limituje
autory, kteří využívají LIDAR technologii, na velmi omezené zájmové oblasti. Objekty
na povrchu terénu, které obsahují tisíce bodů, nepřinášejí, minimálně vizuálně, prakticky
žádnou detailní informaci, popisující jejich strukturu. Pouze z velké vzdálenosti
připomínají svým bodovým obrysem zachycený objekt.
2.2.6 Parametrický a procedurální přístup
Plánovaná velmi rozlehlá oblast zájmu neumožňuje manuální zásahy do 3D
modelu. Celý proces musí být striktně definovaný, vázaný na reálné hodnoty laserového
skenu bez nutnosti velkých manuálních editací. Úpravy modelu mohou být řešeny
parametrickým přístupem. Jeden parametr tedy může ovládat miliony objektů na povrchu
terénu - řídit jejich atributy, případně lze parametry dle potřeby přeskupovat. Současně
autor implementuje i procedurální vlastnosti v podobě dynamicky se měnících materiálů,
nevyžadující žádné dodatečné textury.
2.2.7 Implementace časově náročných výpočtů distribuovaným způsobem
V celém procesu je možné najít výpočetně náročné procesy, které jsou s rychle
rostoucí velikosti vstupu n i při lineárním vzestupu složitosti prakticky nespočitatelné.
Celou řadu problémů je však možné atomicky rozdělit a pomocí distribuovaného výpočtu
rapidně urychlit. Distribuované řešení tak rozšiřuje možnost využití laserových bodových
mračen na mnohem větší zájmová území. Při rozloze ČR rovné cca 79 000 km2 je přibližná
datová velikost zachyceného záznamu rovna objemu 421 GB dat.
19
Tento objem je z praktického pohledu na jednom PC nezpracovatelný. Pro množinu
PC však nepředstavuje až tak velký problém a to ani v mnohem větších objemech (např.
Evropa, cca 55 TB dat). Datová velikost je přibližná a je ovlivněna celou řadou faktorů
(rychlost a výška letu, rychlost záznamu dat a frekvence rotace zrcadla, ad.). Tento příklad
však poskytuje zcela zjednodušený avšak hmatatelný pohled na problematiku rostoucího
množství a objemu datových souborů. Úloh, které mohou být zpracovány distribuovaným
způsobem, je mnohem více, například simulace tekutin, vykreslování obrazu, analýzy
shluků, korelací a grafových příkladů, indexování velkých souborů nebo například i hraní
PC her. Optimalizace bude zaměřena na implementaci prvků z pohledu architektury
Hadoop, GFS resp. Amazon EMR.
2.2.8 Selektivní úpravy algoritmů pomocí imperativních a funkcionálních
přístupů
Hromadné úlohy, které při manuálním zpracování vyžadují velký obslužný čas,
jsou zpracovány pomocí vhodných programovacích jazyků. Interpolační techniky pomocí
jazyka C++ a volně dostupné knihovny algoritmů, National Algorithm Group (NAG). 3D
objektové operace pomocí skriptovacího jazyka Maxxscript, GIS úlohy za pomocí jazyka
Python a distribuované, funkcionální přístupy jsou zpracovány pomocí jazyka Java/Python.
Veškeré procesy a datové výstupy dílčích operací tvoří ucelený postup pro dosažení
stanoveného cíle.
20
3 Přehled dosažených vlastních výsledků
Tato kapitola poskytuje kompletní postup pro zpracování bodových dat technologie
LIDAR k vytvoření detailního, parametrického modelu terénu. Tento model zaštiťuje
všechny dílčí submodely (DTM, DBM, DCHM, DEM, DSM, DWM) do jednoho,
univerzálního celku. Tento celek lze poté přímo využít, či napojit na výstupy z dalších
odvětví.
3.1 Schéma navrhovaného řešení problematiky
Schéma znázorňuje dílčí kroky vedoucí ke splnění stanoveného hlavního cíle
(Obrázek 7).
Obrázek 7 - Schéma individuálních kroků vedoucí ke splnění hlavního cíle (Zdroj: Autor)
V levé části proces začíná definováním vstupních datových sad. Hlavním vstupem
je Vstup 1, nerovnoměrný laserový záznam reliéfu/povrchu 4. nebo 1. generace.
Nepovinný je Vstup 2, který může být abstrahován při využití moderních laserových
skenerů, které umožnují automaticky klasifikovat dopad paprsku na povrch objektu. Vstup
3 reprezentuje snímky z družic na polární dráze NOAA, které jsou veřejně dostupné
a mohou být použity pro generování DWM. Proces je zahájen základní filtrací dat, která
21
zahrnuje prvotní předzpracování a očištění bodového mračna. Dále jsou data zpracována
pomocí C++ v prostředí aplikace OriginLab. Hromadně je aplikován zvolený interpolační
algoritmus a to v hromadné formě do předem definovaného pole cílových rozlišení (např.
1×1, 5×5, 20×20 metrů). Do výstupní složky je automaticky uložena celá sada
interpolovaných a pravidelných bodových sítí v několika rozlišeních. Prostředí OriginLab
je využito z důvodu úspory rozsahu zdrojového kódu, který nemusí obsahovat deklaraci
datových struktur pro uložení bodového mračna a abstrahuje také management alokace
paměti. Další fází je využití pokročilých i základních geostatistických metod pro validaci
interpolovaných modelů vůči reálně naměřeným hodnotám.
V této části práce dochází k modifikaci metody rozdělení vstupního souboru
a ke zpětnému šíření chyby. Tato chyba je uchována v podobě rastrové matice, jež slouží
pro korekce modelu. Opravené interpolované modely jsou využity k výpočtu sklonu terénu
na základě zvoleného rozlišení. Tato klasifikace tvoří podklad pro vytvoření adaptivního
modelu terénu. Adaptivita spočívá v použití řidší bodové mřížky v rovinných oblastech
a naopak, hustšímu bodovému záznamu v oblastech hornatých či sklonově se měnících.
Adaptivní bodové sady jsou zpracovány pomocí jazyka Maxxscript. Navržený skript poté
zpracovává body iterativně v obou osách (X a Y) tak, aby každým z ních protnul křivku,
která při dokončení procesu vytvoří polygonový DTM. Vytvořený DTM slouží jako
podklad pro tvorbu DBM.
Výšky budov jsou agregovány do jednotné plošné výšky. Rekonstrukce
konkrétních tvarů střech je abstrahována, nicméně její provedení je možné například
v dalším směřování práce. V další fázi tvorby je využito parametrických, procedurálních
a základních maticových operací k tvorbě a distribuce milionů objektů, které tvoří samotný
povrch terénu (stromy, louky, pole, atd.). Celý proces dědí atributy z milionů zachycených
bodů vegetace a převádí jejich klíčové hodnoty do černobílého rastru. Tento rastr se poté
stává dílčím parametrem pro řízení osazení jednotlivých modelů.
Parametry dovolují měnit atributy všech objektů hromadným způsobem
a procedurální přístup dokáže generovat mnoho stavů či například barevných variací na
základě jednoho objektu. Vytvořený model využívá družicové snímky ke generování
nastaveného částicového systému do dynamicky generované struktury oblačnosti.
22
Tímto způsobem lze v pravidelných intervalech tuto strukturu automaticky měnit
společně s distribucí částic v této geometrii. V závěrečné fázi lze paralelizovatelné kroky
vypočítat na bázi Google File Systému (GFS) či jeho open-source frameworku Apache
Hadoop (HDFS). Jedná se například o distribuované seřazení milionů hodnot, které při
algoritmické složitosti například QuickSortu O(n×log(n)) či O(n2) představuje velký
problém při rekonstrukci rozlehlých oblastí.
3.2 Vstupní data
Demonstrace tvorby modelu byla vytvořena na oblasti v okolí města Pardubice,
ležícího 70 km východně od hlavního města České republiky, Prahy. Oblast má rozlohu
cca 15×15 km a obsahuje rozmanité geomorfologické celky. Aplikace na kteroukoliv jinou
oblast je díky navrženému parametrickému a procedurálnímu přístupu. K dispozici jsou
autorovi následující sady dat.
3.2.1 Vektorová data základní báze geografických dat
Základní báze geografických dat ZABAGED® netvoří nezbytnou součást tvorby
modelu, ale mohou být použity v případě, že tvůrce nemá k dispozici moderní LIDAR
technologii umožňující automatickou klasifikaci terénu. Data obsahují vektorové
informace ohledně komunikací, vodních zdrojů, typů terénů, základy budov či bodových
pozic objektů (Obrázek 8).
Obrázek 8 - ZABAGED®, vektorové objekty (Zdroj: Autor)
23
3.2.2 Laserový záznam zájmové oblasti
Výškové modely jsou částí databáze dat, poskytující informace ohledně zájmového
území. Až do roku 2009 nebyl v ČR dostupný detailní model povrchu, který by obsahoval
jak samotný terén, tak i objekty na jeho povrchu. Proces tvorby tohoto detailního mapování
byl zahájen až v průběhu roku 2009. Je založen na leteckém laserovém skenování, angl.
Airborne Laser Scanning (ALS). Data jsou získána Ministerstvem obrany a Armádou
České republiky pomocí speciální modifikovaného letadla zn. Turbolet L-410 FG
(Obrázek 9).
Obrázek 9 - LIDAR bodové mračno (Zdroj: Autor)
Výstupy z tohoto mapování jsou dostupné pro zpracování Českým úřadem
zeměměřičským a katastrálním (ČUZK). Sběr dat probíhá obvykle mimo vegetační období
(Listopad - Květen) a to kvůli problematické segmentaci. Hlavní parametry pro letecký
sběr dat jsou uvedeny v následující tabulce (Tabulka 1).
Tabulka 1 - Letové parametry (Zdroj: Bělka 2012)
Faktor
Hodnota
Faktor
Hodnota
Průměrná výška letu
1200 or 1400 m
Směr skenování
Východ - Západ a
zpět
Rychlost letadla
250 km/h
Šíře dílčího pásu
Cca. 800 m
Frekvence laseru
80-120 kHz
Délka pruhu
20-60 km
Skenovací úhel
60°
Stranové přesahy
50%
Záznamy jsou dostupné v blocích, jejichž šířka je cca 10 km a délka v rozmezí 20
a 60 km. Tyto parametry závisí na charakteru terénu. Každý výstup je georeferencovaný,
klasifikovaný a jsou z něho vytvořeny dva modely reliéfu a jeden model povrchu.
24
Kompletní model obsahující všechny informace nese označení DSM 1G. Jedná se o první
generaci povrchového modelu s průměrnou chybou 0.4 metru ve výšce a 0.7 metru
u vegetace. Podstata modelu je formována objekty, které jsou v databázi ZABAGED®.
Atributy však musí splňovat tyto kritéria. Šířka objektů nesmí přesáhnout tři metry
a jejich plocha musí být větší než 25 m2. Vegetace má vyšší limity nastavené na 500 m2.
Tento model je společně s DMR 5G, který obsahuje pouze samotný terén, vhodný pro
dosažení stanovených cílů této práce (Belka 2012).
3.2.3 Družicové snímky NOAA/JSMSG
Družicové snímky z družic na polární dráze jsou obvykle dostupné v pravidelných
časových intervalech a také v různých spektrech elektromagnetického záření (Obrázek 10).
Obrázek 10 - Typy použitých družicových snímků (Zdroj: Autor)
3.2.3.1 Infračervené tepelné pásmo
Snímky v oblasti infračerveného spektra, které jsou tmavší v oblastech teplejších
a světlejší v oblastech chladnějších, umožnují automatické využití pro napojení digitálního
modelu počasí, respektive situace simulující pokrytí zájmového území oblačností.
3.2.3.2 Mikrofyzikální produkt
Kombinuje informace z termálních pásem v barevném prostoru RGB substitucí
kanálů kombinacemi snímků na konkrétních vlnových délkách. Červený kanál obsahuje
rozdíl IR 12.0 - IR 10.8. Mohutnější oblasti oblačnosti je tak reprezentována větší
hodnotou v červeném kanálu. Zelený kanál je substituován rozdílem IR 10.8 - IR 8.7. Větší
intenzita zelené charakterizuje nízkou oblačnost. Modrý kanál obsahuje pouze IR 10.8 -
25
teplejší objekty mají větší přítomnost modré barvy, studenější právě naopak. Tento snímek
v nepravých barvách je tak mnohem vhodnější pro segmentaci a klasifikaci oblačnosti
například do základních skupin.
3.2.4 Reprezentace laserových dat
Data jsou tvořena jednotlivými body v textových souborech. Každý zachycený bod
nese povinnou informace o své poloze, která je reprezentována sloupcovými atributy X, Y
a Z. Jednoduchý příklad konstrukce modelu krychle lze demonstrovat na následujícím
obrázku. Je však zapotřebí oddělit reprezentaci bodovou od reprezentace hranové,
polygonové (Obrázek 11).
Obrázek 11 - XYZ reprezentace krychle, body, hrany, polygony (Zdroj: Autor)
Tímto způsobem lze rekonstruovat jakýkoliv viditelný objekt. Kromě základních
třech atributů lze doplnit i další nepovinné (i - intenzita, n - číslo pulzu, c - klasifikace, a úhel, nx ny nz - normály pro každou osu či RGB informace o barvě objektů). V případě 3
atributů, souřadnicového systému WGS 1984 pro X a Y a nadmořské výšky pro atribut Z,
dosahuje velikost záznamu jednoho bodu cca 44 B. Bodů jsou obvykle k dispozici miliony
či miliardy a právě tento faktor přináší zásadní problém v podobě enormního množství dat
ke zpracování.
26
3.3 Použitý hardware a software
Tato část textu popisuje veškerý hardware využitý při vypracování práce
a majoritní software, který sloužil pro zpracování vstupních dat.
3.3.1 Hardware
Pro účel vypracování této práce byla využita celá řada pracovních stanic a to jak
lokálních, tak vzdálených. Lokální stanice Intel s procesorem i7 2600K. Tento procesor
využívá 4 fyzické jádra, které jsou umocněna podporou technologie Hyperthreading
(HTT), které logicky navyšuje výkon fyzických jader. Rozdíl ve výkonu se pohybuje
kolem 30 %. Stanice disponuje 16 GB operační paměti, lokálním úložným prostorem
v podobě SATA III 64 GB SSD disku (480 MB/s). Vzdálené úložiště starající
se o distribuci datových sat po celém výpočetním Gridu je řešeno přes službu Dropbox,
Copy a NAS server Synology.
Grafické operace jsou zpracovány pomocí GeForce 460 GTX. Druhou stanicí je
terminál s procesorem AMD Opteron, 32 GB operační paměti, který je využit přes
vzdálený přístup pro časově náročné geografické výpočty (například interpolace). Třetí
stanicí je průměrný kancelářský notebook Intel i3 se 4 GB paměti, který je využit pro
tvorbu dílčích, méně náročných částí - například programování nad omezenou strukturou
dat či tvorbu dílčích modelů.
V případě distribuovaných přístupů je využito detašovaného pracoviště a open
source frameworku HDFS, pod kterým pracuje cca 5 stanic Intel i5 se 4 GB paměti
zapojených do 1 Gbps sítě v rámci jednoho switche. Velmi náročné operace, například
dynamické simulace či statické výstupy z modelu ve velkém rozlišení (4K, 8K), jsou
zpracovány na clusteru umístěném v Německu, který obsahuje stovky stanic s šesti
jádrovými procesory Intel Xeon. Výstupy jsou poté autorovi doručeny elektronicky.
3.3.2 Software
Mezi hlavní využité aplikace v oblasti GIS patří ESRI ArcGIS 10 SP3. Tato
aplikace slouží pro zpracování bodových, vektorových i rastrových dat. Společně
s integrovaným jazykem Python umožňuje modifikaci a přizpůsobení algoritmů tak, aby
bylo dosaženo požadovaného výstupu. Alternativně lze využít i open-source aplikaci
SagaGIS. Ta poskytuje většinu potřebných nástrojů v bezplatné verzi. Mezi další aplikace
27
pro zpracování vstupních dat lze zařadit MeshLab, OriginLab, Pointview, GeomagicStudio
či Leios 2. OriginLab je například vhodný pro implementaci algoritmů z knihovny
National Algorithm Group (NAG) pomocí jazyka C++.
Statistické operace jsou zpracovány pomocí produktů SPS Statistica a R. Vstupní
soubory, které vyhovují geostatistickým kritériím, jsou zpracovány pomocí skriptovacího
jazyka Maxxscript, který je součástí aplikace Autodesk 3D Studio Max 2012. Tento
program slouží pro samotnou tvorbu polygonového modelu terénu, parametrické a
procedurální osazení objekty ale i pro tvorbu výsledných výstupů.
Časově náročné výpočty jsou navrhnuty ve virtuálním prostředí aplikace Oracle
VirtualBox s předinstalovaným OS Ubuntu (UNIX). Tento systém tvoří prostředí, v kterém
je využit HDFS, nastavený jako Master server. Odladěné úlohy mohou být urychleny na
speciálním univerzitním pracovišti, kde je obdobný systém nakonfigurovaný v podobě
master-slaves na cca 6 stanicích. Alternativou je využití Amazon AWS konkrétně EMR
(Elastic Map Reduce), který poskytuje HDFS implementovanou přímo v cloudu.
Grafické úpravy jsou provedeny v aplikacích firmy Adobe - Photoshop, Premiere,
After Effects, vše ve verzi CS5. Drobné výpočty jsou provedeny v MS Excel 2010, Matlab
2011 či MS VisualStudio 2012.
3.4 Filtrace, čištění a chyby laserových záznamů
Tato část práce se zabývá předzpracováním bodových mračen pomocí vybraných
algoritmů. Důvodem předzpracování je celá řada faktorů, které negativně ovlivňují
samotné zpracování. Některé z těchto vlivů jsou zaznamenány na laserovém záznamu
historické části města Hradec Králové.
Tento datový soubor byl využit pouze pro demonstraci negativních jevů
vyskytujících se v bodových mračnech. Demonstrativní obrázek také zachycuje ve své
pravé části problematickou trojúhelníkovou strukturu, která bude v této práci nahrazena
pravidelnými čtverci (Obrázek 12).
28
Obrázek 12 - Problematické oblasti laserového skenu (Zdroj: Autor)
Bod 1, Obrázek 12 charakterizuje body, které nepatří k domům v ulicích. Byly
zachyceny buď odrazem od vzdálených objektů (stromy), zachyceny v oblastech interiérů
domů skrze skla oken nebo jsou odraženy díky špatným atmosférickým podmínkám
od různých částic ve vzduchu (déšť/sníh/částice).
Další „parazitní“ informací představují lidé (bod 2) a obecně dynamické předměty
pohybující se v ulicích města. Mimo těchto živých objektů lze v modelu nalézt také celou
řadu objektů, na jejichž rekonstrukci nestačilo rozlišení dat. Tento problém představuje
bod č. 3. Okna se zdají z větší vzdálenosti detailní, avšak bližší pohled ukazuje, že počet
bodů není dostatečný a pozdější automatická rekonstrukce polygonů v tomto případě
nebude možná. Tento fakt by změnilo pouze technické nastavení zařízení při snímání.
Dále jsou to "slepá místa" v bodovém záznamu města (bod 4). Stíny, které nebyly
pokryty ani z jednoho místa při průjezdu vozidlem. Představují tak čistě spekulativní
prostory, jejich automatické doplnění bývá bez jakékoliv zachycené informace prakticky
nemožné (Parsiani a kol. 2008). Předzpracování bodů, tedy jejich opravdu lze provést
například na základě schématu na obrázku (Obrázek 13).
29
Obrázek 13 - Schéma možné korekce bodového mračna (Zdroj: Autor)
Všechny tyto operace jsou však poměrně časové náročné a obtížně zvládnutelné pro
větší množství bodů. Například v případě odšumění dat je sice markantní rozdíl mezi
vstupem (Obrázek 14, vlevo) a výstupem (Obrázek 14, vpravo) zvoleného algoritmu, avšak
trojúhelníková struktura stále vykazuje velké množství hran a bodů, které se v určitých
místech v polygonové formě protínají. Tato polygonová reprezentace je tedy na základě
stanovených dílčích cílů práce nevyhovující a bude nahrazena.
Obrázek 14 - Trojúhelníková struktura před a po korekci (Zdroj: Autor)
Mezi další modifikace patří odstranění izolovaných vzdálených bodů. Pokud
by v bodovém mračnu zůstaly, byla by při převodu na polygonovou strukturu vytvořena
nesouvislá geometrie. Obdobným způsobem jsou odstraněny body zachycené na několika
snímcích zároveň. Obecně platí, že pro rekonstrukci ploch stačí méně bodů, zatímco pro
rekonstrukci oblých míst více.
Tímto postupem se snižuje i hardwarová náročnost kladená na model a výstupem je
nízko-polygonový model. V případě implementace na jakoukoliv platformu lze využít i
open-source projekt PointCloud Library (PCL), který je veřejně podporovaný i
komerčními firmami. V tomto nástroji je možné mračna filtrovat, registrovat, segmentovat,
vizualizovat. To vše při kompletní průhlednosti zdrojových kódů a možnost dodatečných
úprav funkčnosti (Schowengerdt 1997).
30
3.5 Redukce dat pomocí hromadné interpolace v C++
Kapitola
obsahuje
základní
principy
interpolace
v případě
zjednodušení
a transformace nerovnoměrné struktury laserových mračen do pravidelné čtvercové sítě.
Proces je zpracován v prostředí aplikace OriginLab a jazyka C++.
3.5.1 Interpolace bodových mračen
Pojem interpolace představuje výpočet hodnoty (v tomto případě elevace)
neznámých bodů na předem určených souřadnicích za pomocí známých, změřených bodů.
V případě GIS odvětví lze pomocí interpolace vytvářet spojité rastrové reprezentace
výškových
modelů.
Tyto
reprezentace
tvoří
pravidelnou
mřížku,
tzv.
grid
s předdefinovaným rozlišením. Interpolace je v tomto případě velmi často označena jako
3D interpolace, protože jsou hodnoty interpolovány nad povrchem, který je definovaný
souřadnicemi X a Y. Interpolace je rozdělena na dvě hlavní skupiny.
Globální interpolace - bere v potaz všechny známé body a za pomocí nich
vypočítává hodnoty neznámých bodů v předem nastavených souřadnicích. Lokální metoda
obvykle využívá nastaveného poloměru (variabilního či fixního), který v okolí neznámého
bodu hledá body, z kterých by hodnotu vypočetl. Hlavním rozdílem mezi těmito přístupy
je citlivost na odlehlé hodnoty. Často je tak patrný efekt, kdy globální metody tvoří hladší
povrchy a lokální metody lépe kopírují odlehlé hodnoty, přičemž vytváří lokální extrémy
(Obrázek 15).
Obrázek 15 - Globální a lokální vliv bodového mračna na interpolovaný model (Zdroj: Autor)
31
Interpolaci lze provést různými algoritmy, které se liší svojí výpočetní podstatou,
složitostí a také podávají rozdílné výsledky v závislosti na prostorových charakteristikách
zájmové oblasti. Mezi hlavní využité algoritmy patří Inverse Distance Weighting (IDW),
Shepard - Modifikovaný Shepard, Renka-Cline, Běžný - Ordinary Kriging (OC), Natural
Neighbour či algoritmus Splines.
Výpočetně méně náročným a snáze implementovatelným algoritmem použitým v
této práci pro tvorbu finálních povrchů je algoritmus IDW. Je založen na váhovém
ohodnocení známých atributů pomocí inverzní mocniny vzdálenosti mezi známým a
neznámým bodem. Čím blíže oba body jsou, tím silnější je vliv vzdálenosti (Longley
2011).
3.5.2 Hromadná implementace interpolačních algoritmů
Trojúhelníky jsou
charakteristické
nepredikovatelným
tokem
hran,
který
znesnadňuje celou řadu činností při práci s modelem. První operací je vyhlazení povrchu
a využití modelu pro dynamické simulace, při kterých se polygonový povrch například
ohýbá. Počet hran trojúhelníku má hodnotu 3. Po rozdělení struktury pomocí další hrany
nastává situace, kdy nelze stanovit její směrování v rámci dalších trojúhelníků v okolí.
Vždy existuje více možností, kudy hranu vést. Dělené struktury (3/2 = 1.5) tvoří další
trojúhelníky a špatně dělitelné plochy. Řešení tohoto problému lze najít ve vytvoření
pravidelné mřížky čtvercových polygonů. Každý polygon má stejný plošný obsah a každý
může být protnut hranou jak ve vertikálním, tak horizontálním směru. Tento jev silně
podporuje vyhlazení a samotný ohyb plochy (Obrázek 16).
Obrázek 16 - Nepravidelný tok hran (Zdroj: Autor)
Terén s větším sklonem bude reprezentován vyšším rozlišením polygonové sítě,
nížinný povrch s neměnným sklonem, za pomocí nižšího rozlišení. Tento přístup částečně
omezí počet použitých polygonů a tedy i počet bodů nutných k uchování v paměti.
32
Struktura bodů tedy není pouze redukována faktorem, stanoveným v bodě 2.1, ale bodový
tok je ovlivněn i měnícím se sklonem mezi jednotlivými buňkami modelu (Obrázek 17).
Obrázek 17 - Držení milionů nepotřebných bodů v modelu (Zdroj: Autor)
Tento text využívá lokální interpolaci algoritmu IDW a globální pojetí algoritmu
Renka-Cline (Renka a Cline 1984). Interpolace je provedena hromadným způsobem
za využití knihovny algoritmů NAG v prostředí aplikace OriginLab za pomocí
programovacího jazyka C++. Na základě vztahů 1 a 2 je definováno rozlišení cílového
gridu, kterého do vybraného algoritmu vstupuje v podobě struktury předdefinovaného pole.
𝐶𝑋𝑖 =
𝑊
𝑃𝑖
(1)
𝑅𝑌𝑖 =
𝐻
𝑃𝑖
(2)
Kde, i = položka v poli cílových rozlišení, CXi = počet sloupců gridu (osa X), RYi =
počet řádků (osa Y), W = šířka zájmové oblasti (m), H = výška zájmové oblasti (m), Pi =
cílové rozlišení polygonu. Zájmové území má rozměr cca 10×20 km. Cílová velikost
rozlišení jednotlivých gridů (polygonů) je nastavena do pole hodnot {5 10 20 40 60 100}
metrů. Výpočet vrátí dvě předdefinovaná pole cílových rozlišení prázdných gridů,
do kterých
budou
hodnoty
dointerpolovány
ze
svého
okolí,
sloupce
{100,167,251,502,1005,2010}, řádky {199,332,498,997,1995,3990}.
Následující C++ kód zobrazuje hromadnou implementaci algoritmu Renka-Cline.
Zdrojový kód znázorňuje pouze hlavní pasáž procesu. Uživatel specifikuje vstupní soubor,
33
například 800 MB surový LIDAR sken. Data jsou načtena do struktury XYZFile. Třída
XFBase vytváří přístup ke skriptovacím funkcím, v tomto případě xyz_renka z knihovny
NAG. Poté jsou data iterativně zpracována a separátně uložena do předem určených složek
(Obrázek 18).
Obrázek 18 - Dílčí část zdrojového kódu v C++ (Zdroj: Autor)
***************************
Algorithm: Renka-Clime
Resolution: 2010
Values: 8019900
Pure computation completed in :
Saving the output file took :
11544 ms
3370 ms
Total time: 14914 ms
***************************
34
Následující obrázek charakterizuje výstup z interpolačního procesu (Obrázek 19).
Každý soubor je reprezentován rozdílným rozlišením mřížky, která bude v další části práce
využita při tvorbě adaptivního povrchu.
Obrázek 19 - Automaticky generovaná výstupní sada souborů (Zdroj: Autor)
Pokud se tato situace zobrazí graficky, v podobě bodů či hodnot převedených
do rastru, lze získat prvotní náhled na adaptivní možnosti tvorby výsledného modelu.
Obrázek 20 zobrazuje 3 z 6 vytvořených gridů. Černý, obdélníkový výřez zobrazuje
rozdílné rozlišení pravidelné bodové struktury.
35
Obrázek 20 - Grafická reprezentace vytvářené adaptivní struktury (Zdroj: Autor)
3.5.3 Tvorba adaptivních gridů závislých na sklonu terénu
V této části práce je předchozí sada výstupů využita pro vytvoření adaptivních
gridů, jejichž zobrazení je závislé na vypočteném sklonu terénu v každé buňce mřížky vůči
svému okolí. Bodové hodnoty jsou převedeny do rastrové podoby, nad kterou je vypočtena
analýza sklonu. Výsledek je klasifikován a pro zjednodušení agregován do 3 základních
skupin (roviny - 0-20º, částečně strmé - 21-35º, strmé oblasti - >36º), (Obrázek 21).
Obrázek 21 - Segmentace a klasifikace adaptivních ořezových vrstev (Zdroj: Autor)
36
Tabulka 2 - Klasifikace dle sklonu terénu (Zdroj: Autor)
Třída sklonu
Sklon ve stupních
Třída 1
0-20
Třída 2
21-35
Třída 3
>36
Hlavní kroky lze nastínit takto. Nerovnoměrná struktura LIDAR je převedena
do rastrové podoby digitálního modelu reliéfu. Převod je proveden s předem definovaným
rozlišením rastru, který má přímý vliv na výpočet sklonitosti terénu, respektive jeho
hloubky a prostorového rozlišení. Výpočet pro každou buňku rastru je z mračna bodů
proveden na základě zvolené metody (průměr, maximum, minimum,…).
Tímto je zavedena i určitá nepřesnost, která však nemá znatelný vliv na určení
hraničních oblastí jednotlivých tříd. Výpočet sklonu probíhá na základě stanovení úhlu
mezi centrální buňkou a všemi osmi okolními buňkami. Desetinná čísla rastru jsou
převedeny na celočíselné hodnoty. Tato operace je předpokladem pro správné převedení
rastru na polygon. Převod je proveden s vysokou přesností tak, aby ve výstupu nevznikla
žádná neklasifikovaná místa. Tento proces lze upravit na základě požadavků, typu terénu či
velikosti rozlišení digitálního modelu reliéfu (Obrázek 22).
Obrázek 22: Polygony orčené k ořezu interpolovaných gridů (Zdroj: Autor)
Takto definované polygony jsou připraveny k ořezu hromadně interpolovaných dat.
Použity jsou 3 typy polygonů odpovídající agregaci do skupin definovaných v tabulce 2.
Grid 1 má rozlišení 5 × 5 metrů, které je vhodné pro hornatý terén s rychlou změnou
elevace. Grid 2 je určený pro mírně kopcovité oblasti, jeho rozlišení je 20 × 20 metrů. Grid
3 má nejřidší rozlišení bodové mřížky, 60 × 60 metrů a je určený pro nížinné oblasti. Tato
fragmentace celé plochy umožňuje ušetření velkého množství paměti a celkově nároků
37
na hardware nutných k tvorbě prostorového modelu terénu. Konstatní grid o velikosti
například 1 × 1 metrů by obsahoval zbytečně mnoho nepotřebných bodů, které by
zpracování prakticky znemožnily.
Každé třídě je přiřazen i malý přesah pro snazší zobrazení ve výsledném 3D
modelu. Následující obrázek znázorňuje rozčleněnou oblast v okolí města Pardubic
a v detailu znázorňuje adaptivní rozlišení gridu v oblasti pozvolně vyvýšené Kunětické
hory (Obrázek 23).
Obrázek 23 - Adaptivní sada gridů o 3 třídách (Zdroj: Autor)
3.6 Geostatistika a korekce interpolovaných modelů
Tato kapitola porovnává vhodnost využití konkrétních interpolačních algoritmů
s ohledem na prostorovou závislost odchylek interpolovaného modelu vůči reálným
naměřeným hodnotám. Hlavním kritérium stanovené autorem je minimalizace odchylek
mezi reálnými naměřenými hodnotami a interpolovanými body.
Vhodným způsobem pro bodová data je například technika validace. Například
křížová validace, v které se jeden prvek vynechává a následně je využit pro porovnání
interpolovaného modelu. Technika zvaná Jack-knifing může být využita v případech, kdy
existuje více datasetů stejné zájmové oblasti, atp. Velmi podobnou technikou je i metoda
rozdělení vstupního souboru, která je využita v této části práce (Svobodova 2011).
38
3.6.1 Metoda rozdělení vstupního souboru interpolovaných gridů
V tomto případě, kdy autor disponuje surovými bodovými daty, není vhodné
charakterizovat veličiny pomocí globálních ukazatelů, tedy výpočtů RMS, STDEV
či různých indexů (Hammock). Tyto globální ukazatelé nacházejí uplatnění v situaci, kdy
autor disponuje již zpracovaným interpolovaným modelem a porovnává ho s referencí.
Vstupní data této studie jsou ale přímá bodová, tudíž je možné využít některou z lepších
alternativ, která využije i lokálních vztahů hodnot dat. Vhodným způsobem může být tzv.
„cross-sample“ validace, která vynechává jednu hodnotu volnou a používá ji pro porovnání
interpolovaného modelu.
Další možností je využít „Jack-knifing“ metody a to v případě, že jsou k oblasti
zájmu k dispozici dva nasnímané data sety. Druhý data set funguje jako reference pro ten
první. Velmi podobnou technikou je i „split-sample“ validace, která je využita v této práci
z důvodu vlastnictví jedné datové sady (Wood 1998).
Celá metoda je zaměřena na porovnání originálních a přímo naměřených dat vůči
interpolovanému modelu. Tento proces může být demonstrován následovně. Celý datový
balík je rozdělen na vstupní hodnoty (80 %) a testovací hodnoty (20 %). Vstupy jsou
využity pro tvorbu interpolovaného modelu do předem nadefinovaného rozlišení mřížky.
Obrázek 24 znázorňuje první 4 kroky metody rozdělení vstupních hodnot. Celý proces
je dále vypracován v aplikaci ArcGIS za pomocí modulu Geostatistical analyst.
39
Obrázek 24 - Metoda rozdělení vstupů, část I. (Zdroj: Autor)
Obrázek 24, Část 1 znázorňuje surová laserová data v nerovnoměrném uspořádání
tak, jak jsou získána ze skeneru. Část 2 je zvětšený výsek dat reprezentující vstupní body
metody. Všechny zelené body jsou tedy přímo naměřené - známé hodnoty, které jsou
pokládány za správný údaj. Část 3 tyto body doplňuje o rastrovou podobu jejich těsného
okolí (1 metr).
Tento převod je vytvořen kvůli dodatečnému porovnání stejných polohových
reprezentací. Bodová reprezentace je souřadnicově příliš konkrétní a hlavně neuspořádaná
do pravidelné čtvercové sítě. Tento postup tyto nedostatky odstraňuje a umožňuje porovnat
identické pixely stejné velikosti obsahující údaje o naměřené hodnotě. Část 4 reprezentuje
výstup z náhodného rozdělení množiny na vstupní a testovací body. Obrázek 25 ilustruje
další, návaznou část postupu.
40
Obrázek 25 - Metoda rozdělení vstupů, část II. (Zdroj: autor)
Obrázek 25, Část 5 představuje různé interpolační modely, které jsou porovnávány
vůči referenčním testovacím datům (20% testovací část). Část 6 vyjadřuje samotný výstup
odchylek interpolovaného modelu nad 20% podílem známých hodnot. Tato řídká matice
je vypočtena na základě vztahu 3 a je uchována v rastrové podobě pro další využití.
𝐷 1,1 ⋯ 𝐷 1, 𝑚
𝐼 1,1 ⋯ 𝐼 1, 𝑚
𝑇 1,1 ⋯ 𝑇 1, 𝑚
(3)
⋱
⋮ ]=[ ⋮
⋱
⋮ ]−[ ⋮
⋱
⋮ ]
[ ⋮
𝐷 𝑛, 1 ⋯ 𝐷 𝑛, 𝑚
𝐼 𝑛, 1 ⋯ 𝐼 𝑛, 𝑚
𝑇 𝑛, 1 ⋯ 𝑇 𝑛, 𝑚
D reprezentuje matici odchylek, I interpolovaný model a T matici testovacích
hodnot. Matice jsou řídké z důvodu využití bodových oblastí, respektive jejich
bezprostředního okolí. Ostatní rastrové buňky obsahují namísto čísla hodnotu = No Value.
Tím jsou i vyjmuty ze samotného výpočtu.
Interpolovaný model je spojitý a to díky variabilnímu poloměru, který slouží pro
výpočet neznámé hodnoty ze známých bodů. Zelené hodnoty jsou klasifikovány do
intervalu představující minimální odchylky od mediánu, v tomto případě ideálního stavu
interpolovaného modelu. Červené odchylky představují významnější chyby. Rozptyl chyb
3 interpolačních algoritmů vůči testovacím datům včetně rozložení četnosti hodnot je
zobrazeno na Obrázek 26 (Svobodova 2011).
41
Obrázek 26 - Rozptyl chyb a jejich grafické rozložení (Zdroj: Autor)
42
Pozitivní i negativní odchylky jsou převedeny na absolutní hodnoty, které slouží
pro výpočet objemu rozdílu v každém měřeném místě. Situace je zjednodušena faktem,
že každá rastrová buňka dosahuje přesného rozměru 1×1 metr. Po zanesení výsledků
do pořadí je získán i globální ukazatel přesnosti interpolační techniky na vstupních datech
(Tabulka 3). Je však nutné podrobněji prozkoumat i samotné rozdělení dat.
Tabulka 3 - Pořadí na základě minimalizace odchylek vstupů/testovacích dat.
Algoritmus
∑ Objemů
buněk [m3]
Pořadí
IDW
3183,5
3
Natural
Neighbour
2220,3
1
Splines
2257,3
2
Matice chyb může být převedena zpět na bodovou strukturu a využita v další iteraci
pro interpolaci chybějících hodnot. (Obrázek 27). Tato korekční matice je následně
aplikována na základě vztahu 4.
Obrázek 27 - Interpolace odchylek do spojité matice (Zdroj: Autor)
[
𝐶 1,1
⋮
𝐶 𝑛, 1
⋯ 𝐶 1, 𝑚
𝐼 1,1 ⋯
⋱
⋮ ]=[ ⋮
⋱
⋯ 𝐶 𝑛, 𝑚
𝐼 𝑛, 1 ⋯
𝐼 1, 𝑚
𝐷 1,1 ⋯
⋮ ]−[ ⋮
⋱
𝐼 𝑛, 𝑚
𝐷 𝑛, 1 ⋯
43
𝐷 1, 𝑚
⋮ ]
𝐷 𝑛, 𝑚
(4)
Kde C reprezentuje opravený interpolovaný model terénu s nulovými odchylkami
v naměřených bodech. I představuje neošetřený interpolovaný model terénu a D spojitou
matici odchylek.
3.6.2 Moranova I statistika (globální) odchylek interpolovaného modelu
V této kapitole je využita prostorová autokorelace založená jak na lokalitě tak
i hodnotě proměnné. Na základě vstupních dat je rozhodnuto, zda je struktura bodů
reprezentovaná shluky, rozptylem nebo je náhodná. Vypočten je Moranův I. index a také
hodnota Z na patřičné hladině p pro odhad významnosti koeficientu. Obecně je Moranův
index vyjádřen intervalem od -1 do +1 přičemž +1 vyjadřuje shlukování a -1 rozptyl
hodnot.
Testována je nulová hypotéza H0: „Oblast zájmu není charakterizována shluky
bodů“ oproti alternativní hypotéze HA: „Oblast zájmu je charakterizována shluky bodů“.
Moranova I statistika je popsána vztahem 5.
𝐼=
𝑛 ∑𝑛𝑖=1 ∑𝑛𝑗=1 𝑤𝑖,𝑗 𝑧𝑖 𝑧𝑗
𝑆0 ∑𝑛𝑖=1 𝑧𝑖2
(5)
Kde zi představuje odchylku v elevaci pro i-tý bod laserového skenu od mediánu.
n je celkový počet prvků. S0 agregace všech prostorových vah a wi,j matice dílčích
vah mezi prvkem i a j. Tato matice je vypočtena pomocí zvolené metody. V tomto článku
pomocí inverzní vzdálenosti, „inverse distance weighting“. S rostoucí vzdáleností klesá
vliv prvků zahrnutých do výpočtu. Tento faktor je ovlivněn nastavenou výší mocniny.
Výsledná matice vah pro zájmové území s prostorovým rozlišením 1 metru dosahuje
datové velikosti 3,2 GB. Důsledek nastavení parametrů výpočtu vah je znázorněn
viz. Obrázek 28 (Longley 2011).
44
Obrázek 28 - Výpočet matice vah pro Moranův I test (Zdroj: Autor)
Hodnota ZI je vypočtena na základě vztahu 6. V praxi představuje test významnosti,
který pomáhá rozhodnout, zda zamítnout či nezamítnout nulovou hypotézu. Hodnota
Z představuje směrodatnou odchylku od mediánu, respektive její násobek. Hodnota p (pvalue), je pravděpodobnost pro nesprávné zamítnutí nulové hypotézy.
𝑍𝐼 =
𝐼 − 𝐸[𝐼]
√𝑉[𝐼]
(6)
Kde je E[I] vypočtena dle vztahu 7.
𝐸[𝐼] = −1/(𝑛 − 1)
𝑉[𝐼] = 𝐸[𝐼 2 ] − 𝐸[𝐼 2 ]
𝐸[𝐼 2 ] = (𝐴 − 𝐵)/𝐶
𝐴 = 𝑛[(𝑛2 − 3𝑛 + 3)𝑆1 − 2𝑛𝑆2 + 3𝑆02 ]
𝐵 = 𝐷[(𝑛2 − 𝑛)𝑆1 − 2𝑛𝑆2 + 6𝑆02 ]
𝐶 = (𝑛 − 1)(𝑛 − 2)(𝑛 − 3)𝑆02
∑𝑛𝑖=1 𝑧𝑖4
𝐷=
(∑𝑛𝑖=1 𝑧𝑖2 )2
𝑛
1 𝑛
𝑆1 = ∑ ∑ (𝑤𝑖,𝑗 + 𝑤𝑗,𝑖 )2
2 𝑖=1 𝑗=1
45
(7)
𝑆2 = ∑
𝑛
𝑖=1
(∑
𝑛
𝑗=1
𝑤𝑖.𝑗 + ∑
𝑛
𝑗=1
2
𝑤𝑗,𝑖 )
Po vypočtení uvedených vztahů nad maticí absolutních odchylek a využití
euklidovské vzdálenosti/IDW pro vygenerování vah, byl získán výstup analýzy (Obrázek
29).
Obrázek 29 - Globální Moranova I statistika (Zdroj: Autor)
Při hodnotě Z = 4267.24 existuje menší než 1% pravděpodobnost, že by shluky
mohly být tvořeny náhodně. Velmi nízké nebo naopak velmi vysoké hodnoty koeficientu
Z jsou svázány s velmi nízkými hodnotami hodnoty p a jsou viditelné v okrajových částech
rozdělení dat. Tento fakt je viditelný i v samotné analýze nad daty laserového skenování.
V tomto případě je i velmi nepravděpodobné, že by byla přijmuta H0 znázorňující
náhodnou závislost bodů v prostoru. Demonstrováno je zamítnutí hypotézy H0 na 99%
intervalu spolehlivosti, jenž otevírá cestu k dalším analýzám ke zjištění, jaký faktor
způsobuje majoritní vliv na prostorovou autokorelaci (Oliveau, S. and Guilmoto 2005).
46
Pro lepší grafické vyjádření potvrzených shluků Moranovy I globální statistiky byla
využita lokální shluková metoda LISA (Local Indicators of Spatial Association). Součet
dílčích částí je úměrný globální hodnotě Moranovy statistiky. Lokální hodnoty jsou
vypočteny na základě vztahu 8.
𝐼𝑖 =
kde:
𝑛
𝑥𝑖 − 𝑋̅
∑
𝑤𝑖,𝑗 (𝑥𝑖 − 𝑋̅)
𝑆𝑖2
𝑗=1,𝑗≠𝑖
(8)
xi - atribut prvku i
̅ − medián atributu
X
wi,j − váha mezi bodem i − j
𝑆𝑖2 =
𝑛 ∑𝑛𝑗=1,𝑗≠𝑖 𝑤𝑖,𝑗
− 𝑋̅ 2
𝑛−1
Následně je stanovena patřičná hladina významnosti (99 %) a výsledky jsou
zobrazeny v Moranově diagramu. Diagram prvky kategorizuje do 4 skupin (Spurná 2008,
Svobodova 2011).
1)
2)
3)
4)
High-High (HH) shluky, vysoká hodnota prostorové autokorelace
Low-Low (LL) shluky, nízká hodnota prostorové autokorelace
High-Low, Low-High shluky, tzv. odlehlé hodnoty
Not Significant (NS) shluky, bez autokorelace, nevýznamné hodnoty
Výstup analýzy má následující podobu a doplňuje výsledek Globálního Moranova I
testu (Obrázek 30).
Obrázek 30 - Klasifikace shluků na základě Moranova I testu (Zdroj: Autor)
47
3.6.3 Spearmanův pořadový test
Z předešlého příkladu je patrné, že shlukování odchylek, které se výrazněji odlišují
od mediánu, není náhodné, ale je pravděpodobně závislé na některém dalším faktoru.
Jedním z nich může být i sklon terénu v místech jednotlivých bodů. Právě těsnost vztahu
mezi hodnotami sklonu terénu a velikostí odchylek lze ověřit pomocí jednoduchého
neparametrického Spearmanova pořadového testu.
Tento test byl zvolen na základě explorační analýzy, která neprokázala normální
rozložení hodnot u všech typů odchylek dílčích interpolačních algoritmů. Pokud by
rozložení bylo blízké normálnímu, bylo by možné využít test Parsonův. V první řadě je
nutné hromadné vypočtení sklonu terénu původních vstupních dat, které je vypočteno nad
zvolenou velikostí buňky rastru dle vztahu 9.
2
2 ) ∗ 100
𝑆 = (√𝑆𝑒−𝑤
+ 𝑆𝑛−𝑠
(9)
𝑆𝑒−𝑤
(𝑧3 + 2𝑧4 + 𝑧5 ) − (𝑧1 + 2𝑧8 + 𝑧7 )
=
8𝑑
𝑆𝑛−𝑠
(𝑧1 + 2𝑧2 + 𝑧3 ) − (𝑧7 + 2𝑧6 + 𝑧5 )
=
8𝑑
kde:
S = sklon vyjádřený v procentech
z1 - z9 - výška v okolních buňkách
d = velikost buňky
Následně je vypočten Spearmanův koeficient dle vztahu 10.
6 ∑𝑛𝑖=1(𝑖𝑥 − 𝑖𝑦 )
𝑟𝑠 = 1 −
𝑛(𝑛2 − 1)
2
(10)
kde: ix, iy - hodnoty prvků stejného
pořadí
n - počet hodnot
Po vypočtení koeficientu je zkoumána platnost hypotézy H0: rs = 0 - proměnné
nejsou závislé oproti HA: rs ≠ 0 - proměnné jsou závislé. Koeficient je porovnán s kritickou
48
hodnotou rs(α,n) pro danou hladinu významnosti α=0,95. Meze intervalu Spearmanova
koeficientu dosahují hodnot -1 a 1, které představují negativní a pozitivní závislost.
V případě odchylek a sklonů terénu dosahuje hodnota rs = 0,473. Tato hodnota
reprezentuje středně silnou pozitivní závislost, která může být demonstrována grafem obou
proměnných (Obrázek 31). Tento graf je z důvodu velkého množství bodů (21 milionů),
sestrojen pomocí agregace hodnot respektive průměrů do 5 intervalů dle sklonu terénu.
Dělící hodnoty jsou nastaveny na sklony: 1˚, 5˚, 20˚, 50˚. Sklon vyšší než 50˚ není
v měření přítomen a to z důvodu malé plochy dílčí jednotky (1×1 m), (Myers and Well
2003).
Obrázek 31 - Pozitivní korelace sklonu terénu a hodnot odchylek (Zdroj: Autor)
Závislost obou hodnot může být dodatečně zobrazena i v podobě rastru, který
obsahuje hodnoty sklonu jednotlivých buněk. Nad touto vrstvou je poté zobrazen výstup
Moranovy statistiky a sady shluků HH, HL, LH a NS. Tímto je prokázána majoritní
závislost sklonu terénu na velikost chyb v interpolovaném modelu. Nížinné oblasti resp.
oblasti s pozvolným stoupáním mají odchylky interpolovaných a skutečně naměřených
hodnot mnohem menší, než oblasti se sklonem rychle rostoucím (Obrázek 32).
49
Obrázek 32 - Grafické zvýraznění sklonu/odchylek interpolovaného modelu (Zdroj: Autor)
3.6.4 3D skriptování interpolovaných adaptivních gridů
Dle předchozích kroků je vybrána sada gridů, která minimalizuje výši odchylek pro
dané prostorové uspořádání zájmové oblasti. Tato struktura je stále bodová, díky
adaptivnímu přístupu podobná řídké matici. V této části práce je tato struktura převedena
do podoby polygonové a to takové, aby měl každý polygon tvar pravidelného čtverce
o stejném plošném obsahu. Tento čtverec je možné selektivně v potřebných místech dále
dělit a strukturu terénu tak iterativně dělit, případně napojovat objekty na povrchu terénu.
Následující postup je možné provést v libovolném 3D prostředí, které podporuje práci
s vektory/polygony a umožnuje pomocí skriptovacích či programovacích technik
přistupovat k jednotlivým objektům v rámci zdrojového kódu.
Protnutí hran může být provedeno iterativně v libovolné míře. Tímto je možné
ve zvoleném úseku modelu zvýšit přesnost modelu bez zatížení hardwarových nároků.
Naopak od trojúhelníků je poté možné adaptivně ve vybraných lokacích vložit objekty,
které svým tvarem původně nekopírovaly vytvořenou strukturu. Model tedy umožní
vložení externích prvků (mosty, budovy, komunikace, atp.) bez dramatických zásahů
do terénu pomocí manuální editace povrchu.
Tento fakt je demonstrován na následujícím obrázku, který využívá jednoduché
dělitelnosti čtvercových polygonů k selektivní úpravě terénu pro vložení ilustrativního
mostu. Čtvercové polygony jsou zhuštěny, vyhlazeny - protnuty vertikální a horizontální
50
hranou pouze v místech, kde dochází k napojení objektů. V případě trojúhelníku objekt
napojit nelze, protože jsou k dispozici pouze 3 hrany, 3 body. Napojení musí být
provedeno manuálně ručním domodelováním chybějící plochy.
Obrázek 33 - Výhody čtvercových polygonů (Zdroj: Autor)
Tento požadavek splňuje 3D skriptovací jazyk Maxxscript, který je dostupný v sérii
aplikací Autodesk 3D Studio Max. Celá princip implementace může být vyjádřený
v grafické formě následovně (Obrázek 34). Obrázek 34, vlevo představuje vstupní,
interpolovaný grid. Tento grid je v každé své ose (X a Y) iterativně proložen křivkou, která
protíná každý jeho bod v seřazeném pořadí pro každou osu (Obrázek 34, vpravo). Pravý
obrázek zobrazuje převedení křivkové struktury do plošné, polygonové formy, která tvoří
samotný terén.
Obrázek 34 - Návrh skriptu pro transformaci bodové struktury do polygonové (Zdroj: Autor)
Reprezentace tohoto postupu ve zdrojovém kódu skriptovacího jazyka Maxxscript
je následující (Obrázek 35). Na začátku kódu jsou deklarovány a definovány proměnné.
Následně je vybrán datový vstup v podobě xyz/txt souboru obsahující laserové bodové
mračno. Iterativně je načítán každý řádek souboru jako textový řetězec až po konec
souboru, přičemž je každá souřadnice načtena do pomocné proměnné x, y, z. Ve stejné
51
iteraci je poté každá ze souřadnic vložena do struktury souřadnic individuálních bodů jako
reálné číslo. Dále je provedeno načtení bodových hodnot do dvou polí - pole bodů v ose X
a pole bodů v ose Y. Seřazení dosahuje náročnosti v lepším případě O(n×log(n)) v horším
případě O(n2). Toto je velký problém, protože velikost vstupu n dosahuje hodnot milionů,
mnohdy miliard bodů.
Tento problém lze řešit pomocí distribuované implementace algoritmů pro seřazení
hodnot. Seřazené pole v osách X a Y jsou každé v samostatném cyklu iterativně protínány
horizontálními či vertikálními křivkami. Seřazení zajišťuje, že nedojde k protnutí bodů
náhodně, ale že každá křivka protne body v seřazeném pořadí a zajistí čistý tok hran
polygonového čtvercového modelu. Každý bod je nastaven na hodnotu typu corner, který
zajišťuje přímost křivek.
52
Obrázek 35 - Zdrojový kód skriptu v prostředí jazyka Maxxscript (Zdroj: Autor)
3.7 Rekonstrukce digitálních modelů budov
Model budov je sestrojen na základě extrakce a agregace atributu nadmořské výšky
nad daným půdorysem zástavby. V tomto případě není nutné využívat algoritmů pro
detekci hran, protože informace o objektech jsou k dispozici v digitalizované podobě
v databázi ZABAGED®. V rekonstruované oblasti je cca 1 100 domů respektive polygonů,
které představují jejich půdorys. Je tedy možné, že oblast obsahuje více separátních
bytových jednotek, ale v této studii jsou spojené domy reprezentovány pouze jedním
53
tvarem. Tato vícenásobná struktura objektů je rozdělena na dílčí objekty a to tak, že je
ke každému přiřazeno unikátní ID a barva.
Tento postup umožňuje i následnou agregaci a sumarizaci dat. LIDAR data jsou
oříznuta pouze na oblast domů. Díky ptačí perspektivě je využit i drobný
několikaprocentní přesah. Tato perspektiva by mohla způsobit problém v zahrnutí bodů,
které nepatří do oblasti střech, ale samotných zdí objektů. Bodů je dostatek a tak nehrozí,
že by nebylo z čeho výšky objektů počítat. Výškové hodnoty jsou pro každý objekt
agregovány. Všechny body mající stejné ID jako ID budovy jsou zahrnuty do výpočtu.
Každý dům zástavby tak obsahuje i výškovou hodnotu. Budovy mohou být využity pro
řadu specifických analýz a to nejenom v rámci GIS odvětví. Například pro analýzy
viditelnosti, návrhu vhodného umístění antén či plánování zástavby v chráněných pásmech
(Obrázek 36).
Obrázek 36 - DBM využitý při analýze viditelnosti ze zvoleného bodu (Zdroj: Autor)
3.8 Polygonové parametrické a procedurální modelování
V předchozích kapitolách byly bodové pravidelné gridy zpracovány pomocí
skriptovacího jazyka Maxxscript. Tímto postupem byl vytvořen digitální model terénu.
V této kapitole bude využito parametrických a procedurálních postupů k osazení terénu
modely na jeho povrchu. Parametrický přístup umožnuje nastavení parametrů k tisícům,
či milionům individuálních modelů. Tyto, obvykle číselné parametry, umožňují měnit
charakter objektů v reálném čase. Procedurální přístup umožňuje generování velkého
množství stavů objektů či například materiálů a v kombinaci s parametrickým přístupem
vytváří prakticky neomezené množství různých variant (objekty, barvy, materiály, roční
období atp.). První operací je segmentace vytvořeného polygonového terénu a jeho
klasifikace do skupin (lesy, louky, obytné zóny, vodní plochy,...).
54
3.8.1 Segmentace a klasifikace DTM
Klasifikaci terénu lze vytvořit dvěma způsoby. V případě dostupnosti moderních
LIDAR skenerů, lze klasifikaci zpracovat přímo při skenování. Tato klasifikace je založena
na charakteru rozptylu paprsku od různých materiálů na povrchu terénu. Tento případ
se však netýká datové sady, která byla autorovi k dispozici v rámci této práce. Datové sady
obsahovaly pouze samotné body, údaj o klasifikaci přítomen nebyl.
K tomuto účelu byly využity vektorové/polygonové objekty z databáze
ZABAGED® v odpovídajícím souřadném systému korespondujícím se souřadným
systémem laserových bodových mračen (WGS 1984). Pro zjednodušení byly využity
pouze základní typy terénu. V barevné reprezentaci: zelená - lesy (bez další specifikace
typu), hnědá - orná půda, fialová - hlavní ulice, světle zelená - louky a modrá - vodní
plochy. Tyto vrstvy jsou vytvořené v 2D prostoru jako ploché polygony, které si lze v
tomto případě představit jako ořezové vrstvy. V aplikaci ArcGIS je na obrázku zobrazen
obsah databáze ZABAGED® pro konkrétní zájmové území (Obrázek 37, vlevo). Obrázek
37, vpravo představuje polygonový pravidelný povrch, který pomocí ořezových vrstev
obdrží digitalizované atributy ZABAGED® vektorů.
Adaptibilita je případě Obrázek 37, vpravo, zanedbána, a to pro větší názornost
segmentace - v případě vytvořeného modelu je polygonový povrch jedné vrstvy o daném
rozlišení proděravěný přičemž je v těchto prázdných místech napojena struktura s
odlišným rozlišením. V doplňující ilustraci by v případě zachování reálného rozlišení
nebyly díky jemnosti a rozlehlosti území patrné dílčí hrany polygonů.
55
Obrázek 37 - Příprava polygonových gridů k segmentaci a klasifikaci (Zdroj: Autor)
ZABAGED® vektory, respektive každá dílčí třída obsahuje přiřazené unikátní ID.
Například les - ID1, louky - ID2, atp. V dalším postupu je vysvětleno přiřazení, dědění
atributu ID a tvaru objektu na naskriptovaný adaptivní 3D model terénu.
3.8.2 Využití základních množinových operací pro dědění atributů
Pro dědění atributů je v této práci využit průnik, do kterého tvoří vstupy dva
objekty. Prvním je konkrétní vektor s přiřazeným ID z databáze ZABAGED®, druhým je
vytvořený polygonový povrch. ZABAGED® vektor je doplněn o objemovou informaci
a to tak, aby jeho tvar zasahoval skrze vytvořený polygonový povrch.
Každý průnik těchto dvou objektů vytvoří unikátní polygonový segment. Tento
segment zachovává všechny své bodové atributy a je ohraničen digitalizovaným hraničním
vektorem. Tento proces je znázorněn na ilustračním obrázku (Obrázek 38). Počet tříd, do
kterých lze povrch rozdělit není nikterak omezen. V této práci je však stanoven na nižší
počet, který odpovídá hlavním terénním typům zájmové oblasti.
56
Obrázek 38 - Množinové operace v 3D prostředí (Zdroj: Autor)
Rozčleněný polygonový terén je v tuto chvíli připraven na osazení objekty na jeho
povrchu. Z digitálního modelu terénu se tak po transformaci stane digitální model povrchu,
reprezentovaný čistou, čtvercovou polygonovou formou. 3D pohled na demonstrativní
zájmové území, jenže reprezentuje stejný 2D pohled (Obrázek 37), lze z izometrického
pohledu znázornit viz. Obrázek 39.
Obrázek 39 - Transformovaná a klasifikovaná polygonová struktura (Zdroj: Autor)
3.8.3 Osazení modelu parametrickými objekty
Princip osazení modelů na povrchu terénu je založený na ručním vytvoření sady
polygonových modelů a to pro každé unikátní ID terénu (Obrázek 40).
57
Obrázek 40 - Princip tvorby a distribuce objektů na povrch terénu (Zdroj: Autor)
Tyto modely jsou velmi detailní, tvořené velkým množstvím polygonů. Tento
způsob je zvolen z důvodu využití procedurální cesty tvorby materiálů a to proto,
aby nemusely být použity žádné textury, ale jen základní stavební kameny pro generování
všech potřebných povrchů. Tvorba dílčích modelů pro konkrétní ID je určitým způsobem
časově náročnější a neprobíhá plně automaticky. Nicméně každý set pro konkrétní ID
lze poté využít na libovolně rozlehlém území a žádný manuální zásah není vyžadován.
Například obecná třída terénu les obsahuje vysoce detailní modely stromů listnatých i jehličnatých. Každý model má různý vhled a různou strukturu vzrůstu. Tyto
modely jsou poté náhodně generovány na terén, odpovídající jejich ID. Parametricky lze
měnit celou řadu parametrů od výšky, rotaci, normálové natočení až po kolize dílčích
objektů. Parametrů je celá řada a jejich plný výčet by nepřidával velkou informační
hodnotu. V případě uchování všech polygonových modelů na povrchu terénu by nebylo
možné zpracovat velmi rozlehlé zájmové oblasti. Z toho důvodu je využita forma uložení
každého detailního objektu do podoby tzv. Proxy objektu. Tyto objekty nejsou viditelné při
práci v reálném čase, ale až v době, kdy jsou potřebné při generování výstupů. Výhodou je
fakt, že objekty, které se výstupu netýkají, nejsou načítány do paměti.
Nevýhodou řízení distribuce objektů, které se sice tváří velmi realisticky, ale není
zachována individuální přesnost každého objektu, v tomto případě parametry a pozice
každého stromu. Tento jev lze napravit pomocí rastrového řízení distribuce, které je
představeno v dalším směřování práce a jehož princip byl zobrazen v kapitole Atributová
dědičnost laserem zachycených objektů na polygonové modely. Důležité hodnoty z
LIDAR mračna jsou uloženy v černo-bílém rastru, který slouží pro přesné umístění objektu
58
a řízení jeho atributů. Samotné osazení vytvořeného terénu je poté velmi krátký proces. Je
vybrána sada, například 5-20 vymodelovaných modelů a je určen terén s příslušným ID.
3.9 Dědičnost LIDAR atributů, distribuce pomocí hodnot uchovaných
v rastrech
Kapitola představuje řízení distribuce objektů pomocí jejich klíčových atributů
zakódovaných v rastrových maskách. Tato část práce je technicky odladěna, avšak díky
omezené dostupnosti povrchových dat pro kompletní zájmové území je její konkrétní
implementace vytvořena na kvalitních datech vegetace z USA (OpenTopography.org).
Obrázek 41 - Fotografie zájmové oblasti (zdroj: Google)
LIDAR poskytuje v milionech zachycených bodů velké množství informací. Tyto
informace nelze zobrazovat přímo (paměťová náročnost a přehlednost), ale je možné
potřebné atributy filtrovat a dále využít v hardwarově méně náročné podobě. Například
uchovat informace o výšce jednotlivých stromů v lesích s přesností tolerance laserového
paprsku.
Tento problém lze vyřešit pomocí převedení potřebných objektových atributů
do rastrové podoby, která je mnohem jednodušší na uchování a využití, než miliony
individuálních bodů v laserovém skenu. Postup pro osazení objektů na povrch terénu lze
zjednodušeně demonstrovat na předpřipravené šabloně (řídící rastr) a kvádru (řízený
objekt), (Obrázek 42). Atributů, které mohou být tímto způsobem ovládány je více.
Například velikost, hustota, rotace atp.
59
Obrázek 42 - Rastrem řízená distribuce objektových atributů (Zdroj: Autor)
Následující postup demonstruje návrh a implementace vlastního algoritmu pro
filtraci bodů.
3.9.1 Filtrování dat a návrh algoritmu pro rozpoznávání vegetace
Autor využívá jednoduchou metodu pro extrahování potřebných informací z DSM.
Základní rozpoznání vegetace a samotného terénu je založeno na postupném odrazu
laserového paprsku od cílených objektů (Obrázek 43). Odraz, který dopadl na objekt jako
první je klasifikován jako terén. V některých případech je paprsek odražen částečně více
než jednou. V takovém případě je objekt klasifikován jako vegetace.
Paprsek tak propadá skrze koruny stromů a tím je získán detailní profil vegetace.
Poslední odražený paprsek v tomto případě představuje s velkou pravděpodobností též
samotný terén. Pro výpočet je dostatek bodů k výpočtu maxim a minim, které zvyšují
přesnost a eliminují paprsky, které například nezasáhly plně terén, ale nižší oblasti samotné
vegetace.
60
Obrázek 43 - Klasifikace terénu a vegetace (Zdroj: Autor)
V tomto případě je možné vybrat pouze body, které jsou odraženy jako první
a ve zbytku bodového mračna ponechat body obsahující profil vegetace. Tento výběr
vytváří obalovou vrstvu, povrch společně s nejvyššími oblastmi vegetace. Profil vegetace
je možné využít k vytvoření modelu terénu, který bude sloužit jako základ pro umístění
vegetace (Obrázek 44).
61
Obrázek 44 - Bodové mračno převedené na grid (Zdroj: Autor)
Obrázek 44, A zobrazuje obalovou vrstvu ve své nerovnoměrně zachycené podobě.
Obrázek 44, B představuje převedení nerovnoměrné bodové struktury do struktury
rovnoměrně rozložené, grid, a to dle zvolené metody (Metoda rozdělení vstupního souboru
interpolovaných gridů). V tomto případě se jedná o metodu Maximum, která agreguje body
v dané buňce na základě maximálních hodnot bodů. Obrázek 44, C zobrazuje výsledný
iterpolovaný grid připravený k dalšímu zpracování. Zahrnuje určitou nepřesnost, která
je úměrná velikosti interpolované buňky, v tomto případě je prostorová tolerance rovna
jednomu metru. Tato tolerance je dostačující pro rozpoznávání velkých vegetačních
struktur, jako jsou například lesy. Snížená tolerance s sebou přináší i zjednodušení
zpracování dat a redukci bodového mračna. Grid převedený na rastr je zobrazen
na Obrázek 45.
62
Obrázek 45 - První odražený paprsek v podobě interpolovaného rastru (Zdroj: Autor)
Tento rastr zobrazuje vrcholky stromů společně s terénem. Data mají podobu řídké
matice, která může být filtrována vlastně navrženým filtrem. Elevace je vypočtena
vertikálně nebo/a horizontálně jako rozdíl mezi přilehlými body. Tento proces je ilustrován
na Obrázek 46.
Obrázek 46 - Extrakce stromů pomocí vlastního filtru (Zdroj: Autor)
Filtr je navržen jednoduchým způsobem, implementovaný v jazyce Python 2.7.
Hlavním smyslem je využití hash tabulek, asociativních polí (pár klíč - hodnota),
63
k uchování a zpracování rastru. Klíčové hodnoty jsou souřadnice X a Y (2D), hodnoty jsou
pole (Z hodnoty, rozdíly v elevaci). První část kódu nastavuje propustnost, který
identifikuje oblasti mezi stromy a terénem (Obrázek 47).
Obrázek 47 - Zpracování rastru pomocí asociativních polí jazyka Python (Zdroj: Autor)
Jazyk Python v tomto případě umožňuje vytvořit jednoduše čitelný kód, který
v krátké formě zápisu plní veškerý požadovaný účel. Třída Tree filtrující vegetaci má dva
atributy, raster_dict (asociativní pole) a output_array (pole). Vstupní datový soubor ve
formátu .csv je načten do asociativního pole pomocí metody loadPoints(filePath).
Asociativní pole je filtrováno metodou filterOut(). Výstupní string je vytvářen iterativně
procházením klíčových hodnot a je uložen metodou saveXYZ(filePath) jako filtrovaný
výstup. Tento přístup může být upraven či rozšířen.
64
3.9.2 Transformace rastru
Tato kapitola využívá filtrované bodové mračno k vytvoření černo-bílých rastrů.
Tyto rastry jsou využity jako řídící objekty pro distribuci individuálních objektů (stromů)
na povrch terénu. Vstupní XYZ soubor je zobrazen na Obrázek 48.
Obrázek 48 - Transformace filtrovaného výstupu (Zdroj: Autor)
Další kroky mohou být znatelně upraveny v oblasti přesnosti. Filtrované vrcholky
stromů mohou být agregovány do rastrů o specifické velikosti buňky. Následující proces
předpokládá průměrování velikosti koruny stromů v dané oblasti. Autor extrahuje
maximální hodnotu každé buňky rastru od jejího minima (množina bodů na pozici buňky
rastru).
Tato operace podává na svém výstupu reálné výšky stromů. Počet bodů plně
postačuje pro eliminaci případných anomálií - například 2 body z 20 nejsou plným
odrazem terénu, ale stromu. Výšky stromů je k dalšímu využití zapotřebí převést do 8 či 16
bitové podoby (dle potřebné přesnosti). K operaci lze využít libovolný nástroj (Python,
Freemat). V tomto případě je využita 8 bitová přesnost, která svojí tolerancí odpovídá
65
toleranci samotného laserového paprsku (0,3 m). Hodnoty jsou tedy normalizovány
do intervalu 0-255 dle vztahu 11.
𝐻𝑒𝑖𝑔ℎ𝑡𝑅𝑎𝑠𝑡𝑒𝑟 =
𝑇𝑟𝑒𝑒𝐻𝑒𝑖𝑔ℎ𝑡𝑀𝑎𝑡𝑟𝑖𝑥 ∗ 255
𝑀𝑎𝑥(𝑇𝑟𝑒𝑒𝐻𝑒𝑖𝑔ℎ𝑡𝑀𝑎𝑡𝑟𝑖𝑥)
(11)
Tato operace poskytuje finální rastr, který je připraven k řízení distribuce stromů
na vytvořeném modelu terénu. Následující obrázek zobrazuje reprezentaci ve dvou
podobách, precizní a abstraktní. Volba mezi menším či větším rozlišením je volena
s ohledem na potřeby analýzy (Obrázek 49).
Obrázek 49 - Výšky stromů v 8 bitové podobě (Zdroj: Autor)
66
K snížení nepřesnosti v důsledku interpolace bodů do požadovaného prostorového
rozlišení, lze využít dodatečného rastru k alespoň částečnému zpřesnění pozice umístění
každého stromu. Tento odhad zpřesňuje pozici v globálním měřítku a především
u smrkových porostů. Odhadnout individuální profil koruny každého stromu je s daným
vstupním balíkem velmi obtížné. Nicméně lze využít maximální výšky každého objektu
k zpětnému navrácení 2D souřadnic (X/Y). Tento výpočet je proveden dělením rastrů dle
vztahu 12.
𝑃𝑜𝑠𝑖𝑡𝑖𝑜𝑛𝑅𝑎𝑠𝑡𝑒𝑟 =
𝐿𝑜𝑤𝑅𝑒𝑠𝑜𝑙𝑢𝑡𝑖𝑜𝑛𝐻𝑒𝑖𝑔ℎ𝑡𝑠
𝐻𝑖𝑔ℎ𝑅𝑒𝑠𝑜𝑙𝑢𝑡𝑖𝑜𝑛𝐻𝑒𝑖𝑔ℎ𝑡𝑠
(12)
Hodnoty pixelů s velkou odchylkou po vydělení jsou filtrovány. Tento krok vede
k zachování takových pixelů, které si odpovídají. Výstupní rastr pozic jednotlivých stromů
je zobrazen na Obrázek 50.
Obrázek 50 - Rastr pro řízení pozic a výšky stromů (Zdroj: Autor)
3.9.3 Řízená distribuce objektů pomocí vytvořených rastrů
Výstupní rastry z předchozího kroku lze přímo použít k řízení distribuce objektů.
Tato distribuce může být demonstrována nejprve ve zjednodušené podobě pomocí kvádrů
na povrchu terénu. Černo - bílý rastr je využit jako maska, která na své pozici dědí hodnotu
rastru na objekty na jejím povrchu (Obrázek 51). Fotorealistické využití je demonstrováno
v dalších kapitolách.
67
Obrázek 51 - Les zobrazený v podobě testovacích objektů, koruna jednoho stromu (Zdroj: Autor)
3.10 Implementace stavu počasí v reálném čase z družic NOAA
Rozpracovaná fáze napojení satelitních snímků z družic, které jsou veřejnosti běžně
dostupné na různých vlnových délkách elektromagnetického záření má v rozpracované
verzi práce následující podobu (Obrázek 52). Bod 1 reprezentuje procedurální materiál
oblačnosti. Procedurální a parametrický přístup zajišťuje generování různých typů
oblačnosti pomocí změny parametrů, tvorbou instancí. Bod 2 znázorňuje částicový systém,
který v čase t0-t100 generuje částice na předem definovaný objekt. Zajištuje, aby byla každá
částice orientovaná směrem k uživateli a usměrňovala správným způsobem světelné záření.
Bod 3 představuje testovací strukturu, fiktivní oblak a test reakce částicového systému na
pohyb uživatele. Bod 4 a 5 představuje neupravený snímek z družice NOAA. Část 6
je automaticky generovaná kvádrová struktura závislá na černo-bílém rastru z družice. Čím
světlejší oblast, tím větší výška a mohutnost kvádru, čím tmavší oblast, tím menší výška
a mohutnost kvádru. Bod 7 znázorňuje vygenerované částice v čase t100.
68
Obrázek 52 - DWM, napojení reálného stavu počasí do modelu (Zdroj: Autor)
3.11 Paralelizace a distribuovaný přístup k dílčím úlohám
Z historického pohledu lze v tomto směru narazit na dva pojmy. Paralelní
a distribuované výpočty. Paralelní výpočty byly první tohoto typu a jsou populární
až do dnešní doby. Z hlediska architektury jsou zaměřené buď vektorově (1 dimenzionální
pole), nebo vláknově. Mezi známé stanice tohoto druhu se řadí například super PC Cray
(SPC). Paralelní výpočty jsou charakteristické zpracováním fyzicky na 1 PC, případně
na 1 PC a více vláknech. Distribuované výpočty jsou zpracovávané na N PC, přičemž
každé PC může mít více CPU. Spojení několika PC přidává do problematiky další faktor
a to síťové spojení. V současné době je oproti investici do SPC ekonomicky mnohem více
dostupné řešení distribuované a to v podobě propojení 1-N běžně dostupných
kancelářských PC.
3.11.1
Implementace distribuovaných výpočtů na bázi Google® File
Systému
V tomto textu je navržen směr zpracování pro časově náročnější a distribuovatelné
operace (Obrázek 53Chyba! Nenalezen zdroj odkazů.). Mezi ně patří interpolace bodů
do pravidelné čtvercové struktury (1), výpočet terénu pro každou buňku rastru (např. 1×1
metr) vůči svému okolí (2), výpočet geostatistiky pro komparaci modelů vůči reálným
69
hodnotám (3), aplikace distribuovaného seřazení a proložení přímek (4), distribuovaný
render obrazu z vytvořeného modelu (5). Všechny uvedené operace mohou být zpracovány
plně nebo částečně distribuovaným způsobem.
Obrázek 53 - Distribuovatelné operace (Zdroj: Autor)
3.11.2 Paralelizace
Paralelizace je možná v případě, kdy lze zpracování rozdělit do N nezávislých
skupin. Například při vykreslení obrazu je prakticky jedno, co se děje na pravé straně,
protože to nikterak neovlivňuje stranu levou. Zároveň není překážkou ani chaotické
přidělování obrazových výseků jednotlivým vláknům. Tento případ je demonstrován na
vykreslení snímku z vytvořeného modelu pomocí 4 vláken. Dílčí výseky, které jsou
vláknům přidělované, mají nastavenou velikost X×X pixelů (Obrázek 54).
Obrázek 54 - Rozdělení a sjednocení obrazu při distribuovaném vykreslení (Zdroj: Autor)
V některých případech ale předchozí postup možný není. Například u závislých
výpočtů. V tomto případě je tedy nutné vyřešit celou komunikaci vláken a to tak,
aby nebyly spouštěny náhodně - nepředvídatelné chování. V případě paralelizace je tedy
nutné vymyslet funkční synchronizační systém. Například v případě datové struktury
70
seznam s hlavou by jedno vlákno bez takového systému přidávalo prvek, zatímco druhé
vlákno počítalo počet prvků seznamu. Výsledek by nebyl správný.
Řešením tohoto problému je přístup ke sdílené proměnné pomocí semaforů (binární
semafor). Místo sdílené proměnné lze substituovat například vlakový tunel s jednou kolejí.
Pomocí stavů zamknout/odemknout lze omezit přístup k proměnným, ale stále nedochází
k řízení vláken. Řešením jsou tak kondiční podmínky, které upozorňují jednotlivá vlákna.
Tento problém je demonstrován na následujícím pseudo příkladu, kde funkce 1 představuje
práci pro vlákno č. 1, funkce 2 pro vlákno č. 2 (Obrázek 55).
Obrázek 55 - Přístup k proměnné (Zdroj: Autor)
3.11.3
Distribuované systémy
Distribuované výpočty rozšiřují výpočty z 1 PC do množiny PC, které jsou
umístěné v síti. Objevuje se tak další problém a to řízení síťové komunikace na síťové
vrstvě (TCP/IP). Kromě komunikace je ale důležité i navržení samotné infrastruktury sítě,
která by měla být optimalizovaná v závislosti na samotném řešení síťových přenosů. Tato
problematika může být zobrazena pomocí odlišného zapojení síťových prvků, které
pomáhá snižovat, případně urychlovat datové toky při výpočtech (Obrázek 56). Využití
tohoto problému je popsáno v další části článku věnující se přímé implementaci
distribuovaných výpočtů na bázi Google® File Systému.
71
Obrázek 56 - Vliv síťové infrastruktury na probíhající výpočty (Zdroj: Autor)
Distribuované systémy jsou z velké části založeny na tzv. Funkcionálním
programování, které je známé především u uživatelů LISPU (implementovaný např.
v aplikaci Autodesk Autocad). Funkcionální programování je založené na předpokladu
tvorby kopie zpracovávaného datového souboru. Nedochází tak k modifikaci vstupních
dat, ale je vytvořena jejich kopie. Pořadí zpracování každé kopie může být náhodné.
V případě vložení prvku do datové struktury seznam s hlavou, je nejprve vytvořena kopie
a poté je do této kopie prvek vložen. Vstupní data nejsou modifikována. Rozdělení
vstupního souboru na části je zpravidla označeno jako Map fáze. Naopak seskupení
vypočtených výstupů jako Reduce či Fold fáze.
Dílčí paralelizovatelné části jsou odeslány řídícím prvkem k ostatním pracovním
stanicím, které je zpracovávají. Těmito stanicemi může být tzv. Cluster nebo Grid. Cluster
reprezentuje obdobné PC stanice zapojené v jedné síti (např. výpočtové centrum), Grid
reprezentuje PC stanice rozdílného druhu v několika sítích (např. SETI a jemu podobné
projekty). Princip LISTP Map/Reduce je zobrazen na následující ilustraci (Obrázek 57),
(Thain a kol. 2004).
Obrázek 57 - Princip Map/Reduce (Zdroj: Autor)
72
Obrázek 58 - LIDAR Map/Reduce (Zdroj: Autor)
Reduce funkce je aplikována na Map výstupy, které jsou přes síť vzdáleně načteny
přímo z lokálního uložiště Slave uzlu, který je zpracoval. Informace, kde je která Map
úloha fyzicky zpracována, je uložena v tabulce metadat u Master uzlu, kterého se Slave
uzly na tuto informaci dotazují. Opět platí, že se Master snaží alokovat práci tak,
aby nedocházelo ke zbytečným datovým tokům a stejně jako u Map úloh udržuje tabulku
stavů. Výstupem Reduce fáze R1 je struktura <seznam(klíč), seznam(hodnota)>.
V ilustračním případě předchozího obrázku z důvodu malého množství vstupních
dat u R2 a R3 jen <klíč, hodnota>. Pokud je Reduce úloha úspěšně zpracována, není
uložena jako v případě Map fáze na lokální disk, ale přímo do GFS/HDFS, kde je výsledek
replikován. Výstup je tvořen R soubory, které mohou být považovány za finální výstup
nebo dále zpracovány, například seřazeny (Sort), či využity v další iteraci pro navazující
MapReduce operaci (Obrázek 3, bod 6). Výstup přímo z HDFS/GFS může být buď přímo
vypsán například do konzole (cat), nebo zkopírován mimo HDFS/GFS a dále využit.
V případě LIDAR dat není potřeba výstupy kombinovat do jednoho souboru, body
nesou informaci o souřadnicích a nezáleží na tom, zda jsou načteny z jednoho nebo více
individuálních souborů.
3.12 Tvorba náhodných statických či dynamických výstupů z vytvořeného 3D modelu
Nejjednodušší využití modelu je generování statických pohledů z předem
zvolených souřadnic. Uživatel může přímo simulovat reálné vlastnosti fotoaparátu
či kamery a zvolit jakýkoliv pohled na oblast zájmu. Povrch terénu je osvětlen realisticky
nastaveným Sluncem s přesnou denní a roční polohou. Je tedy možné kombinovat výstup
například s analýzami provedenými nad DEM - konkrétní číselné hodnoty osvětlení
73
povrchu ve Watt hodinách. Rozšíření simulace týkající se počasí je popsáno v kapitole
Implementace stavu počasí v reálném čase z družic NOAA. Následující sada obrázků
(Obrázek 59) demonstruje náhodně umístěný pohled v oblasti zájmu z pozice 2 metrů nad
terénem. První v pořadí ukazuje čtvercový, segmentovaný digitální model terénu.
Druhý v pořadí znázorňuje parametrické osazení modely a třetí obrázek zapojuje
procedurální materiály pro tvorbu realistických barevných variací. Každý bod mřížky v
modelu odpovídá dointerpolované hodnotě z nerovnoměrného LIDAR mračna a každý
objekt na povrchu uchovává své souřadnice. Okrajové části ovlivněné ořezem při využití
množinových operací, obsahují hybridní polygonovou strukturu, v ostatních, vnitřních
částech modelu, je zaručen pouze čtvercový výskyt.
74
Obrázek 59 - Výstup pro jeden náhodný pohled v modelu (Zdroj: Autor)
75
K samotnému vytvoření statického či dynamického výstupu (animace, simulace
atp.), je nutné nastavení určitých parametrů. Jedná se o anti-aliasing, například algoritmus
Catmul-Rom pro ostré hrany, Mitchell-Netravali či Lancoz pro hrany hladké.
K realistickému vykreslení světla je využita buď metoda Monte Carlo mnohdy označovaná
jako metoda Hrubé síly (Brute force) či kombinace ozařovacích, světelných a fotonových
map (irradiance map, light cache či photon map).
Vytvořený obraz byl vykreslen v rozlišení odpovídající standardu 720p (1280×720
px) ale v mnohých případech může být rozlišení mnohem větší. Například v následujícím
případě (Obrázek 60), byl výstup vytvořen distribuovaným způsobem za pomocí Cloud
služby, clusteru v Německu. Výstup byl zaslán zpět v rozlišení 4K. Zobrazuje i praktickou
implementaci jednoho ze stanovených cílů z kapitoly Parametrický a procedurální přístup.
Obrázek 60 - Řízená distribuce objektů na konkrétní typ povrchu (Zdroj: Autor)
Pozic, z kterých lze generovat výstupy je neomezené množství (Obrázek 61).
Model je v tomto případě bez limitní, závislý pouze na dostupnosti podkladových
laserových či vektorových dat. Model lze porovnat i s široce používaným Google Earth.
Rozdíl v digitalizaci je způsoben přejmutím vektorových tříd z databáze ZABAGED®,
chybějící vedlejší ulice abstrakcí některých vektorových vrstev v modelu. Tyto detaily jsou
76
však minoritní a mohou být bez větších problémů upraveny, doplněny. Opět není
problematické umístění kamery do modelu a vygenerování patřičného výstupu.
Obrázek 61 - Google Earth a vytvořený 3D polygonový LIDAR model (Zdroj: Autor)
77
Závěr
Autor práce představuje hybridní metodu pro zpracování dat technologie LIDAR
ve formě komplexního 3D modelu terénu, který je založený na reálných atributech oblasti.
Model může být uplatnitelný při 3D GIS analýzách, vizualizacích pro veřejné zakázky,
konstrukcích nových komunikací (silnice, mosty), 3D tisku, simulacích a při generování
libovolných pohledů v zájmové oblasti. Zároveň poskytuje možnost propojit jednotlivá
odvětví a jejich dílčí výstupy prezentovat v ucelené formě, například GIS, stavebnictví
či strojírenství.
Model je kompletně založený na přenosu objektových atributů (budovy, vegetace,
terén) do formy čtvercových polygonů, které je jednoduché editovat a jejichž hrany jsou
predikovatelné a dělitelné. Model umožňuje parametrickou a procedurální rekonstrukci
velmi rozlehlých oblastí ve 3D a to na základě sklonově klasifikovaných, a z původních
nerovnoměrných bodových dat dointerpolovaných, gridů (čtvercových sítí).
Tyto rovnoměrné gridy tvoří podklad pro foto-realistický model terénu. Dílčí kroky
vytvoření takového modelu, tvoří korekce dat. Korekce zahrnuje především datovou
registraci, složení maticových dílců, odšumění či odstranění artefaktů. Takto zpracovaný,
rozsáhlá a nerovnoměrná struktura dat je zjednodušena vybraným interpolačním
algoritmem pomocí jazyků C++ či Python. Využita je implementace knihovny algoritmů
National Algorithm Group (NAG).
Každý interpolovaný grid disponuje rozdílným rozlišením, které snižuje
hardwarové nároky na rekonstrukci a vytváří tak adaptivní model. Adaptivita v tomto
případě kopíruje členitost terénu a volí vhodný počet bodů, z kterých je následně vytvořen
polygonový povrch terénu. Datový balík je analyzován na základě sklonů terénu a tato
analýza je dále využita pro klasifikaci interpolovaných gridů do skupin. Výstupy z této
operace jsou zpracovány pomocí 3D skriptovacího jazyka Maxxscript a tvoří výsledný
model terénu. Body v již pravidelné čtvercové síti, která vznikla adaptivní interpolací, jsou
seřazeny v osách X a Y. Toto seřazení umožňuje iterativně protínat pole bodů křivkami,
které tvoří čtvercový polygonový terén.
K osazení polygonového terénu objekty na povrchu je využito vektorové vrstvy
ZABAGED® či kvalitních povrchových dat technologie LIDAR. Tyto datové sady jsou
převedeny do 3D a využity pro rekonstrukci vodních toků, dopravních komunikací, budov
78
a samotných tříd terénu. Implementace je zpracována pomocí množinových operací. 3D
model terénu je rozdělen do skupin (lesy - listnaté, jehličnaté, smíšené, louky, zastavěné
oblasti, vodní plochy, ad.). Ke každé třídě je vytvořen balík polygonových modelů s
vysokou úrovní detailů. Tyto modely jsou rozmístěny na povrch oklasifikovaného modelu
terénu pomocí zakódování jejich vlastností do rastrové formy. Tisíce bodů, které tvoří
individuální objekt (strom, budovu), jsou tímto způsobem abstrahovány a nahrazeny
algoritmicky vypočteným parametrem majícím podobu rastru. Tento černo-bílý rastr slouží
k distribuci milionů objektů na povrchu terénu a to pomocí normalizace atributů objektu na
konkrétní buňku (hodnotu) v rastru. Miliony objektů na povrchu jsou uchovány v podobě
tzv. Proxy objektů, které jsou načítány do paměti až v době jejich konkrétní potřeby
(Obrázek 62).
Obrázek 62 - Proxy objekty v rozsáhlých modelech povrchu (Zdroj: Autor)
Celý proces je konstruován parametrickým a procedurálním způsobem.
Parametrický princip poskytuje možnost měnit pomocí jednoho parametru vlastnosti N
objektů najednou. Procedurální přístup zaručuje globální změnu vlastností především
v oblasti textur. Model také podtrhuje možnost napojení družicových snímků oblačnosti.
Tyto snímky jsou veřejně dostupné v 15 minutových intervalech. Společně s vytvořeným
částicovým systémem, který na základě družicových snímků generuje částice oblačnosti,
simuluje model i reálnou situaci počasí. Částicové systémy, které mohou být využity i pro
simulaci dalších jevů (Meteorologie, Hydrologie, Geologie, ad.), zvyšují řádově
hardwarovou náročnost na zpracování a provedení simulací nad modelem. Časově náročné
výpočty však mohou být vypočteny distribuovaným způsobem na detašovaném pracovišti
a jsou založené na principech replikace Hadoop souborového systému (HDFS).
79
Vysvětlení zkratek a pojmů

AMAZON AWS (Amazon Web Services) – vitualizace, široké zastoupení cloudových
služeb, možnost vytváření instancí a clusterů

AMAZON EMR (Amazon Elastic Map Reduce) – implementace map/reduce pod
Amazon Web Services – možnost využívání cloud computingu nad zvoleným počtem
libovolně zvolených hardwarových instancí

CGI (Computer Generated Imagery) – počítačem generovaný obraz – statický grafický
výstup z vytvořeného modelu

CLOUD - Využití služeb poskytovaných třetí stranou, tzv. outsourcing, v IT obvykle
přístup ke clusteru s předplacenými službami (databáze, virtuální servery, výpočetní
výkon, licence, úložiště a mnoho dalších)

CLUSTER - Propojené PC/stanice, obvykle obdobného typu, umístěné v rychlém síťovém prostředí (často koncentrované do malého prostoru), užívané například pro výpočty s velkým tokem dat a časovou prioritou

CPU (Central Processing Unit) – centrální procesorová jednotka (procesor) – ovlivňující rychlost generování výstupů z vytvořeného 3D modelu terénu

DBM (Digital Building Model) – digitální model budov – dílčí model, který je zahrnut
v komplexním 3D modelu terénu navrženém autorem

DEM (Digital Elevation Model) – digitální výškový model – model, který v bodové či
rastrové podobě eviduje nadmořské výšky zájmové oblasti

DCHM (Digital Canopy Height Model) – digitální výškový model vegetace – dílčí model, který je zahrnut v komplexním 3D modelu terénu navrženém autorem

DMT (Digital Terrain Model) – digitální model terénu (angl. ekvivalent DMR) – model terénu, který obsahuje pouze samotný terén, objekty na povrchu jsou pomocí zvolené filtrační metody odstraněny a dointerpolovány

DSM (Digital Surface Model) – digitální model povrchu (angl. ekvivalent DMP) –
model povrchu, který obsahuje jak samotný terén, tak i všechny objekty na jeho povrchu
80

FOV (Field of View) – zorné pole – nastavení zorného pole snímacího zařízení ovlivňuje načítání viditelných objektů do operační paměti

GFS (Google File System) – Souborový systém společnosti Google – síťový souborový
systém určený pro distribuované výpočty a to primárně u služeb společnosti Google

GIS (Geographic Information System) – geografický informační systém – systém navržený pro uchování, analýzu, manipulaci a prezentaci geografických dat

GPS (Global Positioning System) – globální triangulační systém – technologie pro
určení polohy využívající minimálně 3 družice

GPU (Graphics Processing Unit) – jednotka pro zpracování obrazu – výkon ovlivňuje
práci s 3D modelem v reálném čase

GRID - Propojené PC stanice, různého typu, umístěné decentralizovaně v rámci sítě
Internet (různé přenosové rychlosti), užívané například pro extrémně náročné výpočty s
menším tokem dat a méně důležitou časovou prioritou

HDFS (Hadoop File System) – Souborový systém Hadoop – síťový souborový systém
určený pro distribuované výpočty, založený na GFS, implementovaný v open source
frameworku

HTT (Hyper-Threading Technology) – technologie optimalizace paralelních výpočtů –
technologie společnosti Intel vytváří z jednoho fyzického CPU dvě virtuální logické
jednotky

IDW (Inverse Distance Weighting) – metoda inverzních vzdáleností – interpolační metoda využívající vzdálenost mezi známým a dopočítávaným bodem k určení vah

LIDAR (Light Detection and Ranging) – měření vzdálenosti na elektromagnetické bázi
– technologie, umožňující měření přesných vzdáleností objektů pomocí laseru, scanneru, rotujícího zrcadla a GPS jednotky

NAG (Numerical Algorithms Group) – Skupina numerických algoritmů – algoritmy
implementované v celé řadě výpočetních aplikací

N-GON (N Polygon) – N hraný polygon – polygon, který má obvykle více než 4 hrany

PCL (Point Cloud Library) – knihovna pro bodová mračna – framework obsahující
funkce pro zpracování bodových mračen
81

QRN (Quad Regular Network) – čtvercová pravidelná síť – autorem implementovaná
struktura, zjednodušující LIDAR bodová mračna do tvaru pravidelných polygonů

RBF (Radial Basis Function) - Funkce jejíž hodnota zavisí na vzdálenosti od počátku
souřadnicového systému

RGB (Red Green Blue color model) – barevný prostor na bázi červené, zelené a modré
barvy – využívaný jak při samotném skenování zájmového území, tak pro generování
CGI výstupů z vytvořeného 3D modelu

SPC (Super Computer) – super počítač – vysoce výkonný počítač, určený pro výpočet
časově náročných výpočetních úloh

SSD (Solid State Drive) – Disk bez mechanické části – pevný disk, který díky absenci
mechanických prvků dosahuje několikanásobně vyšší rychlosti čtení/zápisu než klasické SATA pevné disky

TIN (Triangulated Irregular Network) – trojúhelníková nepravidelná síť – polygonový
povrch sestrojený pomocí nepravidelných trojúhelníků, který je obvykle, pro nízkou
hardwarovou náročnost, využívaný ke konstrukci povrchů z laserových bodových mračen

WGS 1984 (World Geodetic System 1984) - Světový geodetický referenční systém z
roku 1984 - používá se při satelitní navigaci GPS

ZABAGED® (Základní Báze Geografických Dat) – digitální geografický model České
republiky – databáze zobrazující 106 vektorových geografických objektů v měřítku
1:10 000
82
Seznam obrázků
Obrázek 1 - LIDAR bodové mračno reprezentované jako TIN (Zdroj: Autor) ................................... 5
Obrázek 2 - LIDAR bodové mračno reprezentované jako QRN (Zdroj: Autor) ................................. 6
Obrázek 3 - Google File Systém (GFS) (Zdroj: Autor) ....................................................................... 8
Obrázek 4 - Replikace dat (Zdroj: Autor) ........................................................................................... 9
Obrázek 5 - Hlavní cíl (Zdroj: Autor) ............................................................................................... 16
Obrázek 6 - Velikost laserového skenu (Zdroj: Autor) ..................................................................... 17
Obrázek 7 - Schéma individuálních kroků vedoucí ke splnění hlavního cíle (Zdroj: Autor) ............ 21
Obrázek 8 - ZABAGED®, vektorové objekty (Zdroj: Autor)............................................................ 23
Obrázek 9 - LIDAR bodové mračno (Zdroj: Autor) ......................................................................... 24
Obrázek 10 - Typy použitých družicových snímků (Zdroj: Autor) ................................................... 25
Obrázek 11 - XYZ reprezentace krychle, body, hrany, polygony (Zdroj: Autor) ............................. 26
Obrázek 12 - Problematické oblasti laserového skenu (Zdroj: Autor) .............................................. 29
Obrázek 13 - Schéma možné korekce bodového mračna (Zdroj: Autor) .......................................... 30
Obrázek 14 - Trojúhelníková struktura před a po korekci (Zdroj: Autor) ......................................... 30
Obrázek 15 - Globální a lokální vliv bodového mračna na interpolovaný model (Zdroj: Autor) ..... 31
Obrázek 16 - Nepravidelný tok hran (Zdroj: Autor) ......................................................................... 32
Obrázek 17 - Držení milionů nepotřebných bodů v modelu (Zdroj: Autor) ...................................... 33
Obrázek 18 - Dílčí část zdrojového kódu v C++ (Zdroj: Autor) ....................................................... 34
Obrázek 19 - Automaticky generovaná výstupní sada souborů (Zdroj: Autor) ................................. 35
Obrázek 20 - Grafická reprezentace vytvářené adaptivní struktury (Zdroj: Autor) ........................... 36
Obrázek 21 - Segmentace a klasifikace adaptivních ořezových vrstev (Zdroj: Autor) ..................... 36
Obrázek 22: Polygony orčené k ořezu interpolovaných gridů (Zdroj: Autor) ................................... 37
Obrázek 23 - Adaptivní sada gridů o 3 třídách (Zdroj: Autor) .......................................................... 38
Obrázek 24 - Metoda rozdělení vstupů, část I. (Zdroj: Autor) .......................................................... 40
Obrázek 25 - Metoda rozdělení vstupů, část II. (Zdroj: autor) .......................................................... 41
Obrázek 26 - Rozptyl chyb a jejich grafické rozložení (Zdroj: Autor) .............................................. 42
Obrázek 27 - Interpolace odchylek do spojité matice (Zdroj: Autor) ................................................ 43
Obrázek 28 - Výpočet matice vah pro Moranův I test (Zdroj: Autor) ............................................... 45
Obrázek 29 - Globální Moranova I statistika (Zdroj: Autor) ............................................................. 46
Obrázek 30 - Klasifikace shluků na základě Moranova I testu (Zdroj: Autor) .................................. 47
Obrázek 31 - Pozitivní korelace sklonu terénu a hodnot odchylek (Zdroj: Autor) ............................ 49
Obrázek 32 - Grafické zvýraznění sklonu/odchylek interpolovaného modelu (Zdroj: Autor) .......... 50
Obrázek 33 - Výhody čtvercových polygonů (Zdroj: Autor) ............................................................ 51
Obrázek 34 - Návrh skriptu pro transformaci bodové struktury do polygonové (Zdroj: Autor) ....... 51
Obrázek 35 - Zdrojový kód skriptu v prostředí jazyka Maxxscript (Zdroj: Autor) ........................... 53
Obrázek 36 - DBM využitý při analýze viditelnosti ze zvoleného bodu (Zdroj: Autor) ................... 54
Obrázek 37 - Příprava polygonových gridů k segmentaci a klasifikaci (Zdroj: Autor) ..................... 56
Obrázek 38 - Množinové operace v 3D prostředí (Zdroj: Autor) ...................................................... 57
Obrázek 39 - Transformovaná a klasifikovaná polygonová struktura (Zdroj: Autor) ....................... 57
Obrázek 40 - Princip tvorby a distribuce objektů na povrch terénu (Zdroj: Autor) .......................... 58
Obrázek 41 - Fotografie zájmové oblasti (zdroj: Google) ................................................................. 59
Obrázek 42 - Rastrem řízená distribuce objektových atributů (Zdroj: Autor) ................................... 60
Obrázek 43 - Klasifikace terénu a vegetace (Zdroj: Autor) ............................................................... 61
Obrázek 44 - Bodové mračno převedené na grid (Zdroj: Autor)....................................................... 62
Obrázek 45 - První odražený paprsek v podobě interpolovaného rastru (Zdroj: Autor) ................... 63
Obrázek 46 - Extrakce stromů pomocí vlastního filtru (Zdroj: Autor) .............................................. 63
Obrázek 47 - Zpracování rastru pomocí asociativních polí jazyka Python (Zdroj: Autor) ................ 64
83
Obrázek 48 - Transformace filtrovaného výstupu (Zdroj: Autor) ..................................................... 65
Obrázek 49 - Výšky stromů v 8 bitové podobě (Zdroj: Autor) ......................................................... 66
Obrázek 50 - Rastr pro řízení pozic a výšky stromů (Zdroj: Autor) .................................................. 67
Obrázek 51 - Les zobrazený v podobě testovacích objektů, koruna jednoho stromu (Zdroj: Autor) 68
Obrázek 52 - DWM, napojení reálného stavu počasí do modelu (Zdroj: Autor) .............................. 69
Obrázek 53 - Distribuovatelné operace (Zdroj: Autor) ..................................................................... 70
Obrázek 54 - Rozdělení a sjednocení obrazu při distribuovaném vykreslení (Zdroj: Autor) ............ 70
Obrázek 55 - Přístup k proměnné (Zdroj: Autor) .............................................................................. 71
Obrázek 56 - Vliv síťové infrastruktury na probíhající výpočty (Zdroj: Autor)................................ 72
Obrázek 57 - Princip Map/Reduce (Zdroj: Autor) ............................................................................ 72
Obrázek 58 - LIDAR Map/Reduce (Zdroj: Autor) ............................................................................ 73
Obrázek 59 - Výstup pro jeden náhodný pohled v modelu (Zdroj: Autor) ........................................ 75
Obrázek 60 - Řízená distribuce objektů na konkrétní typ povrchu (Zdroj: Autor) ............................ 76
Obrázek 61 - Google Earth a vytvořený 3D polygonový LIDAR model (Zdroj: Autor) .................. 77
Obrázek 62 - Proxy objekty v rozsáhlých modelech povrchu (Zdroj: Autor) ................................... 79
84
Seznam použité literatury
AKIMA, H., 1978. A method of bivariate interpolation and smooth surface fitting for irregularly distributed data points, ACM TOMS, 4, 148-64.
Apache Software Foundation, „Hadoop MapReduce Framework“,
http://hadoop.apache.org/mapreduce/, 2010
AXELSSON, P., 2000. DEM generation from laser scanner data using adaptive TIN models, International Archive of Photogrammetry and Remote Sensing, 33 (B4), 110117.
BARTIE, P., REITSMA, F., KINGHAM, S. and MILLS, S., 2011. Incorporating vegetation into visual exposure modeling in urban environments, International Journal of
Information Science, 25 (5), 851-868.
BARTIER, P. M. and KELLER, C. P., 1996. Multivariate interpolation to incorporate thematic surface data using inverse distance weighting (IDW), Computers & Geosciences, 22 (7), 795-799.
BELKA, L., 2012. Airborne laser scanning and production of the new elevation model in
the Czech Republic, Vojenský geografický obzor, 55 (1), 19-25.
BLOCH, J. Effective Java. 2008, 2, 346 p., ISBN-10: 0-321-35668-3.
BORTHAKUR, D. 2007 The Hadoop Distributed File System: Architecture and Design,
http://hadoop.apache.org/core/docs/current/hdfs_design.pdf
BROVELI, M. A., CANATA, M. and LONGONI, U.M, 2004. LIDAR data filtering and
DTM interpolation within GRASS, Transactions in GIS, 8(2), 155-174.
CHEN, Z., DEVEREUX, B., GAO, B. and AMABLE, G., 2012. Upward-fusion urban
DTM generating method using airborne LIDAR data, Journal of Photogrammetry
and Remote Sensing, 72, 121-130.
DEAN, J., GHEMAWAT, S., 2004. Map Reduce: Simplified data processing on large
clusters, In OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation, vol. 6, pp 137-149.
ELMQVIST, M., 2002. Ground surface estimation from airborne laser scanning data with
morphological methods, Photogrammetric Engineering & Remote Sensing, 73 (2),
175-185.
GHEMAWAT, S., GOBIOFF, H. and LUNG, S. 2003 The Google file system. In 19th
Symposium on Operating Systems Principles, pp. 29-43, Lake George, New York
85
HEURICH, M., 2006. Evaluierung und Entwicklung von Methoden zur automatisierten
Erfassung von Waldstrukturen aus Daten flugzeuggetragener Fernerkundungssensoren. Forstlicher Forschungsbericht München, Nr. 202. ISBN: 3-933506-33-6,
(accessed on 11.03.14) http://mediatum2.ub.tum.de/.
HOLMES, A. Hadoop in Practice. 2012, 512 p., ISBN 9781617290237
HU, Y., 2003, Automated Extraction of Digital Terrain Models, PhD Thesis. University of
Calgary, Canada
HYYPA, J., Kelle, O., Lehikoinen, M., Inkinen, M., 2001. A segmentation-based
method to retrieve stem volume estimates from 3-D tree height models
produced by laser scanners. IEEE Transactions on Geoscience and Remote
Sensing 39 (5), 969_975.
ISAAKS, E. H. and SRIVASTAVA, R. M., 1989. An introduction to applied geostatistics,
Oxford
KINGSLAKE, R., 1992. Optics in Photography. Washington, SPIE Press, ISBN
0819407631.
KIRCHHOF, M., JUTZI, B., STILLA, U., 2008. Iterative processing of laserscanning data
by full waveform analysis. ISPRS Journal of Photogrammetry and Remote Sensing
63 (1), 99_114.
KLIMANEK, M., 2006. Optimization of digital terrain model for its application in forestry, Journal of Forest Science, 52 (5), 233-241.
KRAUS, K. and PFEIFER, N., 2001. Advanced DTM generation from LIDAR data, International Archives of Photogrammetry and Remote Sensing, 34(3), 23-30.
KRAUS, K., PFEIFER, N., 1998. Determination of terrain models in wooded areas with
airborne laser scanner data, ISPRS Journal of Photogrammetry & Remote Sensing,
53, 193-203.
LAWSON, C. L., 1977. Software for C surface interpolation, Mathematical Software, 3,
161-194.
LI, J., TAYLOR, G., KIDNER, D. and WARE, M., 2008. Prediction and visualization of
GPS multipath signals in urban areas using LIDAR Digital Surface Models and
building footprints, International Journal of Geographical Information Science, 22
(11-12), 1197-1218.
86
LLOYD, D. and ATKINSON, P. M., 2006. Deriving ground surface digital elevation models from LIDAR data with geostatistics, International Journal of Geographical Information Science, 20 (5), 535-563.
LONGLEY, P., A. et al., 2011. Geographic Information Systems and Science, 3,539
MANDLBURGER, G., HAUER, C., HOFLE, B., HABERSACK, H. and PFEIFER, N.,
2009. Optimization of LIDAR derived terrain models for river flow modeling, Hydrology and Earth System Sciences, 1453-1466.
MCLAIN, D.H., 1976. Two dimensional interpolation from Random Data, Computer J.,
384, 179-181.
MYERS, J. L., WELL, A. D., 2003. Research Design and Statistical Analysis. Lawrence
Erlbaum, ISBN 0805840370.
NAESSET, E., 2004. Practical large-scale forest stand inventory using a smallfootprint
airborne scanning laser. Scandinavian Journal of Forest Research 19 (2), 164_179.
NGUYEN, H. T., PEARCE, J. M., HARRAP, R. and BARBER, G., 2012. The Application
of LIDAR to Assessment of Rooftop Solar Photovoltaic Deployment Potential in a
Municipal District Unit, Sensors, 12, 4534-4559.
OLIVEAU, S. and GUILMOTO, C., Z., 2005. Spatial correlation and demography. Exploring India’s demographic patterns. In International Population Conference
Tours, France, 22 p.
OMASA, K., HOSOI, F., UENISHI, T. M., SHIMIZU, Y. and AKIYAMA, Y., 2008.
Three-Dimensional Modeling of an Urban Park and Trees by Combined Airborne
and Portable On-Ground Scanning LIDAR, Remote Sensing, Environmental Modeling & Assessment, 13(4), 473-481.
PARSIANI, H., JAVIER, M., SANCHEZ, E., 2008. Remote Sensing of Atmospheric Particles Using LIDAR, Calipso Satellite, & AERONET. Proceedings of the 4th
WSEAS International Conference on REMOTE SENSING (REMOTE'08), 6.
PERSSON, A., HOLMGREN, J., SODERMAN, U., 2002. Detecting and measuring individual trees using an airborne laserscanner. Photogrammetric Engineering & Remote Sensing 68 (9), 925_932.
87
PRIESTNALL, G., JAAFAR, J. and DUNCAN, A., 2000. Extracting urban features from
LIDAR digital surface models, Computers, Environmental and Urban Systems, 24,
65-78.
PYYSALO, U., HYYPPA, H., 2002. Reconstructing tree crowns from laser scanner
data for feature extraction. International Archives of Photogrammetry, Remote
Sensing and Spatial Information Sciences 34 (Part 3B), 218_221.
RENKA, R. J. and CLINE, A. K., 1984. A triangle-based C Interpolation Method. Journal
of Mathematics, 14, 223-237.
SCHOWENGERDT, R., 1997. Remote sensing, models, and methods for image processing, 2nd, 522 s. ISBN 01-262-8981-6.
SHEPARD, D., 1968. A two-dimensional interpolation function for irregularly spaced data. ACM '68 Proceedings of the 1968 23rd ACM national conference, 517-524.
SITHOLE, G. and VOSSELMAN, G., 2003. Comparison of Filtering Algorithms, Remote
Sensing and Spatial Information Sciences, 34 ( 3/W13), 71-78.
SOLBERG, S., NAESSET, E., BOLLANDSAS, O.M., 2006. Single tree segmentation
using airborne laser scanner data in a structurally heterogeneous spruce forest.
Photogrammetric Engineering & Remote Sensing 72 (12), 1369_1378.
SPURNA, P., 2008. Prostorová autokorelace – všudypřítomný jev při analýze prostorových dat, Sociologický časopis, Available in Czech only, 44, 4, pp. 767-787.
SVOBODOVA, J., 2011. Quality assessment of digital elevation models for environmental
applications., Thesis, University of Ostrava, 174p, Available in Czech only: Title:
Hodnocení kvality digitálních výškových modelů pro environmentální aplikace.
TACK, F., BUYUKSALIH, G. and GOOSSENS, R., 2012. 3D building reconstruction
based on given ground plan information and surface models extracted from spaceborne imagery, ISPRS Journal of Photogrammetry and Remote Sensing, 67, 52-64.
TAKAHASHI, T., YAMAMOTO, K., SENDA, Y. and TSUZUKU, M., 2005. Estimating
individual tree heights of sugi plantations in mountainous areas using smallfootprint airborne LIDAR, Journal of Forest Research, 10 (2), 135-142.
TAYLOR, G., LI, J., KIDNER, D., BRUNSDON, CH. and WARE, M., 2007. Modeling
and prediction of GPS availability with digital photogrammetry and LIDAR, International Journal of Geographical Information Science, 21 (1), 1-20.
88
THACKER, I., ZHANG, J, WATSON, L. T., BIRCH, J. B. and IYER, M. A., 2011. Modified Shepard Algorithm for Interpolation of Scattered Multivariate Data, ACM
Transactions on Mathematical Software, 37(3), 34-34.
THAIN, D., TANNENBAUM, T. and LIVNY, M. 2004 Distributed computing in practice:
The Condor experience. Concurrency and Computation: Practice and Expertise.
WAGNER, W., ULLRICH, A., DUCIC, V., MELZER, T., STUDNICKA, N., 2006.
Gaussian decomposition and calibration of a novel small-footprint full-waveform
digitising airborne laser scanner. ISPRS Journal of Photogrammetry and Remote
Sensing 60 (2), 100_112.
WEITKAMP, C., 2005. Lidar: Range-Resolved Optical Remote Sensing of the Atmosphere. Singapore, Springer, 2005. ISBN 0387400753.
ZHOU, G., SONG, C., SIMMERS, J. and CHENG, P., 2004. Urban 3D GIS From LIDAR
and digital aerial images, Computers & Geosciences, 30, 345-353.
89
Uvedení vlastních publikací souvisejících s tématem
Hovad, J. a Komarkova, J. 2014, " Creation of the accurate raster driven polygonal
environment for the 3D surface models based on the LIDAR technology ", Lecture Notes
in Geoinformation and Cartography, Springer, ISBN 978-3-319-07925-7
Hovad, J., Komarkova, J. a Sedlak, P. 2013, "Slope based grid creation using interpolation
of LIDAR data sets", ICSOFT 2013 - Proceedings of the 8th International Joint
Conference on Software Technologies, pp. 227.
Hovad, J. a Komarkova, J. 2014, "Parametrical and procedural approach in the LIDAR
data visualisation", ICSOFT 2014 - Proceedings of the 9th International Joint Conference
on Software Technologies, pp. 183.
Hovad, J. a Komarkova, J., 2013.
Creation of the accurate raster driven polygonal
environment for the 3D surface models based on the LIDAR technology, Cartocon 2014
proceedings of abstracts, ISBN 978-80-244-3979-2
Hovad, J. a Komarkova, J. 2014, "Adaptive lidar grid filtering and utilization in the
automated photorealistic surface modelling", ACM International Conference Proceeding
Series, pp. 362.
Hovad, J., Sedlak, P., Komarkova, J. a Duchac, A. 2013, "Analysis performed using
LIDAR mobile mapping", International Journal of Mathematics and Computers in
Simulation, vol. 7, no. 3, pp. 223-231.
Hovad, J., Komarkova, J., Sedlak, P. a Tulacka, M. 2012, "Calculation and visualisation of
Radar protection zone", International Journal of Mathematics and Computers in
Simulation, vol. 6, no. 1, pp. 213-221.
Hovad, J., Sedlak, P., Komarkova, J. Duchac, A., 2012. Data Processing and Visualisation
of LIDAR Point Clouds, In Proceedings of the 3rd International conference on Applied
Informatics and Computing Theory (AICT '12). Athens: WSEAS Press. pp. 178-183. ISBN
978-1-61804-130-2.
90
TUZEMSKÉ SBORNÍKY
Hovad, J. 2013. Zpracování distančních dat a nové přístupy v konstrukci povrchů, Sborník
ESRI ARCDATA 2013, pp 109-116, 978–80–904450–9–3
Hovad, J. 2015. Acceleration of time-consuming operations in case of 3D model creation
by utilization of LIDAR technology and distributed computations, Scientific Papers of the
University of Pardubice, No. 32, pp. 18-28
Hovad, J. 2015. Realtime webmining application for the support of the decission making
process, Scientific Papers of the University of Pardubice, 01/2015 (in print)
Hovad, J., Sedlak, P. a Duchac, A. 2012. Zpracování a vizualizace bodových mračen
LIDAR, Geoseminář 2012, Vol. 1, pp. 5-16. University of Pardubice, available in Czech
only, ISBN 978-80-7395-588-5.
Hovad, J. 2013. Návrh akcelerace časově náročných operací při tvorbě 3D modelu povrchu
za pomocí technologie LIDAR a distribuovaných výpočtů, Sborník konference IMEA 2013,
Pardubice
OCENĚNÍ ZÍSKANÉ V RÁMCI TVORBY DISERTACE
French Embassy and Bull s. r. o., Joseph Fourier Prize for Computer Sciences 2013.
Awarded 3rd place for Large Scale Terrain Modelling Using LIDAR Technology
ESRI GIS Projekt 2013 - získána první cena v kategorii disertačních a diplomových prací
ESRI GIS Projekt 2013 - získána třetí cena v kategorii posterů
91
Přílohy
Příloha A - ICSOFT 2013 - Poster
93
Příloha B - GIS Projekt 2013 - Poster
94
Příloha C - ICSOFT 2014 - Poster
95
Příloha D - 4K render zpracovaný na distribuované farmě v Německu
96
Příloha E - Proxy objekty v detailním pohledu
97
Příloha F - Testování interpolace nerovnoměrných bodových mračen
98
Příloha G - Schéma komplexního řešení problematiky
99
Příloha H - Google File Systém
100
92
Příloha A - 8th International Joint Conference on Software Technologies
(ICSOFT 2013 Reykjavik Island)
93
Příloha B - ESRI GIS Projekt 2013
94
Příloha C - 9th International Joint Conference on Software Technologies
(ICSOFT 2014 Vienna, Austria)
95
Příloha D - 4K render zpracovaný na distribuované farmě v Německu
96
Příloha E - Proxy objekty v detailním pohledu přílohy D
97
Příloha F - vizuální testování interpolace nerovnoměrných bodových mračen
98
Příloha G - Schéma komplexního řešení problematiky
99
Příloha H - Google File Systém
100

Podobné dokumenty

Technologie zpracování LHP - Mendelova univerzita v Brně

Technologie zpracování LHP - Mendelova univerzita v Brně Je nesporné, že na území našeho státu by mohly v budoucnosti existovat lesní majetky, které by mohly být zařízeny jak metodou věkových tříd, tak kontrolními metodami výběrných lesů. Nicméně se domn...

Více

Zjednodušený návod k programu Atlas DMT

Zjednodušený návod k programu Atlas DMT Jednotlivým trojúhelníkům v síti je možno přiřadit tzv. prioritu, atribut, který umožňuje rozlišovat části DMT. Důležitým krokem při tvorbě modelu je vytvoření staveb. Tyto objekty se v Atlasu mode...

Více

Zpravodaj obce 2009 – léto

Zpravodaj obce 2009 – léto Moravy – Dolního Rakouska. Obě tyto ţádosti byly přijaty k financování, probíhá příprava smluv. První projekt, jehoţ ţadatelem je Region Podluţí, se jmenuje „Zvony Podluţí – zpravodaj o dění v příh...

Více

text práce - Katedra geoinformatiky

text práce - Katedra geoinformatiky - souhlasím, aby jeden výtisk diplomové práce byl uložen v Knihovně UP k prezenčnímu nahlédnutí, - souhlasím, že údaje o mé diplomové práci budou zveřejněny ve Studijním informačním systému UP, - v...

Více

MX-2610N/MX-3110N MX-3610N

MX-2610N/MX-3110N MX-3610N také fax, pokud jej potřebujete, nebo zvýšit zásobu papíru až na 5 600 listů. Vytvoříte si tak vlastní konfiguraci multifunkčního systému, který bude schopen zvládnout i nejnáročnější požadavky vaš...

Více

- 42 - mate né podloží, kterým jsou pískovce, prachovce a slínovce

- 42 - mate né podloží, kterým jsou pískovce, prachovce a slínovce T etím objektem na toku v intravilánu obce je most v í ním kilometru 14,179. Sv tlá výška tohoto mostu je 2,3 m. Ší ka mostovky je 12,74 m. Výška mostovky je 0,83 m. Pravá stana pr to né plochy mo...

Více

CW_pomocník_ Automa_6_ 2011

CW_pomocník_ Automa_6_ 2011 Výkonná grafika a virtuální realita Control Web byl rovněž prvním produktem, který do oboru průmyslové automatizace přinesl schopnost zobrazovat virtuální realitu prostřednictvím třírozměrného (3D)...

Více