Einführung in die Daten zu globalen Waldveränderungen von Hansen et al.

Das Dataset Hansen et al. (2013) Global Forest Change in Earth Engine stellt die Waldveränderungen weltweit zwischen 2000 und 2014 mit einer Auflösung von 30 Metern dar. Fügen wir zuerst die Daten von Hansen et al. der Karte hinzu. Importieren Sie entweder die Daten zu globalen Waldveränderungen (weitere Informationen zum Suchen und Importieren von Datasets), indem Sie nach „Hansen forest“ suchen und den Import gfc2014 nennen, oder kopieren Sie den folgenden Code in den Code-Editor:

Code-Editor (JavaScript)

var gfc2014 = ee.Image('UMD/hansen/global_forest_change_2015');
Map.addLayer(gfc2014);

Klicken Sie oben im Code-Editor auf die Schaltfläche Ausführen. Es sollte dann etwas wie in Abbildung 1 angezeigt werden.

Standardeinstellung für Waldänderungen
Abbildung 1. Standardvisualisierung der Daten zu Waldveränderungen von Hansen et al. (2013).

Keine Sorge, du wirst es bald besser aussehen lassen. Weitere Informationen zu Standardbildvisualisierungen in Earth Engine Am Ende dieses Abschnitts haben Sie ein Bild, das in etwa wie Abbildung 2 aussieht. Grün steht für Wald, der im Jahr 2000 vorhanden war, Rot für geschätzten Waldverlust im Untersuchungszeitraum, Blau für Waldzuwachs in diesem Zeitraum, Magenta für Gebiete, in denen sowohl Waldverlust als auch Waldzuwachs stattgefunden haben, und Nichtwaldgebiete sind maskiert.

Benutzerdefinierte Änderungen im Wald
Abbildung 2. Benutzerdefinierte Visualisierung der Daten zu Waldveränderungen von Hansen et al. (2013).

Wenn ein Multibandbild einer Karte hinzugefügt wird, werden die ersten drei Bänder des Bildes als Rot, Grün und Blau ausgewählt und entsprechend dem Datentyp der einzelnen Bänder gedehnt. Das Bild sieht rot aus, weil die ersten drei Bänder treecover2000, loss und gain sind. Der treecover2000-Bereich wird als Prozentsatz ausgedrückt und hat Werte, die viel höher sind als loss (grün) und gain (blau), die binär sind ({0, 1}). Das Bild wird daher überwiegend rot dargestellt.

Die Bänder in den Global Forest Change-Daten sind:

Name der BandBeschreibungBereich
treecover2000Prozentsatz der Baumdeckung im Pixel.0–100
Niederlage 1, wenn während des Studienzeitraums ein Verlust auftritt. 0 oder 1
Zunahme1, wenn während des Studienzeitraums jemals ein Gewinn erzielt wurde. 0 oder 1
lossyearDas Jahr, in dem der Verlust aufgetreten ist, beginnend mit 1 für das Jahr 2001, oder 0, wenn kein Verlust aufgetreten ist.0–12
first_b30Das rote Band von Landsat 7, das aus den ersten gültigen Pixeln im Jahr 2000 erstellt wurde (oder älter, wenn es im Jahr 2000 keine gültigen Pixel gab). 0–255
first_b40Der Landsat 7-Band für das nahe Infrarot, der aus den ersten gültigen Pixeln im Jahr 2000 erstellt wurde.0–255
first_b50Das erste kurzwellige Infrarotband von Landsat 7, das aus den ersten gültigen Pixeln im Jahr 2000 erstellt wurde.0–255
first_b70Das zweite kurzwellige Infrarotband von Landsat 7 wurde aus den ersten gültigen Pixeln im Jahr 2000 erstellt.0–255
last_b30Das rote Band von Landsat 7, das aus den neuesten gültigen Pixeln im Jahr 2012 erstellt wurde. 0–255
last_b40Das Landsat 7-Band für das nahe Infrarot, das aus den letzten gültigen Pixeln im Jahr 2012 erstellt wurde.0–255
last_b50Das erste kurzwellige Infrarotband von Landsat 7, das aus den neuesten gültigen Pixeln von 2012 erstellt wurde.0–255
last_b70Das zweite kurzwellige Infrarotband von Landsat 7, das aus den neuesten gültigen Pixeln von 2012 erstellt wurde.0–255
datamaskKeine Daten (0), kartierte Landoberfläche (1) und permanente Gewässer (2).0, 1, 2

