Link Search Menu Expand Document

Comment télécharger des modèles numériques de terrain avec Earth Engine

Earth Engine

Earth Engine (EE) est la plateforme de données géospatiales de Google. Elle abrite une énorme quantité de données géospatiales ouvertes au public et qui peuvent être téléchargées gratuitement pour des fins éducatives ou de recherche scientifique.

On y retrouve notamment le modèle numérique de terrain (MNT) global produit par interférométrie radar à bord de la navette spatiale Endeavour dans le cadre de la SRTM en 2000.

L’analyse des MNT est très utile pour interpréter les levés géophysiques parce qu’on peut s’en servir pour corriger numériquement les données en fonction de la topographie. Même si le produit de la SRTM a une résolution spatiale relativement faible (1 seconde d’arc, soit environ 30 m), il est très pratique de pouvoir se procurer des MNT gratuitement et ce à n’importe quel endroit dans le monde.

Définir la zone d’intérêt

La zone où on veut le MNT est délimitée par un polygone (shapefile). Le polygone peut être soit importé ou tracé directement sur la carte avec l’outil “Draw a shape” :

img

On peut aussi explicitement décrire les sommets d’un polygone dans l’éditeur de texte :

var geometry = ee.Geometry.Polygon(
        [[[-70.75403911456439, 47.82681695860448],
          [-70.21227580890033, 47.82220679593597],
          [-70.21570903643939, 48.01180650054785],
          [-70.74991924151752, 48.011347148135584]]]);

Le polygone que j’ai tracé couvre le Parc national des Hautes‑Gorges-de-la-Rivière‑Malbaie dans Charlevoix.

img

Importer les données SRTM

Il suffit de créer un objet ee.Image avec l’adresse EE des données désirées pour les importer. On trouve ces adresses en parcourant le catalogue des données.

// Aller chercher les données avec leur adresse sur EE
var dataset = ee.Image('USGS/SRTMGL1_003');
var dataset = dataset.clip(geometry);  // seulement les données dans le polygone

Calculs et visualisation

Il est possible de faire des calculs dans EE avant d’exporter les données. Ça peut être utile parce que toutes sortes d’algorithmes sont implémentés dans EE et parce que les calculs à grande échelle se font très rapidement dans le nuage.

Par exemple on peut calculer la pente du terrain (la dérivée horizontale) du MNT avec :

var elevation = dataset.select('elevation');  // sélectionner une bande
var slope = ee.Terrain.slope(elevation);  // calculer la pente, par exemple

Et on peut visualiser les résultats en les plaçant sur la carte :

var centre = geometry.centroid();  // le centre du polygone
Map.setCenter(ee.Number(centre.coordinates().get(0)).getInfo(),
              ee.Number(centre.coordinates().get(1)).getInfo(),
              10);  // placer la vue au centre (x, y, zoom)
Map.addLayer(slope, {min: 0, max: 60}, 'slope');  // ajouter la pente calculeé

img

Voyez à quoi cette topographie ressemble du haut des airs :

Exporter vers Google Drive

Finalement, les données peuvent être exportées directement dans Drive.

// Exporter les données
// en choisisant la région d'intérêt
// et la résolution de l'image
Export.image.toDrive({
  image: dataset,  // le MNT
  fileFormat: 'GeoTIFF',  // format (.tif)
  description: 'MNT-Hautes-Gorges',  // description du fichier
  scale: 30,  // 1 pixel = 30 m
  region: geometry,  // le polygone qui délimite le MNT
});

Appuyer sur “Run” dans l’onglet “Tasks” pour commencer le téléversement vers Drive. Ça prend plusieurs minutes. img

Vous savez maintenant comment obtenir des MNT avec une résolution spatiale de 30 mètres et ce n’importe où dans le monde. Notez toutefois que les résultats du SRTM ont une très faible résolution à des latitudes extrêmes. Le processus pour télécharger des données est très semblable pour tous les autres jeux de données disponibles sur EE.


© 2020-2021 Charles L. Bérubé