ee.Terrain.products

Calcule la pente, l'orientation et un ombrage simple à partir d'un MNT de terrain.

Attend une image contenant une seule bande d'altitude, mesurée en mètres, ou, s'il y a plusieurs bandes, une bande nommée "altitude". Ajoute des bandes de sortie nommées "pente" et "orientation" mesurées en degrés, ainsi qu'une bande de sortie d'octet non signé nommée "ombrage" pour la visualisation. Toutes les autres bandes et métadonnées sont copiées à partir de l'image d'entrée. Le gradient local est calculé à l'aide des voisins à 4 connexions de chaque pixel. Des valeurs manquantes apparaissent donc sur les bords d'une image.

UtilisationRenvoie
ee.Terrain.products(input)Image
ArgumentTypeDétails
inputImageImage d'altitude, en mètres.

Exemples

Éditeur de code (JavaScript)

// A digital elevation model.
var dem = ee.Image('NASA/NASADEM_HGT/001').select('elevation');

// Calculate slope. Units are degrees, range is [0,90).
var slope = ee.Terrain.slope(dem);

// Calculate aspect. Units are degrees where 0=N, 90=E, 180=S, 270=W.
var aspect = ee.Terrain.aspect(dem);

// Display slope and aspect layers on the map.
Map.setCenter(-123.457, 47.815, 11);
Map.addLayer(slope, {min: 0, max: 89.99}, 'Slope');
Map.addLayer(aspect, {min: 0, max: 359.99}, 'Aspect');

// Use the ee.Terrain.products function to calculate slope, aspect, and
// hillshade simultaneously. The output bands are appended to the input image.
// Hillshade is calculated based on illumination azimuth=270, elevation=45.
var terrain = ee.Terrain.products(dem);
print('ee.Terrain.products bands', terrain.bandNames());
Map.addLayer(terrain.select('hillshade'), {min: 0, max: 255}, 'Hillshade');

Configuration de Python

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

import ee
import geemap.core as geemap

Colab (Python)

# A digital elevation model.
dem = ee.Image('NASA/NASADEM_HGT/001').select('elevation')

# Calculate slope. Units are degrees, range is [0,90).
slope = ee.Terrain.slope(dem)

# Calculate aspect. Units are degrees where 0=N, 90=E, 180=S, 270=W.
aspect = ee.Terrain.aspect(dem)

# Display slope and aspect layers on the map.
m = geemap.Map()
m.set_center(-123.457, 47.815, 11)
m.add_layer(slope, {'min': 0, 'max': 89.99}, 'Slope')
m.add_layer(aspect, {'min': 0, 'max': 359.99}, 'Aspect')

# Use the ee.Terrain.products function to calculate slope, aspect, and
# hillshade simultaneously. The output bands are appended to the input image.
# Hillshade is calculated based on illumination azimuth=270, elevation=45.
terrain = ee.Terrain.products(dem)
display('ee.Terrain.products bands', terrain.bandNames())
m.add_layer(terrain.select('hillshade'), {'min': 0, 'max': 255}, 'Hillshade')
m