Wenn Sie die Waldbedeckung im Jahr 2000 als Graustufenbild darstellen möchten, können Sie das Band treecover2000 verwenden, das im zweiten Argument für Map.addLayer() angegeben ist:

Code-Editor (JavaScript)

Map.addLayer(gfc2014, {bands: ['treecover2000']}, 'treecover2000');

Das Ergebnis sollte in etwa wie in Abbildung 3 aussehen.

Baumbestand in den USA
Abbildung 3. Graustufenbild der Baumkronenbedeckung in den USA im Jahr 2000.

Hier sehen Sie ein Bild, das drei Bänder verwendet: Landsat-Bänder 5, 4 und 3 für 2015. Bei dieser Bandkombination wird gesunde Vegetation grün und der Boden lila dargestellt::

Code-Editor (JavaScript)

Map.addLayer(
    gfc2014, {bands: ['last_b50', 'last_b40', 'last_b30']}, 'false color');

Das Ergebnis sollte in etwa so aussehen wie in Abbildung 4.

US-Falschfarben
Abbildung 4. Landsat 7, Falschfarbenbild der USA aus dem Jahr 2015.

Eine gute Visualisierung des Datasets „Global Forest Change“ zeigt die Waldausdehnung im Jahr 2000 als Grün, den Waldverlust als Rot und den Waldzuwachs als Blau. Konkret sollte loss das erste Band (rot), treecover2000 das zweite Band (grün) und gain das dritte Band (blau) sein:

Code-Editor (JavaScript)

Map.addLayer(gfc2014, {bands: ['loss', 'treecover2000', 'gain']}, 'green');

Die Werte für die Verlust- und Gewinnbereiche sind binär und daher im Bild kaum zu sehen. Das Bild sollte in etwa wie Abbildung 5 aussehen.

Waldbestand in den USA
Abbildung 5. Baumbestand in den USA im Jahr 2000 (grün).

Wir möchten, dass Waldverlust in leuchtendem Rot und Waldzuwachs in leuchtendem Blau dargestellt wird. Um dieses Problem zu beheben, können wir den Visualisierungsparameter max verwenden, um den Bereich festzulegen, auf den die Bilddaten gedehnt werden. Der Visualisierungsparameter max akzeptiert eine Liste von Werten, die den Maximalwerten für die einzelnen Bänder entsprechen:

Code-Editor (JavaScript)

Map.addLayer(gfc2014, {
  bands: ['loss', 'treecover2000', 'gain'],
  max: [1, 255, 1]
}, 'forest cover, loss, gain');

Das Ergebnis sollte in etwa so aussehen wie in Abbildung 6.

Waldveränderungen in den USA
Abbildung 6. Waldverlust in den USA (rot), Waldbedeckung im Jahr 2000 (grün) und Zuwachs (blau).

So entsteht ein Bild, das grün ist, wenn es Wald gibt, rot, wenn es Waldverlust gibt, blau, wenn es Waldzuwachs gibt, und magentafarben, wenn es sowohl Zuwachs als auch Verlust gibt. Bei genauerer Betrachtung stellt sich jedoch heraus, dass das nicht ganz stimmt. Anstelle von Rot wird der Verlust orange dargestellt. Das liegt daran, dass sich die hellroten Pixel mit den darunterliegenden grünen Pixeln vermischen und so orangefarbene Pixel entstehen. Die Pixel, in denen Wald, Verlust und Zuwachs zu sehen sind, sind rosa – eine Kombination aus Grün, Hellrot und Hellblau. Eine Abbildung finden Sie in Abbildung 7.

Änderung des Waldbestands im pazifischen Nordwesten
Abbildung 7. Waldverlust (rot) im pazifischen Nordwesten der USA, Waldbedeckung im Jahr 2000 (grün) und Waldzuwachs (blau).

Um das Bild zu erhalten, das am Anfang des Tutorials versprochen wurde, können Sie separate Bilder für Verlust, Gewinn und für Verlust und Gewinn erstellen. Fügen Sie jedes dieser Bilder in der Reihenfolge hinzu, die für die Anzeige am besten geeignet ist.

Paletten

Wenn Sie jedes Bild in einer anderen Farbe darstellen möchten, können Sie den Parameter palette von Map.addLayer() für Einzelbandbilder verwenden. Mit Paletten können Sie das Farbschema festlegen, mit dem das Bild angezeigt wird (weitere Informationen zu Paletten). Im Earth Engine API-Tutorial haben Sie gelernt, dass die Farben in einer Palette linear auf min und max gestreckt werden.

Wenn Sie beispielsweise eine grüne Palette verwenden möchten, um das Bild mit der Waldausdehnung darzustellen, können Sie Folgendes verwenden:

