Il set di dati sul cambiamento globale delle foreste di Hansen et al. (2013)
in Earth Engine rappresenta il cambiamento delle foreste, con una risoluzione di 30 metri, a livello globale, tra il 2000 e il 2014. Iniziamo aggiungendo i dati di Hansen et
al. alla mappa. Importa i dati sul cambiamento globale delle foreste
(scopri di più su come cercare e importare set di dati)
cercando "Hansen forest" e assegnando all'importazione il nome gfc2014
oppure copia il
seguente codice nell'editor di codice:
Editor di codice (JavaScript)
var gfc2014 = ee.Image('UMD/hansen/global_forest_change_2015'); Map.addLayer(gfc2014);
Fai clic sul pulsante Esegui nella parte superiore dell'editor di codice e dovresti vedere qualcosa di simile alla Figura 1.

Non preoccuparti, presto lo renderai più bello. (Scopri di più sulle visualizzazioni delle immagini predefinite in Earth Engine). Al termine di questa sezione, avrai un'immagine simile alla Figura 2, in cui il verde rappresenta le aree forestali rilevate dallo studio nel 2000, il rosso la perdita di foreste stimata nel periodo dello studio, il blu l'aumento delle foreste durante questo periodo, il magenta le aree in cui le foreste sono state sia perse che guadagnate e le aree non forestali sono mascherate.

Ricorda che quando un'immagine multibanda viene aggiunta a una mappa, le prime tre bande dell'immagine
vengono scelte rispettivamente come rosso, verde e blu e vengono estese in base al tipo di dati di ciascuna banda. Il motivo per cui l'immagine appare rossa è che le prime tre bande sono
treecover2000
, loss
e gain
. La banda
treecover2000
è espressa in percentuale e ha valori molto più alti di
loss
(verde) e gain
(blu), che sono binari ({0, 1}). L'immagine
viene quindi visualizzata come prevalentemente rossa.
Le bande nei dati sul cambiamento globale delle foreste sono:
Nome della band | Descrizione | Intervallo |
---|---|---|
treecover2000 | Percentuale di copertura arborea nel pixel. | 0 - 100 |
perdita | 1 se si verifica una perdita durante il periodo di studio. | 0 o 1 |
aumento | 1 se si verifica un aumento durante il periodo dello studio. | 0 o 1 |
lossyear | L'anno in cui si è verificata la perdita, con indice 1 a partire dall'anno 2001 o zero se non si è verificata alcuna perdita. | 0 - 12 |
first_b30 | La banda rossa di Landsat 7 creata a partire dai primi pixel validi nel 2000 (o precedenti se non erano presenti pixel validi nel 2000). | 0 - 255 |
first_b40 | La banda del vicino infrarosso di Landsat 7 creata a partire dai primi pixel validi nel 2000. | 0 - 255 |
first_b50 | La prima banda infrarossa a onde corte di Landsat 7 creata a partire dai primi pixel validi nel 2000. | 0 - 255 |
first_b70 | La seconda banda infrarossa a onde corte di Landsat 7 è stata creata a partire dai primi pixel validi nel 2000. | 0 - 255 |
last_b30 | La banda rossa di Landsat 7 creata a partire dai pixel validi più recenti nel 2012. | 0 - 255 |
last_b40 | La banda del vicino infrarosso di Landsat 7 creata a partire dai pixel validi più recenti nel 2012. | 0 - 255 |
last_b50 | La prima banda infrarossa a onde corte di Landsat 7 creata a partire dai pixel validi più recenti del 2012. | 0 - 255 |
last_b70 | La seconda banda infrarossa a onde corte di Landsat 7 è stata creata a partire dai pixel validi più recenti del 2012. | 0 - 255 |
datamask | Nessun dato (0), superficie terrestre mappata (1) e corpi idrici permanenti (2). | 0, 1, 2 |
Per visualizzare la copertura forestale nell'anno 2000 come immagine in scala di grigi, puoi utilizzare la
banda treecover2000
, specificata nel secondo argomento di
Map.addLayer()
:
Editor di codice (JavaScript)
Map.addLayer(gfc2014, {bands: ['treecover2000']}, 'treecover2000');
Il risultato è un'immagine simile a quella della Figura 3.

Ecco un'immagine che utilizza tre bande, le bande 5, 4 e 3 di Landsat per il 2015. Questa combinazione di bande mostra la vegetazione sana in verde e il suolo in malva::
Editor di codice (JavaScript)
Map.addLayer( gfc2014, {bands: ['last_b50', 'last_b40', 'last_b30']}, 'false color');
Il risultato dovrebbe essere simile alla Figura 4.

Una visualizzazione interessante del set di dati sul cambiamento globale delle foreste mostra l'estensione delle foreste nel
2000 in verde, la perdita di foreste in rosso e l'aumento delle foreste in blu. Nello specifico, imposta
loss
come prima banda (rosso), treecover2000
come seconda banda (verde)
e gain
come terza banda (blu):
Editor di codice (JavaScript)
Map.addLayer(gfc2014, {bands: ['loss', 'treecover2000', 'gain']}, 'green');
I valori della banda di perdita e guadagno sono binari, quindi saranno appena visibili nell'immagine, che dovrebbe assomigliare alla Figura 5.

