ee.Image.sample

Bir resmin piksellerini örnekleyerek FeatureCollection olarak döndürür. Her özellik, giriş resmindeki bant başına 1 özelliğe sahip olur. Varsayılan davranışın, maskelenmiş piksellerle kesişen ve boş değerli özelliklere neden olan özellikleri bırakmak olduğunu unutmayın (bkz. dropNulls bağımsız değişkeni).

Kullanımİadeler
Image.sample(region, scale, projection, factor, numPixels, seed, dropNulls, tileScale, geometries)FeatureCollection
Bağımsız DeğişkenTürAyrıntılar
bu: imageResimÖrnek alınacak resim.
regionGeometri, varsayılan: nullÖrnekleme yapılacak bölge. Belirtilmezse resmin tüm ayak izini kullanır.
scaleOndalık sayı, varsayılan: nullÖrnekleme yapılacak projeksiyonun metre cinsinden nominal ölçeği.
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.
factorOndalık sayı, varsayılan: null(0, 1] aralığında bir alt örnekleme faktörü. Belirtilmişse "numPixels" belirtilmemelidir. Varsayılan olarak alt örnekleme yapılmaz.
numPixelsUzun, varsayılan: nullÖrnekleme yapılacak yaklaşık piksel sayısı. Belirtilmişse "faktör" belirtilmemelidir.
seedTamsayı, varsayılan: 0Alt örnekleme için kullanılacak rastgeleleştirme başlangıç değeri.
dropNullsBoole değeri, varsayılan: trueBoş değerli özelliklere sahip olanları bırakmak için sonucu filtreleyin.
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 örneklenen pikselin merkezini çıkış özelliğinin geometri özelliği olarak ekler. Aksi takdirde, geometriler atlanır (bellek tasarrufu sağlanır).

Örnekler

Kod Düzenleyici (JavaScript)

// Demonstrate extracting pixels from an image as features with
// ee.Image.sample(), and show how the features are aligned with the pixels.

// An image with one band of elevation data.
var image = ee.Image('CGIAR/SRTM90_V4');
var VIS_MIN = 1620;
var VIS_MAX = 1650;
Map.addLayer(image, {min: VIS_MIN, max: VIS_MAX}, 'SRTM');

// Region to sample.
var region = ee.Geometry.Polygon(
  [[[-110.006, 40.002],
    [-110.006, 39.999],
    [-109.995, 39.999],
    [-109.995, 40.002]]], null, false);
// Show region on the map.
Map.setCenter(-110, 40, 16);
Map.addLayer(ee.FeatureCollection([region]).style({"color": "00FF0022"}));

// Perform sampling; convert image pixels to features.
var samples = image.sample({
  region: region,

  // Default (false) is no geometries in the output.
  // When set to true, each feature has a Point geometry at the center of the
  // image pixel.
  geometries: true,

  // The scale is not specified, so the resolution of the image will be used,
  // and there is a feature for every pixel. If we give a scale parameter, the
  // image will be resampled and there will be more or fewer features.
  //
  // scale: 200,
});

// Visualize sample data using ee.FeatureCollection.style().
var styled = samples
  .map(function (feature) {
    return feature.set('style', {
      pointSize: feature.getNumber('elevation').unitScale(VIS_MIN, VIS_MAX)
          .multiply(15),
    });
  })
  .style({
    color: '000000FF',
    fillColor: '00000000',
    styleProperty: 'style',
    neighborhood: 6,  // increase to correctly draw large points
  });
Map.addLayer(styled);

// Each sample feature has a point geometry and a property named 'elevation'
// corresponding to the band named 'elevation' of the image. If there are
// multiple bands they will become multiple properties. This will print:
//
// geometry: Point (-110.01, 40.00)
// properties:
//   elevation: 1639
print(samples.first());

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)

# Demonstrate extracting pixels from an image as features with
# ee.Image.sample(), and show how the features are aligned with the pixels.

# An image with one band of elevation data.
image = ee.Image('CGIAR/SRTM90_V4')
vis_min = 1620
vis_max = 1650
m = geemap.Map()
m.add_layer(image, {'min': vis_min, 'max': vis_max}, 'SRTM')

# Region to sample.
region = ee.Geometry.Polygon(
    [[
        [-110.006, 40.002],
        [-110.006, 39.999],
        [-109.995, 39.999],
        [-109.995, 40.002],
    ]],
    None,
    False,
)
# Show region on the map.
m.set_center(-110, 40, 16)

m.add_layer(ee.FeatureCollection([region]).style(color='00FF0022'))

# Perform sampling convert image pixels to features.
samples = image.sample(
    region=region,
    # Default (False) is no geometries in the output.
    # When set to True, each feature has a Point geometry at the center of the
    # image pixel.
    geometries=True,
    # The scale is not specified, so the resolution of the image will be used,
    # and there is a feature for every pixel. If we give a scale parameter, the
    # image will be resampled and there will be more or fewer features.
    #
    # scale=200,
)


def scale_point_size(feature):
  elevation = feature.getNumber('elevation')
  point_size = elevation.unitScale(vis_min, vis_max).multiply(15)
  feature.set('style', {'pointSize': point_size})
  return feature


# Visualize sample data using ee.FeatureCollection.style().
styled = samples.map(scale_point_size).style(
    color='000000FF',
    fillColor='00000000',
    styleProperty='style',
    neighborhood=6,  # increase to correctly draw large points
)
m.add_layer(styled)
display(m)

# Each sample feature has a point geometry and a property named 'elevation'
# corresponding to the band named 'elevation' of the image. If there are
# multiple bands they will become multiple properties. This will print:
#
# geometry: Point (-110.01, 40.00)
# properties:
#   elevation: 1639
display(samples.first())