الاستخدام | المرتجعات |
---|---|
Image.arraySlice(axis, start, end, step) | صورة |
الوسيطة | النوع | التفاصيل |
---|---|---|
هذا: input | صورة | صورة مصفوفة الإدخال |
axis | عدد صحيح، القيمة التلقائية: 0 | المحور المطلوب تقسيمه إلى مجموعات فرعية |
start | الصورة، القيمة التلقائية: null | إحداثيات الشريحة الأولى (شاملة) على طول "المحور". تُستخدَم الأرقام السالبة لتحديد موضع بداية التقطيع بالنسبة إلى نهاية المصفوفة، حيث تبدأ القيمة -1 من الموضع الأخير على المحور، وتبدأ القيمة -2 من الموضع قبل الأخير، وما إلى ذلك. يجب أن يكون هناك نطاق واحد لفهارس البداية، أو نطاق واحد لكل نطاق "إدخال". في حال عدم ضبط هذه الوسيطة أو إخفائها في بعض وحدات البكسل، ستبدأ الشريحة عند وحدة البكسل هذه بالفهرس 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]]
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]]