Zephyrnet logo

Geospatiaalisen tiedon analyysi Geemapilla – KDnuggets

Treffi:

Geospatiaalisen tiedon analyysi Geemapilla
Tekijän kuvitus
 

Geospatiaalinen data-analyysi on kenttä, joka on tarkoitettu käsittelemään, visualisoimaan ja analysoimaan tietyntyyppistä dataa, jota kutsutaan paikkatiedoksi. Normaaliin tietoon verrattuna meillä on taulukkotietoa, jossa on lisäsarake, sijaintitiedot, kuten leveys- ja pituusaste. 

Tietoa on kahta päätyyppiä: vektoridata ja rasteridata. Kun käsittelet vektoritietoja, sinulla on edelleen taulukkomuotoinen tietojoukko, kun taas rasteridata muistuttaa enemmän kuvia, kuten satelliittikuvia ja ilmakuvia. 

Tässä artikkelissa aion keskittyä rasteritietoihin, joita tarjoaa Google Earth Engine, pilvilaskenta-alusta, joka tarjoaa valtavan tietoluettelon satelliittikuvista. Tällaisia ​​tietoja voi helposti hallita Jupyter-muistikirjasta käyttämällä hengenpelastavaa Python-pakettia, nimeltään Geemap. Aloitetaan!

Mikä on Google Earth Engine?

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Google Earth Enginen kotisivu.
 

Ennen kuin aloitamme Python-kirjaston käytön, meidän on ymmärrettävä sen mahdollisuudet Google Earth Engine. Tämä Google Cloud -alustalla toimiva pilvipohjainen alusta isännöi julkisia ja ilmaisia ​​geospatiaalisia tietojoukkoja akateemisiin, voittoa tavoittelemattomiin ja liiketoimintatarkoituksiin.

 

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Yleiskatsaus Earth Engine -tietoluetteloon. 
 

Tämän alustan kauneus on, että se tarjoaa usean petatavun luettelon rasteri- ja vektoritiedoista, jotka on tallennettu Earth Engine -palvelimille. Tästä saat nopean yleiskatsauksen linkkiä. Lisäksi se tarjoaa API:ita rasteritietojoukkojen analysoinnin helpottamiseksi. 

Mikä on Geemap?

Geospatiaalisen tiedon analyysi Geemapilla
Tekijän kuvitus. Geemap-kirjasto.
 

Geemap on Python-kirjasto, jonka avulla voidaan analysoida ja visualisoida valtavia määriä geospatiaalista tietoa Google Earth Enginestä. 

Ennen tätä pakettia oli mahdollista tehdä laskennallisia pyyntöjä JavaScript- ja Python-sovellusliittymien kautta, mutta Python-sovellusliittymien toiminnallisuus oli rajallinen ja niistä puuttui dokumentaatio. 

Tämän aukon täyttämiseksi luotiin Geemap, jotta käyttäjät voivat käyttää Google Earth Enginen resursseja muutamalla koodirivillä. Geemap on rakennettu eartengine-api, ipyleaflet ja folium.

Kirjaston asentamiseksi tarvitset vain seuraavan komennon:

pip install geemap

 

Suosittelen, että kokeilet tätä upeaa pakettia Google Colabissa ymmärtääksesi sen täyden potentiaalin. Katso tämä ilmainen kirja kirjoittanut professori Dr. Qiusheng Wu Geemapin ja Google Earth Enginen käytön aloittamiseen.

Kuinka käyttää Earth Engineä?

Ensin meidän on tuotava kaksi Python-kirjastoa, joita käytetään opetusohjelmassa:

import ee
import geemap

 

Geemapin lisäksi olemme tuoneet maahan Earth Engine Python -asiakaskirjaston nimeltä ee. 

Tätä Python-kirjastoa voidaan käyttää todentamiseen Earth Enginessä, mutta se voi olla nopeampi käyttämällä suoraan Geemap-kirjastoa:

m = geemap.Map()
m

 

