Bonjour à tous,

Je continue à travailler sur mon script où j'ai maintenant un problème assez particulier et je n'ai pas réussi à trouver de réponse sur le net.

Je dispose en fait de fichier de type raster Arc Info Binary grid (fichier adf)
Je recherche à lire les altitudes des points de ce fichier.
(en travaillant sur ArcGis pas de soucis, elle est correctement géoréférencée, lecture ok aussi)

Le soucis, c'est que je n'arrive pas à utiliser la bibliothèque gdal pour lire les attributs de chaque pixel. En fait, je bute comme dans le message ci-dessous :
http://lists.maptools.org/pipermail/...il/001207.html

J'ai donc testé des drivers comme aigrid.py mais qui me renvoyait vers des erreurs encore plus incompréhensible. Je me suis arrêté là avec aigrid.py, pourtant très prometteur.

mon script :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
IDLE 2.6
>>> import os
>>> import gdal
 
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    import gdal
  File "C:\Python26\Lib\site-packages\gdal.py", line 3, in <module>
    deprecation_warn('gdal')
  File "C:\Python26\Lib\site-packages\osgeo\gdal.py", line 89, in deprecation_warn
    DeprecationWarning)
  File "C:\Python26\lib\warnings.py", line 29, in _show_warning
    file.write(formatwarning(message, category, filename, lineno, line))
TypeError: idle_formatwarning_subproc() takes exactly 4 arguments (5 given)
>>> import gdal
>>> from gdalconst import *
>>> raster=gdal.Open('C:\Documents and Settings\xixix\Bureau\Developpement\xixix\w001001x.adf')
>>> rasterdriver=raster.GetDriver().ShortName
 
Traceback (most recent call last):
  File "<pyshell#19>", line 1, in <module>
    rasterdriver=raster.GetDriver().ShortName
AttributeError: 'NoneType' object has no attribute 'GetDriver'
La première erreur, je ne sais pas trop d'où elle vient mais en important une deuxième fois, je n'ai pas de message d'erreur.

Mais la deuxième erreur, c'est vraiment le grand mistère. Bon en clair, je suis perdu !
En tuto, je me suis servit de ressource sur GDAL.ORG : http://www.gdal.org/gdal_tutorial.html

Je ne connais pas forcément bien la façon dont on peut lire le raster (plusieurs fichiers adf ect comme décliné dans le premier url), mais j'avais donc plusieurs questions:

1 - Est ce que vous avez déjà vu la première erreur ? Et comment passer outre ?
2 - Est ce qu'il existe des lecteurs annexes à gdal pour les fichiers raster ?
3 - Quel sont les format de fichier raster les plus facile à manipuler pour en lire les altitudes (value) ?
4 - Est ce que j'ai rien compris aux classes et aux fonctions de python ?


Merci d'avance...

Etienne