公告:凡是在
2025 年 4 月 15 日前註冊使用 Earth Engine 的非商業專案,都必須
驗證非商業用途資格,才能繼續存取 Earth Engine。
ee.Image.reduceRegion
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
將縮減函式套用至特定區域中的所有像素。
縮減器必須與輸入圖片的波段數相同,或是只有單一輸入,並針對每個波段重複執行。
傳回縮減器輸出的字典。
用量 | 傳回 |
---|
Image.reduceRegion(reducer, geometry, scale, crs, crsTransform, bestEffort, maxPixels, tileScale) | 字典 |
引數 | 類型 | 詳細資料 |
---|
這個:image | 圖片 | 要縮小的圖片。 |
reducer | 縮減函式 | 要套用的縮減函式。 |
geometry | 幾何圖形,預設值:null | 要減少資料的區域。預設為圖片第一個波段的足跡。 |
scale | 浮點值,預設值為空值 | 以公尺為單位的投影名義比例,用於工作。 |
crs | 投影,預設值:null | 要使用的投影機。如未指定,系統會使用圖片第一個波段的投影。如果除了比例外還指定了其他值,系統會重新調整為指定比例。 |
crsTransform | 清單,預設值為空值 | CRS 轉換值清單。這是 3x2 轉換矩陣的列優先順序。這個選項與「scale」互斥,且會取代投影上已設定的任何變形。 |
bestEffort | 布林值,預設值為 false | 如果多邊形在指定比例下包含的像素過多,請計算並使用較大的比例,這樣作業就能成功。 |
maxPixels | Long,預設值:10000000 | 要減少的像素數量上限。 |
tileScale | 浮點值,預設值為 1 | 介於 0.1 和 16 之間的縮放比例,用於調整聚合圖塊大小;設定較大的 tileScale (例如 2 或 4) 使用較小的圖塊,可啟用預設值會導致記憶體不足的運算作業。 |
範例
程式碼編輯器 (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);
Python 設定
請參閱
Python 環境頁面,瞭解 Python API 和如何使用 geemap
進行互動式開發。
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)
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-26 (世界標準時間)。
[null,null,["上次更新時間:2025-07-26 (世界標準時間)。"],[[["\u003cp\u003e\u003ccode\u003eImage.reduceRegion()\u003c/code\u003e applies a reducer function to all pixels within a specified region of an image.\u003c/p\u003e\n"],["\u003cp\u003eThe reducer can either accept the same number of inputs as the image bands or a single input to be applied to each band.\u003c/p\u003e\n"],["\u003cp\u003eIt returns a dictionary containing the reducer's output, with keys representing band names and values corresponding to the calculated statistic.\u003c/p\u003e\n"],["\u003cp\u003eUsers can define parameters like scale, projection, and geometry to control the region and resolution of the reduction operation.\u003c/p\u003e\n"],["\u003cp\u003eMultiple reducers can be combined to calculate multiple statistics simultaneously, with output dictionary keys reflecting both band and statistic names.\u003c/p\u003e\n"]]],[],null,["# ee.Image.reduceRegion\n\nApply a reducer to all the pixels in a specific region.\n\n\u003cbr /\u003e\n\nEither the reducer must have the same number of inputs as the input image has bands, or it must have a single input and will be repeated for each band.\n\nReturns a dictionary of the reducer's outputs.\n\n| Usage | Returns |\n|---------------------------------------------------------------------------------------------------------------------------------------|------------|\n| Image.reduceRegion`(reducer, `*geometry* `, `*scale* `, `*crs* `, `*crsTransform* `, `*bestEffort* `, `*maxPixels* `, `*tileScale*`)` | Dictionary |\n\n| Argument | Type | Details |\n|----------------|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| this: `image` | Image | The image to reduce. |\n| `reducer` | Reducer | The reducer to apply. |\n| `geometry` | Geometry, default: null | The region over which to reduce data. Defaults to the footprint of the image's first band. |\n| `scale` | Float, default: null | A nominal scale in meters of the projection to work in. |\n| `crs` | Projection, default: null | The projection to work in. If unspecified, the projection of the image's first band is used. If specified in addition to scale, rescaled to the specified scale. |\n| `crsTransform` | List, default: null | The list of CRS transform values. This is a row-major ordering of the 3x2 transform matrix. This option is mutually exclusive with 'scale', and replaces any transform already set on the projection. |\n| `bestEffort` | Boolean, default: false | If the polygon would contain too many pixels at the given scale, compute and use a larger scale which would allow the operation to succeed. |\n| `maxPixels` | Long, default: 10000000 | The maximum number of pixels to reduce. |\n| `tileScale` | Float, default: 1 | A scaling factor between 0.1 and 16 used to adjust aggregation tile size; setting a larger tileScale (e.g., 2 or 4) uses smaller tiles and may enable computations that run out of memory with the default. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\n// A Landsat 8 surface reflectance image with SWIR1, NIR, and green bands.\nvar img = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508')\n .select(['SR_B6', 'SR_B5', 'SR_B3']);\n\n// Santa Cruz Mountains ecoregion geometry.\nvar geom = ee.FeatureCollection('EPA/Ecoregions/2013/L4')\n .filter('us_l4name == \"Santa Cruz Mountains\"').geometry();\n\n// Display layers on the map.\nMap.setCenter(-122.08, 37.22, 9);\nMap.addLayer(img, {min: 10000, max: 20000}, 'Landsat image');\nMap.addLayer(geom, {color: 'white'}, 'Santa Cruz Mountains ecoregion');\n\n// Calculate median band values within Santa Cruz Mountains ecoregion. It is\n// good practice to explicitly define \"scale\" (or \"crsTransform\") and \"crs\"\n// parameters of the analysis to avoid unexpected results from undesired\n// defaults when e.g. reducing a composite image.\nvar stats = img.reduceRegion({\n reducer: ee.Reducer.median(),\n geometry: geom,\n scale: 30, // meters\n crs: 'EPSG:3310', // California Albers projection\n});\n\n// A dictionary is returned; keys are band names, values are the statistic.\nprint('Median band values, Santa Cruz Mountains ecoregion', stats);\n\n// You can combine reducers to calculate e.g. mean and standard deviation\n// simultaneously. The output dictionary keys are the concatenation of the band\n// names and statistic names, separated by an underscore.\nvar reducer = ee.Reducer.mean().combine({\n reducer2: ee.Reducer.stdDev(),\n sharedInputs: true\n});\nvar multiStats = img.reduceRegion({\n reducer: reducer,\n geometry: geom,\n scale: 30,\n crs: 'EPSG:3310',\n});\nprint('Mean & SD band values, Santa Cruz Mountains ecoregion', multiStats);\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\n# A Landsat 8 surface reflectance image with SWIR1, NIR, and green bands.\nimg = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508').select(\n ['SR_B6', 'SR_B5', 'SR_B3']\n)\n\n# Santa Cruz Mountains ecoregion geometry.\ngeom = (\n ee.FeatureCollection('EPA/Ecoregions/2013/L4')\n .filter('us_l4name == \"Santa Cruz Mountains\"')\n .geometry()\n)\n\n# Display layers on the map.\nm = geemap.Map()\nm.set_center(-122.08, 37.22, 9)\nm.add_layer(img, {'min': 10000, 'max': 20000}, 'Landsat image')\nm.add_layer(geom, {'color': 'white'}, 'Santa Cruz Mountains ecoregion')\ndisplay(m)\n\n# Calculate median band values within Santa Cruz Mountains ecoregion. It is\n# good practice to explicitly define \"scale\" (or \"crsTransform\") and \"crs\"\n# parameters of the analysis to avoid unexpected results from undesired\n# defaults when e.g. reducing a composite image.\nstats = img.reduceRegion(\n reducer=ee.Reducer.median(),\n geometry=geom,\n scale=30, # meters\n crs='EPSG:3310', # California Albers projection\n)\n\n# A dictionary is returned keys are band names, values are the statistic.\ndisplay('Median band values, Santa Cruz Mountains ecoregion', stats)\n\n# You can combine reducers to calculate e.g. mean and standard deviation\n# simultaneously. The output dictionary keys are the concatenation of the band\n# names and statistic names, separated by an underscore.\nreducer = ee.Reducer.mean().combine(\n reducer2=ee.Reducer.stdDev(), sharedInputs=True\n)\nmulti_stats = img.reduceRegion(\n reducer=reducer,\n geometry=geom,\n scale=30,\n crs='EPSG:3310',\n)\ndisplay('Mean & SD band values, Santa Cruz Mountains ecoregion', multi_stats)\n```"]]