Wykorzystanie | Zwroty |
---|---|
Image.arraySlice(axis, start, end, step) | Obraz |
Argument | Typ | Szczegóły |
---|---|---|
to: input | Obraz | Obraz tablicy wejściowej. |
axis | Liczba całkowita, domyślnie: 0 | Oś do podzbioru. |
start | Obraz, domyślny: null | Współrzędna pierwszego wycinka (włącznie) wzdłuż osi. Liczby ujemne służą do określania położenia początku wycinania względem końca tablicy. Wartość –1 oznacza ostatnią pozycję na osi, –2 przedostatnią itd. Musi być jeden zakres indeksów początkowych lub jeden zakres na każdy zakres „wejściowy”. Jeśli ten argument nie jest ustawiony lub zamaskowany w przypadku danego piksela, wycinek w tym pikselu zacznie się od indeksu 0. |
end | Obraz, domyślny: null | Współrzędna (wyłączna), przy której należy przestać pobierać wycinki. Domyślnie będzie to długość danej osi. Liczby ujemne służą do określania pozycji końca wycinka względem końca tablicy. Wartość -1 wyklucza ostatnią pozycję, -2 wyklucza 2 ostatnie pozycje itd. Musi być jeden zakres dla indeksów końcowych lub jeden zakres na każdy zakres „wejściowy”. Jeśli ten argument nie jest ustawiony lub jest zamaskowany w przypadku niektórych pikseli, wycinek w tych pikselach zakończy się tuż po ostatnim indeksie. |
step | Liczba całkowita, domyślnie: 1 | Odstęp między wycinkami wzdłuż osi; wycinek będzie pobierany przy każdej wielokrotności liczby całkowitej „step” od „start” (włącznie) do „end” (wyłącznie). Musi być dodatnia. |
Przykłady
Edytor kodu (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]]