缩减器的输入数量必须与输入图片中的波段数量相同。
返回输入特征,每个特征都通过相应的缩减器输出进行扩充。
| 用法 | 返回 |
|---|---|
Image.reduceRegions(collection, reducer, scale, crs, crsTransform, tileScale, maxPixelsPerRegion) | FeatureCollection |
| 实参 | 类型 | 详细信息 |
|---|---|---|
this:image | Image | 要缩减的图片。 |
collection | FeatureCollection | 要缩减的特征。 |
reducer | Reducer | 要应用的缩减器。 |
scale | 浮点数,默认值:null | 投影的标称比例(以米为单位)。 |
crs | Projection,默认值:null | 要使用的投影。如果未指定,则使用图片第一个波段的投影。如果除了比例之外还指定了此参数,则会重新缩放为指定的比例。 |
crsTransform | 列表,默认值:null | CRS 转换值的列表。这是 3x2 转换矩阵的行优先顺序。此选项与“scale”互斥,并将替换投影中已设置的所有转换。 |
tileScale | 浮点数,默认值:1 | 用于缩小聚合图块大小的缩放比例;使用较大的 tileScale(例如 2 或 4)可能会启用在默认情况下内存不足的计算。 |
maxPixelsPerRegion | 长整型,默认值:null | 每个区域要缩减的最大像素数。 |
示例
代码编辑器 (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);
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)