Angenommen, Sie müssen den Median einer Zeitreihe von Bildern ermitteln, die durch eine ImageCollection
dargestellt wird. Verwenden Sie imageCollection.reduce()
, um eine ImageCollection
zu verkleinern. Dadurch wird die Bildsammlung auf ein einzelnes Bild reduziert, wie in Abbildung 1 dargestellt. Die Ausgabe wird pixelweise berechnet, sodass jedes Pixel in der Ausgabe aus dem Medianwert aller Bilder in der Sammlung an dieser Stelle besteht. Wenn Sie andere Statistiken wie Mittelwert, Summe, Varianz oder ein beliebiges Perzentil abrufen möchten, müssen Sie den entsprechenden Reduzierer auswählen und anwenden. Eine Liste aller derzeit verfügbaren Reduzierer finden Sie im Code-Editor auf dem Tab Docs. Für grundlegende Statistiken wie „Min.“, „Max.“ und „Mittelwert“
Für ImageCollection
gibt es Tastenkürzel wie min()
, max()
und mean()
. Sie funktionieren genau wie der Aufruf von reduce()
, mit der Ausnahme, dass den resultierenden Bandnamen nicht der Name des Reducers angehängt wird.

Ein Beispiel für die Reduzierung einer ImageCollection
ist eine Sammlung von Landsat 5-Bildern, die nach Pfad und Zeile gefiltert wird. Im folgenden Code wird reduce()
verwendet, um die Sammlung auf einen Image
zu reduzieren. Hier wird ein Median-Reduzierer nur zu Veranschaulichungszwecken verwendet:
Code-Editor (JavaScript)
// Load an image collection, filtered so it's not too much data. var collection = ee.ImageCollection('LANDSAT/LT05/C02/T1') .filterDate('2008-01-01', '2008-12-31') .filter(ee.Filter.eq('WRS_PATH', 44)) .filter(ee.Filter.eq('WRS_ROW', 34)); // Compute the median in each band, each pixel. // Band names are B1_median, B2_median, etc. var median = collection.reduce(ee.Reducer.median()); // The output is an Image. Add it to the map. var vis_param = {bands: ['B4_median', 'B3_median', 'B2_median'], gamma: 1.6}; Map.setCenter(-122.3355, 37.7924, 9); Map.addLayer(median, vis_param);
import ee import geemap.core as geemap
Colab (Python)
# Load an image collection, filtered so it's not too much data. collection = ( ee.ImageCollection('LANDSAT/LT05/C02/T1') .filterDate('2008-01-01', '2008-12-31') .filter(ee.Filter.eq('WRS_PATH', 44)) .filter(ee.Filter.eq('WRS_ROW', 34)) ) # Compute the median in each band, each pixel. # Band names are B1_median, B2_median, etc. median = collection.reduce(ee.Reducer.median()) # The output is an Image. Add it to the map. vis_param = {'bands': ['B4_median', 'B3_median', 'B2_median'], 'gamma': 1.6} m = geemap.Map() m.set_center(-122.3355, 37.7924, 9) m.add_layer(median, vis_param) m
Dies gibt eine mehrbandige Image
zurück, deren jedes Pixel der Median aller nicht maskierten Pixel in der ImageCollection
an dieser Pixelposition ist. Insbesondere wurde der Reducer für jeden Band der Eingabebilder wiederholt, d. h. der Median wird in jedem Band unabhängig berechnet. Die Bandnamen haben den Namen des Reducers angehängt: 'B1_median'
, 'B2_median'
usw. Die Ausgabe sollte in etwa so aussehen wie in Abbildung 2.
Weitere Informationen zum Verringern von Bildsammlungen finden Sie im Abschnitt „Verringern“ der ImageCollection
-Dokumentation. Beachten Sie insbesondere, dass Bilder, die durch das Reduzieren einer ImageCollection
erstellt werden, keine Projektion haben. Das bedeutet, dass Sie die Skalierung für alle Berechnungen mit berechneten Bildern, die durch eine ImageCollection
-Reduktion ausgegeben werden, explizit festlegen sollten.