Sinun on napsautettava tämän koodirivin palauttamaa URL-osoitetta, joka luo valtuutuskoodin. Valitse ensin pilviprojekti ja napsauta sitten "GENERATE TOKEN" -painiketta.

 

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Notebook Authenticator.
 

Sen jälkeen se pyytää sinua valitsemaan tilin. Suosittelen käyttämään samaa Google Colab -tiliä, jos käytät sitä.

 

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Valitse tili.
 

Napsauta sitten Valitse kaikki -kohdan vieressä olevaa valintaruutua ja paina "Jatka" -painiketta. Lyhyesti sanottuna tämän vaiheen avulla Notebook Client voi käyttää Earth Engine -tiliä.

 

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Salli Notebook Client -sovelluksen käyttää Earth Engine -tiliäsi.
 

Tämän toiminnon jälkeen todennuskoodi luodaan ja voit liittää sen muistikirjan soluun.

 

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Kopioi todennuskoodi.
 

Kun vahvistuskoodi on syötetty, voit lopulta luoda ja visualisoida tämän interaktiivisen kartan:

m = geemap.Map()
m

 

Geospatiaalisen tiedon analyysi Geemapilla
 

Toistaiseksi tarkkailet vain peruskarttaa ipyleafletin päällä. Python-paketti mahdollistaa interaktiivisten karttojen visualisoinnin Jupyter Notebookissa. 

Luo interaktiivisia karttoja

Aiemmin olemme nähneet, kuinka interaktiivinen kartta todennetaan ja visualisoidaan yhdellä koodirivillä. Nyt voimme mukauttaa oletuskartan määrittämällä painopisteen leveys- ja pituusasteen, zoomaustason ja korkeuden. Olen valinnut keskukselle Rooman koordinaatit keskittyäkseni Euroopan karttaan. 

m = geemap.Map(center=[41, 12], zoom=6, height=600)
m

 

Geospatiaalisen tiedon analyysi Geemapilla

 

Jos haluamme muuttaa pohjakartan, on kaksi mahdollista tapaa. Ensimmäinen tapa koostuu seuraavan koodirivin kirjoittamisesta ja suorittamisesta:

m.add_basemap("ROADMAP")
m

 

Geospatiaalisen tiedon analyysi Geemapilla
 

Vaihtoehtoisesti voit muuttaa pohjakartan manuaalisesti napsauttamalla oikealla olevaa rengasavaimen kuvaketta. 

 

Geospatiaalisen tiedon analyysi Geemapilla
 

Lisäksi näemme luettelon Geemapin tarjoamista peruskartoista:

basemaps = geemap.basemaps.keys()
for bm in basemaps:
   print(bm)

 

Tämä on tulos:

OpenStreetMap
Esri.WorldStreetMap
Esri.WorldImagery
Esri.WorldTopoMap
FWS NWI Wetlands
FWS NWI Wetlands Raster
NLCD 2021 CONUS Land Cover
NLCD 2019 CONUS Land Cover
...

 

Kuten huomaat, peruskarttoja on pitkä sarja, joista suurin osa on saatavilla OpenStreetMapin, ESRI:n ja USGS:n ansiosta.

Maamoottorin tietotyypit

Ennen kuin näytät Geemapin täyden potentiaalin, on tärkeää tuntea kaksi päätietotyyppiä Earth Enginessä. Katso Google Earth Enginen dokumentaatio lisätietoja.

 

Geospatiaalisen tiedon analyysi Geemapilla
Tekijän kuvitus. Esimerkki vektoritietotyypeistä: Geometry, Feature ja FeatureCollection.
 

Vektoritietoja käsiteltäessä käytämme pääasiassa kolmea tietotyyppiä:

  • Geometria tallentaa koordinaatit, joita tarvitaan vektoritietojen piirtämiseen kartalle. Earth Engine tukee kolmea pääasiallista geometriatyyppiä: Point, LineString ja Polygon.
  • Ominaisuus on pohjimmiltaan rivi, joka yhdistää geometrian ja ei-maantieteelliset attribuutit. Se on hyvin samanlainen kuin GeoPandasin GeoSeries-luokka.
  • FeatureCollection on taulukkomuotoinen tietorakenne, joka sisältää joukon ominaisuuksia. FeatureCollection ja GeoDataFrame ovat käsitteellisesti lähes identtisiä.

 

