Pokyny pro vypracování
V kvalitních digitálních výškových modelech (DEM) s horizontálním rozlišením pod 10 m lze jasně identifikovat liniové struktury ochranných hrází, železnic a silnic v říčních nivách, které významně ovlivňují rozsah záplav. Tyto struktury jsou podstatné pro modelování povodňových rizik, proto je vhodné tyto struktury identifikovat a vektorizovat. Pro zpřesnění je možné využít satelitní obrazové snímky (např. mise Sentinel-2), zejména v případech, kdy je šířka stavby užší než rozlišení digitálního modelu terénu.
- Prozkoumejte dodané digitální výškové modely a satelitní snímky.
- Navrhněte metodu zarovnání dat.
- Prozkoumejte metody strojového učení vhodné pro zpracování dat (např. konvoluční neuronové sítě).
- Navrhněte metodu rozpoznávání a odhadu polohy liniových staveb v lokálně degradovaném výškovém modelu.
- Navrhněte a implementujte nástroj, který vytvoří reálnou, ale co nejspojitější vektorovou reprezentaci vedení korun hrází nebo náspů ve vhodném GIS formátu.
Zadání diplomové práce
Název: Identifikace ochranných hrází a náspů liniových staveb
Student: Bc. Jan Kostecký
Vedoucí: Ing. Petr Pulc
Studijní program: Informatika
Obor / specializace: Znalostní inženýrství
Katedra: Katedra aplikované matematiky Platnost zadání: do konce letního semestru 2020/2021
Diplomov´ a pr´ ace
Identifikace ochrann´ ych hr´ az´ı a n´ asp˚ u liniov´ ych staveb
Bc. Jan Kosteck´ y
Katedra aplikovan´a matematiky Vedouc´ı pr´ace: Ing. Petr Pulc
6. kvˇetna 2021
Podˇ ekov´ an´ı
Dˇekuji vedouc´ımu pr´ace Ing. Petru Pulcovi za pomoc.
Prohl´ aˇ sen´ı
Prohlaˇsuji, ˇze jsem pˇredloˇzenou pr´aci vypracoval samostatnˇe a ˇze jsem uvedl veˇsker´e pouˇzit´e informaˇcn´ı zdroje v souladu s Metodick´ym pokynem o dodrˇzo- v´an´ı etick´ych princip˚u pˇri pˇr´ıpravˇe vysokoˇskolsk´ych z´avˇereˇcn´ych prac´ı.
Beru na vˇedom´ı, ˇze se na moji pr´aci vztahuj´ı pr´ava a povinnosti vypl´yvaj´ıc´ı ze z´akona ˇc. 121/2000 Sb., autorsk´eho z´akona, ve znˇen´ı pozdˇejˇs´ıch pˇredpis˚u.
V souladu s ust. § 2373 odst. 2 z´akona ˇc. 89/2012 Sb., obˇcansk´y z´akon´ık, ve znˇen´ı pozdˇejˇs´ıch pˇredpis˚u, t´ımto udˇeluji nev´yhradn´ı opr´avnˇen´ı (licenci) k uˇzit´ı t´eto moj´ı pr´ace, a to vˇcetnˇe vˇsech poˇc´ıtaˇcov´ych program˚u, jeˇz jsou jej´ı souˇc´ast´ı ˇci pˇr´ılohou a veˇsker´e jejich dokumentace (d´ale souhrnnˇe jen ”D´ılo“), a to vˇsem osob´am, kter´e si pˇrej´ı D´ılo uˇz´ıt. Tyto osoby jsou opr´avnˇeny D´ılo uˇz´ıt jak´ymkoli zp˚usobem, kter´y nesniˇzuje hodnotu D´ıla a za jak´ymkoli ´uˇcelem (vˇcetnˇe uˇzit´ı k v´ydˇeleˇcn´ym ´uˇcel˚um). Toto opr´avnˇen´ı je ˇcasovˇe, teritori´alnˇe i mnoˇzstevnˇe neomezen´e. Kaˇzd´a osoba, kter´a vyuˇzije v´yˇse uvedenou licenci, se vˇsak zava- zuje udˇelit ke kaˇzd´emu d´ılu, kter´e vznikne (byt’ jen zˇc´asti) na z´akladˇe D´ıla,
´upravou D´ıla, spojen´ım D´ıla s jin´ym d´ılem, zaˇrazen´ım D´ıla do d´ıla souborn´eho ˇci zpracov´an´ım D´ıla (vˇcetnˇe pˇrekladu) licenci alespoˇn ve v´yˇse uveden´em roz- sahu a z´aroveˇn zpˇr´ıstupnit zdrojov´y k´od takov´eho d´ıla alespoˇn srovnateln´ym zp˚usobem a ve srovnateln´em rozsahu, jako je zpˇr´ıstupnˇen zdrojov´y k´od D´ıla.
V Praze dne 6. kvˇetna 2021 . . .. . .. . .. . .. . .. . .. . .
ˇCesk´e vysok´e uˇcen´ı technick´e v Praze Fakulta informaˇcn´ıch technologi´ı
© 2021 Jan Kosteck´y. Vˇsechna pr´ava vyhrazena.
Tato pr´ace vznikla jako ˇskoln´ı d´ılo na ˇCesk´em vysok´em uˇcen´ı technick´em v Praze, Fakultˇe informaˇcn´ıch technologi´ı. Pr´ace je chr´anˇena pr´avn´ımi pˇredpisy a mezin´arodn´ımi ´umluvami o pr´avu autorsk´em a pr´avech souvisej´ıc´ıch s pr´avem autorsk´ym. K jej´ımu uˇzit´ı, s v´yjimkou bez´uplatn´ych z´akonn´ych licenc´ı a nad r´amec opr´avnˇen´ı uveden´ych v Prohl´aˇsen´ı na pˇredchoz´ı stranˇe, je nezbytn´y sou- hlas autora.
Odkaz na tuto pr´aci
Kosteck´y, Jan. Identifikace ochrann´ych hr´az´ı a n´asp˚u liniov´ych staveb. Di- plomov´a pr´ace. Praha: ˇCesk´e vysok´e uˇcen´ı technick´e v Praze, Fakulta in- formaˇcn´ıch technologi´ı, 2021.
Abstrakt
Ochrann´e hr´aze a n´aspy liniov´ych staveb v´yraznˇe ovlivˇnuj´ı rozsah z´aplav.
Tato pr´ace navrhuje postup, jak tyto struktury identifikovat z dat d´alkov´eho pr˚uzkumu Zemˇe a vektorizovat je do GIS form´atu. Vstupem pro identifikaci jsou pˇredevˇs´ım digit´aln´ı v´yˇskov´e modely; pro dalˇs´ı zpˇresnˇen´ı je pak otestov´ano pouˇzit´ı satelitn´ıch sn´ımk˚u mise Sentinel-2. K rozpozn´an´ı ochrann´ych hr´az´ı a liniov´ych staveb jsou vyuˇzity konvoluˇcn´ı neuronov´e s´ıtˇe.
Kl´ıˇcov´a slova Konvoluˇcn´ıneuronov´a s´ıt’, U-net, Sentinel-2, Digit´aln´ıv´yˇskov´y model
Abstract
Levees and embankments have a significant effect on the magnitude of flood- ing. This work deals with the identification of such structures and theirs conversion to vector GIS format. The inputs for the proposed algorithm are primarily digital terrain models; for further improvements, Sentinel-2 satellite images are used. For the detection of levees and embankments, an approach based on convolutional neural networks is proposed.
Keywords Convolutional neural net, U-net, Sentinel-2, Digital terrain model
Obsah
Uvod´ 1
1 Z´akladn´ı pojmy 3
1.1 Digit´aln´ı v´yˇskov´e modely . . . 3
1.2 Souˇradnicov´e syst´emy . . . 4
1.3 Sentinel . . . 5
1.4 Form´aty ukl´ad´an´ı dat . . . 6
1.4.1 Rastrov´e form´aty . . . 6
1.4.1.1 TIFF, GeoTIFF . . . 6
1.4.1.2 JPEG 2000 . . . 7
1.4.2 Vektorov´e form´aty . . . 7
1.4.2.1 GeoJSON . . . 7
1.4.2.2 Esri Shapefile . . . 8
1.5 Ochrann´e hr´aze a n´aspy liniov´ych staveb . . . 9
2 Algoritmy 11 2.1 Strojov´e uˇcen´ı . . . 11
2.1.1 Pˇr´ıstupy k uˇcen´ı . . . 11
2.1.2 Rozdˇelen´ı uˇcen´ı podle c´ıle . . . 11
2.1.2.1 Regrese . . . 11
2.1.2.2 Klasifikace . . . 12
2.1.2.3 Shlukov´an´ı . . . 12
2.2 Algoritmy poˇc´ıtaˇcov´eho vidˇen´ı . . . 12
2.2.1 S´emantick´a segmentace . . . 12
2.3 Umˇel´e neuronov´e s´ıtˇe . . . 13
2.3.1 Perceptron . . . 13
2.3.2 V´ıcevrstv´a neuronov´a s´ıt’ . . . 14
2.3.2.1 Aktivaˇcn´ı funkce pro skryt´e vrstvy . . . 14
2.3.2.2 Aktivaˇcn´ı funkce pro v´ystupn´ı vrstvy . . . 15
2.4 Hlubok´e uˇcen´ı . . . 16
2.5 Konvoluˇcn´ı neuronov´e s´ıtˇe . . . 16
2.5.1 Konvoluˇcn´ı vrstva . . . 17
2.5.2 Pooling vrstva . . . 17
2.6 Architektury konvoluˇcn´ıch s´ıt´ı vhodn´ych pro s´emantickou seg- mentaci . . . 17
2.6.1 U-Net . . . 18
2.6.2 LinkNet . . . 18
2.6.3 PSPnet . . . 19
2.7 Vyhodnocen´ı ´uspˇeˇsnosti model˚u . . . 19
2.7.1 Matice z´amˇen . . . 21
2.7.2 Intersection over Union . . . 22
2.8 ´Uˇcelov´a funkce . . . 22
2.9 Morfologick´e operace . . . 22
2.9.1 Dilatace . . . 22
2.9.2 Eroze . . . 23
2.9.3 Skeletonizace . . . 23
3 Anal´yza probl´emu a n´avrh ˇreˇsen´ı 25 3.1 Vstupn´ı data . . . 25
3.1.1 Digit´aln´ı v´yˇskov´e modely . . . 25
3.1.2 Satelitn´ı sn´ımky . . . 26
3.1.3 Ochrann´e hr´aze a n´aspy liniov´ych staveb . . . 26
3.2 Moˇzn´a ˇreˇsen´ı . . . 26
3.2.1 Morfometrick´e charakteristiky . . . 28
3.2.2 S´emantick´a segmentace . . . 28
3.3 Zvolen´e ˇreˇsen´ı . . . 28
4 Implementace 31 4.1 Pouˇzit´e knihovny . . . 31
4.2 Pˇredzpracov´an´ı vstupn´ıch dat . . . 32
4.2.1 Rasterizace vektor˚u ochrann´ych hr´az´ı . . . 32
4.2.2 Slouˇcen´ı satelitn´ıch sn´ımk˚u . . . 32
4.2.3 Pˇrevod na stejn´y SRS . . . 33
4.2.4 Prozkoum´an´ı pˇredzpracovan´ych vstupn´ıch dat . . . 33
4.3 Pˇrehled datov´ych sad . . . 34
4.3.1 Augmentace dat . . . 35
4.4 Tr´enov´an´ı CNN pro s´emantickou segmentaci . . . 35
4.4.1 Parametry model˚u typu CNN . . . 35
4.4.2 Model zaloˇzen´y na digit´aln´ım v´yˇskov´em modelu . . . . 36
4.4.3 Model zaloˇzen´y na digit´aln´ım v´yˇskov´em modelu a sate- litn´ıch sn´ımc´ıch . . . 36
4.5 N´avrh vlastn´ı CNN typu U-net . . . 38
4.5.1 Model zaloˇzen´y na DEM . . . 38 x
4.5.1.1 Zhodnocen´ı a interpretace v´ysledk˚u . . . 38
4.5.2 Model zaloˇzen´y na DEM a satelitn´ıch sn´ımc´ıch . . . 39
4.5.2.1 Zhodnocen´ı a interpretace v´ysledk˚u . . . 41
4.6 Predikce . . . 42
4.7 Post-processing . . . 43
4.7.1 Eroze . . . 43
4.7.2 Dilatace . . . 44
4.7.3 ´Uprava dle DEM . . . 44
4.7.4 Skeletonizace . . . 45
4.8 Transformace do vektorov´eho form´atu . . . 46
4.9 Zhodnocen´ı v´ysledk˚u . . . 46
4.10 N´avrhy na moˇzn´e budouc´ı vylepˇsen´ı . . . 47
Z´avˇer 51
Literatura 53
A Seznam pouˇzit´ych zkratek 57
B Obsah pˇriloˇzen´eho CD 59
Seznam obr´ azk˚ u
1.1 DEM vs. DSM [1] . . . 4
2.1 Pˇr´ıklad s´emantick´e segmentace [2] . . . 13
2.2 jednovrstv´y perceptron [3] . . . 14
2.3 Logistick´a funkce . . . 16
2.4 V´ıcevrstv´a neuronov´a s´ıt’ [3] . . . 16
2.5 Konvoluˇcn´ı neuronov´a s´ıt’ [4]. . . 17
2.6 Sch´ema plnˇe konvoluˇcn´ı neuronov´e s´ıtˇe [5]. . . 18
2.7 Pˇr´ıklad U-net architektury pˇrevzat´y z [6]. . . 19
2.8 Architektura LinkNet [7]. . . 20
2.9 Architektura PSPnet [8]. . . 20
2.10 Vlevo p˚uvodn´ı stav, vpravo stav po aplikaci dilatace. [9] . . . 23
2.11 Vlevo p˚uvodn´ı stav, vpravo stav po aplikaci eroze. [9] . . . 23
2.12 Vlevo p˚uvodn´ı stav, vpravo stav po skeletonizaci. [?] . . . 24
3.1 Vizualizace dat z digit´aln´ıho v´yˇskov´eho modelu . . . 26
3.2 RGB satelitn´ı sn´ımek . . . 27
3.3 Pˇr´ıklad vektor˚u hr´az´ı a n´asp˚u liniov´ych staveb . . . 27
4.1 Vlevo vektory ochrann´ych hr´az´ı, vpravo po rasterizaci. Jako pozad´ı je pouˇzit digit´aln´ı v´yˇskov´y model. . . 32
4.2 Pˇr´ıklad pravdˇepodobnˇe nespr´avnˇe anotovan´ych dat . . . 34
4.3 Pr˚ubˇeh tr´enov´an´ı modelu zaloˇzen´em na DEM. Tr´enov´ano na da- techaustria 01,austria 02a otestov´ano na austria 03. . . 39
4.4 ´Uspˇeˇsn´a predikce modelu zaloˇzen´em na DEM. Vlevo anotovan´e hr´aze, uprostˇred predikce, vpravo DEM. . . 40
4.5 Ne´uspˇeˇsn´a predikce modelu zaloˇzen´em na DEM. Vlevo anotovan´e hr´aze, uprostˇred predikce, vpravo DEM. . . 40
4.6 Pr˚ubˇeh tr´enov´an´ımodelu zaloˇzen´em na DEM a satelitn´ıch sn´ımc´ıch. Tr´enov´ano na datech austria 01, austria 02 a otestov´ano na austria 03. . . 41
4.7 Uk´azka predikc´ı, kde jsou satelitn´ıch sn´ımky pˇr´ınosn´e. Zleva – ano- tovan´a data, predikce vyuˇz´ıvaj´ıc´ısatelitn´ısn´ımky, predikce vyuˇz´ıvaj´ıc´ı pouze DEM, satelitn´ı sn´ımek, DEM. . . 42 4.8 Vlevo po uk´azka predikce, kde kaˇzd´y pixel nese hodnotu pravdˇepodobnosti,
ˇze se na jeho poloze nach´az´ı hr´az. Vpravo uk´azka predikce po bi- narizaci. . . 43 4.9 Vlevo stav pˇred aplikac´ı eroze, vpravo po. . . 44 4.10 Vlevo stav pˇred aplikac´ı dilatace, vpravo po. . . 44 4.11 Vlevo probl´em, kter´y m˚uˇze nastat pokud je koryto ˇreky ´uzk´e a
hr´aze jsou na obou stran´ach ˇreky. Vpravo opraven´ıodeˇcten´ım bod˚u, kter´e jsou niˇzˇs´ı, neˇz jejich okol´ı. . . 45 4.12 Vlevo stav pˇred skeletonizac´ı, vpravo stav po skletonizaci. . . 45
xiv
Seznam tabulek
2.1 Matice z´amˇen . . . 21 4.1 Model s pouˇzit´ım DEM jako vstupu, natr´enov´an na datechaustria 01,
austria 02a otestov´an naaustria 03. . . 37 4.2 Model s pouˇzit´ım DEM jako vstupu, natr´enov´an na datechpoland
a otestov´an naczech. . . 37 4.3 Model s pouˇzit´ım DEM a satelitn´ıch sn´ımk˚u Sentinel-2, natr´enov´an
na datechaustria 01,austria 02a otestov´an na austria 03. . . 37 4.4 Model s pouˇzit´ım DEM a satelitn´ıch sn´ımk˚u Sentinel-2, natr´enov´an
na datechpolanda otestov´an naczech . . . 37 4.5 ´Uspˇeˇsnost modelu zaloˇzen´em na DEM, natr´enovan´em a otesto-
van´em na r˚uzn´ych datech. . . 39 4.6 ´Uspˇeˇsnost modelu zaloˇzen´em na DEM a satelitn´ıch sn´ımc´ıch, natr´enovan´em
a otestovan´em na r˚uzn´ych datech. . . 42
Uvod ´
Ochrann´e hr´aze a n´aspy liniov´ych staveb (jako jsou silnice a ˇzeleznice) v´yraznˇe ovlivˇnuj´ı rozsah z´aplav, pˇredevˇs´ım pak v ˇr´ıˇcn´ıch niv´ach. Pro zpˇresnˇen´ı modelu rizik a rozsahu pˇr´ıpadn´ych povodn´ı je velmi uˇziteˇcn´e m´ıt jako jeden ze vstup˚u povodˇnov´eho modelu takov´eto struktury ve vektorov´em form´atu. V digit´aln´ıch v´yˇskov´ych modelech (DEM) s vysok´ym horizont´aln´ım rozliˇsen´ım je moˇzn´e liniov´e stavby pˇr´ımo rozpoznat. Ne vˇzdy je ovˇsem dostateˇcnˇe vysok´e rozliˇsen´ı digit´aln´ıho v´yˇskov´eho modelu dostupn´e. V tom pˇr´ıpadˇe je moˇzn´e vyuˇz´ıt pro zpˇresnˇen´ı obrazov´e satelitn´ı sn´ımky poˇr´ızen´e satelity z mise Sentinel-2. Ty mohou pomoci pˇredevˇs´ım v tˇech pˇr´ıpadech, kdy jsou ochrann´e hr´aze ˇci n´aspy liniov´ych staveb v´yraznˇe uˇzˇs´ı, neˇz rozliˇsen´ı DEM.
C´ılem t´eto pr´ace je prozkoumat metody identifikace vyv´yˇsen´ych liniov´ych staveb v digit´aln´ım v´yˇskov´em modelu. A n´aslednˇe ovˇeˇrit, zda je pˇr´ınosn´e jako dalˇs´ı vstup pro zpˇresnˇen´ı pouˇz´ıt obrazov´e satelitn´ı sn´ımky. Z takto identifiko- van´ych staveb pak vytvoˇrit co nejspojitˇejˇs´ı, ale z´aroveˇn co nejv´ıce re´alnou, vektorovou reprezentaci a n´aslednˇe pˇrev´est do vhodn´eho vektorov´eho GIS form´atu.
V prvn´ıkapitole je poskytnut pˇrehled z´akladn´ıch pojm˚u, kter´ym je potˇreba porozumˇet pro pochopen´ı problematiky. V druh´e kapitole jsou definov´any a rozebr´any pouˇz´ıvan´e metody a algoritmy. Tˇret´ı kapitola se zab´yv´a anal´yzou ˇreˇsen´eho probl´emu, pˇrehledem moˇzn´ych metod ˇreˇsen´ıa volbou vhodn´eho ˇreˇsen´ı pro tuto pr´aci. ˇCtvrt´a kapitola obsahuje popis procesu pˇredzpracov´an´ıdat, im- plementaˇcn´ı detaily a informace o tr´enov´an´ı model˚u. D´ale je ve ˇctvrt´e kapitole ˇreˇsena ´uprava a vektorizace v´ystupu modelu a vyhodnocen´ı ´uspˇeˇsnosti celkov´e
´uspˇeˇsnosti.
Kapitola 1
Z´ akladn´ı pojmy
1.1 Digit´ aln´ı v´ yˇ skov´ e modely
Digit´aln´ı v´yˇskov´e modely (digital elevation model, DEM) slouˇz´ı k popisu v´yˇskov´e struktury povrchu zkouman´eho objektu, zpravidla (a tak´e v t´eto pr´aci) jde o povrch Zemˇe.
V´yˇskov´y model m˚uˇze b´yt reprezentov´an napˇr´ıklad rastrovou mˇr´ıˇzkou s informac´ı o sv´e poloze (zemˇepisn´e ˇs´ıˇrce a d´elce hranic mˇr´ıˇzky), kde kaˇzd´y bod t´eto pravideln´e ˇctvercov´e mˇr´ıˇzky m´a pˇriˇrazenou informaci o nadmoˇrsk´e v´yˇsce.
Jinou moˇznost´ı, jak reprezentovat v´yˇskov´y model, je vektorov´a metoda zvan´a TIN (triangulated irregular network). V t´e je povrch objektu repre- zentov´an nepravidelnou s´ıt´ı troj´uheln´ık˚u, kde m´a zemˇepisnou ˇs´ıˇrku, d´elku a elevaci definovan´y kaˇzd´y uzel s´ıtˇe. Tento typ v´yˇskov´eho modelu ovˇsem nen´ı v t´eto pr´aci pouˇz´ıv´an a nebude d´ale diskutov´an.
Pˇri popisu digit´aln´ıch v´yˇskov´ych model˚u se bˇeˇznˇe uˇz´ıvaj´ı tˇri zkratky:
DEM Digital elevation model – Digit´aln´ı v´yˇskov´y model DTM Digital terrain model – Digit´aln´ı model ter´enu DSM Digital surface model – Digit´aln´ı model povrchu
Napˇr´ıˇc literaturou nejsou tyto pojmy striktnˇe a jasnˇe definov´any, nˇekdy je DEM (digital elevation model) pouˇz´ıv´an jako obecn´y v´yraz pro digit´aln´ı v´yˇskov´y model, jindy je zase pouˇz´ıv´an jako synonymum k DTM (digital terrain model).
DTM obvykle popisuje nadmoˇrskou v´yˇsku ter´enu bez ˇclovˇekem umˇele vy- tvoˇren´ych staveb, ale i bez dalˇs´ıch pˇr´ırodn´ıch objekt˚u jako jsou napˇr´ıklad stromy. Nˇekdy je ovˇsem DTM obohacen vektorov´ymi informacemi o poloze ˇrek, pˇr´ıkop˚u ˇci hˇreben˚u.
DSM (digital surface model) pak typicky popisuje v´yˇsku povrchu vˇcetnˇe staveb a vˇsech dalˇs´ıch objekt˚u, kter´e odr´aˇz´ı svˇetlo.
Rozd´ıl mezi DTM a DSM ilustruje obr´azek 1.1
1. Z´akladn´ı pojmy
Obr´azek 1.1: DEM vs. DSM [1]
1.2 Souˇ radnicov´ e syst´ emy
Souˇradnicov´y syst´em (SRS – spatial reference system, nebo tak´e CRS – coor- dinate reference system) definuje, jak se budou geografick´a data matematicky transformovat tak, aby byla s co nejmenˇs´ım zkreslen´ım zobraziteln´a na ploch´e mapˇe.
Kaˇzd´y souˇradnicov´y syst´em je urˇcen nˇekolika parametry:
• referenˇcn´ı tˇeleso – Slouˇz´ı jako aproximace popisu tvaru zemˇe, pˇr´ıpadnˇe prostoru na kter´y chceme polohovˇe odkazovat. Typicky jde o elipsoid, kouli ˇci rovinu.
• poloha nult´eho poledn´ıku – U glob´aln´ıch souˇradnicov´ych syst´em˚u je vˇetˇsinou pouˇzit mezin´arodn´ı nult´y Greenwichsk´y poledn´ık.
• typ zobrazen´ı referenˇcn´ı plochy na plochu rovinnou
• definice poˇc´atku, jednotky m´ıry a orientace syst´emu souˇradnic
Kter´y souˇradnicov´y syst´em pouˇz´ıt z´avis´ı na tom, na jakou plochu na zemi chceme polohovˇe odkazovat. Napˇr´ıklad souˇradnicov´y syst´em S-JTSK (syst´em jednotn´e trigonometrick´e s´ıtˇe katastr´aln´ı), kter´y vych´az´ı z Kˇrov´akova zobra- zen´ı, m´a definovan´e zobrazen´ı pouze pro body v ˇCesk´e a Slovensk´e republice 4
1.3. Sentinel a okol´ı, ale zato je pro definovan´y prostor v´yraznˇe pˇresnˇejˇs´ı, neˇz syst´emy glob´aln´ı.
Vˇsechny bˇeˇznˇe pouˇz´ıvan´e souˇradnicov´e syst´emy jsou jednoznaˇcnˇe identi- fikovan´e pomoc´ı SRID (spatial reference identifier). Napˇr´ıklad souˇradnicov´y syst´em S-JTSK s Greenwichsk´ym nult´ym poledn´ıkem m´a autoritou EPSG (European Petroleum Survey Group) pˇridˇelen´y k´od 5514. D´ıky tomu je moˇzn´e v GIS datech pˇresnˇe specifikovat jak´y souˇradnicov´y syst´em pouˇz´ıvaj´ı.
1.3 Sentinel
Sentinel je skupina mis´ı ESA (evropsk´e kosmick´e agentury), kter´e slouˇz´ı pro
´uˇcely programu Copernicus.
Program Copernicus obsahuje komplexn´ı syst´emy zajiˇst’uj´ıc´ı monitorov´an´ı zemˇe. Tyto syst´emy obstar´avaj´ı sbˇer dat jak ze satelit˚u, jako v pˇr´ıpadˇe mise Sentinel, tak z pozemn´ıch stanic, letadel a dalˇs´ıch zdroj˚u.
Mise Sentinel je rozdˇelena do nˇekolika ˇc´ast´ı a kaˇzd´a z nich sb´ır´a r˚uzn´a data:
• Sentinel-1 – Dvˇe druˇzice, kter´e monitoruj´ı jak pevninu, tak moˇre, oce´any a stavy moˇrsk´ych led˚u.
• Sentinel-2 – Prov´ad´ı multispektr´aln´ı sn´ımkov´an´ı krajiny, slouˇz´ı pˇrev´aˇznˇe k monitorov´an´ı zmˇen ploch a zmˇen jejich vyuˇzit´ı.
• Sentinel-3 – Mise m´a za ´ukol mˇeˇrit topografii povrchu moˇre, teplotu a barvu moˇre i zemˇe.
• Sentinel-4 – Nen´ı samostatn´a druˇzice, ale jde o modul um´ıstˇen´y na me- teorologick´e druˇzici MTG. Monitoruje stav atmosf´ery a plyn˚u, kter´e jsou urˇcuj´ıc´ı pro kvalitu ovzduˇs´ı.
• Sentinel-5 – Monitoruje atmosf´eru, zjiˇst’uje jej´ıchemick´e sloˇzen´ı, prov´adˇen´ı mˇeˇren´ı souvisej´ıc´ı s vrstvou oz´onu a UV z´aˇren´ım.
Pro tuto pr´aci je zaj´ımav´a pˇredevˇs´ım mise Sentinel-2, kter´a poskytuje sn´ımky zemˇe ve 13 spektr´aln´ıch p´asmech s prostorov´ym rozliˇsen´ım 10–60 m na pixel.
V nejjemnˇejˇs´ım rozliˇsen´ı 10 m na pixel jsou k dispozici pˇredevˇs´ım 3 p´asma viditeln´eho spektra, a to ˇcerven´e (se stˇredn´ı vlnovou d´elkou 665 nm), zelen´e (560 nm) a modr´e (490 nm). Pˇri vhodn´em sloˇzen´ı informac´ı z tˇechto p´asem a atmosf´erick´e korekci vznik´a takzvan´y barevnˇe vˇern´y sn´ımek (true color com- posite), kter´y barevnˇe odpov´ıd´a pozorov´an´ı lidsk´ym okem z ´urovnˇe ter´enu.
1. Z´akladn´ı pojmy
1.4 Form´ aty ukl´ ad´ an´ı dat
V oboru GIS existuje mnoˇzstv´ı zp˚usob˚u jak ukl´adat geografick´a data. Jak´y form´at zvolit obvykle z´aleˇz´ı na tom, jak bude s daty d´ale nakl´ad´ano a v jak´ych softwarov´ych n´astroj´ıch s nimi budeme pracovat.
Form´aty m˚uˇzeme v z´akladu rozdˇelit na rastrov´e a vektorov´e. Rastrov´e form´aty maj´ı fixn´ı mˇr´ıˇzku jednotliv´ych pixel˚u, u vektorov´ych form´at˚u jsou data uloˇzena jako popisy kˇrivek.
1.4.1 Rastrov´e form´aty 1.4.1.1 TIFF, GeoTIFF
Form´at TIFF (Taged Image File Format) je jedn´ım z nejpouˇz´ıvanˇejˇs´ıch form´at˚u rastrov´e grafiky v r˚uzn´ych oborech, a to pˇredevˇs´ım kv˚uli sv´e flexibilitˇe.
Tento form´at umoˇzˇnuje ukl´adat jak s kompres´ı, tak bez komprese. Oproti jin´ym bˇeˇzn´ym rastrov´ym form´at˚um umoˇzˇnuje uloˇzit v´ıce samostatn´ych obra- zov´ych vrstev v jednom souboru.
Nev´yhodou grafiky ve form´atu TIFF je typicky vˇetˇs´ı velikost soubor˚u a omezen´a maxim´aln´ı velikost souboru na 4 GB.
GeoTIFF je rozˇs´ıˇren´ı form´atu TIFF o geografick´a metadata. Pˇr´ıklad takov´ych metadat poskytuje uk´azka 1.1. D˚uleˇzit´a je napˇr´ıklad informace o pouˇzit´em souˇradnicov´em syst´emu (ˇr´adky 5–17), velikost jednoho pixelu ve skuteˇcnosti v metrech (ˇr´adek 19) a souˇradnice vˇsech roh˚u obr´azku v pouˇzit´em souˇradnicov´em syst´emu (ˇr´adky 25–28).
Uk´azka 1.1: Metadata GeoTIFF.
1 D r i v e r : G T i f f / G e o T I F F 2 F i l e s : M o r a v a _ 1 0 m . tif
3 M o r a v a _ 1 0 m . tif . aux . xml
4 S i z e is 2501 , 7 4 2 6 5 C o o r d i n a t e S y s t e m is :
6 L O C A L _ C S [" S - J T S K _ K r o v a k _ E a s t _ N o r t h " , 7 G E O G C S [" S - J T S K " ,
8 D A T U M [" S y s t e m _ J e d n o t n e _ T r i g o n o m e t r i c k e _ S i t e _ K a t a s t r a l n i " , 9 S P H E R O I D [" B e s s e l 1 8 4 1 " , 6 3 7 7 3 9 7 . 1 5 5 , 2 9 9 . 1 5 2 8 1 2 8 0 0 0 0 3 3 , 10 A U T H O R I T Y [" E P S G " , "7 00 4" ]] ,
11 A U T H O R I T Y [" E P S G " , "6 15 6" ]] , 12 P R I M E M [" G r e e n w i c h " ,0] ,
13 U N I T [" d e g r e e " , 0 . 0 1 7 4 5 3 2 9 2 5 1 9 9 4 3 3 ] , 14 A U T H O R I T Y [" E P S G " , "4 15 6" ]] ,
15 A U T H O R I T Y [" E P S G " ,"5514"] , 16 U N I T [" m e t r e " ,1 ,
17 A U T H O R I T Y [" E P S G " , " 9 0 0 1 " ] ] ]
18 O r i g i n = ( - 5 5 4 1 9 7 . 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 , - 1 1 2 2 0 9 2 . 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) 19 P i x e l S i z e = ( 1 0 . 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 , - 1 0 . 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) 20 M e t a d a t a :
21 A R E A _ O R _ P O I N T = A r e a 22 I m a g e S t r u c t u r e M e t a d a t a :
6
1.4. Form´aty ukl´ad´an´ı dat
23 I N T E R L E A V E = B A N D 24 C o r n e r C o o r d i n a t e s :
25 U p p e r L e f t ( - 5 5 4 1 9 7 . 5 0 0 , - 1 1 2 2 0 9 2 . 5 0 0 ) 26 L o w e r L e f t ( - 5 5 4 1 9 7 . 5 0 0 , - 1 1 9 6 3 5 2 . 5 0 0 ) 27 U p p e r R i g h t ( - 5 2 9 1 8 7 . 5 0 0 , - 1 1 2 2 0 9 2 . 5 0 0 ) 28 L o w e r R i g h t ( - 5 2 9 1 8 7 . 5 0 0 , - 1 1 9 6 3 5 2 . 5 0 0 ) 29 C e n t e r ( - 5 4 1 6 9 2 . 5 0 0 , - 1 1 5 9 2 2 2 . 5 0 0 )
30 B a n d 1 B l o c k = 1 2 8 x 1 2 8 T y p e = Float32 , C o l o r I n t e r p = G r a y 31 Min = 1 6 0 . 3 6 5 Max = 3 5 5 . 6 0 5
32 M i n i m u m = 1 6 0 . 3 6 5 , M a x i m u m = 3 5 5 . 6 0 5 , M e a n = 2 0 4 . 0 7 3 , S t d D e v = 2 5 . 9 8 9 33 N o D a t a V a l u e = - 3 . 4 0 2 8 2 3 4 6 6 3 8 5 2 8 8 6 e +38
34 M e t a d a t a :
35 S T A T I S T I C S _ M A X I M U M = 3 5 5 . 6 0 4 9 8 0 4 6 8 7 5 36 S T A T I S T I C S _ M E A N = 2 0 4 . 0 7 2 6 2 0 6 2 3 9 7 37 S T A T I S T I C S _ M I N I M U M = 1 6 0 . 3 6 5 0 0 5 4 9 3 1 6 38 S T A T I S T I C S _ S K I P F A C T O R X =1
39 S T A T I S T I C S _ S K I P F A C T O R Y =1
40 S T A T I S T I C S _ S T D D E V = 2 5 . 9 8 9 0 2 0 0 5 2 0 2 2
1.4.1.2 JPEG 2000
JPEG 2000 je n´asledn´ıkem zn´am´eho a rozˇs´ıˇren´eho form´atu JPEG. Jsou u nˇej pouˇz´ıv´any techniky komprese zaloˇzen´e na vlnkov´e kompresi [10], coˇz umoˇzˇnuje oproti p˚uvodn´ımu JPEG lepˇs´ı zachov´an´ı kvality grafiky i pˇri stejn´e velikosti souboru. Form´at umoˇzˇnuje ale i bezztr´atovou kompresi. Dle [10] byly pˇri tvorbˇe tohoto standardu ukl´ad´an´ı dat zohlednˇeny tak´e poˇzadavky GIS ko- munity, d´ıky ˇcemuˇz je moˇzn´e vyuˇz´ıt rychl´y pˇr´ıstup k prostorov´ym um´ıstˇen´ım, vˇetˇs´ı bitovou hloubku ˇci rozdˇelen´ı obrazu na nˇekolik dlaˇzdic s kter´ymi je pak moˇzno pracovat nez´avisle.
1.4.2 Vektorov´e form´aty 1.4.2.1 GeoJSON
GeoJSON je prost´y textov´y form´at pouˇz´ıvaj´ıc´ı syntaxi form´atu JSON (Ja- vaScript Object Notation). Nad r´amec tohoto form´atu, kter´y obsahuje pouze definice z´apisu bˇeˇzn´ych datov´ych typ˚u a kolekc´ı, pak GeoJSON definuje nˇekolik typ˚u objekt˚u (napˇr. Position, Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon), kter´e jsou bl´ıˇze specifikov´any v [11].
Pro tuto pr´aci je d˚uleˇzit´y pˇredevˇs´ım typ objektu LineString (lomen´a ˇc´ara), jelikoˇz n´ami prov´adˇen´a vektorizace poskytuje pr´avˇe ˇc´arov´e segmenty. Objekt se pak definuje pomoc´ı seznamu souˇradnic bod˚u, kter´e tuto lomenou ˇc´aru tvoˇr´ı. Pˇr´ıklad takov´eho z´apisu je uveden´y v uk´azce 1.2.
Uk´azka 1.2: Uk´azka objektu typu LineString s definic´ı souˇradnic bod˚u.
1 {
2 " g e o m e t r y ": {
3 " t y p e ": " L i n e S t r i n g " ,
4 " c o o r d i n a t e s ": [[0 ,10] ,[1 ,11] , [2 ,11]]
1. Z´akladn´ı pojmy
5 } ,
6 " p r o p e r t i e s ": { 7 " n a m e ": " Hr ´a z "
8 }
9 }
1.4.2.2 Esri Shapefile
Otevˇren´y form´at pro ukl´ad´an´ı vektorov´ych GIS dat Shapefile byl vyvinut spoleˇcnost´ı Esri a je podporov´an vˇetˇsinou komerˇcn´ıch i opensource n´astroj˚u.
I proto je velmi popul´arn´ı volbou.
Form´at je uloˇzen jako sada soubor˚u se stejn´ym n´azvem ale r˚uzn´ymi pˇr´ıponami.
Povinn´e jsou tˇri soubory:
• .shp– hlavn´ı soubor, kter´y obsahuje z´aznam o kaˇzd´em objektu, uloˇzen´y jako seznam bod˚u, kter´y tento objekt definuj´ı
• .shx – index z´aznam˚u v hlavn´ım .shp souboru, obsahuje 100 bajtovou hlaviˇcku a pot´e 8-bajtov´e z´aznamy o um´ıstˇen´ı kaˇzd´eho objektu v .shp souboru
• .dbf – dodateˇcn´e atributy ve form´atu dBase [12] pro objekty v .shp souboru
Kromˇe tˇechto tˇr´ı povinn´ych soubor˚u je moˇzn´e pouˇz´ıt i nˇekolik dalˇs´ıch, voliteln´ych:
• .prj – informace o souˇradnicov´em syst´emu a geodetick´emu datu [13], pˇr´ıklad v uk´azce 1.3
• .cpg– specifikace k´odov´an´ı znak˚u v souboru.dbf
• .shp.xml– metadata ve form´atu XML
Uk´azka 1.3: Informace k souˇradn´emu syst´emu v Esri Shapefile.
1 P R O J C S [" S - J T S K _ K r o v a k _ E a s t _ N o r t h " , 2 G E O G C S [" G C S _ S _ J T S K " ,
3 D A T U M [" D _ S _ J T S K " , S P H E R O I D
4 [" B e s s e l _ 1 8 4 1 " , 6 3 7 7 3 9 7 . 1 5 5 , 2 9 9 . 1 5 2 8 1 2 8 ]
5 ] ,
6 P R I M E M [" G r e e n w i c h " ,0.0] ,
7 U N I T [" D e g r e e " , 0 . 0 1 7 4 5 3 2 9 2 5 1 9 9 4 3 3 ]
8 ] ,
9 P R O J E C T I O N [" K r o v a k "] ,
10 P A R A M E T E R [" F a l s e _ E a s t i n g " ,0.0] , 11 P A R A M E T E R [" F a l s e _ N o r t h i n g " ,0.0] ,
12 P A R A M E T E R [" P s e u d o _ S t a n d a r d _ P a r a l l e l _ 1 " ,78.5] , 13 P A R A M E T E R [" S c a l e _ F a c t o r " ,0.9999] ,
14 P A R A M E T E R [" A z i m u t h " , 3 0 . 2 8 8 1 3 9 7 5 2 7 7 7 7 8 ] ,
8
1.5. Ochrann´e hr´aze a n´aspy liniov´ych staveb
15 P A R A M E T E R [" L o n g i t u d e _ O f _ C e n t e r " , 2 4 . 8 3 3 3 3 3 3 3 3 3 3 3 3 3 ] , 16 P A R A M E T E R [" L a t i t u d e _ O f _ C e n t e r " ,49.5] ,
17 P A R A M E T E R [" X _ S c a l e " , -1.0] , 18 P A R A M E T E R [" Y _ S c a l e " ,1.0] ,
19 P A R A M E T E R [" X Y _ P l a n e _ R o t a t i o n " ,90.0] , 20 U N I T [" M e t e r " ,1.0]
21 ]
1.5 Ochrann´ e hr´ aze a n´ aspy liniov´ ych staveb
Obecnˇe je liniov´a stavba definovan´a jako stavba, kde podstatnˇe pˇrevaˇzuje d´elka nad v´yˇskou a ˇs´ıˇrkou. V kontextu t´eto pr´ace jsou pak zaj´ımav´e pˇredevˇs´ım takov´e liniov´e stavby, kter´e jsou oproti okol´ı vyv´yˇsen´e, a v pˇr´ıpadˇe povodn´ı tvoˇr´ı pˇrek´aˇzku pro rozl´ev´an´ı vody do okol´ı.
Kapitola 2
Algoritmy
2.1 Strojov´ e uˇ cen´ı
Strojov´e uˇcen´ı je podoblast´ı umˇel´e inteligence (AI), kter´a se zab´yv´a schopnost´ı poˇc´ıtaˇce ˇreˇsit ´ulohy samostatnˇe bez explicitn´ıho naprogramov´an´ı.
2.1.1 Pˇr´ıstupy k uˇcen´ı
Algoritmy strojov´eho uˇcen´ı m˚uˇzeme rozdˇelit na tˇri z´akladn´ı podoblasti podle toho, jak´ym zp˚usobem je k uˇcen´ı pˇristupov´ano.
• Uˇcen´ı bez uˇcitele (Unsupervised learning) – jsou k dispozici pouze vstupn´ı data, nen´ı zn´am spr´avn´y v´ystup. Nelze tedy obecnˇe a snadno urˇcit jak´a je ´uspˇeˇsnost uˇcen´ı.
• Uˇcen´ı s uˇcitelem(Supervised learning) – ke vstupn´ım dat˚um je zn´am i spr´avn´y v´ystup. Je tedy moˇzn´e vyhodnotit jak bylo uˇcen´ı ´uspˇeˇsn´e a podle toho d´ale upravovat parametry nauˇcen´eho modelu.
• Zpˇetnovazebn´ı uˇcen´ı(Reinforcement learning) – v t´eto technice stro- jov´eho uˇcen´ı se uˇc´ı agent, kter´emu je umoˇznˇeno interagovat s okoln´ım prostˇred´ım a uˇcit se na z´akladˇe sv´ych chyb a zkuˇsenost´ı. Zat´ım co u uˇcen´ı s uˇcitelem by agent dostal seznam spr´avn´ych v´ystup˚u ke vstup˚um, u zpˇetnovazebn´ıho uˇcen´ı dost´av´a bud’ pozitivn´ı nebo negativn´ı ohodno- cen´ı sv´ych akc´ı, na jehoˇz z´akladˇe prov´ad´ı kroky dalˇs´ı.
2.1.2 Rozdˇelen´ı uˇcen´ı podle c´ıle 2.1.2.1 Regrese
C´ılem regrese je odhadnout funkci, kter´a ke kaˇzd´emu vstupu pˇriˇrad´ı jednu v´ystupn´ı ˇc´ıselnou hodnotu, v obecn´em pˇr´ıpadˇe typicky re´aln´e ˇc´ıslo.
2. Algoritmy
2.1.2.2 Klasifikace
Klasifikace spoˇc´ıv´a v pˇriˇrazen´ı kaˇzd´eho vstupu k nˇejak´e tˇr´ıdˇe. V pˇr´ıpadˇe bin´arn´ı klasifikace jde o tˇr´ıdy dvˇe. Pokud je tˇr´ıd v´ıce mluv´ıme pak o kla- sifikaci multinomi´aln´ı.
2.1.2.3 Shlukov´an´ı
Shlukovac´ı algoritmy jsou jedn´ım z typick´ych z´astupc˚u algoritm˚u uˇcen´ı bez uˇcitele. Shlukov´an´ı rozdˇeluje vstupn´ı data do nˇekolika podmnoˇzin tak, aby si data v jedn´e podmnoˇzinˇe byla podle definovan´e podobnostn´ıfunkce dostateˇcnˇe podobn´a a z´aroveˇn byla od dat v ostatn´ıch podmnoˇzin´ach dostateˇcnˇe rozd´ıln´a.
Tato podobnost je pak definov´ana nˇejakou metrikou nebo m´ırou podobnosti.
V´ıce o problematice shlukov´an´ı popisuji ve sv´e bakal´aˇrsk´e pr´aci [14].
2.2 Algoritmy poˇ c´ıtaˇ cov´ eho vidˇ en´ı
Poˇc´ıtaˇcov´e vidˇen´ı je jedn´ım z nov´ych a rychle se vyv´ıjej´ıc´ıch obor˚u s velk´ym praktick´ym vyuˇzit´ım v mnoha oblastech. C´ılem je, aby byl poˇc´ıtaˇc schopn´y porozumˇet tomu, co obrazov´a data reprezentuj´ı, a z´ıskat z nich uˇziteˇcn´e in- formace. Pouˇzit´ı je opravdu ˇsirok´e: mnoho lid´ı kaˇzd´y den odemyk´a sv˚uj mo- biln´ı telefon pomoc´ı funkce rozpozn´av´an´ı obliˇceje, coˇz je jen d˚umysln´a apli- kace metod poˇc´ıtaˇcov´eho vidˇen´ı a bin´arn´ı klasifikace. D˚uleˇzit´a je napˇr´ıklad i aplikace v medic´ınˇe, kdy jsou pomoc´ı poˇc´ıtaˇcov´eho vidˇen´ı analyzov´ana nebo zv´yrazˇnov´ana obrazov´a data z radiologick´ych vyˇsetˇren´ı a je tak uˇsetˇren ˇcas l´ekaˇr˚u.
2.2.1 S´emantick´a segmentace
V oboru poˇc´ıtaˇcov´eho vidˇen´ı je nˇekolik ´urovn´ı, na kter´ych mohou poˇc´ıtaˇce analyzovat obrazov´a data. V pˇr´ıpadˇe s´emantick´e segmentace jde o ´uroveˇn jednotliv´ych pixel˚u, kdy kaˇzd´y pixel obr´azku je klasifikov´an zvl´aˇst’. Pˇr´ıklad vstupu a v´ystupu takov´e segmentace je moˇzn´e vidˇet na obr´azku 2.1.
S´emantick´a segmentace je metodou vyuˇz´ıvanou napˇr´ıklad k rozdˇelen´ı ob- razov´eho satelitn´ıho sn´ımku povrchu Zemˇe do nˇekolika kategori´ı na z´akladˇe vyuˇzit´ı dan´e plochy [15]. Jednou z kategori´ı mohou b´yt komunikace (silnice, ˇzeleznice), coˇz jsou tak´e liniov´e stavby, ovˇsem v t´eto pr´aci je dalˇs´ı poˇzadavek, aby takov´eto stavby byly oproti okol´ı vyv´yˇsen´e.
K samotn´e realizace s´emantick´e segmentace je ˇcasto vyuˇz´ıv´ano pˇredevˇs´ım neuronov´ych a konvoluˇcn´ıch neuronov´ych s´ıt´ı, kter´e jsou pops´any d´ale.
12
2.3. Umˇel´e neuronov´e s´ıtˇe
Obr´azek 2.1: Pˇr´ıklad s´emantick´e segmentace [2]
2.3 Umˇ el´ e neuronov´ e s´ıtˇ e
Umˇel´e neuronov´e s´ıtˇe (ANN – Artificial Neural Networks) jsou statistick´ym modelem, kter´y je inspirov´an biologick´ymi neurony a jejich propojen´ım. Z´akladn´ı stavebn´ı jednotka neuronov´e s´ıtˇe je neuron[3], kter´y na vstupu pˇrij´ım´a vektor re´aln´ych ˇc´ısel a na v´ystupu vrac´ı jedno re´aln´e ˇc´ıslo.
2.3.1 Perceptron
Nejjednoduˇsˇs´ım modelem umˇel´e neuronov´e s´ıtˇe je perceptron pˇredstaven´y F.
Rosenblattem jiˇz roku 1957. Perceptron je moˇzn´e pouˇz´ıt napˇr´ıklad k bin´arn´ı klasifikaci dat, ´uspˇeˇsnˇe ale um´ı klasifikovat pouze mnoˇziny, kter´e jsou line´arnˇe separovateln´e. Tedy pˇri projekci dat do vhodn´e dvojdimenzion´aln´ı roviny je schopen perceptron vyb´ırat pouze z rozhodovac´ıch hranic tvoˇren´ych pˇr´ımkou.
Sch´ema perceptronu je zn´azornˇeno na obr´azku 2.2. Perceptron m´a na vstupu vektor re´aln´ych ˇc´ısel (x1, x2, ..., xn), uˇcen´ı perceptronu pak prob´ıh´a pomoc´ı ladˇen´ı vektoru vah (w1, w2, ..., wn) a prahuw0. Vnitˇrn´ı potenci´al per- ceptronu oznaˇcen´yξ spoˇcteme vztahem 2.1.
ξ=w0+
n
X
i=1
wixi (2.1)
V´ystupem perceptronu je pak hodnota funkce f(ξ). T´eto funkci se ˇr´ık´a ak- tivaˇcn´ı funkce a v pˇr´ıpadˇe perceptronu je to funkce skokov´a jej´ıˇz pˇredpis je urˇcen vztahem 2.2.
f(ξ) =
(1 kdyˇzξ ≥0
0 kdyˇzξ <0 (2.2)
2. Algoritmy
Obr´azek 2.2: jednovrstv´y perceptron [3]
2.3.2 V´ıcevrstv´a neuronov´a s´ıt’
V´ıcevrstv´a neuronov´a s´ıt’, bˇeˇznˇe oznaˇcov´ana jako MLP (multilayer perceptron), vznik´a propojen´ım nˇekolika vrstev neuron˚u (nebo perceptron˚u). Propojen´ı vznik´a tak, ˇze v´ystup neuronu z jedn´e vrstvy slouˇz´ı jako vstup do jednoho nebo v´ıce neuron˚u ve vrstvˇe jin´e (nebo i stejn´e v pˇr´ıpadˇe rekurentn´ıch s´ıt´ı).
Prvn´ı vrstvu oznaˇcujeme jako vstupn´ı, jej´ı jedinou ´ulohou je pˇredat vstupn´ı data do dalˇs´ıch vrstev s´ıtˇe kter´e oznaˇcujeme jako skryt´e. Posledn´ı vrstvu s´ıtˇe z pohledu toku dat oznaˇcujeme jako v´ystupn´ı. Pokud neurony v r´amci jedn´e vrstvy mezi sebou nemaj´ı ˇz´adn´e propojen´ı a jsou naopak propojeny se vˇsemi neurony z vrstvy n´asleduj´ıc´ı, mluv´ıme o plnˇe propojen´e dopˇredn´e neuronov´e s´ıti. Pˇr´ıklad takov´e topologie ukazuje sch´ema 2.4.
Oproti jednoduch´emu modelu perceptronu je v´ıcevrstv´a neuronov´a s´ıt’
schopna klasifikovat mnoˇziny i pomoc´ı sloˇzitˇejˇs´ıch rozhodovac´ıch hranic, neˇz je pouze pˇr´ımka.
Jedn´ım z nejˇcastˇeji pouˇz´ıvan´ych algoritm˚u k uˇcen´ı takto zkonstruovan´e neuronov´e s´ıtˇe je algoritmus zpˇetn´e propagace (back-propagation) [3], kter´y vyˇzaduje, aby byla neuronov´a s´ıt’ jako funkce jejich parametr˚u, tedy vah, di- ferencovateln´a. Toho doc´ıl´ıme vhodnou volbou aktivaˇcn´ıch funkc´ı.
2.3.2.1 Aktivaˇcn´ı funkce pro skryt´e vrstvy
U neuron˚u ve skryt´ych vrstv´ach se v souˇcasn´e dobˇe nejˇcastˇeji pouˇz´ıv´a funkce RELU (Rectified Linear Unit) a jej´ı dalˇs´ı varianty (ELU, LeakyReLU).
14
2.3. Umˇel´e neuronov´e s´ıtˇe
• RELU
f(ξ) =
(ξ kdyˇzξ≥0
0 kdyˇzξ <0 (2.3)
• ELU
f(ξ) =
(ξ kdyˇzξ ≥0
α(eξ−1) kdyˇzξ <0 (2.4)
• LeakyReLU
f(ξ) =
(ξ kdyˇzξ≥0
αξ kdyˇzξ <0 (2.5)
• Hyperbolick´y tangens
f(ξ) = eξ−e−ξ
eξ+e−ξ (2.6)
2.3.2.2 Aktivaˇcn´ı funkce pro v´ystupn´ı vrstvy
C´ılem v´ystupn´ı vrstvy je transformace hodnot z pˇredchoz´ıch vrstev na hod- notu, kter´a odpov´ıd´a poˇzadovan´emu v´ystupu. Konkr´etn´ı podobu aktivaˇcn´ı funkce vol´ıme podle toho, zda ˇreˇs´ıme ´ulohu regrese, bin´arn´ı klasifikace ˇci mul- tinomi´aln´ı klasifikace.
• Bin´arn´ı klasifikace – v´ystupn´ı vrstva obsahuje jeden neuron, jako aktivaˇcn´ı funkce je typicky volena logistick´a funkce (sigmoid) 2.7, viz obr´azek 2.3. Obor hodnot takov´eto funkce je < 0,1 > a jej´ı hodnotu m˚uˇzeme interpretovat jako pravdˇepodobnost pˇr´ısluˇsnosti k tˇr´ıdˇe 1.
f(ξ) = 1
1 +e−ξ (2.7)
• Multinomi´aln´ı klasifikace – je-li c´ılem klasifikace do c tˇr´ıd, je na v´ystupn´ı vrstvˇe c neuron˚u s aktivaˇcn´ı funkc´ı softmax 2.8. Hodnota ak- tivaˇcn´ı funkce i-t´eho neuronu je pak povaˇzov´ana za pravdˇepodobnost pˇr´ısluˇsnosti ki-t´e tˇr´ıdˇe. V´yslednou predikc´ıje pak tˇr´ıda jej´ıˇz odpov´ıdaj´ıc´ı neuron m´a nejvyˇsˇs´ı hodnotu aktivaˇcn´ı funkce.
f(ξ)i = eξi
eξ1+· · ·+eξc (2.8)
• Regrese – na v´ystupu s´ıtˇe je jeden neuron bez aktivaˇcn´ı funkce (ne- boli s line´arn´ı aktivaˇcn´ı funkc´ıf(ξ) =ξ), a tedy vrac´ı vnitˇrn´ı potenci´al neuronu.
2. Algoritmy
Obr´azek 2.3: Logistick´a funkce
Obr´azek 2.4: V´ıcevrstv´a neuronov´a s´ıt’ [3]
2.4 Hlubok´ e uˇ cen´ı
Hlubok´e uˇcen´ı je pojmenov´an´ı pro podmnoˇzinu metod strojov´eho uˇcen´ı. Nee- xistuje ovˇsem pˇresn´y konsenzus o jak´e metody jde, nˇekdy se o hlubok´em uˇcen´ı mluv´ı jako o neuronov´ych s´ıt´ıch s vˇetˇs´ım poˇctem skryt´ych vrstev, typicky mi- nim´alnˇe tˇri aˇz pˇet, pot´e jde o tzv. hlubokou neuronovou s´ıt’ (DNN – deep neural network).
Jindy je jako hlubok´e uˇcen´ıoznaˇcov´ano ˇsirˇs´ıspektrum metod, kter´e pracuj´ı s velk´ym poˇctem parametr˚u a velk´ymi objemy dat.
2.5 Konvoluˇ cn´ı neuronov´ e s´ıtˇ e
Konvoluˇcn´ı neuronov´e s´ıtˇe (CNN, ConvNet – convolutional neural network) jsou jedn´ım ze speci´aln´ıch pˇr´ıpad˚u hlubok´ych neuronov´ych s´ıt´ı. Jsou pouˇz´ıv´any 16
2.6. Architektury konvoluˇcn´ıch s´ıt´ı vhodn´ych pro s´emantickou segmentaci
Obr´azek 2.5: Konvoluˇcn´ı neuronov´a s´ıt’ [4].
pˇredevˇs´ım pˇri anal´yze a zpracov´an´ı obrazov´ych dat v rastrov´em form´atu, pˇr´ıpadnˇe i jin´ych dat, kter´a je moˇzn´e do rastrov´e mˇr´ıˇzky uspoˇr´adat.
Z´akladem konvoluˇcn´ıch neuronov´ych s´ıt´ı jsou konvoluˇcn´ı vrstvy [4]. Kromˇe nich pak mezi konvoluˇcn´ımi vrstvami CNN obvykle obsahuje pooling vrstvy a pˇred v´ystupn´ı vrstvou i nˇekolik plnˇe propojen´ych vrstev. Z´akladn´ı struktura CNN je na obr´azku 2.5.
2.5.1 Konvoluˇcn´ı vrstva
Konvoluˇcn´ı vrstva spoˇc´ıv´a v konvoluˇcn´ı transformaci vˇsech prvk˚u ze vstupu spoleˇcnˇe s jejich logick´ym okol´ım pomoc´ı konvoluˇcn´ıch jader. Velikost kon- voluˇcn´ıho j´adra a jejich poˇcet jsou hyperparametry CNN, samotn´e v´ahy v konvoluˇcn´ım j´adru jsou tr´enovateln´ym parametrem neuronov´e s´ıtˇe. V´ystupy konvoluˇcn´ı vrstvy jsou oznaˇcov´any jako pˇr´ıznakov´e mapy a maj´ı za c´ıl ve vstupn´ıch datech zv´yraznit d˚uleˇzit´e pˇr´ıznaky.
2.5.2 Pooling vrstva
Pooling vrstva n´asleduje typicky po vrstvˇe konvoluˇcn´ı a slouˇz´ı ke sn´ıˇzen´ı poˇctu pˇr´ıznak˚u tak, ˇze redukuje dimenzi pˇr´ıznakov´ych map. Pouˇz´ıvaj´ı se pˇrev´aˇznˇe dvˇe varianty: Max Pooling a Average Pooling. Princip vrstvy je takov´y, ˇze oknem vhodn´e velikosti jsou postupnˇe pˇrekr´yv´any pˇr´ıznakov´e mapy a z oblasti tohoto okna je vybr´ana bud’ maxim´aln´ı hodnota v pˇr´ıpadˇe Max Poolingu, nebo je do v´ystupn´ıho rastru vloˇzena pr˚umˇern´a hodnota. Pooling vrstvy tak neobsahuj´ı ˇz´adn´e tr´enovateln´e parametry, pouze hyperparametry.
2.6 Architektury konvoluˇ cn´ıch s´ıt´ı vhodn´ ych pro s´ emantickou segmentaci
Pro s´emantickou segmentaci je dle [5] jedn´ım z nejvhodnˇejˇs´ıch pˇr´ıstup˚u pouˇzit´ı plnˇe konvoluˇcn´ıch neuronov´ych s´ıt´ı (FCN – fully convolutional networks). Plnˇe konvoluˇcn´ıneuronov´e s´ıtˇe obsahuj´ıoproti standardn´ım CNN nav´ıc upsampling vrstvy [5], kter´e prov´ad´ı operaci opaˇcnou neˇz pooling vrstvy, tedy zvˇetˇsuj´ı
2. Algoritmy
Obr´azek 2.6: Sch´ema plnˇe konvoluˇcn´ı neuronov´e s´ıtˇe [5].
rozliˇsen´ı pˇr´ıznakov´ych map. T´ımto postupem je tak moˇzn´e z´ıskat v´ystup poˇzadovan´e velikosti, viz obr´azek 2.6.
D´ale je pˇredstaveno nˇekolik nejz´akladnˇejˇs´ıch topologi´ı konvoluˇcn´ı neuro- nov´ych s´ıt´ı, kter´e se v praxi uk´azaly jako vhodn´e pro ´ulohu s´emantick´e seg- mentace.
2.6.1 U-Net
U-net, pˇredstavena autory Olaf Ronneberger, Philipp Fischer a Thomas Brox v roce 2015 [6], je plnˇe konvoluˇcn´ı neuronov´a s´ıt’, kter´a byla p˚uvodnˇe na- vrhnuta za ´uˇcelem segmentace biomedic´ınsk´ych sn´ımk˚u. V p˚uvodn´ım ˇcl´anku mˇeli autoˇri k dispozici tr´enovac´ı mnoˇzinu o velikosti pouze 35 obr´azk˚u, pˇresto rozˇs´ıˇren´ım vstupn´ımnoˇziny pomoc´ıaugmentace dat dos´ahli vysok´e ´uspˇeˇsnosti.
Pˇr´ıklad architektury U-net s´ıtˇe z [6] je zn´azornˇen na 2.7.
2.6.2 LinkNet
Topologie LinkNet [7] funguje na podobn´em principu jako U-Net, skl´ad´a se takt´eˇz z kod´eru a dekod´eru. C´ılem autor˚u t´eto architektury bylo zkonstruo- vat plnˇe konvoluˇcn´ı neuronovou s´ıt’ pro s´emantickou segmentaci, kter´a bude nejen dosahovat dobr´e pˇresnosti, ale tak´e bude m´ıt niˇzˇs´ı poˇcet parametr˚u a t´ım p´adem bude rychlejˇs´ı a efektivnˇejˇs´ı jak jej´ı uˇcen´ı, tak hlavnˇe predikce.
V´ysledky pr˚uchodu obrazov´ych dat touto s´ıt´ıje pot´e moˇzn´e z´ıskat velmi rychle a to i na mobiln´ıch zaˇr´ızen´ıch a je moˇzn´e ji pak pouˇz´ıvat pro aplikace, kde je v´ysledek poˇzadov´an v re´aln´em ˇcase.
18
2.7. Vyhodnocen´ı ´uspˇeˇsnosti model˚u
Obr´azek 2.7: Pˇr´ıklad U-net architektury pˇrevzat´y z [6].
2.6.3 PSPnet
PSPNet – pyramid scene parsing network, je dalˇs´ı z konvoluˇcn´ıch neuronov´ych s´ıt´ı urˇcen´ych k s´emantick´e segmentaci. Autoˇri t´eto architektury si vˇs´ımaj´ı, ˇze spr´avn´a segmentace nevyˇzaduje pouze znalost podoby, respektive pˇr´ıznak˚u jednotliv´ych objekt˚u, ale tak´e je d˚uleˇzit´e v jak´em kontextu se tyto objekty nach´azej´ı. Uv´adˇej´ı nˇekolik pˇr´ıklad˚u, k jak´ym typ˚um chyb m˚uˇze pˇri zanedb´an´ı kontextu´aln´ı informace v´est [8].
Pro vyˇreˇsen´ı tˇechto nedostatk˚u pˇrich´azej´ı s Pyramid Pooling Module se schematickou podobou na obr´azku 2.9. Jako prvn´ı se v architektuˇre nach´az´ı k´odovac´ıˇc´ast, kter´a slouˇz´ız´ısk´an´ız´akladn´ıpˇr´ıznakov´e mapy o menˇs´ım rozmˇeru.
V [8] autoˇri jako kod´er pouˇz´ıvaj´ı ResNet [16] a vstupn´ı obraz zmenˇs´ı na os- minu ˇs´ıˇrky a v´yˇsky. Takto z´ıskan´a pˇr´ıznakov´a mapa je pak vstupem do Pyra- mid Pooling Module, kde jsou na ni aplikov´any konvoluce r˚uzn´ych velikost´ı a zachycuj´ı tak r˚uznˇe ˇsirok´y kontext.
2.7 Vyhodnocen´ı ´ uspˇ eˇ snosti model˚ u
Aby bylo moˇzn´e vyhodnotit jak ´uspˇeˇsn´y je model, je potˇreba definovat met- riku pomoc´ıkter´e lze takovou ´uspˇeˇsnost mˇeˇrit — ˇc´ım vyˇsˇs´ıje hodnota metriky, t´ım je model ´uspˇeˇsnˇejˇs´ı. Mezi bˇeˇznˇe pouˇz´ıvan´e metriky patˇr´ı napˇr. euklidovsk´a vzd´alenost, manhattansk´a vzd´alenost, kos´ınov´a podobnost ˇci korelaˇcn´ı koefi-
2. Algoritmy
Obr´azek 2.8: Architektura LinkNet [7].
Obr´azek 2.9: Architektura PSPnet [8].
20
2.7. Vyhodnocen´ı ´uspˇeˇsnosti model˚u Tabulka 2.1: Matice z´amˇen
Pˇredpovˇed’
Skute ˇcnost
ANO NE
ANO TP FN
NE FP TN
cient. Volba t´e spr´avn´e metriky z´avis´ı na tom jak´y maj´ı modelovan´a data charakter a je velmi d˚uleˇzit´a pro spr´avn´e vyhodnocen´ı.
2.7.1 Matice z´amˇen
Uvaˇzujme bin´arn´ı klasifik´ator, kter´y urˇcuje, zda vstup patˇr´ı do nˇejak´e tˇr´ıdy nebo ne, v´ystup je tady ANO/NE. Nast´avaj´ı pak ˇctyˇri pˇr´ıpady, jak klasifi- kace mohla dopadnout. Tyto moˇznosti jsou zn´azornˇeny v matici z´amˇen 2.7.1.
V pˇr´ıpadˇe, ˇze klasifikace probˇehla spr´avnˇe, je v´ysledek bud’ TP (True posi- tive) – klasifik´ator predikoval ANO a skuteˇcnost byla stejn´a, nebo je v´ysledek TN (True negative) – predikce byla NE a skuteˇcnost takt´eˇz. Pokud byla pre- dikce klasifik´atoru nespr´avn´a, pak nast´av´a moˇznost FN (False negative) – klasifik´ator predikoval NE, ale skuteˇcnost byla ANO, nebo pˇr´ıpad FP (False positive), kdy je nespr´avnˇe predikov´ano ANO.
Kombinac´ı tˇechto ˇctyˇr moˇznost´ı je moˇzn´e stanovit metriky kvalit klasi- fik´atoru, tak aby hodnotily ty kvality, kter´e jsou od klasifik´atoru pro danou
´ulohu poˇzadov´any. Jako pˇr´ıklad je moˇzn´e uv´est situaci z l´ekaˇrstv´ı, kdy m˚uˇze b´yt poˇzadov´ano, aby nˇejak´y test s bin´arn´ım v´ystupem, kter´y odhaluje z´avaˇzn´e onemocnˇen´ı dˇelal co nejm´enˇe chyb typu false negative (faleˇsnˇe negativn´ı) a na- opak nemus´ı vadit, kdyˇz udˇel´a nˇekolik chyb false positive (faleˇsnˇe pozitivn´ı).
Nˇekolik bˇeˇznˇe pouˇz´ıvan´ych metrik pro bin´arn´ı klasifikaci, kter´e je ale moˇzno rozˇs´ıˇrit i pro klasifikaci do v´ıce tˇr´ıd, je pˇredstaveno d´ale.
• Pˇresnost (accuracy)
accuracy= T P +T N
T P +T N+F P +F N (2.9)
• Senzitivita (sensitivity, recall)
sentsitivity= T P
T P +F N (2.10)
• Specificita (specificity)
specif icity = T N
T N+F P (2.11)
2. Algoritmy
2.7.2 Intersection over Union
Intersection over Union (IoU) je n´azev pro metriku hojnˇe vyuˇz´ıvanou pro hodnocen´ı ´uspˇeˇsnosti s´emantick´e segmentace nebo obecnˇe jak´ekoliv detekce nejen v obrazov´ych datech. Nˇekde je uv´adˇen tak´e pod jm´enem Jaccard˚uv index ˇci koeficient.
IoU(vzor, predikce) = |vzor∩predikce|
|vzor∪predikce| (2.12)
IoU = T P
T P +F P +F N (2.13)
Hlavn´ı v´yhodou t´eto metriky je, ˇze pˇri posuzov´an´ı ´uspˇeˇsnosti vynech´av´a skuteˇcnˇe negativn´ı datov´e vzory, kter´e v pˇr´ıpadˇe segmentace obrazu nebo detekce stejnˇe z principu nehled´ame.
2.8 Uˇ ´ celov´ a funkce
Souˇc´ast´ımatematick´e optimalizace, a tedy i tr´enov´an´ımodelu, mus´ıb´yt funkce, pomoc´ıkter´e odhadujeme aktu´aln´ıchybu modelu. Takov´e funkci se ˇr´ık´a ´uˇcelov´a funkce (loss function). Ve strojov´em uˇcen´ı je pˇri procesu uˇcen´ı minimalizov´ana hodnota ´uˇcelov´e funkce mˇeˇren´e na tr´enovac´ı (a pˇr´ıpadnˇe validaˇcn´ı) mnoˇzinˇe.
Pro posouzen´ı kvality natr´enovan´eho modelu se pak poˇc´ıt´a hodnota ´uˇcelov´e funkce na nez´avisl´e testovac´ı mnoˇzinˇe. Stejnˇe jako u metriky i volba ´uˇcelov´e funkce je z´avisl´a na charakteru vstupn´ıch a v´ystupn´ıch dat a jej´ı volba je z´asadn´ı pro vytvoˇren´ı funkˇcn´ıho modelu.
2.9 Morfologick´ e operace
Matematick´a morfologie je pomˇernˇe sloˇzit´a teorie s velk´ym praktick´ym vyuˇzit´ım nejen v oblasti poˇc´ıtaˇcov´eho vidˇen´ı. V kontextu t´eto pr´ace je potˇreba pouze nˇekolik z´akladn´ıch morfologick´ych operac´ıa pro ´uˇcely pouˇzit´ıpro ˇreˇsen´y probl´em nepotˇrebujeme jejich form´aln´ı definice, ale vystaˇc´ıme si pouze s pˇredstaven´ım praktick´eho fungov´an´ı.
2.9.1 Dilatace
Jednou ze z´akladn´ıch operac´ı matematick´e morfologie je dilatace. Spoˇc´ıv´a v konvoluci s oknem zvolen´e velikosti, kde je na v´ystup pˇriˇrazena maxim´aln´ı hodnota z uvaˇzovan´eho okna. V´ysledek takov´eto operace demonstruje obr´azek 2.10. B´ıl´e regiony se rozrostly, operace je tedy vhodn´a napˇr´ıklad na vyplnˇen´ı nechtˇen´ych mezer segmentovan´ych oblast´ı.
22
2.9. Morfologick´e operace
Obr´azek 2.10: Vlevo p˚uvodn´ı stav, vpravo stav po aplikaci dilatace. [9]
Obr´azek 2.11: Vlevo p˚uvodn´ı stav, vpravo stav po aplikaci eroze. [9]
2.9.2 Eroze
Operace eroze je opakem dilatace, lze ji pouˇz´ıt v pˇr´ıpadˇe, kdyˇz se v obr´azku chceme zbavit detail˚u a nebo ˇsumu. Pˇr´ıklad aplikov´an´ıt´eto operace je zobrazen na obr´azku 2.11
2.9.3 Skeletonizace
C´ılem skeletonizace je nal´ezt topologickou kostru objektu, coˇz spoˇc´ıv´a v trans- formaci p˚uvodn´ıho objektu na kˇrivky jednotkov´e ˇs´ıˇrky, tak aby p˚uvodn´ı objekt co nejl´epe reprezentovaly. Uk´azku takov´eto transformace lze vidˇet na obr´azku 2.12. Skeletonizace m˚uˇze b´yt uˇziteˇcn´a pro pˇredzpracov´an´ı dat pˇri pˇrevodu z rastrov´eho do vektorov´eho form´atu.
2. Algoritmy
Obr´azek 2.12: Vlevo p˚uvodn´ı stav, vpravo stav po skeletonizaci. [?]
24
Kapitola 3
Anal´ yza probl´ emu a n´ avrh ˇ reˇ sen´ı
Probl´em ˇreˇsen´y v t´eto pr´aci spoˇc´ıv´a v identifikaci geografick´e polohy vyv´yˇsen´ych liniov´ych staveb, jako jsou ochrann´e hr´aze, silnice, ˇzeleznice a dalˇs´ı, a to pˇrev´aˇznˇe v ˇr´ıˇcn´ıch niv´ach. Znalost polohy takov´ychto struktur m˚uˇze pomoci pˇri modelov´an´ı povodˇnov´ych rizik. Pro praktick´e pouˇzit´ı je potˇreba identifi- kovan´e liniov´e stavby pˇrev´est do vhodn´eho vektorov´eho GIS form´atu.
3.1 Vstupn´ı data
Prim´arn´ım podkladem pro identifikaci jsou digit´aln´ı v´yˇskov´e modely (DEM).
Jako dalˇs´ı data ke zpˇresnˇen´ı identifikace, tam kde informace z DEM nejsou dostateˇcn´e, je moˇzn´e vyuˇz´ıt satelitn´ı obrazov´e sn´ımky. Pro ´uˇcely strojov´eho uˇcen´ı je k dispozici tak´e vektorov´y popis omezen´eho poˇctu liniov´ych staveb tak, jak jsou poˇzadov´any jako potencion´aln´ı v´ystup.
Data dodan´a zadavatelem poch´az´ı z nˇekolik geografick´ych oblast´ı, jde o okol´ı polsk´e ˇreky Wisla, ˇcesk´e ˇreky Moravy a tˇr´ı oblast´ı v Rakousku – okol´ı ˇreky Inn v oblasti mˇesta Innsbruck, okol´ı ˇreky Salzach v oblasti Salzburgu a okol´ı ˇreky Dunaj v oblasti mˇesta Linz.
3.1.1 Digit´aln´ı v´yˇskov´e modely
Digit´aln´ı v´yˇskov´e modely byly poskytnuty zadavatelem pr´ace, jelikoˇz ne pro vˇsechny oblasti jsou tato data volnˇe dostupn´a v dostateˇcn´e kvalitˇe. Hori- zont´aln´ı rozliˇsen´ı poskytnut´ych v´yˇskov´ych model˚u je 10 m a jsou v r˚uzn´ych syst´emech souˇradnic podle toho, kter´e ´uzem´ı v´yˇskovˇe popisuj´ı. Form´at do- dan´ych soubor˚u je GeoTIFF, coˇz je pro tento typ dat standardn´ı.
Vizualizace digit´aln´ıho v´yˇskov´eho modelu je moˇzn´a uˇzit´ım libovoln´ych ba- revn´ych ˇsk´al, na obr´azku 3.1 je pˇr´ıklad takov´eto vizualizace pomoc´ı stupˇn˚u ˇsedi.
3. Anal´yza probl´emu a n´avrh ˇreˇsen´ı
Obr´azek 3.1: Vizualizace dat z digit´aln´ıho v´yˇskov´eho modelu
3.1.2 Satelitn´ı sn´ımky
Satelitn´ı sn´ımky z mise Sentinel-2 poskytovan´e evropskou kosmickou agentu- rou jsou dostupn´e z Copernicus Open Access Hub. Pouˇzity byly sn´ımky typu Level-2A v nejvyˇsˇs´ım dostupn´em rozliˇsen´ı, kter´e ˇcin´ı 10 m. V tomto rozliˇsen´ı je dostupn´ych nˇekolik spektr´aln´ıch p´asem. Po ruˇcn´ım prozkoum´an´ı sn´ımk˚u a dat se uk´azalo, ˇze potencion´alnˇe pˇr´ınosn´a jsou pouze p´asma viditeln´eho spektra (ˇcerven´e, zelen´e, modr´e), kter´a tvoˇr´ı TCI (true color image).
Sn´ımky jsou organizov´any v dlaˇzdic´ıch, kter´e pokr´yvaj´ı ´uzem´ı r˚uzn´ych rozloh a je u nich pouˇzit souˇradnicov´y syst´em UTM WSG84. K uloˇzen´ı tˇechto sn´ımk˚u je pouˇzit form´at JPEG 2000, viz sekce 1.4.1.2. Uk´azkou ˇc´asti takov´eho sn´ımku je obr´azek 3.2.
3.1.3 Ochrann´e hr´aze a n´aspy liniov´ych staveb
Geografick´a poloha ochrann´ych hr´az´ı a n´asp˚u liniov´ych staveb je reprezen- tov´ana jako vektory v GIS form´atu Esri Shapefile v r˚uzn´ych syst´emech souˇradnic.
Tyto vektory byly takt´eˇz dod´any zadavatelem a pˇredstavuj´ı v´ystup, kter´y chceme aby n´astroj navrhovan´y v t´eto pr´aci generoval.
Pˇr´ıklad ˇc´asti takov´ych vektor˚u, kter´e polohovˇe odpov´ıdaj´ı uk´azce sate- litn´ıho sn´ımku na obr´azku 3.2 i uk´azce digit´aln´ıho v´yˇskov´eho modelu na obr´azku 3.1, lze vidˇet na obr´azku 3.3.
3.2 Moˇ zn´ a ˇ reˇ sen´ı
V t´eto ˇc´asti bude rozebr´ano nˇekolik moˇzn´ych variant, jak je k ˇreˇsen´emu probl´emu moˇzno pˇristupovat, a jak jsou ˇc´asteˇcnˇe shodn´e ˇci alespoˇn analo- 26
3.2. Moˇzn´a ˇreˇsen´ı
Obr´azek 3.2: RGB satelitn´ı sn´ımek
Obr´azek 3.3: Pˇr´ıklad vektor˚u hr´az´ı a n´asp˚u liniov´ych staveb
3. Anal´yza probl´emu a n´avrh ˇreˇsen´ı
gick´e probl´emy ˇreˇseny jin´ymi autory. N´aslednˇe bude pˇredstavena metoda zvo- lena pro tuto pr´aci, kter´a byla vyhodnocena jako nejvhodnˇejˇs´ı vzhledem ke vstupn´ım dat˚um a vzhledem k poˇzadovan´emu zamˇeˇren´ı t´eto pr´ace na metody strojov´eho uˇcen´ı.
3.2.1 Morfometrick´e charakteristiky
Identifikace ochrann´ych hr´az´ı a n´asp˚u liniov´ych staveb v digit´aln´ıch v´yˇskov´ych modelech je probl´em, kter´ym se zab´yv´a nˇekolik prac´ı [17], [18], [19], jejichˇz spoleˇcn´ym prvkem je pouˇzit´ı r˚uzn´ych morfometrick´ych charakteristik. Morfo- metrie se zab´yv´a ˇc´ıseln´ym vyvozov´an´ım charakteristiky tvar˚u zemsk´eho po- vrchu [20].
V [17] je pro identifikaci vyuˇz´ıv´ano 5 morfometrick´ych charakteristik – re- lativn´ı v´yˇska, sklon, smˇer sklonu (aspect), profilov´a kˇrivost (profile curvature) a plan´arn´ı kˇrivost (planar curvature). Jejich detailn´ı popis je uveden v [17].
Takto z´ıskan´e pˇr´ıznaky mohou pot´e slouˇzit k identifikaci bud’ pˇr´ımo, vyuˇzit´ım prahov´ych hodnot pro jednotliv´e pˇr´ıznaky, a nebo jako vstup do klasifik´atoru.
Ve vˇsech prac´ıch maj´ı autoˇri k dispozici digit´aln´ı v´yˇskov´e modely lepˇs´ıho horizont´aln´ıho rozliˇsen´ı, neˇz je 10 m jako v t´eto pr´aci.
3.2.2 S´emantick´a segmentace
Na identifikaci polohy ochrann´ych hr´az´ı je moˇzno nahl´ıˇzet jako na bin´arn´ı klasifikaci. Pro kaˇzd´y pixel jak digit´aln´ıho v´yˇskov´eho modelu, tak pˇr´ıpadnˇe i satelitn´ıho sn´ımku, provedeme klasifikaci, zda jde o hr´az ˇci nikoliv. V´ystup takov´ehoto klasifik´atoru je ekvivalentn´ı s v´ystupem procesu s´emantick´e seg- mentace obrazu.
Jak jiˇz bylo zm´ınˇeno, konvoluˇcn´ı neuronov´e s´ıtˇe jsou vhodn´ym n´astrojem pro s´emantickou segmentaci. Moˇznost pouˇzit´ı tohoto pˇr´ıstupu pro identifikaci ochrann´ych hr´az´ı je ovˇeˇrena v [21]. Autoˇri t´eto pr´ace pouˇzili jako vstupn´ı data digit´aln´ı v´yˇskov´y model s horizont´aln´ım rozliˇsen´ım 5 m, vektory silnic a ˇzeleznic a vektory ˇr´ıˇcn´ıch s´ıt´ı. Jako model byla pouˇzita konvoluˇcn´ı neuronov´a s´ıt’ typu U-net, ´uspˇeˇsnost mˇeˇren´a metrikou IoU 2.7.2 je vyˇc´ıslena na 0.73 na tr´enovac´ıch datech a 0.48 na datech validaˇcn´ıch. Data pouˇzit´a k tr´enov´an´ı a k validaci poch´azej´ı dle autor˚u ze stejn´eho geografick´eho regionu a to ze st´atu Florida, USA. Pro vytvoˇren´ı fin´aln´ı predikce poloh ochrann´ych hr´az´ı je na v´ystup U-net aplikov´ano jeˇstˇe nˇekolik ´uprav, kter´e jsou detailnˇe pops´any v [21].
3.3 Zvolen´ e ˇ reˇ sen´ı
Vzhledem k povaze vstupn´ıch dat, tedy digit´aln´ıho v´yˇskov´eho modelu, kter´y m´a menˇs´ırozliˇsen´ı, neˇz maj´ık dispozici autoˇri prac´ı, vyuˇz´ıvaj´ıc´ımorfometrick´e charakteristiky a tak´e s ohledem na dalˇs´ı vstup, u kter´eho je potˇreba ovˇeˇrit, 28
3.3. Zvolen´e ˇreˇsen´ı zda m˚uˇze nedostateˇcnou kvalitu DEM vykompenzovat – obrazov´e satelitn´ı sn´ımky, a v neposledn´ı ˇradˇe s ohledem na apriorn´ı c´ıl, ovˇeˇrit vhodnost pouˇzit´ı modern´ıch metod strojov´eho uˇcen´ı, je v t´eto pr´aci k implementaci a otestov´an´ı zvolena metoda s´emantick´e segmentace.
K s´emantick´e segmentaci je vyuˇzito konvoluˇcn´ıch neuronov´ych s´ıt´ı. Je otes- tov´ana ´uspˇeˇsnost nˇekolika nejpouˇz´ıvanˇejˇs´ıch s´ıt´ı a to U-net, LinkNet a PSP- Net s, na jin´ych ´uloh´ach ´uspˇeˇsnˇe pouˇzit´ymi, architektury k´odovac´ıˇc´asti tˇechto s´ıti. D´ale je vybr´ana jedna z testovan´ych konvoluˇcn´ıch neuronov´ych s´ıt´ı a je empiricky optimalizov´ana jej´ı architektura.
D˚uleˇzitou souˇc´ast´ızvolen´e metody je n´asledn´e zpracov´an´ı(post-processing) hrub´eho v´ystupu modelu. Jednotliv´e kroky jsou pops´any a rozebr´any na konkr´etn´ıch pˇr´ıkladech v kapitole zab´yvaj´ıc´ı se implementac´ı. Proces z´avˇereˇcn´e vektorizace identifikovan´ych hr´az´ı je takt´eˇz prezentov´an v n´asleduj´ıc´ı kapitole.
Kapitola 4
Implementace
K implementaci bylo vyuˇzito jazyka Python ve verzi 3 a interaktivn´ıho webov´eho v´yvojov´eho prostˇred´ıJupyter notebook. Python je v dobˇe psan´ıt´eto pr´ace bez- konkurenˇcnˇe nejpouˇz´ıvanˇejˇs´ım jazykem pouˇz´ıvan´ym pro implementaci proto- typ˚u model˚u a algoritm˚u strojov´eho uˇcen´ı. Mezi jeho pˇrednosti patˇr´ı jedno- duchost a rychlost s jakou je moˇzn´e programy implementovat a pˇredevˇs´ım velk´e mnoˇzstv´ı r˚uzn´ych knihoven. Nev´yhodou je pak v urˇcit´ych pˇr´ıpadech niˇzˇs´ı v´ykonnost pˇri v´ypoˇcetnˇe n´aroˇcn´ych ´uloh´ach nebo pˇri pr´aci s velk´ym mnoˇzstv´ım dat.
4.1 Pouˇ zit´ e knihovny
Implementovat algoritmy strojov´eho uˇcen´ı od z´akladu v samotn´em jazyku Python by bylo ˇcasovˇe velmi n´aroˇcn´e a neefektivn´ı, proto je pouˇzito nˇekolik uˇziteˇcn´ych knihoven. V´yˇcet a struˇcn´y popis nˇekolika, z hlediska implemento- van´e ´ulohy nejd˚uleˇzitˇejˇs´ıch, je uveden n´ıˇze.
• Numpy– Pˇrid´av´a podporu n-rozmˇern´ych pol´ı a matic velk´eho rozsahu.
Umoˇzˇnuje na tˇechto datov´ych struktur´ach efektivnˇe prov´adˇet matema- tick´e operace.
• Cv2 – Python interface pro OpenCV. OpenCV (Open Source Compu- ter Vision Library) je opensource knihovna, kter´a slouˇz´ı k manipulaci s obrazov´ymi daty a poskytuje algoritmy a metody z oblasti poˇc´ıtaˇcov´eho vidˇen´ı a obecnˇe strojov´eho uˇcen´ı.
• Gdal – Gdal je knihovna urˇcen´a na manipulaci s rastrov´ymi i vekto- rov´ymi GIS daty. Gdal je knihovna v jazyce C++ je ale poskytov´ano API pro Python.
• Tensorflow- Opensource framework strojov´eho uˇcen´ı, poskytnut´y spoleˇcnost´ı Google.
4. Implementace
Obr´azek 4.1: Vlevo vektory ochrann´ych hr´az´ı, vpravo po rasterizaci. Jako po- zad´ı je pouˇzit digit´aln´ı v´yˇskov´y model.
• Keras– API pro hlubok´e uˇcen´ı, pouˇz´ıv´a Tensorflow.
• Segmentation models – knihovna, poskytuj´ıc´ı API k konvoluˇcn´ım neuronov´ym s´ıt´ım pro s´emantickou segmentaci, vyuˇz´ıv´a Keras a Ten- sorflow [22].
4.2 Pˇ redzpracov´ an´ı vstupn´ıch dat
Pˇredt´ım, neˇz je moˇzn´e pˇristoupit k tr´enov´an´ı konvoluˇcn´ıch neuronov´ych s´ıt´ı, je potˇreba data transformovat do podoby, kter´a je vhodn´a pro vstup do tohoto typu modelu.
4.2.1 Rasterizace vektor˚u ochrann´ych hr´az´ı
Ochrann´e hr´aze jsou k dispozici ve vektorov´em form´atu, kter´y nen´ı pro CNN vhodn´y, proto je potˇreba tato data pˇrev´est na rastr. K rasterizace je vyuˇzito metodyRasterizeLayerz knihovny Gdal. Rasterizace je provedena do stejn´eho rozliˇsen´ı a stejn´eho souˇradnicov´em syst´emu, kter´y maj´ı odpov´ıdaj´ıc´ı digit´aln´ı v´yˇskov´e modely, kaˇzd´a ochrann´a hr´az m´a tedy pro rasterizaci ˇs´ıˇrku 1 px.
Uk´azku podoby ochrann´ych hr´az´ı ve vektorov´em form´atu a po rasterizaci lze vidˇet na obr´azku 4.1.
4.2.2 Slouˇcen´ı satelitn´ıch sn´ımk˚u
Jelikoˇz jsou satelitn´ı sn´ımky poskytov´any v dlaˇzdic´ıch r˚uzn´ych rozmˇer˚u, a k pˇrekryt´ı ´uzem´ı, kter´e odpov´ıd´a poskytnut´ym v´yˇskov´ym model˚um je potˇreba dlaˇzdic nˇekolik, je nezbytn´e tyto dlaˇzdice slouˇcit tak, aby byl zachov´an souˇradnicov´y syst´em. K tomu je pouˇzita utilita gdal merge.py, kter´a je souˇc´ast´ı knihovny Gdal.
Pˇri stahov´an´ı satelitn´ıch sn´ımk˚u z Copernicus Open Access Hub je pod- statn´e, aby byly vˇsechny pouˇzit´e sn´ımky poˇr´ızeny ide´alnˇe v co nejkratˇs´ım 32