Mapa de água de Mértola de 2022: extraído do Earth Engine DynamicsWorld

O DynamicsWorld é uma cobertura mundial da google que classifica cada pixel num tipo de cobertura. Neste exemplo, desenvolvemos um algoritmo em Python para extrair apenas a banda correspondente à água e que classificámos a imagem em binário, para quando um píxel tem mais de 20% de probabilidade de ser água.

Na publicação anterior (link) ensinámos a adicionar a REN ao nosso mapa, onde se via uma rede de linhas de água muito densa, no entanto, a realidade é que nem todas têm água. Nesta versão, algumas pequenas barragens de caça e pegos passam despercebidos no algoritmo, mas de modo geral o resultado é muito interessante!



Alguns exemplo de barragens captadas pelo algoritmo:




Fonte: Earth Engine Data Catalog
ImageCollection: Dynamic World V1 
Dataset Provider: World Resources Institute Google
Earth Engine Snippet: ee.ImageCollection("GOOGLE/DYNAMICWORLD/V1")
Banda: water

Código fonte do mapa

Código Python utilizado para criar o mapa dinâmico. 
Autor: André Sanches

import geemap
import ee
import os

m = geemap.Map(center=[37.6392, -7.6691], zoom=10.1)
m.add_basemap('Stadia.AlidadeSmoothDark')
concelhos = ee.FeatureCollection("FAO/GAUL/2015/level2")
mertola = concelhos.filter("ADM2_NAME == 'Mertola'")
m.addLayer(mertola, {}, 'Limite Mértola')


COL_FILTER = ee.Filter.And(ee.Filter.bounds(mertola), ee.Filter.date('2022-01-01', '2022-02-01'))

image = ee.ImageCollection('GOOGLE/DYNAMICWORLD/V1').select('water').filter(COL_FILTER)

raster_vis = {
"min": 0.0,
"palette": [
"000000",
"00B0F0"
],
"max": 1.0
}

b = image.mosaic().clip(mertola)
b = b.where(b.gte(0.2),1)
b = b.where(b.lt(0.2),0)
b = b.selfMask()

m.addLayer(b, raster_vis, 'Mertola água')

m

Sem comentários:

Enviar um comentário