Geospatiaalisen tiedon analyysi Geemapilla
Kuvakaappaus tekijältä. Esimerkki kuvatietotyypistä. Se näyttää Australian Smoothed Digital Elevation Model (DEM-S)
 

Rasteridatan maailmassa keskitymme Kuva esineitä. Google Earth Enginen kuvat koostuvat yhdestä tai useammasta tuotemerkistä, joissa jokaisella kaistalla on tietty nimi, arvioitu vähimmäis- ja enimmäismäärä sekä kuvaus.

Jos meillä on kuvakokoelma tai aikasarja, ImageCollection on sopivampi tietotyyppinä.

 

Geospatiaalisen tiedon analyysi Geemapilla
Näyttökuva tekijältä. Copernicus CORINE Maanpeite.
 

Visualisoimme satelliittikuvat, jotka näyttävät Euroopan maanpeitekartan. Tämä tietojoukko tarjoaa muutokset vuosien 1986 ja 2018 välillä.

Ensin lataamme kuvan ee.Image-sovelluksella ja valitsemme sitten bändin "landcover". Lopuksi visualisoidaan kuva lisäämällä ladattu tietojoukko karttaan tasona Map.addLayerin avulla. 

Map = geemap.Map()
dataset = ee.Image('COPERNICUS/CORINE/V20/100m/2012')
landCover = dataset.select('landcover')
Map.setCenter(16.436, 39.825, 6)
Map.addLayer(landCover, {}, 'Land Cover')
Map

 

Geospatiaalisen tiedon analyysi Geemapilla
Näyttökuva tekijältä.
 

Samalla tavalla voimme ladata ja visualisoida satelliittikuvia, jotka näyttävät Euroopan maanpeitekartan. Tämä tietojoukko tarjoaa muutokset vuosien 1986 ja 2018 välillä.

 

Geospatiaalisen tiedon analyysi Geemapilla
Näyttökuva tekijältä. Offline-tilassa korkearesoluutioisia kuvia metaanipitoisuuksista.

 

Earth Engine ImageCollectionin visualisoimiseksi koodirivit ovat samanlaiset, paitsi ee.ImageCollection. 

Map = geemap.Map()
collection = ee.ImageCollection('COPERNICUS/S5P/OFFL/L3_CH4').select('CH4_column_volume_mixing_ratio_dry_air').filterDate('2019-06-01', '2019-07-16')
band_viz = {
 'min': 1750,
 'max': 1900,
 'palette': ['black', 'blue', 'purple', 'cyan', 'green', 'yellow', 'red']
}

Map.addLayer(collection.mean(), band_viz, 'S5P CH4')
Map.setCenter(0.0, 0.0, 2)
Map

 

Geospatiaalisen tiedon analyysi Geemapilla
Näyttökuva tekijältä.
 

Sepä hienoa! Tästä kartasta huomaamme, kuinka metaani, yksi tärkeimmistä kasvihuoneilmiön aiheuttajista, jakautuu maapallolla. 

Loppuajatukset

Tämä oli johdantoopas, joka voi auttaa sinua työskentelemään Google Earth Engine -tietojen kanssa Pythonilla. Geemap on täydellisin Python-kirjasto tämäntyyppisten tietojen visualisointiin ja analysointiin. 

Jos haluat mennä syvemmälle tähän pakettiin, voit katsoa alla ehdottamiamme resursseja. 

Koodi löytyy tätä. Toivottavasti artikkeli oli hyödyllinen. Hauskaa päivän jatkoa!

Hyödyllisiä resursseja:

 
 

Eugenia Anello on tällä hetkellä tutkija Padovan yliopiston tietotekniikan laitoksella Italiassa. Hänen tutkimusprojektinsa keskittyy jatkuvaan oppimiseen yhdistettynä poikkeamien havaitsemiseen.

spot_img

Uusin älykkyys

spot_img