ee.Image.arraySlice

Belirtilen eksen boyunca her konumu "başlangıç"tan (dahil) "bitiş"e (hariç) "adım" artışlarıyla dilimleyerek bir alt dizi oluşturur. Sonuç, girişle aynı sayıda boyuta ve dilimleme ekseni hariç tüm yönlerde aynı uzunluğa sahip olur. Dilimleme ekseninde ise uzunluk, giriş dizisinin "axis" boyunca uzunluğu aralığında bulunan "start" ile "end" arasındaki "step" konumlarının sayısı olur. Bu, start=end ise veya başlangıç ya da bitiş değerleri tamamen aralık dışında kalıyorsa sonucun, verilen eksen boyunca 0 uzunluğunda olabileceği anlamına gelir.

Kullanımİadeler
Image.arraySlice(axis, start, end, step)Resim
Bağımsız DeğişkenTürAyrıntılar
bu: inputResimGiriş dizisi resmi.
axisTamsayı, varsayılan: 0Alt küme oluşturulacak eksen.
startResim, varsayılan: null"Eksen" boyunca ilk dilimin koordinatı (dahil). Negatif sayılar, dilimlemenin başlangıcını dizinin sonuna göre konumlandırmak için kullanılır. Burada -1, eksendeki son konumdan başlar, -2 sondan bir önceki konumdan başlar vb. Başlangıç dizinleri için bir bant veya "giriş" bandı başına bir bant olmalıdır. Bu bağımsız değişken ayarlanmamışsa veya bazı piksellerde maskelenmişse ilgili pikseldeki dilim 0 dizininden başlar.
endResim, varsayılan: nullDilim almayı durdurmak için koordinat (kapsam dışı). Bu değer varsayılan olarak verilen eksenin uzunluğu olur. Negatif sayılar, dilimlemenin sonunu dizinin sonuna göre konumlandırmak için kullanılır. Burada -1 son konumu, -2 son iki konumu vb. hariç tutar. Bitiş dizinleri için bir bant veya "giriş" bandı başına bir bant olmalıdır. Bu bağımsız değişken ayarlanmamışsa veya bazı piksellerde maskelenmişse ilgili pikseldeki dilim, son indeksten hemen sonra sona erer.
stepTamsayı, varsayılan: 1Dilimler arasındaki ayrım; "axis" boyunca "start" (dahil) ile "end" (hariç) arasında "step" değerinin her tam katında bir dilim alınır. Pozitif olmalıdır.

Örnekler

Kod Düzenleyici (JavaScript)

// A function to print arrays for a selected pixel in the following examples.
function sampArrImg(arrImg) {
  var point = ee.Geometry.Point([-121, 42]);
  return arrImg.sample(point, 500).first().get('array');
}

// Create a 1D array image with length 12.
var arrayImg1D = ee.Image([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]).toArray();
print('1D array image (pixel)', sampArrImg(arrayImg1D));
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

// Get the first 3 elements.
print('1D array image first 3 elements (pixel)',
      sampArrImg(arrayImg1D.arraySlice(0, 0, 3)));
// [0, 1, 2]

// Get the last 3 elements.
print('1D array image last 3 elements (pixel)',
      sampArrImg(arrayImg1D.arraySlice(0, -3)));
// [9, 10, 11]

// Get elements at index positions 3 through 5 (0-based).
print('1D array image elements at index positions 3 through 5 (pixel)',
      sampArrImg(arrayImg1D.arraySlice(0, 3, 6)));
// [3, 4, 5]

// Get elements at index positions 4 through end (0-based).
print('1D array image elements at index positions 4 through end (pixel)',
      sampArrImg(arrayImg1D.arraySlice(0, 4)));
// [4, 5, 6, 7, 8, 9, 10, 11]

// Get elements using a step of 3.
print('1D array image elements at a step of 3 (pixel)',
      sampArrImg(arrayImg1D.arraySlice(0, 0, null, 3)));
// [0, 3, 6, 9]

// Create a 2D array image with 3 rows and 4 columns.
var arrayImg2D = arrayImg1D.arrayReshape(ee.Image([3, 4]).toArray(), 2);
print('2D array image (pixel)', sampArrImg(arrayImg2D));
// [[0, 1,  2,  3],
//  [4, 5,  6,  7],
//  [8, 9, 10, 11]]

// Get the second row.
print('2D array image second row (pixel)',
      sampArrImg(arrayImg2D.arraySlice(0, 1, 2)));
// [[4, 5, 6, 7]

// Get the second column.
print('2D array image second column (pixel)',
      sampArrImg(arrayImg2D.arraySlice(1, 1, 2)));
// [[1],
//  [5],
//  [9]]

// Get all columns except the last.
print('2D array image all columns except last (pixel)',
      sampArrImg(arrayImg2D.arraySlice(1, 0, -1)));
// [[0, 1,  2],
//  [4, 5,  6],
//  [8, 9, 10]]

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 function to print arrays for a selected pixel in the following examples.
def samp_arr_img(arr_img):
  point = ee.Geometry.Point([-121, 42])
  return arr_img.sample(point, 500).first().get('array')

# Create a 1D array image with length 12.
array_img_1d = ee.Image([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]).toArray()
print('1D array image (pixel):', samp_arr_img(array_img_1d).getInfo())
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

# Get the first 3 elements.
print('1D array image first 3 elements (pixel):',
      samp_arr_img(array_img_1d.arraySlice(0, 0, 3)).getInfo())
# [0, 1, 2]

# Get the last 3 elements.
print('1D array image last 3 elements (pixel):',
      samp_arr_img(array_img_1d.arraySlice(0, -3)).getInfo())
# [9, 10, 11]

# Get elements at index positions 3 through 5 (0-based).
print('1D array image elements at index positions 3 through 5 (pixel):',
      samp_arr_img(array_img_1d.arraySlice(0, 3, 6)).getInfo())
# [3, 4, 5]

# Get elements at index positions 4 through end (0-based).
print('1D array image elements at index positions 4 through end (pixel)',
      samp_arr_img(array_img_1d.arraySlice(0, 4)).getInfo())
# [4, 5, 6, 7, 8, 9, 10, 11]

# Get elements using a step of 3.
print('1D array image elements at a step of 3 (pixel)',
      samp_arr_img(array_img_1d.arraySlice(0, 0, None, 3)).getInfo())
# [0, 3, 6, 9]

# Create a 2D array image with 3 rows and 4 columns.
array_img_2d = array_img_1d.arrayReshape(ee.Image([3, 4]).toArray(), 2)
print('2D array image (pixel)', samp_arr_img(array_img_2d).getInfo())
# [[0, 1,  2,  3],
#  [4, 5,  6,  7],
#  [8, 9, 10, 11]]

# Get the second row.
print('2D array image second row (pixel):',
      samp_arr_img(array_img_2d.arraySlice(0, 1, 2)).getInfo())
# [[4, 5, 6, 7]

# Get the second column.
print('2D array image second column (pixel):',
      samp_arr_img(array_img_2d.arraySlice(1, 1, 2)).getInfo())
# [[1],
#  [5],
#  [9]]

# Get all columns except the last.
print('2D array image all columns except last (pixel):',
      samp_arr_img(array_img_2d.arraySlice(1, 0, -1)).getInfo())
# [[0, 1,  2],
#  [4, 5,  6],
#  [8, 9, 10]]