Mit image.gradient()
können Sie den Gradienten jedes Bandes eines Bildes berechnen.
Im folgenden Code werden beispielsweise die Steigung und die Richtung des Gradienten des panchromatischen Bandes von Landsat 8 berechnet:
Code-Editor (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');
Beachten Sie, dass gradient()
zwei Bänder ausgibt: den Farbverlauf in X- und Y-Richtung. Wie im Beispiel gezeigt, können die beiden Richtungen kombiniert werden, um Steigung und Richtung zu erhalten. Die Größe sollte in etwa so aussehen wie in Abbildung 1.
