J'ai téléchargé SRTM GDEM (~ 90 km de résolution).
J'utilise ArcGIS 10.
J'ai essayé d'utiliser l'analyste spatial pour calculer la pente.
Cependant, je ne peux pas calculer la pente.
Les valeurs de sortie n'ont que deux plages 0 et 0,1-90.
Je ne sais pas vraiment quel est le problème?
arcgis-desktop
arcgis-10.0
dem
srtm
user2543
la source
la source
Réponses:
Cela semble être un bon endroit pour décrire un moyen simple, rapide et plus que raisonnablement précis de calculer les pentes pour un DEM global .
Des principes
Rappelons que la pente d'une surface en un point est essentiellement le plus grand rapport "montée" / "course" rencontré à tous les relèvements possibles à partir de ce point. Le problème est que lorsqu'une projection présente une distorsion d'échelle, les valeurs de "run" seront incorrectement calculées. Pire encore, lorsque la distorsion d'échelle varie avec le relèvement - ce qui est le cas pour toutes les projections qui ne sont pas conformes - la façon dont la pente varie avec le relèvement sera incorrectement estimée, ce qui empêchera une identification précise du rapport élévation / course maximal (et faussera le calcul de l'aspect).
Nous pouvons résoudre ce problème en utilisant une projection conforme pour garantir que la distorsion d'échelle ne varie pas avec le relèvement, puis en corrigeant les estimations de pente pour tenir compte de la distorsion d'échelle (qui varie d'un point à un autre sur la carte). L'astuce consiste à utiliser une projection conforme globale qui permet une expression simple pour sa distorsion d'échelle.
La projection de Mercator fait l'affaire: en supposant que l'échelle est correcte à l'équateur, sa distorsion est égale à la sécante de la latitude. Autrement dit, les distances sur la carte semblent être multipliées par la sécante. Cela fait que tout calcul de pente calcule l'élévation: (sec (f) * run) (qui est un rapport), où f est la latitude. Pour corriger cela, nous devons multiplier les pentes calculées par sec (f); ou, de manière équivalente, divisez-les par cos (f). Cela nous donne la recette simple:
Workflow
Pour ce faire, avec une grille indiquée en degrés décimaux (comme un DEM SRTM), procédez comme suit:
Créez une grille de latitude. (Ceci est juste la grille de coordonnées y.)
Calculez son cosinus.
Projetez à la fois le DEM et le cosinus de la latitude à l'aide d'une projection de Mercator dans laquelle l'échelle est vraie à l'équateur.
Si nécessaire, convertissez les unités d'élévation pour qu'elles correspondent aux unités des coordonnées projetées (généralement des mètres).
Calculez la pente du DEM projeté sous forme de pente pure ou de pourcentage ( pas sous forme d'angle).
Divisez cette pente par la grille de cosinus (latitude) projetée.
Si vous le souhaitez, reprojetez la grille de pente à tout autre système de coordonnées pour une analyse ou une cartographie plus poussée.
Les erreurs dans les calculs de pente vont jusqu'à 0,3% (car cette procédure utilise un modèle de terre sphérique plutôt qu'un modèle ellipsoïdal, qui est aplati de 0,3%). Cette erreur est sensiblement plus petite que les autres erreurs qui entrent dans les calculs de pente et peut donc être négligée.
Calculs entièrement globaux
La projection Mercator ne peut gérer aucun des deux pôles. Pour travailler dans des régions polaires, pensez à utiliser une projection stéréographique polaire avec une échelle réelle au pôle. La distorsion d'échelle est égale à 2 / (1 + sin (f)). Utilisez cette expression à la place de sec (f) dans le flux de travail. Plus précisément, au lieu de calculer une grille de cosinus (latitude), calculez une grille dont les valeurs sont (1 + sin (latitude)) / 2 ( modifier : utilisez -latitude pour le pôle Sud, comme indiqué dans les commentaires). Procédez ensuite exactement comme avant.
Pour une solution globale complète, envisagez de diviser la grille terrestre en trois parties - une autour de chaque pôle et une autour de l'équateur -, en effectuant un calcul de pente séparément dans chaque partie en utilisant une projection appropriée et en mosaïquant les résultats. Un endroit raisonnable pour diviser le globe est le long de cercles de latitude à des latitudes de 2 * ArcTan (1/3), ce qui est d'environ 37 degrés, car à ces latitudes les facteurs de correction Mercator et stéréographique sont égaux les uns aux autres (ayant une valeur commune 5/4) et ce serait bien de minimiser la taille des corrections apportées. Pour vérifier les calculs, les grilles doivent être en accord très étroit où elles se chevauchent (de minuscules quantités d'imprécision en virgule flottante et les différences dues au rééchantillonnage des grilles projetées devraient être les seules sources de divergences).
Les références
John P. Snyder, Projections cartographiques - Un manuel de travail . USGS Professional Paper 1395, 1987.
la source
Réponse originale
Je suppose que les unités horizontales de votre raster sont en degrés ou en secondes d'arc. Vous devez reprojeter ce raster à une projection spatiale où vos unités horizontales et verticales sont les mêmes (c.-à-d., Si les unités verticales sont en mètres, alors je suggère d'utiliser UTM, qui a des unités horizontales de mètres).
Pour reprojeter un raster avec ArcCatalog / ArcGIS, regardez dans:
Choisissez une référence spatiale projetée qui couvre votre région d'intérêt, par exemple, essayez une zone UTM. Il existe de nombreuses autres options qui sont mieux documentées dans le manuel .
Remarque, vous ne pouvez pas créer un jeu de données de pente pour la Terre entière (si c'est ce que vous essayez de faire).Meilleure réponse, en utilisant GDAL avec une échelle
Maintenant que les données SRTM sont disponibles dans le monde entier, je peux réellement voir et travailler avec les fichiers. L'
gdaldem
utilitaire de GDAL peut calculer la pente et l'ombrage à l'aide d'une option d' échelle pour un rapport des unités verticales à l'horizontale. Le manuel recommande 111120 m / ° pour quelque chose comme les carreaux SRTM. Ainsi, par exemple, à partir d'un shell OSGeo4W:L'
-compute_edges
option rend les bords plus transparents, si vous souhaitez assembler quelques carreaux ensemble. Ou calculez des tuiles pour une grande région. L'inconvénient de la technique de "l'échelle" est que les distances dans les directions EW et NS ne sont pas égales, sauf à l'équateur, donc pour les carreaux plus proches des pôles, il pourrait y avoir quelques fausses représentations étranges de la pente.la source
gdaldem
états "Pour les emplacements non proches de l'équateur, il serait préférable de reprojeter votre grille en utilisant gdalwarp avant d'utiliser gdaldem." Malheureusement, cela ne fonctionnera pas pour les ensembles de données couvrant le globe, sauf si vous les divisez en petits morceaux (74 zones UTM, peut-être?), Les projetez, calculez les pentes et mosaïquez les résultats.Autrement dit, il n'y en a pas. Par définition, un système de coordonnées basé sur les degrés n'est pas projeté. Dans le langage courant, nous disons que WGS84 est une projection "géographique", mais c'est faux, juste pour plus de commodité.
Je pense que je me souviens d'avoir lu un logiciel ou un processus pour travailler avec précision avec des modèles d'altitude dans un espace géographique non projeté, mais je ne peux pas le localiser pour le moment. Dans tous les cas, il aurait été expérimental ou construit vous-même à partir d'un processus de type code.
Ahhh, l'a trouvé: Développement d'un ensemble de données sur les pentes mondiales pour l'estimation de l'occurrence des glissements de terrain résultant des tremblements de terre (USGS). La page 4 décrit bien le problème
L'article continue en décrivant les calculs spécifiques et les outils logiciels ( gdal , python , numpy ) qu'ils ont utilisés pour contourner ce problème fondamental. Le document n'inclut pas le code, mais si on le lui demande gentiment, il pourrait le partager. Quoi qu'il en soit, je demanderais probablement où sont les résultats, étant l'USGS, il est probablement déjà en ligne quelque part. :)
la source
Les paramètres DEM mondiaux (où la plupart des formules sont basées sur l'hypothèse d'espace euclidien) peuvent être dérivés efficacement en utilisant le système EQUI7 GRID (Bauer-Marschallinger et al. 2014). EQUI7 GRID divise le monde en 7 zones terrestres, toutes projetées dans un système de projection équidistant avec une perte de précision minimale. Voir un exemple de DEM global à 250 m de résolution dans la grille EQUI7. Vous trouverez ici quelques exemples de code qui montrent comment dériver des paramètres DEM globaux à l'aide de SAGA GIS. Une fois que vous avez dérivé les paramètres DEM dans le système EQUI7 GRID, vous pouvez retransformer toutes les cartes en
longlat
coordonnées WGS84 , puis créer un mosaïque global à l'aide de GDAL.la source
La pente est montée / course. Calculez la montée et la course au calcul et vous avez votre réponse. Il est simple de calculer la distance entre les coordonnées géographiques. Cela introduira moins d'erreur de rééchantillonnage par rapport à la conversion en UTM, etc.
la source