reducer 的输入数量必须与输入图片的波段数量相同,或者必须只有一个输入,并且会针对每个波段重复使用。
返回 reducer 输出的字典。
用法 | 返回 |
---|---|
Image.reduceRegion(reducer, geometry, scale, crs, crsTransform, bestEffort, maxPixels, tileScale) | 字典 |
参数 | 类型 | 详细信息 |
---|---|---|
此:image | 图片 | 要缩减的图片。 |
reducer | 缩减器 | 要应用的缩减器。 |
geometry | 几何图形,默认值:null | 要减少数据的区域。默认为影像第一个波段的覆盖区。 |
scale | 浮点数,默认值:null | 要使用的投影的标称比例(以米为单位)。 |
crs | 投影,默认值:null | 要使用的投影。如果未指定,则使用映像第一个波段的投影。如果除了缩放比例之外还指定了此参数,则会重新缩放到指定的缩放比例。 |
crsTransform | 列表,默认值:null | CRS 转换值列表。这是 3x2 转换矩阵的行优先顺序。此选项与“scale”互斥,并会替换投影上已设置的所有转换。 |
bestEffort | 布尔值,默认值:false | 如果多边形在给定比例下包含的像素过多,则计算并使用更大的比例,以便操作成功完成。 |
maxPixels | Long,默认值:10000000 | 要减少的最大像素数。 |
tileScale | 浮点数,默认值:1 | 用于调整聚合图块大小的缩放比例,介于 0.1 到 16 之间;设置较大的 tileScale(例如,2 或 4)使用较小的 tile,并且可能能够进行默认情况下因内存不足而无法进行的计算。 |
示例
代码编辑器 (JavaScript)
// A Landsat 8 surface reflectance 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 ecoregion geometry. var geom = ee.FeatureCollection('EPA/Ecoregions/2013/L4') .filter('us_l4name == "Santa Cruz Mountains"').geometry(); // Display layers on the map. Map.setCenter(-122.08, 37.22, 9); Map.addLayer(img, {min: 10000, max: 20000}, 'Landsat image'); Map.addLayer(geom, {color: 'white'}, 'Santa Cruz Mountains ecoregion'); // Calculate median band values within Santa Cruz Mountains ecoregion. 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.reduceRegion({ reducer: ee.Reducer.median(), geometry: geom, scale: 30, // meters crs: 'EPSG:3310', // California Albers projection }); // A dictionary is returned; keys are band names, values are the statistic. print('Median band values, Santa Cruz Mountains ecoregion', stats); // You can combine reducers to calculate e.g. mean and standard deviation // simultaneously. The output dictionary keys 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.reduceRegion({ reducer: reducer, geometry: geom, scale: 30, crs: 'EPSG:3310', }); print('Mean & SD band values, Santa Cruz Mountains ecoregion', multiStats);
import ee import geemap.core as geemap
Colab (Python)
# A Landsat 8 surface reflectance 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 ecoregion geometry. geom = ( ee.FeatureCollection('EPA/Ecoregions/2013/L4') .filter('us_l4name == "Santa Cruz Mountains"') .geometry() ) # 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(geom, {'color': 'white'}, 'Santa Cruz Mountains ecoregion') display(m) # Calculate median band values within Santa Cruz Mountains ecoregion. 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.reduceRegion( reducer=ee.Reducer.median(), geometry=geom, scale=30, # meters crs='EPSG:3310', # California Albers projection ) # A dictionary is returned keys are band names, values are the statistic. display('Median band values, Santa Cruz Mountains ecoregion', stats) # You can combine reducers to calculate e.g. mean and standard deviation # simultaneously. The output dictionary keys 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.reduceRegion( reducer=reducer, geometry=geom, scale=30, crs='EPSG:3310', ) display('Mean & SD band values, Santa Cruz Mountains ecoregion', multi_stats)