GIS-jatkokurssi Viikko 2: Rasterimenetelmät Harri Antikainen
rivit GIS-datamallit Vektorimalli Rasterimalli sarakkeet piste point viiva polyline alue polygon Vektorimuotoisia kohteita sisältävään dataan liittyy yleensä myös erilaisia ominaisuustietoja sisältävä taulukko (=attribuuttitaulukko) Ominaisuustieto pikselin arvona 2
Rasteri (engl. raster) Tunnetaan myös nimillä gridi (grid) tai hila Ei itsessään GIS-termi vaan yleisesti tarkoittaa säännöllisesti järjestetyistä pikseleistä muodostuvia kuvia Raster-sanan virallinen merkitys ja etymologia: The pattern of scanning lines which appears as a patch of light on a television screen and which reproduces image (The Cassell Dictionary) The word "raster" has its origins in the Latin rastrum (a rake), which is derived from radere (to scrape). It originates from the raster scan of cathode ray tube (CRT) video monitors, which paint the image line by line by magnetically steering a focused electron beam. By association, it can also refer to a rectangular grid of pixels. (Wikipedia) 3
Datamallien käyttö Vektorimalli soveltuu diskreettien, yleensä selvärajaisten kohteiden esittämiseen Vektoridataa käytettäessä kartografisen esityksen laatu ei riipu skaalauksesta Topologisten suhteiden määrittely helppoa Vektorimallin avulla kohteet voidaan mallintaa tarpeen mukaan pisteinä (mm. paikannushavainnot), viivoina (tiet, joet) tai alueina (rakennukset, pellot, vesialueet) Rasterimalli taas soveltuu erityisesti käytettäväksi spatiaalisesti jatkuvien ilmiöiden kuvaamiseen Aivan erityisesti ilmiöt joissa ei esiinny selviä rajoja vaan joissa muutos on vähittäistä (topografia, lämpötila ja muut varsinkin luonnonmaantieteen ilmiöt) Mahdollistaa tehokkaat spatiaaliset laskentaoperaatiot ( map algebra ) Rastereita käytetään kartografisessa visualisoinnissa usein myös taustakarttoina, mutta visuaalinen laatu kärsii jos zoomataan paljon sisään tai ulos 4
Esimerkkejä rasteridatoista Korkeusmalli Lämpötila Maankäyttö (Corine) 5
Rasteriformaatteja ESRI GRID: ArcGIS:n oma historiallinen formaatti, oletusarvoisesti käytössä ArcGIS:ssä ERDAS Imagine (*.img) TIFF (*.tiff) JPG (*.jpg), JPG 2000 (*.jp2) Geodatabasen rasteriformaatti + monia muita formaatteja Formaatteihin liittyy erilaisia tapoja pakata tietoja sekä georeferoida rasteri (säilyttää sijaintitieto) 6
Esrin GRID-formaatti Rasterin nimessä voi olla enintään 13 merkkiä Jos haluaa käyttää pitempiä nimiä, on käytettävä jotain muuta formaattia GRID on tiedostorakenteeltaan kompleksinen, rasteriin liittyviä tiedostoja useissa eri hakemistoissa Esim. testraster-niminen GRID-rasteri: 7
Map algebra C. D. Tomlinin esittämä rasterilaskentamenetelmien ryhmittely Local: kohteena yksi rasterisolu kerrallaan Focal: kohteena solun naapurusto Zonal: kohteena vyöhyke (alue) Global: kohteena koko rasteri Map algebra voi pitää sisällään monenlaisia laskuoperaatioita: Perus-aritmetiikka (mm. +, -,, /) Tilastolliset operaatiot (mm. min, max, mean, median) Relationaaliset operaatiot (mm. >, <, ==) Trigonometria 8
Rasterimenetelmät ArcGIS:ssä Pääsääntöisesti ArcGIS:n rasterimenetelmät löytyvät Spatial Analyst Toolsin alta Menetelmiä (osin samoja) on myös 3D Analyst Toolsissa, mutta tästä lisää ensi viikon luennolla tiheyspinnat etäisyysanalyysit (kustannuspinta-analyysi) rasterilaskin focal-analyysit vyöhykeanalyysit 9
Raster Calculator Spatial Analyst Tools Map Algebra Raster Calculator Rasterilaskin, jolla voi mm.: Manipuloida rasterin arvoja Laskea rastereita yhteen, miinustaa, kertoa, jakaa,... 10
Esim. kahden rasterin yhteenlasku Input raster 1 Input raster 2 Output raster 3 7 1 5 2 11 3 + 5 = 8 7 + 2 = 9 1 + 11 = 12 12 5 3 + 8 5 7 12 + 8 = 20 5 + 5 = 10 3 + 7 = 10 9 0 4 4 0 NoData 9 + 4 = 13 0 + 0 = 0 4 + NoData = NoData Huomaa NoData-solu toisessa rasterissa! NoData tarkoittaa että solun arvoa ei tunneta. Tällöin myös laskennan lopputulos on kyseisen solun osalta NoData. 11
Esim. kahden rasterin yhteenlasku Laskutoimitukseen valittavissa olevat rasterit - eli ne jotka ovat auki ArcMapissa Laskutoimitus muodostetaan tähän kenttään Tulosrasteri määritellään tähän 12
Naapurustoanalyysit (Neighborhood / Focal) Liikkuvan ikkunan (moving window) periaate Kukin solu on vuorollaan prosessoitava keskussolu (focal cell tai processing cell), jonka osalta tulosrasteriin lasketaan arvot kyseisen solun naapuruston perusteella Ehkä kaikkein yleisin operaatio on keskiarvon laskenta 3 3 solun naapurustosta Sekä laskuoperaatio että naapuruston koko ja muoto voivat sinänsä olla mitä tahansa muutakin keskussolu 13
Naapurustoanalyysit (Neighborhood / Focal) Keskiarvo 3 3 solun naapurustosta: Input-rasteri Output-rasteri 3 6 3 9 4 3 5 2 4 7 3.22 2 1 4 6 4 6 3 0 9 8 2 5 3 0 1 (3 + 6 + 3 + 3 + 5 + 2 + 2 + 1 + 4) 9 = 3.22 14
Naapurustoanalyysit (Neighborhood / Focal) Spatial Analyst Tools Neighborhood Focal Statistics Input-rasteri Output-rasteri Naapuruston muoto...ja koko Naapuruston koon mittayksiköt (Units): - Cell: naapuruston koko mitataan soluina, - Map: koko mitataan koordinaattijärjestelmän mittayksiköillä (yleensä metrit) Tämä on klassinen mokan paikka! Esim. jos käyttäjä haluaa tehdä analyysin 1000 m säteellä mutta laittaakin Units-kohtaan Cell, kun rasterin solukoko on vaikka 25 metriä, on säde tällöin 25 000 m! Laskettava tilastollinen tunnusluku 15 15.9.2017 GIS-jatkokurssi 2017
Naapurustoanalyysit, sovelluksena tasoittaminen Esimerkki: rasterissa olevan laatikoitumisen vähentäminen (saatu aikaan edellisen sliden näyttämillä asetuksilla) 16
Naapurustoanalyysit, sovelluksena TPI Topografinen korkeusindeksi (Topographic Position Index, TPI) Mittaa maaston suhteellista korkeutta ympäristöön nähden Perustuu rasterimuotoiselle korkeusmallille tehtävään naapurustoanalyysiin TPI = rasteripikselin oma korkeus miinus naapurustoanalyysillä laskettu (lähi)ympäristön keskimääräinen korkeustaso naapurustoetäisyys = keskussolu = naapurisolu 17
Naapurustoanalyysit, sovelluksena TPI Hanke Metsäntutkimuslaitoksen yms. kanssa maisemallisesti herkkien lakialueiden tunnistamiseksi GIS:n avulla (Sotkamo) Korkeusmalli, 25 25 m resoluutio TPI, laskettu 2500 metrin naapuruussäteellä 18
Naapurustoanalyysit, sovelluksena TPI Maastotyön perusteella määritetty Vuokatinvaaran lakialue (Minna Komulainen: Forestscapes 2010) TPI-menetelmällä määritetty lakialue (käytännössä siis sama kuin maastotyöllä määritetty) 19
Vyöhykeanalyysit (Zonal) Lasketaan tunnuslukuja rasterista tiettyjen vyöhykkeiden (alueiden) puitteissa Mantsassa (varsinkin lm) hyvin usein käytetty Kaksi erilaista zonal-menetelmää: Zonal Statistics as Table: lasketaan jatkuvasta muuttujasta tilastolliset tunnusluvut vyöhykkeittäin Tabulate Area: lasketaan luokitteluasteikollisesta muuttujasta eri luokkien esiintymispinta-alat kunkin vyöhykkeen sisällä 20
Zonal Statistics as Table Rasteri jossa jatkuva muuttuja, esim. korkeus, lämpötila tai sademäärä 3 6 3 9 4 3 5 2 4 7 2 1 4 6 4 6 3 0 9 8 2 5 3 0 1 Kuvassa on kaksi vyöhykettä, oranssi ja sininen Vyöhykkeen ei siis tarvitse olla yhtenäinen alue, vaan vyöhyke voi koostua fyysisesti erillisestä alueista, kunhan niillä vaan on yhteinen id Lasketaan esim. summa vyöhykkeittäin: 3 + 6 + 3 + 3 + 5 + 2 = 22 4 + 6 + 0 + 9 + 8 + 3 + 0 + 1 + 2 = 33 21
Zonal Statistics as Table Spatial Analyst Tools Zonal Zonal Statistics as Table Vyöhykkeet sisältävä data. Voi olla joko rasteri- tai vektorimuotoinen. Jos syötetään vektorimuotoinen data, ArcGIS muuntaa sen itse rasteriksi zonal-laskentaa varten. Vyöhykkeen tunnistetieto. Vyöhykkeet erotellaan toisistaan siis ainoastaan tämän tiedon perusteella. Rasteri josta tunnusluvut lasketaan Tulostaulukko Mitä tunnuslukuja lasketaan. ALL: kaikki tunnusluvut, tai sitten jokin tietty tunnusluku (esim. MEAN) 22
Zonal Statistics as Table Esimerkiksi tunnuslukujen laskeminen korkeusmallista valuma-alueittain 23
Tabulate Area Rasteri jossa luokitteluasteikollinen muuttuja, esim. maankäyttötyyppi 10 m B B B B B A A B B B A A A A A A A A A A B B B B A Lasketaan alueluokkien pinta-alat vyöhykkeittäin Oranssi vyöhyke: Alueluokka A: 2 100 m 2 = 200 m 2 Alueluokka B: 4 100 m 2 = 400 m 2 Sininen vyöhyke: Alueluokka A: 6 100 m 2 = 600 m 2 Alueluokka B: 3 100 m 2 = 300 m 2 24
Tabulate Area Spatial Analyst Tools Zonal Zonal Statistics as Table Syötteissä sama periaate kuin Zonal-analyysissakin Vyöhykkeet sisältävä data Vyöhykkeet yksilöivä tunniste Alueluokitusdata. Voi olla myös vektorimuotoinen. Rasterin muuttuja (alueluokitus) Tulostaulukko Analyysissa käytettävä solukoko. Kannattaa olla sama kuin rasterin solukoko. 25
Tabulate Area Esimerkiksi Corine-maankäyttörasterista lasketaan eri maankäyttöluokkien osuudet bufferien sisällä, jotka on piirretty jonkin eläinlajin pesäpaikkojen ympärille Jokainen maankäyttötyyppi on tuloksissa oma sarakkeensa 26
Päällekkäisten alueiden ongelma Sekä Zonal Statistics että Tabulate Area antavat virheellisiä tuloksia jos vyöhykkeet menevät päällekkäin Ensimmäinen alue syö yhteisen pinta-alan toiselta: esim. jos alla olevan esimerkin sininen suorakaide prosessoidaan ensin, leikkautuu oranssista, ympyrän muotoisesta alueesta neljännes pois ja analyysi tehdään ympyrän osalta vain lopulle ¾-osalle Johtuu siitä että vyöhykkeet muunnetaan ArcGIS:ssä sisäisesti rasteriksi, ja rasterin pikseli voi kuulua vain yhteen vyöhykkeeseen 27
Päällekkäisten alueiden ongelma Ratkaisuna analyysin tekeminen yksi vyöhyke kerrallaan ja yhdistämällä sitten tulokset Onnistuu manuaalisesti jos vyöhykkeitä ei kovin monta Isompia vyöhykemääriä varten kannattaa kuitenkin olla skripti Skriptit molempia varten on tehty: TabulateOverlappingPolygons.py ZonalStatsOverlappingPolygons.py 28
Päällekkäisten alueiden ongelma ArcGIS:llä laskettu Tabulate Area vs. skriptillä laskettu ArcGIS:llä Skriptillä 29
Tiheyspinnat (Density surfaces) Käytetään visualisoimaan piste- tai viivamuotoisten kohteiden esiintymistiheyttä Heat map 30
Tiheyspinnat (Density surfaces) Periaate yksinkertaisimmillaan: jokaisesta solusta lasketaan tietyllä etäisyydellä olevien kohteiden lukumäärä ja jaetaan se etäisyyden kattaman alueen pintaalalla ilmiön esiintymistiheys r 3 / Kohteiden määrä / pinta-ala = n / πr 2 Esim. jos r = 0.5 km π 0.5 2 = 3.8 kpl /...... km 2.................. 31
pisteen saama painotus Tiheyspinnat (Density surfaces) Spatial Analyst Tools Density Point Density (periaate kuten edellisellä slidellä) Kernel Density (pisteitä painotetaan riippuen etäisyydestä solun keskipisteeseen) Kernel on funktio joka määrittää painotuksen. Funktioita voi olla monen muotoisia. ArcGIS:n Kernel Density toiminto käyttää Quartic -tyyppistä kerneliä. 32 pisteen etäisyys solun keskipisteestä
Tiheyspinnat (Density surfaces) Syötedata, eli pisteet (tai viivat) joista tiheys lasketaan Jos yksi piste voi edustaa useampaa kuin yhtä kohdetta, valitse tätä osoittava muuttuja tähän. Muussa tapauksessa valitse NONE. Tulosrasteri Tulosrasterin solukoko Etsintäsäteen pituus. Pituus on määritettävä koordinaattijärjestelmän mittayksiköitä käyttäen (metrit). Tulosrasterin tiheysyksiköt. Tähän voi valita periaatteessa minkä vaan. Mitä tulosrasterin arvot tarkoittavat. DENSITIES on solukoosta riippumaton tiheysluku, laskettu kuten periaatekuvissa on edellä esitetty. EXPECTED_COUNTS kuvaa tiheyttä kunkin solun sisällä, jolloin luku on sidoksissa valittuun tulosrasterin solukokoon. Mitataanko etäisyyksiä planaarisesti (PLANAR) vai geodeesisesti (GEODESIC). Jos syötedatan koordinaattijärjestelmä on projisoitu, valitse PLANAR; jos taas maantieteellinen, valitse GEODESIC. 33
Tiheyspinnat (Density surfaces) Tiheyspinnasta voi saada hyvin eri näköisen riippuen asetuksista! Kernel Density luo smoothimman pinnan kuin Point Density Mitä pitempi etsintäsäde, sitä yleistetympi lopputulos Vastaavasti mitä lyhyempi säde, sitä enemmän paikallisia keskittymiä esille Solukoko ei sinänsä vaikuta lopputulokseen, mutta jos valitaan kovin karkea solukoko, voi pikselöityminen olla häiritsevän voimakasta Säde 1000 m: Säde 5000 m: 34
Tiheyspinnat vs. ruutukartta Tiheyspinta Ruutukartta 35 Salamaniskut pisteinä Salamaniskut, esiintymistiheys 10 km säteellä (Kernel density) Salamaniskut, esiintymistiheys 10 10 km ruudussa
Tiheyspinnat vs. ruutukartta Tiheyspinta ei siis ole sama asia kuin ns. ruutukartta (quadrat map), vaikka ne näyttäisivätkin samalta Tiheyspinta on siis rasteri, joka on tuotettu tietyn etsintäsäteen avulla mahdollista kernel-painotusta käyttäen Ruutukartta taas on vektorimuotoinen ruudukko, jossa jokaiseen ruutuun on summattu ruudun sisälle osuvien pisteiden lukumäärä Ruutukartan ongelma on, että ruutujen rajat voivat satunnaisesti katkaista pistetihentymiä: tiheyspinnalla vastaavaa ongelmaa ei ole Ruutukartta on kuitenkin helpommin ymmärrettävä: se kertoo suoraan ja selkeästi, kuinka monta kohdetta kunkin ruudun sisällä on 36
Kustannuspinta-analyysi Reitti- ja leviämisanalyysi 2-ulotteisessa tilassa (rasterilla) Sama idea kuin verkostoanalyyseissä, jotka toimivat 1-ulotteisessa tilassa (siis verkostossa) Kustannus = impedanssi, rasterisolun läpi kulkemisen vaikeutta kuvaava mittaluku. Voidaan mitata monin eri tavoin. Vaikeakulkuinen suo (kustannus: 30 / mittayksikkö) Metsä (kustannus: 5 / mittayksikkö) Avomaa (kustannus: 2 / mittayksikkö) 37
Kustannuspinta-analyysi Varsin runsaasti omia tutkimusesimerkkejä, tuoreimpana esimerkkinä topografian ja maanpeitteen vaikutus eliöiden dispersaaliin Kärnä et al. (2015): Inferring the effects of potential dispersal routes on the metacommunity structure of stream insects: as the crow flies, as the fish swims or as the fox runs? Journal of Animal Ecology 84, 1342 1353. Heino et al. (2017): Integrating dispersal proxies in ecological and environmental research in the freshwater realm. Environmental Reviews, dx.doi.org/10.1139/er- 2016-0110 38
Kustannuspinta-analyysi 10 m Itse asiassa kustannuspinta-analyysi vastaa verkostoanalyysiä, koska menetelmässä rasterisolujen välille määritellään virtuaalinen verkosto Jokaista rasterisolua käsitellään noodina (solun keskipiste) Luodaan linkit naapurisoluihin/noodeihin (8 kpl) Jokainen linkki painotetaan rasterisolujen kustannusarvojen perusteella sekä sen mukaan, kuinka pitkän matkan linkki kulkee solun sisällä esim. kuvassa paksulla merkityn linkin paino = (10 / 2) 30 + (10 / 2) 5 = 150 + 25 = 175 Vaikeakulkuinen suo (kustannus: 30 / mittayksikkö) Metsä (kustannus: 5 / mittayksikkö) Avomaa (kustannus: 2 / mittayksikkö) 39
Kustannuspinta-analyysi Laskentaprosessi perustuu verkostoanalyysien tavoin Dijkstran algoritmiin, mutta sovellettuna rastereihin Kustannuspinta (A), jonka solut on linkitetty toisiinsa edellä kuvatulla tavalla Dijkstralla lasketaan kumulatiivisen kustannusetäisyydet jostain lähtösolusta (sininen solu) käsin. Tämä kumulatiivinen pinta on periaatteessa jo itsessään analyysin tulos. 40 Dijkstra tuottaa samalla myös suuntarasterin (C), jonka avulla voidaan jäljittää yksittäisiä halvimman kustannuksen reittejä lähtöpisteeseen (D)
Kustannuspinta-analyysi Spatial Analyst Tools Distance -työkalut Perus -kustannuspinta-analyysi Yksittäisen reitin laskenta, Cost Distance tai Path Distance oltava tehtynä ensin Monipuolisempi kustannuspinta-analyysi, jolla voidaan ottaa huomioon myös maaston topografian vaikutus 41
Kustannuspinta-esimerkki Opetusmonisteen esimerkki: laske reitti Helsingin yliopiston biologiselta tutkimusasemalta Saanan huipulle Korkeusmalli tutkimusasema huippu + Kustannuspinta Valkoiset NoData-alueet järviä eli täysin kulkukelvottomia alueita Muilta osin mitä tummempi väri, sitä suurempi kulkuvastus 42
Kustannuspinta-esimerkki Lasketaan siis reitti maanpinnan kulkukelpoisuuteen perustuvaan kustannuspintaan pohjautuen, ja modifioidaan tätä vielä maaston kaltevuuden mukaisesti Koska topografia mukana, valitaan Path Distance 43
Kustannuspinta-esimerkki Reitin lähtöpistettä osoittava pistetaso Tuloksena syntyvä kumulatiivisen kustannuksen rasteri Kustannuspinta Korkeusmalli. Tähän kohtaan valittuna korkeusmalli vaikuttaa siihen, että maaston kaltevuudesta johtuva matkan fyysinen piteneminen tulee huomioiduksi. Tuloksena syntyvä suuntarasteri Avataan lisäksi tämä kohta (ks. seuraava slide) 44
Kustannuspinta-esimerkki: Vertical Factor Vertical Factor (VF) on funktio jolla voidaan modifioida kulkukustannusta maaston kaltevuuden perusteella Yleensä tietysti mitä jyrkempi rinne, sitä vaikeampi siinä on kulkea VF:n avulla reittiä voidaan ohjata vähemmän jyrkille alueille Valitaan tähänkin korkeusmalli 45 Valitaan vertical factor funktio ja määritetään sen parametrit. Funktio kuvaa sitä, kuinka voimakkaasti kulkemisen vaikeus kasvaa maaston kaltevuuden kasvaessa joko ylä- tai alamäen suuntaan. Funktion voi valita valmiiden joukosta tai sen voi määritellä kokonaan itse erilliseen tekstitiedostoon (tällöin tästä valikosta otetaan Table )
Kustannuspinta-esimerkki: Vertical Factor Esimerkiksi Symmetric Inverse Linear funktio toimii seuraavasti: Kun kaltevuus ylittää 45 joko ylä- tai alamäkeen, muuttuu painotus äärettömäksi (INF). Reittiä ei siis lasketa tätä jyrkempien alueiden läpi. Painotusfunktio jyrkentyy kaltevuuden kasvaessa Kulkukustannuksen painotus on pienimmillään (1) kun maasto tasainen (VRMA = 0) = maaston kaltevuus kulkusuunnassa Painotus 46
Kustannuspinta-esimerkki: tulosrasterit Tuloksena on siis kumulatiivinen kustannuspinta ja suuntarasteri 47 Kumulatiivinen kustannuspinta kertoo, kuinka suuri kustannus kunkin solun kohdalla on kertynyt lähtöpisteestä asti. Suuntarasteri taas kertoo, mihin suuntaan solusta olisi seuraavaksi siirryttävä, jotta oltaisiin halvimman kustannuksen reitillä kohti takaisin lähtöpistettä (värit osoittavat suuntia).
Kustannuspinta-esimerkki: Cost Path Itse reitti lasketaan suuntarasterin avulla käyttäen Cost Path -toimintoa Reitin kohdepiste Edellä laskettu kumulatiivisen kustannuksen rasteri Edellä laskettu suuntarasteri Tuloksena syntyvä reittirasteri Path type: ei merkitystä tässä esimerkissä 48
Kustannuspinta-esimerkki: lopputulos Rasterimuotoisen reitin voi tarvittaessa muuntaa viivaksi muunnostyökalulla: Conversion Tools From Raster Raster To Polyline Viivaksi muuttamisen jälkeen on mahdollista laskea myös reitin pituus 49
Vertical Factorista vielä Metsäkeskuksen kanssa tehty tutkimus, jossa maastotyöntekijöiltä kerätyn datan perusteella määritetty oma VF-funktio Ihanteellisinta kulkea noin 3 o alamäkeä, siitä kulkeminen hankaloituu sekä ylä- että alamäen kasvaessa Etula & Antikainen: Maaston kulkukelpoisuuden mallintaminen metsäsuunnittelijan näkökulmasta reitinoptimointia varten. Terra 124, 29 43. 50