ee.Image.reduceRegions

Einen Reduzierer auf den Bereich jedes Elements in der angegebenen Sammlung anwenden.

Der Reducer muss dieselbe Anzahl von Eingaben haben wie das Eingabebild Bänder hat.

Gibt die Eingabefeatures zurück, die jeweils um die entsprechenden Reducer-Ausgaben ergänzt sind.

NutzungAusgabe
Image.reduceRegions(collection, reducer, scale, crs, crsTransform, tileScale, maxPixelsPerRegion)FeatureCollection
ArgumentTypDetails
das: imageBildDas Bild, das verkleinert werden soll.
collectionFeatureCollectionDie Funktionen, die reduziert werden sollen.
reducerReducerDer anzuwendende Reducer.
scaleGleitkommazahl, Standard: nullDer Nominalmaßstab in Metern der zu verwendenden Projektion.
crsProjektion, Standardwert: nullDie Projektion, in der gearbeitet werden soll. Wenn keine Angabe gemacht wird, wird die Projektion des ersten Bandes des Bildes verwendet. Wenn zusätzlich zum Maßstab angegeben, wird die Karte auf den angegebenen Maßstab umskaliert.
crsTransformListe, Standard: „null“Liste der CRS-Transformationswerte. Dies ist eine zeilenorientierte Sortierung der 3 × 2-Transformationsmatrix. Diese Option ist mit „scale“ nicht kompatibel und ersetzt alle bereits für die Projektion festgelegten Transformationen.
tileScaleGleitkommazahl, Standard: 1Ein Skalierungsfaktor, mit dem die Größe der Aggregationskachsel verringert wird. Mit einer größeren „tileScale“ (z. B. 2 oder 4) können Berechnungen aktivieren, bei denen mit der Standardeinstellung der Arbeitsspeicher nicht ausreicht.
maxPixelsPerRegionLang, Standardwert: nullDie maximale Anzahl von Pixeln, die pro Region reduziert werden soll.

Beispiele

Code-Editor (JavaScript)

// A Landsat 8 SR image with SWIR1, NIR, and green bands.
var img = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508')
              .select(['SR_B6', 'SR_B5', 'SR_B3']);

// Santa Cruz Mountains ecoregions feature collection.
var regionCol = ee.FeatureCollection('EPA/Ecoregions/2013/L4')
                    .filter('us_l4name == "Santa Cruz Mountains" || ' +
                            'us_l4name == "San Mateo Coastal Hills" || ' +
                            'us_l4name == "Leeward Hills"');

// Display layers on the map.
Map.setCenter(-122.08, 37.22, 9);
Map.addLayer(img, {min: 10000, max: 20000}, 'Landsat image');
Map.addLayer(regionCol, {color: 'white'}, 'Santa Cruz Mountains ecoregions');

// Calculate median band values within Santa Cruz Mountains ecoregions. It is
// good practice to explicitly define "scale" (or "crsTransform") and "crs"
// parameters of the analysis to avoid unexpected results from undesired
// defaults when e.g. reducing a composite image.
var stats = img.reduceRegions({
  collection: regionCol,
  reducer: ee.Reducer.median(),
  scale: 30,  // meters
  crs: 'EPSG:3310',  // California Albers projection
});

// The input feature collection is returned with new properties appended.
// The new properties are the outcome of the region reduction per image band,
// for each feature in the collection. Region reduction property names
// are the same as the input image band names.
print('Median band values, Santa Cruz Mountains ecoregions', stats);

// You can combine reducers to calculate e.g. mean and standard deviation
// simultaneously. The resulting property names are the concatenation of the
// band names and statistic names, separated by an underscore.
var reducer = ee.Reducer.mean().combine({
  reducer2: ee.Reducer.stdDev(),
  sharedInputs: true
});
var multiStats = img.reduceRegions({
  collection: regionCol,
  reducer: reducer,
  scale: 30,
  crs: 'EPSG:3310',
});
print('Mean & SD band values, Santa Cruz Mountains ecoregions', multiStats);

Python einrichten

Auf der Seite Python-Umgebung finden Sie Informationen zur Python API und zur Verwendung von geemap für die interaktive Entwicklung.

import ee
import geemap.core as geemap

Colab (Python)

# A Landsat 8 SR image with SWIR1, NIR, and green bands.
img = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508').select(
    ['SR_B6', 'SR_B5', 'SR_B3']
)

# Santa Cruz Mountains ecoregions feature collection.
region_col = ee.FeatureCollection('EPA/Ecoregions/2013/L4').filter(
    'us_l4name == "Santa Cruz Mountains" || '
    + 'us_l4name == "San Mateo Coastal Hills" || '
    + 'us_l4name == "Leeward Hills"'
)

# Display layers on the map.
m = geemap.Map()
m.set_center(-122.08, 37.22, 9)
m.add_layer(img, {'min': 10000, 'max': 20000}, 'Landsat image')
m.add_layer(
    region_col, {'color': 'white'}, 'Santa Cruz Mountains ecoregions'
)
display(m)

# Calculate median band values within Santa Cruz Mountains ecoregions. It is
# good practice to explicitly define "scale" (or "crsTransform") and "crs"
# parameters of the analysis to avoid unexpected results from undesired
# defaults when e.g. reducing a composite image.
stats = img.reduceRegions(
    collection=region_col,
    reducer=ee.Reducer.median(),
    scale=30,  # meters
    crs='EPSG:3310',  # California Albers projection
)

# The input feature collection is returned with new properties appended.
# The new properties are the outcome of the region reduction per image band,
# for each feature in the collection. Region reduction property names
# are the same as the input image band names.
display('Median band values, Santa Cruz Mountains ecoregions', stats)

# You can combine reducers to calculate e.g. mean and standard deviation
# simultaneously. The resulting property names are the concatenation of the
# band names and statistic names, separated by an underscore.
reducer = ee.Reducer.mean().combine(
    reducer2=ee.Reducer.stdDev(), sharedInputs=True
)
multi_stats = img.reduceRegions(
    collection=region_col,
    reducer=reducer,
    scale=30,
    crs='EPSG:3310',
)
display('Mean & SD band values, Santa Cruz Mountains ecoregions', multi_stats)