ee.Image.arraySlice

यह फ़ंक्शन, दिए गए ऐक्सिस के साथ हर पोज़िशन को स्लाइस करके एक सबऐरे बनाता है. यह स्लाइसिंग, 'start' (शामिल है) से 'end' (शामिल नहीं है) तक 'step' के हिसाब से बढ़ती है. नतीजे में उतने ही डाइमेंशन होंगे जितने इनपुट में हैं. साथ ही, स्लाइसिंग ऐक्सिस को छोड़कर, सभी दिशाओं में लंबाई एक जैसी होगी. स्लाइसिंग ऐक्सिस में लंबाई, 'start' से 'end' तक की उन पोज़िशन की संख्या होगी जो 'step' के हिसाब से इनपुट ऐरे की लंबाई की सीमा में हैं. यह लंबाई, 'axis' के हिसाब से तय की जाती है. इसका मतलब है कि अगर start=end है या start या end की वैल्यू पूरी तरह से रेंज से बाहर हैं, तो दिए गए ऐक्सिस के हिसाब से नतीजे की लंबाई 0 हो सकती है.

इस्तेमालरिटर्न
Image.arraySlice(axis, start, end, step)इमेज
आर्ग्यूमेंटटाइपविवरण
यह: inputइमेजइनपुट के तौर पर दी गई अरे इमेज.
axisपूर्णांक, डिफ़ॉल्ट: 0सबसेट बनाने के लिए ऐक्सिस.
startइमेज, डिफ़ॉल्ट: null'axis' के साथ पहले स्लाइस का कोऑर्डिनेट (शामिल है). नेगेटिव संख्याओं का इस्तेमाल, ऐरे के आखिर के हिसाब से स्लाइसिंग की शुरुआत की पोज़िशन तय करने के लिए किया जाता है. इसमें -1, ऐक्सिस की आखिरी पोज़िशन से शुरू होता है, -2, आखिरी से पहले वाली पोज़िशन से शुरू होता है वगैरह. स्टार्ट इंडेक्स के लिए एक बैंड होना चाहिए या हर 'input' बैंड के लिए एक बैंड होना चाहिए. अगर इस आर्ग्युमेंट को किसी पिक्सल पर सेट या मास्क नहीं किया जाता है, तो उस पिक्सल पर स्लाइस इंडेक्स 0 से शुरू होगा.
endइमेज, डिफ़ॉल्ट: nullवह कोऑर्डिनेट (एक्सक्लूसिव) जहां स्लाइस लेना बंद करना है. डिफ़ॉल्ट रूप से, यह दिए गए ऐक्सिस की लंबाई होगी. नेगेटिव नंबर का इस्तेमाल, स्लाइसिंग के आखिर को ऐरे के आखिर के हिसाब से सेट करने के लिए किया जाता है. इसमें -1 का मतलब है कि आखिरी पोज़िशन को शामिल नहीं किया जाएगा, -2 का मतलब है कि आखिरी दो पोज़िशन को शामिल नहीं किया जाएगा. इसी तरह, यह क्रम चलता है. एंड इंडेक्स के लिए एक बैंड या हर 'इनपुट' बैंड के लिए एक बैंड होना चाहिए. अगर इस तर्क को सेट नहीं किया जाता है या किसी पिक्सल पर मास्क किया जाता है, तो उस पिक्सल पर स्लाइस, आखिरी इंडेक्स के ठीक बाद खत्म हो जाएगा.
stepपूर्णांक, डिफ़ॉल्ट: 1'ऐक्सिस' के हिसाब से स्लाइस के बीच का अंतर; 'स्टार्ट' (शामिल है) से 'एंड' (शामिल नहीं है) तक, 'स्टेप' के हर पूर्णांक गुणक पर एक स्लाइस लिया जाएगा. पॉज़िटिव होना चाहिए.

उदाहरण

कोड एडिटर (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 सेटअप करना

Python API और इंटरैक्टिव डेवलपमेंट के लिए geemap का इस्तेमाल करने के बारे में जानकारी पाने के लिए, Python एनवायरमेंट पेज देखें.

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]]