Code-Editor (JavaScript)

Map.addLayer(gfc2014, {
  bands: ['treecover2000'],
  palette: ['000000', '00FF00']
}, 'forest cover palette');

Das Ergebnis sollte in etwa so aussehen wie in Abbildung 8.

Waldfläche – nicht verfügbar
Abbildung 8. Waldfläche in Nordamerika im Jahr 2000.

Durch das Heranzoomen lässt sich die Auflösung der Bilder besser erkennen. Abbildung 9 zeigt ein Gebiet um Mariscal Estigarribia in Paraguay.

Waldfläche in Paraguay
Abbildung 9. Baumbestand im Jahr 2000 in der Umgebung von Mariscal Estigarribia in Paraguay.

Das Bild in Abbildung 3 ist etwas dunkel. Das Problem besteht darin, dass das treecover2000-Band den Byte-Datentyp ([0, 255]) hat, obwohl die Werte in Wirklichkeit Prozentsätze ([0, 100]) sind. Wenn Sie das Bild aufhellen möchten, können Sie die Parameter min und/oder max entsprechend festlegen. Die Palette wird dann zwischen diesen Extremwerten gestreckt.

Code-Editor (JavaScript)

Map.addLayer(gfc2014, {
  bands: ['treecover2000'],
  palette: ['000000', '00FF00'],
  max: 100
}, 'forest cover percent');

Das Ergebnis sollte in etwa so aussehen wie in Abbildung 9. In diesem Beispiel wird nur max festgelegt. Der Standardwert für min ist null.

Gestrecktes Paraguay
Abbildung 9. Waldbestand im Jahr 2000 um Mariscal Estigarribia in Paraguay, gedehnt auf [0, 100].

Maskieren

Alle bisher gezeigten Bilder hatten große schwarze Bereiche, in denen die Daten null sind. Beispiel: Im Meer gibt es keine Bäume. Um diese Bereiche transparent zu machen, können Sie ihre Werte maskieren. Jedes Pixel in Earth Engine hat sowohl einen Wert als auch eine Maske. Das Bild wird mit der durch die Maske festgelegten Transparenz gerendert. Dabei ist 0 vollständig transparent und 1 vollständig undurchsichtig.

Sie können ein Bild mit sich selbst maskieren. Wenn Sie beispielsweise das treecover2000-Band mit sich selbst maskieren, werden alle Bereiche, in denen die Waldbedeckung null ist, transparent dargestellt:

Code-Editor (JavaScript)

Map.addLayer(gfc2014.mask(gfc2014), {
  bands: ['treecover2000'],
  palette: ['000000', '00FF00'],
  max: 100
}, 'forest cover masked');

Das Ergebnis sollte in etwa so aussehen wie in Abbildung 10.

Baumbestand in Nord- und Südamerika
Abbildung 10. Baumbestand im Jahr 2000, gestreckt und maskiert.

Beispiel

Es ist fast möglich, eine Visualisierung der Hansen-Daten wie am Anfang des Tutorials zu erstellen. In diesem Beispiel fassen wir alles zusammen, mit einem kleinen Unterschied. Anstatt den Parameter bands im Aufruf Map.addLayer anzugeben, erstellen wir neue Bilder mit select():

Code-Editor (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');

Das Ergebnis sollte in etwa so aussehen wie in Abbildung 11.

Gewinn/Verlust in Amerika
Abbildung 11. Waldverlust (rot), Waldbestand im Jahr 2000 (grün) und Zuwachs (blau).

Beachten Sie, dass es drei addLayer()-Aufrufe gibt. Mit jedem addLayer()-Aufruf wird der Karte eine Ebene hinzugefügt. Wenn Sie den Mauszeiger auf die Schaltfläche Ebenen rechts oben auf der Karte bewegen, werden diese Ebenen angezeigt. Jede Ebene kann über das Kästchen daneben aktiviert oder deaktiviert werden. Die Deckkraft der Ebene kann über den Schieberegler neben dem Ebenennamen angepasst werden.

Wir sind fast so weit, das Bild zu erstellen, das am Anfang des Tutorials zu sehen ist. Allerdings fehlt die Ebene mit den Pixeln, die sowohl Verlust als auch Gewinn aufweisen. Sie fehlt, weil wir wissen müssen, wie wir einige Berechnungen für Bildbänder durchführen müssen, bevor wir berechnen können, welche Pixel sowohl Verlust als auch Gewinn aufweisen. Das ist das Thema des nächsten Abschnitts.