Gradients

Vous pouvez calculer le gradient de chaque bande d'une image avec image.gradient(). Par exemple, le code suivant calcule l'intensité et la direction du gradient de la bande panchromatique de Landsat 8:

Éditeur de code (JavaScript)

// Load a Landsat 8 image and select the panchromatic band.
var image = ee.Image('LANDSAT/LC08/C02/T1/LC08_044034_20140318').select('B8');

// Compute the image gradient in the X and Y directions.
var xyGrad = image.gradient();

// Compute the magnitude of the gradient.
var gradient = xyGrad.select('x').pow(2)
          .add(xyGrad.select('y').pow(2)).sqrt();

// Compute the direction of the gradient.
var direction = xyGrad.select('y').atan2(xyGrad.select('x'));

// Display the results.
Map.setCenter(-122.054, 37.7295, 10);
Map.addLayer(direction, {min: -2, max: 2, format: 'png'}, 'direction');
Map.addLayer(gradient, {min: -7, max: 7, format: 'png'}, 'gradient');

Notez que gradient() génère deux bandes: le dégradé dans la direction X et le dégradé dans la direction Y. Comme indiqué dans l'exemple, les deux directions peuvent être combinées pour obtenir la magnitude et la direction du gradient. La magnitude devrait se présenter comme la figure 1.

gradient_sf
Figure 1. Magnitude du gradient panchromatique pour les images Landsat 8 sur la région de la baie de San Francisco, en Californie, aux États-Unis.