Map Algebra Kirsi Virrantaus GIS-E1060 Spatial Analytics 15.11.2016
Kartta-algebra Kirsi Virrantaus GIS-E1060 Spatial Analytics 15.11.2016
Lecture contents Introduction to Map Algebra
Luennon sisältö Introduction to Map Algebra
About raster models raster analysis is based on raster/matrix model the reality is modeled by using layers layers are matrices computations are based on operations on matrices
Yleistä rasteripohjainen analyysi perustuu rasterimuotoiseen mallinnukseen todellisuutta mallinnetaan karttatasoina karttatasot kuvautuvat matriiseina matriiseja vertaillaan ja niiden kesken suoritetaan laskennallisia operaatioita
Aronoff, 1991)
Tools matrix operations can be performed by image processing software programming yourself by using GIS-software modules: ArcGIS/Spatial Analyst IDRISI GRASS Several open source softwares offer some raster operation that can perform map algebra type functions Raster calculator type interfaces
Työkalut matriisimuotoista käsittelyä voidaan suorittaa kuvankäsittelyohjelmistoilla itse ohjelmoimalla GIS-ohjelmien toiminnallisuuksilla ArcGIS Spatial Analyst IDRISI GRASS Useat avoimen lähdekoodin ohjelmistot tarjoavata rasterioperaatioita, joilla voidaan suorittaa kartta-algebran tapaisia funktioita Raster calculator tyyppiset käyttöliittymät
Applications environmental applications with source data from satellite images Forestry Agriculture Hydrology Land use planning Landscape design elevation model based analyses Drainage Watersheds Visibility accessibility analyses statistical grid data analyses terrain analyses, mobility analyses Esa Orava: Sotilaallinen maastoanalyysi (Cross-country analysis) Dan Häggman Hirvireittien GIS-analyysi (Moose path analysis)
Sovellukset ympäristön tilan analysointi, lähtötiedot saadaan tyypillisesti satelliittikuvatulkinnoista metsäsovellukset maatalous vesi maankäytön suunnittelu maisemasuunnittelu Korkeusmallipohjaisia sovelluksia valuma-alueet vedenjakajat näkemät, kuuluvuusalueet saavutettavuusanalyysit Maastoanalyysit Esa Orava: Cross-country analysis Dan Häggman:Moose path analysis tilasto (ruutu)aineistojen analysointisovellukset maastoanalyysit Esa Oravan d-työ Sotilaallinen maastoanalyysi Dan Häggmanin d-työ Hirvireittien GIS-analyysi
20Q2D4
Map algebra Dana Tomlin: GIS and Cartographic modeling (1990) new version in 2013 by ESRI Press manual map overlay by using transparents data as layers (as in any map overlay model) equality or difference is searched by arithmetic and logical operations operations on one pixel, neighbourhood area, zoning, entire layer similar developments already in 60 s at Harvard university, landscape architecture, geography
Kartta-algebra Dana Tomlin: GIS and Cartographic modeling (1990) Uusittu versio kirjasta 2013, ESRI Press lähtökohtana karttojen päällekkäin tarkastelu skissipaperin tai muun transparentin avulla tiedot esitetään tasoina (kuten map overlayssä yleensäkin) kahta tai useampaa tasoa verrataan samanlaisuuden tai erilaisuuden löytämiseksi aritmeettisia, loogisia operaatioita operaatiot voivat kohdistua: yhteen pikseliin, pikselin naapurustoon, koko tasoon, valittuihin osa-alueisiin tasolla samantyyppistä kehitystyötä jo 60-luvulla Harvardin yliopistossa, maantiede, maisemasuunnittelu
(Tomlin, 1990)
map algebra is a formal language, including 60 functions, open standard combining the functions one can make an analysis application map algebra has been implemented on several GIS softwares source and result data layers: FIRSTLAYER, SECONDLAYER NEWLAYER LOCAL, FOCAL, ZONAL, INCREMENTAL -functions definition of the neighbourhood area
map algebra on formaali kieli, joka koostuu n. 60 funktiosta, avoin standardi map algebran funktioita yhdistelemällä voidaan ohjelmoida esim. analyysisovelluksia tai muita rasteriongelmien ratkaisuja map algebra on implementoitu useissa GIS-ohjelmistoissa tietotasot : FIRSTLAYER, SECONDLAYER NEWLAYER LOCAL, FOCAL, ZONAL, INCREMENTAL -funktiot naapurialueen määritelmä
ArcGIS Toolbox Example: Raster Calculator interface in ArcGIS
ArcGIS toolbox
Local -functions FIRSTLAYER, NEXTLAYER =>NEWLAYER operations on one pixel at a time for example Local Difference Local Maximum Local Ratio Local Product
Lokaalit funktiot FIRSTLAYER, NEXTLAYER =>NEWLAYER yhteen pikseliin kohdistuvat operaatiot esim. Local Difference Local Maximum Local Ratio Local Product
for example Average Cost = Local Mean of Your Cost and MyCost and HerCost and His Cost layers: Your, My, Her, HisCost new layer: Average Cost function: Local Mean comparison of layers, either-or; map overlay
esim. Average Cost = Local Mean of Your Cost and MyCost and HerCost and His Cost tasot : Your, My, Her, HisCost uusi taso: Average Cost funktio Local Mean esim. tasojen yhdistely JOKO-TAI, map overlay
Example:Cross-country mobility analysis Esimerkki:Maaston kulkukelpoisuuden analyysi Source data: 5 map layers, each of them with equal pixel size, origin and orientation Lähtödata: 5 karttatasoa, jokaisella sama pikselikoko, origo ja suuntaus Soil map, amount of vegetation, slope, frost, snow Maaperäkartta, kasvillisuuden määrä, rinnejyrkkyys, routa, lumi Each pixel get mobility value (1 7) based on the values of the source data Jokainen pikseli saa kulkukelpoisuusarvon, joka lasketaan lähtötietotasojen perusteella
Aronoff, 1991)
20Q2D4
A bit more complicated example Example : visualization of contours (Tomlin p. 69) algorithm: take the grid elevation model and divide all values of pixels by 10 multiply the integer result by 10 subtract this value from the original colour each value according to the following: values 4 and 6, 3 and 7, 2 ja 8 and 1 ja 9 get the same colour 0 is white 5 is black; (visual) one meter contours are gererated
Monimutkaisempi ongelmanratkaisu esimerkki: korkeuskäyrien visualisointi korkeusmallin avulla (Tomlin s. 69) algoritmi: otetaan korkeusmalli ja jaetaan kunkin pikselin arvo 10:llä, kerrotaan saatu kokonaisluku 10:llä vähennetään saatu luku alkuperäisestä väritetään kukin pikseli saadun metriluvun mukaisesti siten että luvut 4 ja 6, 3 ja 7, 2 ja 8 sekä 1 ja 9 saavat saman vaalenevan sävyn 0 on valkoinen 5 on musta saadaan (visualisoitua) metrin käyrät
(Tomlin, 1990)
Focal -functions FIRSTLAYER, NAAPURUUSALUE => NEWLAYER a new layer is created, pixels get values according to the operation applied on the neighbourhood area neighbourhood area 4- or 8 neighbourhood or some other area for example FocalMaximum FocalAverage FocalMinority for example: where the specified forest types meet the open area
Fokaalit funktiot FIRSTLAYER, NAAPURUUSALUE => NEWLAYER luodaan uusi taso, jonka pikselit saavat arvon naapuruusalueeseen kohdistuvan funktion perusteella naapuruusalue 4- tai 8 -naapuruus tai muu määritelty alue esim. FocalMaximum FocalAverage FocalMinority esim. missä avoin alue kohtaa tietyt kasvillisuusalueet: luodaan taso kasvillisuus (kasv.tyypit+avoin alue), sitten tutkitaan missä ko. naapurisuhteet
Interpolation as a Focal function Matrix interpolation can be implemented by using Focal functions The neighbourhood area is decided first For example 4 neighbourhood or 8 neighbourhood, or even bigger Inverse weighting: the longer the distance from the unknow to the known value, the less weight Then the average is calculated based on the weighted known values in the neighbourhood area Each pixel with unknown value gets value according to the above described algorithm
Interpolointi Fokaalin funktion avulla Matriisin interpolointi voidaan toteuttaa fokaalin funktion avulla Ensin päätetään naapuruusalueen koko: 4-, 8-naapuruun tai jopa suurempi Käänteinen painotus: mitä kauempana tunnetun arvon omaava pikseli on, sitä vähemmän painoa sen arvo saa Lasketaan keskiarvo naapurialueella olevista tunnetuista arvoista käänteisesti etäisyydellä painottaen Jokainen tuntematon pikseli matriisissa käsitellään tällä tavalla
Another example: mobility cost optimization Mobility cost optimization can also be solved by using Focal functions cost surface is made based on the source data total cost of a pixel is measured by several layers The total cost from one location to another is calculated by using the distance and the attributes of the neighbourhood pixels
Toinen esimerkki: kulkukustannusten optimointi Kulkukustannusten optimointi voidaan myös ratkaista Fokaalilla funktioilla karttataso muodostetaan matriisiksi, jossa jokainen pikseli ilmaisee kulkukustannuksen kokonaiskustannus pisteestä toiseen syntyy ko. pikselikohtaisten kulkukustannusten ja etäisyyden avulla kulkukustannus syntyy esim. erilaisesta kasvillisuudesta, maaperästä
(Tomlin, 1999)
(Tomlin,1990)
(Tomlin,1990)
(Tomlin,1990)
1. fix the starting point 2. weight the pixels by costs, cost surface 3. compute distances to all other pixels by using the weights, distance surface 4. compute the path to the target(s) by using the weighted distance surface (weight is now calculated from the attribute values)
1. määrätään gridissä lähtöpiste 2. otetaan mukaan kulkemiseen vaikuttavia tekijöitä, saadaan kustannuspinta 3. lasketaan etäisyydet lähtöpisteestä gridin muihin pisteisiin, otetaan huomioon painot (painot tulevat nyt maaston ominaisuuksista) 4. saadaan ns. etäisyyspinta, jonka avulla voidaan laskea eri reittejä ko. lähtöpisteestä
Zonal -functions FIRSTLAYER, SECONDLAYER=>NEWLAYER data is related to some zoning zoning on one layer, other data on the other layers for example: Zonal Sum, Zonal Maximum see. Homes per Block
Zonal -funktiot FIRSTLAYER, SECONDLAYER=>NEWLAYER tietoja käsitellään johonkin aluejakoon suhteutettuna aluejako on yhdellä tasolla, muilla tasoilla eri teemat esim. Zonal Sum, Zonal Maximum ks. Homes per Block
Incremental - functions FIRSTLAYER, SURFACELAYER=> NEWLAYER for example for 3d shapes for example Incremental Linkage, Incremental Area (s. 28 32) Incremental Drainage (aspects s. 115)
Incremental - funktiot FIRSTLAYER, SURFACELAYER=> NEWLAYER kuvataan esim.kartografisten (viivat, alueet) kohteiden muodostumista, myös kolmiulotteisia muotoja esim. Incremental Linkage, Incremental Area (s. 28 32) Incremental Drainage (suunnat s. 115)
Open questions in raster analysis(tomlin) how to describe points, lines and areas in raster GIS points distances, accuracy lines - description areas description, area, perimeter surface from points to a surface
Rasterikäsittelyn kysymyksiä (Tomlin) pisteiden, viivojen, alueiden ja kappaleiden kuvaaminen matriisein pisteet - etäisyys, tarkkuus viivat - kuvaaminen alueet - kuvaaminen, pinta-ala, piiri pinta - ruuduista kolmioiksi
Lähteitä/Sources Tomlin,D, GIS and Cartographic Modeling, 1990, uusi painos/new edition 2013 Orava,E., Diplomityö,TKK, M-osasto, 1999 Häggman, D., Diplomityö, TKK,M-osasto,1999