Suite

Vous utilisez l'outil de mesure de la robustesse vectorielle (VRM) d'ArcScripts dans la dernière version d'ArcGIS for Desktop ?


Je dois utiliser l'outil de mesure de robustesse vectorielle (VRM) disponible sur http://arcscripts.esri.com/details.asp?dbid=15423. Cependant, j'utilise ArcGIS 10.2 for Desktop et ces outils sont conçus pour 9.0, 9.1 et 9.3 uniquement. J'ai quand même essayé d'exécuter cet outil et j'ai obtenu l'erreur :

Traceback (appel le plus récent en dernier) : fichier "C:Usersjc221340DocumentsprojectProcessed dataMy_toolsDownloaded uggedness.py", ligne 20, dans gp.AddToolbox("C:/Program Files/ArcGIS/ ArcToolbox/Toolboxes/Spatial Analyst Tools.tbx") RuntimeError : Objet : Toolbox C:/Program Files/ArcGIS/ArcToolbox/Toolboxes/Spatial Analyst Tools.tbx n'existe pas

Échec de l'exécution (Ruggedness(VRM)).

Comment puis-je utiliser cet outil ?


Étant donné que vous utilisez la version 10.2, il recherche le chemin de la boîte à outils Spatial Analyst qui a légèrement modifié l'emplacement des répertoires par rapport à la version 9 :

Pour mettre à jour, ouvrez le robustesse.py fichier à l'aide du Bloc-notes ou d'un autre éditeur de texte et remplacez le chemin de la ligne 20 par quelque chose comme ceci :

C:Program Files (x86)ArcGISDesktop10.2ArcToolboxToolboxesSpatial Analyst Tools.tbx

J'ai également rencontré un problème lors de l'exécution de VRM sur ArcGIS 10.1. La réponse ci-dessus a été utile mais pas suffisante. L'outil VRM a généré des fichiers d'aspect, de pente, x, y, z… etc, puis a montré l'achèvement du processus. Les méthodes suivantes telles que la génération de la couche de robustesse et la suppression des fichiers intermédiaires ont été ignorées et ignorées.

Le problème a été résolu en utilisant à la place "Bentthic Terrain Modeler" pour calculer le VRM.


J'ai eu le même problème. J'ai envoyé un e-mail au créateur de l'outil, Mark Sappington, il a mis à jour cet outil pour les nouvelles versions d'ArcGIS et le nouveau script Python et la boîte à outils ArcGIS peuvent être téléchargés ici : http://www.arcgis.com/home/item.html?id= 9e4210b3ee7b413bbb1f98fb9c5b22d4

Cela a fonctionné avec ma version 10.2.

Bonne chance!


Vous pouvez facilement reproduire cette métrique à l'aide de l'algèbre raster. Cet exemple est écrit en pseudo-code d'algèbre raster et devrait être facile à adapter à tout logiciel SIG prenant en charge l'analyse raster.

Calculer la pente et l'aspect à l'aide d'une constante à convertir en radians

pente = pente (dem, unités = degrés) * 0,0175 aspect = aspect (dem) * 0,0175

Appliquer la fonction cosinus et sinus. Pour l'aspect, les logiciels SIG attribuent généralement un -1 aux zones plates. Pour cette raison, vous devrez peut-être utiliser une instruction con pour gérer la conversion des valeurs négatives en zéro.

sin.slp = cos(pente) cos.slp = sin(pente) sin.asp = con(aspect == -1, 0, sin(aspect) * sin.asp) cos.asp <- con(aspect == - 1, 0, cos(aspect) * sin.asp)

Appliquer la fonction de somme focale pour l'échelle souhaitée (quartier focal)

scale = 5 x.sum = focal(sin.asp, window = scale, function = sum) y.sum = focal(cos.asp, window = scale, function = sum) z.sum = focal(cos.slp, window = échelle, fonction = somme)

La mesure de robustesse vectorielle (VRM) est 1 - la racine carrée des sommes au carré des rasters focaux divisée par l'échelle au carré.

vrm = 1 - ( sqrt( sqr(x.sum) + sqr(y.sum) + sqr(z.sum)) / sqr(scale) )