Earth Engine a introduit des
niveaux de quota non commerciaux pour protéger les ressources de calcul partagées et garantir des performances fiables pour tous. Les projets non commerciaux utilisent le niveau "Communauté" par défaut, mais vous pouvez modifier le niveau d'un projet à tout moment.
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
Envoyer des commentaires
ee.Terrain.products
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
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.
Utilisation Renvoie ee.Terrain.products(input)Image
Argument Type Détails inputImage Image d'altitude, en mètres.
Exemples
Éditeur de code (JavaScript)
// Demonstrate ee.Terrain functions with single-image and collection DEMs.
// DEMs in Earth Engine are often distributed as single images per asset
// (e.g., NASA/NASADEM_HGT/001) or as collections of tiled images that need
// to be mosaicked (e.g., COPERNICUS/DEM/GLO30). Terrain analysis functions
// compute values based on neighboring pixels, so care must be taken to
// select and prepare DEM inputs appropriately.
// 1. Single DEM image asset.
// Assets like NASADEM are presented as single images covering large areas.
// They generally have a single projection and can be used in terrain analysis
// with no preprocessing.
var nasadem = ee . Image ( 'NASA/NASADEM_HGT/001' ). select ( 'elevation' );
// Calculate slope, aspect, and hillshade simultaneously using products().
var nasademProducts = ee . Terrain . products ( nasadem );
// Visualization parameters.
var elevationVis = {
min : 0.0 ,
max : 3000.0 ,
palette :
[ '333399' , '00a2e5' , '55dd77' , 'ffff99' , 'aa926b' , 'aa928d' , 'ffffff' ]
};
var slopeVis = { min : 0.0 , max : 60.0 };
var aspectVis = { min : 0.0 , max : 359.99 };
var hillshadeVis = { min : 150.0 , max : 255.0 };
// Display layers.
Map . setCenter ( - 121.603 , 47.702 , 9 );
Map . addLayer ( nasadem , elevationVis , 'NASADEM Elevation' , false );
Map . addLayer ( nasademProducts . select ( 'slope' ), slopeVis , 'NASADEM Slope' );
Map . addLayer ( nasademProducts . select ( 'aspect' ), aspectVis , 'NASADEM Aspect' );
Map . addLayer (
nasademProducts . select ( 'hillshade' ), hillshadeVis , 'NASADEM Hillshade' );
// 2. Mosaicked DEM ImageCollection asset.
// In contrast to single-image assets like NASADEM, some DEMs like GLO30 are
// provided as a collection of images that need to be mosaicked before use.
// We use this mosaicked DEM for the terrain calculations below.
var glo30collection = ee . ImageCollection ( 'COPERNICUS/DEM/GLO30' );
// When mosaicking a DEM collection that will be used for terrain analysis,
// it is best practice to set the mosaic's default projection to the native
// projection of the DEM tiles. If you don't, Earth Engine's default
// projection for mosaics (EPSG:4326 at 1-degree scale) is used, which is
// often too coarse for analysis and can lead to resampling artifacts if
// the result is reprojected to a different CRS during computation.
// See:
// https://developers.google.com/earth-engine/guides/projections#reprojecting
var glo30Proj = glo30collection . first (). projection ();
var glo30Image =
glo30collection . select ( 'DEM' ). mosaic (). setDefaultProjection ( glo30Proj );
// Calculate slope, aspect, and hillshade simultaneously using products().
var glo30Products = ee . Terrain . products ( glo30Image );
// Display layers.
Map . addLayer ( glo30Image , elevationVis , 'GLO30 Elevation' , false );
Map . addLayer ( glo30Products . select ( 'slope' ), slopeVis , 'GLO30 Slope' );
Map . addLayer ( glo30Products . select ( 'aspect' ), aspectVis , 'GLO30 Aspect' );
Map . addLayer (
glo30Products . select ( 'hillshade' ), hillshadeVis , 'GLO30 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)
# Demonstrate ee.Terrain functions with single-image and collection DEMs.
# DEMs in Earth Engine are often distributed as single images per asset
# (e.g., NASA/NASADEM_HGT/001) or as collections of tiled images that need
# to be mosaicked (e.g., COPERNICUS/DEM/GLO30). Terrain analysis functions
# compute values based on neighboring pixels, so care must be taken to
# select and prepare DEM inputs appropriately.
# 1. Single DEM image asset.
# Assets like NASADEM are presented as single images covering large areas.
# They generally have a single projection and can be used in terrain analysis
# with no preprocessing.
nasadem = ee . Image ( 'NASA/NASADEM_HGT/001' ) . select ( 'elevation' )
# Calculate slope, aspect, and hillshade simultaneously using products().
nasadem_products = ee . Terrain . products ( nasadem )
# Visualization parameters.
elevation_vis = {
'min' : 0.0 ,
'max' : 3000.0 ,
'palette' : [
'333399' ,
'00a2e5' ,
'55dd77' ,
'ffff99' ,
'aa926b' ,
'aa928d' ,
'ffffff' ,
],
}
slope_vis = { 'min' : 0.0 , 'max' : 60.0 }
aspect_vis = { 'min' : 0.0 , 'max' : 359.99 }
hillshade_vis = { 'min' : 150.0 , 'max' : 255.0 }
# Display layers.
m = geemap . Map ()
m . set_center ( - 121.603 , 47.702 , 9 )
m . add_layer ( nasadem , elevation_vis , 'NASADEM Elevation' , False )
m . add_layer ( nasadem_products . select ( 'slope' ), slope_vis , 'NASADEM Slope' )
m . add_layer ( nasadem_products . select ( 'aspect' ), aspect_vis , 'NASADEM Aspect' )
m . add_layer (
nasadem_products . select ( 'hillshade' ), hillshade_vis , 'NASADEM Hillshade'
)
# 2. Mosaicked DEM ImageCollection asset.
# In contrast to single-image assets like NASADEM, some DEMs like GLO30 are
# provided as a collection of images that need to be mosaicked before use.
# We use this mosaicked DEM for the terrain calculations below.
glo30_collection = ee . ImageCollection ( 'COPERNICUS/DEM/GLO30' )
# When mosaicking a DEM collection that will be used for terrain analysis,
# it is best practice to set the mosaic's default projection to the native
# projection of the DEM tiles. If you don't, Earth Engine's default
# projection for mosaics (EPSG:4326 at 1-degree scale) is used, which is
# often too coarse for analysis and can lead to resampling artifacts if
# the result is reprojected to a different CRS during computation.
# See:
# https://developers.google.com/earth-engine/guides/projections#reprojecting
glo30_proj = glo30_collection . first () . projection ()
glo30_image = (
glo30_collection . select ( 'DEM' ) . mosaic () . setDefaultProjection ( glo30_proj )
)
# Calculate slope, aspect, and hillshade simultaneously using products().
glo30_products = ee . Terrain . products ( glo30_image )
# Display layers.
m . add_layer ( glo30_image , elevation_vis , 'GLO30 Elevation' , False )
m . add_layer ( glo30_products . select ( 'slope' ), slope_vis , 'GLO30 Slope' )
m . add_layer ( glo30_products . select ( 'aspect' ), aspect_vis , 'GLO30 Aspect' )
m . add_layer (
glo30_products . select ( 'hillshade' ), hillshade_vis , 'GLO30 Hillshade'
)
m
Envoyer des commentaires
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0 , et les échantillons de code sont régis par une licence Apache 2.0 . Pour en savoir plus, consultez les Règles du site Google Developers . Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2026/04/29 (UTC).
Voulez-vous nous donner plus d'informations ?
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2026/04/29 (UTC)."],[],[]]