ee.Image.reduceRegions

Apply a reducer over the area of each feature in the given collection.

לפונקציית הצמצום צריך להיות אותו מספר של קלטים כמו מספר הפסים בתמונת הקלט.

הפונקציה מחזירה את תכונות הקלט, כשכל אחת מהן מוגדלת באמצעות הפלט המתאים של פונקציית הצמצום.

שימושהחזרות
Image.reduceRegions(collection, reducer, scale, crs, crsTransform, tileScale, maxPixelsPerRegion)FeatureCollection
ארגומנטסוגפרטים
זה: imageתמונההתמונה להקטנה.
collectionFeatureCollectionהתכונות שרוצים לצמצם.
reducerמצמצםהפונקציה לצמצום שרוצים להחיל.
scaleמספר ממשי (float), ברירת מחדל: nullקנה מידה נומינלי במטרים של ההטלה שבה רוצים לעבוד.
crsתחזית, ברירת מחדל: nullההטלה שבה רוצים להשתמש. אם לא מציינים הקרנה, המערכת משתמשת בהקרנה של הפס הראשון של התמונה. אם מציינים את המאפיין הזה בנוסף למאפיין 'קנה מידה', המערכת תשנה את קנה המידה לערך שצוין.
crsTransformרשימה, ברירת מחדל: nullרשימת ערכי ההמרה של מערכת קואורדינטות. זהו סדר שורות של מטריצת הטרנספורמציה 3x2. האפשרות הזו לא יכולה לפעול יחד עם האפשרות scale, והיא תחליף כל טרנספורמציה שכבר הוגדרה בהטלה.
tileScaleמספר ממשי (float), ברירת מחדל: 1גורם לקביעת קנה מידה שמשמש להקטנת הגודל של משבצת צבירת נתונים. שימוש ב-tileScale גדול יותר (למשל 2 או 4) עשוי לאפשר חישובים שגורמים לחריגה מזיכרון עם ברירת המחדל.
maxPixelsPerRegionארוך, ברירת מחדל: nullמספר הפיקסלים המקסימלי להפחתה בכל אזור.

דוגמאות

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

בדף סביבת Python מפורט מידע על Python API ועל השימוש ב-geemap לפיתוח אינטראקטיבי.

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)