Vorremmo che la perdita di foreste venga visualizzata in rosso vivo e l'aumento di foreste in blu
vivo. Per risolvere il problema, possiamo utilizzare il parametro di visualizzazione max
per impostare
l'intervallo a cui vengono estesi i dati dell'immagine. Tieni presente che il parametro di visualizzazione max
accetta un elenco di valori, corrispondenti ai massimi per ogni banda:
Editor di codice (JavaScript)
Map.addLayer(gfc2014, { bands: ['loss', 'treecover2000', 'gain'], max: [1, 255, 1] }, 'forest cover, loss, gain');
Il risultato dovrebbe essere simile alla Figura 6.

Il risultato è un'immagine verde dove c'è foresta, rossa dove c'è perdita di foresta, blu dove c'è aumento di foresta e magenta dove c'è sia aumento che perdita. Un'ispezione più attenta, tuttavia, rivela che non è del tutto corretto. Invece di essere contrassegnata in rosso, la perdita è arancione. Questo perché i pixel rosso vivo si mescolano con i pixel verdi sottostanti, producendo pixel arancioni. Allo stesso modo, i pixel in cui sono presenti foreste, perdite e guadagni sono rosa, una combinazione di verde, rosso vivo e blu brillante. Per un'illustrazione, vedi la Figura 7.

Per ottenere l'immagine promessa all'inizio del tutorial, puoi creare immagini separate per foresta, perdita, guadagno e per perdita e guadagno. Aggiungi ciascuna di queste immagini alla mappa nell'ordine migliore per la visualizzazione.
Tavolozze
Per visualizzare ogni immagine con un colore diverso, puoi utilizzare il parametro palette
di Map.addLayer()
per le immagini a banda singola. Le tavolozze ti consentono di impostare
la combinazione di colori con cui viene visualizzata l'immagine
(scopri di più sulle tavolozze). Ricorda dal
tutorial sull'API Earth Engine che i colori
di una tavolozza vengono estesi linearmente a min
e max
.
Ad esempio, per utilizzare una tavolozza verde per visualizzare l'immagine dell'estensione della foresta, puoi utilizzare:
Editor di codice (JavaScript)
Map.addLayer(gfc2014, { bands: ['treecover2000'], palette: ['000000', '00FF00'] }, 'forest cover palette');
Il risultato dovrebbe essere simile alla Figura 8.

Lo zoom consente di valutare meglio la risoluzione delle immagini. La Figura 9 mostra un'area intorno a Mariscal Estigarribia in Paraguay.

L'immagine mostrata nella Figura 3 è un po' scura. Il problema è che la
banda treecover2000
ha un tipo di dati byte ([0, 255]), mentre in realtà
i valori sono percentuali ([0, 100]). Per schiarire l'immagine, puoi impostare i parametri min
e/o max
di conseguenza. La tavolozza viene quindi allungata tra
questi estremi.
Editor di codice (JavaScript)
Map.addLayer(gfc2014, { bands: ['treecover2000'], palette: ['000000', '00FF00'], max: 100 }, 'forest cover percent');
Il risultato dovrebbe essere simile alla Figura 9. Tieni presente che in questo esempio è impostato solo il
max
. Il valore predefinito di min
è zero.

Mascheramento
Tutte le immagini mostrate finora presentano grandi aree nere in cui i dati sono pari a zero. Ad esempio, nell'oceano non ci sono alberi. Per rendere trasparenti queste aree, puoi mascherare i relativi valori. Ogni pixel in Earth Engine ha sia un valore sia una maschera. L'immagine viene visualizzata con la trasparenza impostata dalla maschera, dove zero è completamente trasparente e uno è completamente opaco.
Puoi mascherare un'immagine con se stessa. Ad esempio, se mascheri la banda treecover2000
con se stessa, tutte le aree in cui la copertura forestale è pari a zero saranno trasparenti:
Editor di codice (JavaScript)
Map.addLayer(gfc2014.mask(gfc2014), { bands: ['treecover2000'], palette: ['000000', '00FF00'], max: 100 }, 'forest cover masked');
Il risultato dovrebbe essere simile alla Figura 10.

Esempio
È quasi possibile creare una visualizzazione dei dati di Hansen simile a quella all'inizio del tutorial. In questo esempio, mettiamo insieme tutto con
una piccola differenza. Anziché specificare il parametro bands
nella chiamata Map.addLayer
, stiamo creando nuove immagini utilizzando select()
:
Editor di codice (JavaScript)
var treeCover = gfc2014.select(['treecover2000']); var lossImage = gfc2014.select(['loss']); var gainImage = gfc2014.select(['gain']); // Add the tree cover layer in green. Map.addLayer(treeCover.updateMask(treeCover), {palette: ['000000', '00FF00'], max: 100}, 'Forest Cover'); // Add the loss layer in red. Map.addLayer(lossImage.updateMask(lossImage), {palette: ['FF0000']}, 'Loss'); // Add the gain layer in blue. Map.addLayer(gainImage.updateMask(gainImage), {palette: ['0000FF']}, 'Gain');
Il risultato dovrebbe essere simile alla Figura 11.

Nota che ci sono tre chiamate addLayer()
. Ogni
chiamata addLayer()
aggiunge un livello alla mappa. Se passi il mouse sopra il pulsante
Livelli in alto a destra della mappa, vengono visualizzati questi
livelli. Ogni livello può essere attivato o disattivato utilizzando la casella di controllo accanto e l'opacità del livello può essere modificata tramite il cursore accanto al nome del livello.
Siamo quasi pronti per creare l'immagine mostrata all'inizio del tutorial. Tuttavia, manca il livello che mostra i pixel con perdita e guadagno. Manca perché dobbiamo sapere come eseguire alcuni calcoli sulle bande dell'immagine prima di poter calcolare quali pixel mostrano sia perdita che guadagno. Questo è l'argomento della sezione successiva.