#1 Tue 15 July 2008 23:12
- Couret
- Participant occasionnel
- Lieu: Bouaké - Côte d'Ivoire
- Date d'inscription: 29 Sep 2005
- Messages: 42
[Arcgis9.2] Script et ZonalStatisticsAsTable
Bonjour,
je dois effectuer une analyse statistique sur des zones sur plus de 160 images et comme l'outil de la Toolbox (ZonalStatisticsAsTable) ne fonctionne que sur 1 images à analyser, j'essaye donc d'effectuer un script pour faire le travail.
L'outil de la ToolBox s'exécute parfaitement avec les images tests mais dans le script en utilisant la commande gp.ZonalStatisticsAsTable_sa j'obtiens la réponse :
An error was encountered while executing ZonalStatisticsAsTable.
("esriGeoAnalyst.GridEngine") One or more of the input raster datasets is not of type integer.
Quelqu'un aurait il une piste ou une réponse ?
merci
Daniel
Hors ligne
#2 Wed 16 July 2008 09:58
- Tnarbiv
- Participant assidu
- Lieu: Véretz
- Date d'inscription: 5 Sep 2005
- Messages: 392
Re: [Arcgis9.2] Script et ZonalStatisticsAsTable
bonjour,
est ce que tous tes rasters sont de type entier ou bien certains ont des valeurs flottantes au sein des pixels ?
voici ce qu'il y a dans l'aide : If the input raster or feature zone data is a raster, it must be integer.
Ayez le réflexe "Développement Durable": N'imprimez ce message que si nécessaire.
Hors ligne
#3 Wed 16 July 2008 11:27
- Couret
- Participant occasionnel
- Lieu: Bouaké - Côte d'Ivoire
- Date d'inscription: 29 Sep 2005
- Messages: 42
Re: [Arcgis9.2] Script et ZonalStatisticsAsTable
Bonjour,
je supposais que oui puisque les rasters étaient parfaitement reconnus et traités par la ToolBox.
Dans le doute j'ai exécuté la commande de "building Raster Attribute Table" sur une des images à traitée => pas de changement
Depuis hier soir, j'ai quand même avancé, l'exécution de la commande ZonalStatisticAsTable s'est exécutée sur les 2 images tests mais les fichiers .dbf de résultats sont vides.
L'avancée est due au fait d'utiliser comme zone_field la colonne d'entier et non pas ma colonne text qui pourtant fonctionnait très bien dans la Toolbox
Je dois avoir un problème avec mon raster utilisé comme référence (buffer) ou plus exactement avec l'identification, car dans le cas ou je met comme image de référence l'image qui sera traitée cela fonctionne.
La commande effectue les calculs statistique sur elle même et les enregistre dans le fichier .dbf
Si joint le script simplifié
bonjour,
est ce que tous tes rasters sont de type entier ou bien certains ont des valeurs flottantes au sein des pixels ?
voici ce qu'il y a dans l'aide : If the input raster or feature zone data is a raster, it must be integer.
---------------------------------ce n'est que de la recopie du script dans l'help de ArcGis---------------------
Code:
#Import modules import arcgisscripting, sys, os, string # Create the geoprocessor object gp = arcgisscripting.create() # Check out any necessary licenses gp.CheckOutExtension("Spatial") gp.cellSize = 1 gp.Workspace = "D:\\Test" try: #----------BUFFER------------------------------------ # Zone des Buffers InRasterBuffer = "D:\\Test\\buffer\\EssaiNDVI_2.tif" print InRasterBuffer zone_field = "Value" #---------RASTER----------------------------------- # Get a list of tif in the workspace. InputRasters = gp.ListRasters("", "TIF") Raster_uniq = InputRasters.next() i=0 # boucle de lecture des raster while Raster_uniq: print Raster_uniq i=i+1 Nom_Image = Raster_uniq[0:8] # sera ultérieurement rajouté dans la table pour identifier les résultats print Nom_Image output = "ZonalStats" + str(i) + ".dbf" print output # Process: Zonal Statistics as Table gp.ZonalStatisticsAsTable_sa(InRasterBuffer, zone_field, Raster_uniq, output, "DATA") print "image " + Nom_Image + " traitée" # retour boucle : Raster suivant Raster_uniq = InputRasters.next() print "C'est fini" except: gp.AddMessage(gp.GetMessages()) print gp.GetMessages()
Hors ligne
#4 Wed 16 July 2008 14:51
- Couret
- Participant occasionnel
- Lieu: Bouaké - Côte d'Ivoire
- Date d'inscription: 29 Sep 2005
- Messages: 42
Re: [Arcgis9.2] Script et ZonalStatisticsAsTable
Difficile, difficile,
le script écrit bien un fichier .dbf pour chaque image traitée mais les fichiers sont vides !!!!
Alors que les mêmes images donnent un bon résultat avec l'outil de ToolBox !!!!!
j'y perd mon latin (plutôt mon geotin)
Les images ont la même taille de pixel, le même domaine spatial et le même système , alors que reste il ?????
Daniel
Hors ligne
#5 Thu 17 July 2008 16:43
- Couret
- Participant occasionnel
- Lieu: Bouaké - Côte d'Ivoire
- Date d'inscription: 29 Sep 2005
- Messages: 42
Re: [Arcgis9.2] Script et ZonalStatisticsAsTable
bon, c'est fini non sans mal
Le script fonctionne avec un vecteur ou un raster
l'erreur venait du fait que dans le script la cellsize était trop grande, cela m'a échappé
Daniel
Hors ligne