Zpracování distančních dat a nové přístupy v konstrukci povrchů
Transkript
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ě
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...
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...
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...
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...
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š...
- 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...
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)...