ee.Image.reduceRegion

Применить редуктор ко всем пикселям в определенной области.

Либо редуктор должен иметь столько же входов, сколько полос у входного изображения, либо он должен иметь один вход и будет повторяться для каждой полосы.

Возвращает словарь выходных данных редуктора.

Использование Возврат
Image. reduceRegion (reducer, geometry , scale , crs , crsTransform , bestEffort , maxPixels , tileScale ) Словарь
Аргумент Тип Подробности
это: image Изображение Изображение для уменьшения.
reducer Редуктор Применяемый редуктор.
geometry Геометрия, по умолчанию: null Область, в которой необходимо уменьшить объём данных. По умолчанию соответствует области первой полосы изображения.
scale Плавающий, по умолчанию: null Номинальный масштаб в метрах проекции, в которой необходимо работать.
crs Проекция, по умолчанию: null Проекция, в которой будет работать изображение. Если не указано, используется проекция первой полосы изображения. Если указано в дополнение к масштабу, масштаб изменяется до указанного.
crsTransform Список, по умолчанию: null Список значений преобразования CRS. Это упорядочение по строкам матрицы преобразования 3x2. Этот параметр взаимоисключающий с параметром «масштаб» и заменяет любое преобразование, уже заданное для проекции.
bestEffort Логическое значение, по умолчанию: false Если многоугольник содержит слишком много пикселей при заданном масштабе, вычислите и используйте больший масштаб, который позволит успешно выполнить операцию.
maxPixels Длинный, по умолчанию: 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

Информацию об API Python и использовании geemap для интерактивной разработки см. на странице «Среда Python» .

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)
,Применить редуктор ко всем пикселям в определенной области.

Либо редуктор должен иметь столько же входов, сколько полос у входного изображения, либо он должен иметь один вход и будет повторяться для каждой полосы.

Возвращает словарь выходных данных редуктора.

Использование Возврат
Image. reduceRegion (reducer, geometry , scale , crs , crsTransform , bestEffort , maxPixels , tileScale ) Словарь
Аргумент Тип Подробности
это: image Изображение Изображение для уменьшения.
reducer Редуктор Применяемый редуктор.
geometry Геометрия, по умолчанию: null Область, в которой необходимо уменьшить объём данных. По умолчанию соответствует области первой полосы изображения.
scale Плавающий, по умолчанию: null Номинальный масштаб в метрах проекции, в которой необходимо работать.
crs Проекция, по умолчанию: null Проекция, в которой будет работать изображение. Если не указано, используется проекция первой полосы изображения. Если указано в дополнение к масштабу, масштаб изменяется до указанного.
crsTransform Список, по умолчанию: null Список значений преобразования CRS. Это упорядочение по строкам матрицы преобразования 3x2. Этот параметр взаимоисключающий с параметром «масштаб» и заменяет любое преобразование, уже заданное для проекции.
bestEffort Логическое значение, по умолчанию: false Если многоугольник содержит слишком много пикселей при заданном масштабе, вычислите и используйте больший масштаб, который позволит успешно выполнить операцию.
maxPixels Длинный, по умолчанию: 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

Информацию об API Python и использовании geemap для интерактивной разработки см. на странице «Среда Python» .

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)