ee.Image.arrayPad

Rajoute des valeurs de tableau dans chaque pixel pour obtenir une longueur fixe. La valeur de remplissage sera ajoutée à chaque tableau pour l'étendre à une longueur donnée sur chaque axe. Toutes les bandes de l'image doivent avoir une valeur de tableau et les mêmes dimensions.

UtilisationRenvoie
Image.arrayPad(lengths, pad)Image
ArgumentTypeDétails
ceci: imageImageImage de la matrice à remplir.
lengthsListeListe des longueurs souhaitées pour chaque axe dans les tableaux de sortie. Les tableaux qui sont déjà de la même taille ou plus grands que la longueur donnée ne seront pas modifiés sur cette axe.
padNombre (par défaut: 0)Valeur à utiliser pour le remplissage.

Exemples

Éditeur de code (JavaScript)

// A function to print the array 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.
var arrayImg1D = ee.Image([0, 1, 2]).toArray();
print('1D array image (pixel)', sampArrImg(arrayImg1D));
// [0, 1, 2]

// Pad 1D array to length of 5 with value 9.
var arrayImg1Dpad = arrayImg1D.arrayPad([5], 9);
print('1D array image padded', sampArrImg(arrayImg1Dpad));
// [0, 1, 2, 9, 9]

// Create a 2D array image.
var arrayImg2D = ee.Image([0, 1, 2, 3, 4, 5]).toArray()
  .arrayReshape(ee.Image([2, 3]).toArray(), 2);
print('2D 2x3 array image (pixel)', sampArrImg(arrayImg2D));
// [[0, 1, 2],
//  [3, 4, 5]]

// Pad 2D array to 0-axis length 3 and 1-axis length 5 with value 9.
var arrayImg2Dpad = arrayImg2D.arrayPad([3, 5], 9);
print('2D array image padded', sampArrImg(arrayImg2Dpad));
// [[0, 1, 2, 9, 9],
//  [3, 4, 5, 9, 9],
//  [9, 9, 9, 9, 9]]

Configuration de Python

Consultez la page Environnement Python pour en savoir plus sur l'API Python et l'utilisation de geemap pour le développement interactif.

import ee
import geemap.core as geemap

Colab (Python)

# A function to print the array 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.
array_img_1d = ee.Image([0, 1, 2]).toArray()
print('1D array image (pixel):', samp_arr_img(array_img_1d).getInfo())
# [0, 1, 2]

# Pad 1D array to length of 5 with value 9.
array_img_1d_pad = array_img_1d.arrayPad([5], 9)
print('1D array image padded:', samp_arr_img(array_img_1d_pad).getInfo())
# [0, 1, 2, 9, 9]

# Create a 2D array image.
array_img_2d = ee.Image([0, 1, 2, 3, 4, 5]).toArray().arrayReshape(
    ee.Image([2, 3]).toArray(),
    2
)
print('2D 2x3 array image (pixel):', samp_arr_img(array_img_2d).getInfo())
# [[0, 1, 2],
#  [3, 4, 5]]

# Pad 2D array to 0-axis length 3 and 1-axis length 5 with value 9.
array_img_2d_pad = array_img_2d.arrayPad([3, 5], 9)
print('2D array image padded:', samp_arr_img(array_img_2d_pad).getInfo())
# [[0, 1, 2, 9, 9],
#  [3, 4, 5, 9, 9],
#  [9, 9, 9, 9, 9]]