Reduktor musi mieć tyle samo danych wejściowych, ile pasm ma obraz wejściowy, lub musi mieć 1 dane wejściowe, które będą powtarzane dla każdego pasma.
Zwraca słownik danych wyjściowych funkcji redukującej.
Wykorzystanie | Zwroty |
---|---|
Image.reduceRegion(reducer, geometry, scale, crs, crsTransform, bestEffort, maxPixels, tileScale) | Słownik |
Argument | Typ | Szczegóły |
---|---|---|
to: image | Obraz | Obraz do zmniejszenia. |
reducer | Ograniczenie | Ograniczenie do zastosowania. |
geometry | Geometria, domyślnie: null | Region, w którym mają zostać zredukowane dane. Domyślnie jest to obszar pierwszej warstwy obrazu. |
scale | Liczba zmiennoprzecinkowa, domyślnie: null | Skala nominalna w metrach projekcji, w której chcesz pracować. |
crs | Prognoza, domyślnie: null | Projekcja, w której chcesz pracować. Jeśli nie zostanie określona, używana jest projekcja pierwszego pasma obrazu. Jeśli jest określony dodatkowo do skali, jest przeskalowywany do określonej skali. |
crsTransform | Lista, domyślna: null | Lista wartości przekształcenia CRS. Jest to kolejność wierszowa macierzy przekształcenia 3x2. Ta opcja wyklucza się wzajemnie z opcją „scale” i zastępuje każdą transformację, która jest już ustawiona w projekcji. |
bestEffort | Wartość logiczna, domyślnie: false | Jeśli wielokąt zawierałby zbyt wiele pikseli w danym powiększeniu, oblicz i użyj większego powiększenia, które umożliwi wykonanie operacji. |
maxPixels | Długa, domyślna: 10000000 | Maksymalna liczba pikseli do zmniejszenia. |
tileScale | Liczba zmiennoprzecinkowa, domyślnie: 1 | Współczynnik skalowania od 0,1 do 16 używany do dostosowywania rozmiaru kafelka agregacji. Ustawienie większej wartości tileScale (np. 2 lub 4) używa mniejszych kafelków i może umożliwiać obliczenia, które w przypadku ustawień domyślnych nie mieszczą się w pamięci. |
Przykłady
Edytor kodu (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)