ee.Image.sampleRegions

Bir veya daha fazla bölgeyle kesişen bir resmin her pikselini (belirli bir ölçekte) bir özelliğe dönüştürür ve bunları FeatureCollection olarak döndürür. Her çıkış özelliği, giriş görüntüsünün her bandı için bir özelliğe ve giriş özelliğinden kopyalanan belirtilen özelliklere sahip olur.

Geometrilerin piksel merkezlerine sabitleneceğini unutmayın.

Kullanımİadeler
Image.sampleRegions(collection, properties, scale, projection, tileScale, geometries)FeatureCollection
Bağımsız DeğişkenTürAyrıntılar
bu: imageResimÖrnek alınacak resim.
collectionFeatureCollectionÖrnekleme yapılacak bölgeler.
propertiesListe, varsayılan: nullHer giriş özelliğinden kopyalanacak özelliklerin listesi. Varsayılan olarak sistem dışı tüm özellikler gösterilir.
scaleOndalık sayı, varsayılan: nullÖrnekleme yapılacak projeksiyonun metre cinsinden nominal ölçeği. Belirtilmezse resmin ilk bandının ölçeği kullanılır.
projectionProjeksiyon, varsayılan: nullÖrnekleme yapılacak projeksiyon. Belirtilmezse görüntünün ilk bandının projeksiyonu kullanılır. Ölçeğe ek olarak belirtilirse belirtilen ölçeğe göre yeniden ölçeklendirilir.
tileScaleOndalık sayı, varsayılan: 1Toplama kutucuğu boyutunu küçültmek için kullanılan ölçeklendirme faktörü.Daha büyük bir tileScale (ör. 2 veya 4) varsayılan değerle belleğin tükenmesine neden olan hesaplamaları etkinleştirebilir.
geometriesBoole değeri, varsayılan: falseDoğruysa sonuçlar, örneklenen her piksel için bir nokta geometrisi içerir. Aksi takdirde, geometriler atlanır (bellek tasarrufu sağlanır).

Örnekler

Kod Düzenleyici (JavaScript)

// A Sentinel-2 surface reflectance image.
var img = ee.Image('COPERNICUS/S2_SR/20210109T185751_20210109T185931_T10SEG');
Map.setCenter(-122.503881, 37.765588, 18);
Map.addLayer(img, {bands: ['B11', 'B8', 'B3'], min: 100, max: 4500}, 'img');

// A feature collection with two polygon regions each intersecting 36
// pixels at 10 m scale.
var fcPolygon = ee.FeatureCollection([
  ee.Feature(ee.Geometry.Rectangle(
    -122.50620929, 37.76502806, -122.50552264, 37.76556663), {id: 0}),
  ee.Feature(ee.Geometry.Rectangle(
    -122.50530270, 37.76565568, -122.50460533, 37.76619425), {id: 1})
]);
Map.addLayer(fcPolygon, {color: 'yellow'}, 'fcPolygon');

var fcPolygonSamp = img.sampleRegions({
  collection: fcPolygon,
  scale: 10,
  geometries: true
});
// Note that 7 pixels are missing from the sample. If a pixel contains a masked
// band value it will be excluded from the sample. In this case, the TCI_B band
// is masked for each unsampled pixel.
print('A feature per pixel (at given scale) in each region', fcPolygonSamp);
Map.addLayer(fcPolygonSamp, {color: 'purple'}, 'fcPolygonSamp');

// A feature collection with two points intersecting two different pixels.
// This example is included to show the behavior for point geometries. In
// practice, if the feature collection is all points, ee.Image.reduceRegions
// should be used instead to save memory.
var fcPoint = ee.FeatureCollection([
  ee.Feature(ee.Geometry.Point([-122.50309256, 37.76605006]), {id: 0}),
  ee.Feature(ee.Geometry.Point([-122.50344661, 37.76560903]), {id: 1})
]);
Map.addLayer(fcPoint, {color: 'cyan'}, 'fcPoint');

var fcPointSamp = img.sampleRegions({
  collection: fcPoint,
  scale: 10
});
print('A feature per point', fcPointSamp);

Python kurulumu

Python API'si ve etkileşimli geliştirme için geemap kullanımı hakkında bilgi edinmek üzere Python Ortamı sayfasına bakın.

import ee
import geemap.core as geemap

Colab (Python)

# A Sentinel-2 surface reflectance image.
img = ee.Image('COPERNICUS/S2_SR/20210109T185751_20210109T185931_T10SEG')
m = geemap.Map()
m.set_center(-122.503881, 37.765588, 18)
m.add_layer(
    img, {'bands': ['B11', 'B8', 'B3'], 'min': 100, 'max': 4500}, 'img'
)
display(m)

# A feature collection with two polygon regions each intersecting 36
# pixels at 10 m scale.
fc_polygon = ee.FeatureCollection([
    ee.Feature(
        ee.Geometry.Rectangle(
            -122.50620929, 37.76502806, -122.50552264, 37.76556663
        ),
        {'id': 0},
    ),
    ee.Feature(
        ee.Geometry.Rectangle(
            -122.50530270, 37.76565568, -122.50460533, 37.76619425
        ),
        {'id': 1},
    ),
])
m.add_layer(fc_polygon, {'color': 'yellow'}, 'fc_polygon')

fc_polygon_samp = img.sampleRegions(
    collection=fc_polygon, scale=10, geometries=True
)
# Note that 7 pixels are missing from the sample. If a pixel contains a masked
# band value it will be excluded from the sample. In this case, the TCI_B band
# is masked for each unsampled pixel.
display('A feature per pixel (at given scale) in each region', fc_polygon_samp)
m.add_layer(fc_polygon_samp, {'color': 'purple'}, 'fc_polygon_samp')

# A feature collection with two points intersecting two different pixels.
# This example is included to show the behavior for point geometries. In
# practice, if the feature collection is all points, ee.Image.reduceRegions
# should be used instead to save memory.
fc_point = ee.FeatureCollection([
    ee.Feature(ee.Geometry.Point([-122.50309256, 37.76605006]), {'id': 0}),
    ee.Feature(ee.Geometry.Point([-122.50344661, 37.76560903]), {'id': 1}),
])
m.add_layer(fc_point, {'color': 'cyan'}, 'fc_point')

fc_point_samp = img.sampleRegions(collection=fc_point, scale=10)
display('A feature per point', fc_point_samp)