Comprendre le fichier .asc d'Esri?

18

En lisant l'aide d'ArcGIS: Formats de fichier de jeu de données raster pris en charge , j'ai lu que les types de fichiers de grille ASCII sont traités avec l'extension de fichier singulière .asc pour les entiers signés 16 bits (pour les données discrètes) et les fichiers flottants 32 bits (pour les données continues) ).

Ils disent dans la section format Esri Grid :

Une grille est un format de stockage de données raster natif d'Esri. Il existe deux types de grilles: entier et virgule flottante.

puis, il décrit les deux formats.

Ma confusion vient dans la prochaine section d'aide au format raster Esri ASCII . Là, ils ne mentionnent que le format à virgule flottante. Je voudrais donc savoir:

  1. Le format entier signé 16 bits pour les données discrètes est-il également considéré comme un format raster, outre la grille?
  2. Dans la section «Format de grille ESRI - Stockage de données de grille», ils citent plusieurs autres extensions telles que .bnd, .hrd, etc.? Le fichier .asc entier signé 16 bits est-il la version ASCII d'un format de grille de données discrètes Esri?

La motivation de cette question est de décrire / comprendre ce qu'est un fichier avec l'extension .asc.

Andre Silva
la source

Réponses:

21

Dans le monde Esri, un .ascfichier fait généralement référence à la sortie créée par la commande GRIDASCII (ArcInfo Workstation) ou l' outil Raster to ASCII (ArcGIS for Desktop). En pratique, cela peut signifier à peu près n'importe quel format, généralement du texte brut, ce qui signifie que l'on ne peut pas supposer de l' .ascextension à quoi il ressemble à l'intérieur.

Il s'agit d'un format d'échange, ce qui signifie qu'il n'est pas (normalement) utilisé comme entrée pour l'analyse ou le stockage principal, mais pour l'échange avec d'autres programmes.

Le format Esri ASCII Raster peut utiliser des nombres entiers ou à virgule flottante pour la valeur Z (cellule). Ce sont les deux valides:

NCOLS 480
NROWS 450
XLLCORNER 378922
YLLCORNER 4072345
CELLSIZE 30
NODATA_VALUE -9999
43 2 45 7 3 56 2 5 23 65 34 6 32 54 57 34
35 45 65 34 2 6 78 4 2 6 89 3 2 7 45 23 5 ...

NCOLS 480
NROWS 450
XLLCORNER 378922
YLLCORNER 4072345
CELLSIZE 30
NODATA_VALUE -32768
43.245 7.356 2.523 6.534 6.325 57.34
35.456 34.267 4.268 32.745 23.5 ...

Le format de Esri GRID , également appelé Arcinfo binaire grille, est composée de plusieurs fichiers dans un seul répertoire ( .hdr, .adf...) et dont le contenu est opaque ( qui ressemble à du charabia dans un éditeur de texte). La spécification de la grille n'est pas publiée, mais a fait l'objet d' une ingénierie inverse très réussie . La grille binaire est le format raster par défaut d'ArcInfo Workstation (provient en fait de son programme GRID) et est utilisée comme entrée principale de stockage et d'analyse.

Vous n'avez pas posé de question à ce sujet, mais pour être complet: il existe également le format de fichier d'échange de grille à virgule flottante Esri . Il n'est pas utilisé pour le stockage principal ou l'analyse.

Les grilles à virgule flottante sont créées à partir de la commande GRIDFLOAT (ArcInfo Workstation) ou de l' outil Raster to Float (ArcGIS for Desktop) et ont généralement une .fltextension pour les valeurs brutes (codées en binaire) et un .hdrfichier de voiture secondaire décrivant le format. Le .hdr est en texte brut et ressemble au début d'un fichier .asc:

ncols         382
nrows         425
xllcorner     217996.296875
yllcorner     708952.625
cellsize      300.0741885626
NODATA_value  -9999
byteorder     LSBFIRST

En pratique , si vous avez un fichier de format inconnu que vous pensez être un raster, montrez-le à gdalinfo à partir de et il sera généralement en mesure de le découvrir:

D:\> gdalinfo strange_file.raw

Driver: AAIGrid/Arc/Info ASCII Grid
Files: strange_file.raw
Size is 382, 425
Coordinate System is `'
Origin = (217996.296875000000000,836484.155139103760000)
Pixel Size = (300.074188562596990,-300.074188562596990)
Corner Coordinates:
Upper Left  (  217996.297,  836484.155)
Lower Left  (  217996.297,  708952.625)
Upper Right (  332624.637,  836484.155)
Lower Right (  332624.637,  708952.625)
Center      (  275310.467,  772718.390)
Band 1 Block=382x1 Type=Int32, ColorInterp=Undefined
  NoData Value=-2147483648

.

D:\>gdalinfo strange_file_too.raw

Driver: EHdr/ESRI .hdr Labelled
Files: strange_file_too.flt
       strange_file_too.hdr
       strange_file_too.prj
Size is 382, 425
  ...snip...
Band 1 Block=382x1 Type=Float32, ColorInterp=Undefined
  NoData Value=-9999

... puis utilisez gdal_translate pour le convertir en quelque chose d'utile si vous n'avez pas ArcGIS for Desktop à portée de main.

Matt Wilkie
la source
3
... pour être complet, j'ai également ajouté quelque chose à propos de GRIDFLOAT
matt wilkie
3

Les formats de grille Esri sont des fichiers binaires propriétaires. Il n'existe pas de version ASCII des fichiers de grille. Il existe un format de transfert ASCII auquel votre publication fait référence.

Je n'ai jamais essayé de charger des données à virgule flottante dans un fichier ASCII, mais je sais que les données signées 16 bits seraient acceptées (les grilles entières sont des données signées 32 bits). Les données ASCII sont converties en une grille lors de l'importation, qui peut ensuite être exportée vers l'un des douze formats binaires 16 bits différents.

Notez que l'extension ".asc" n'est pas requise, ni exclusive, il est donc déroutant de faire référence à "extension .asc".

Vince
la source
1
Tout fichier peut être un binaire, y compris tout ce qui a un suffixe ".txt". Franchement, si vous devez de toute façon écrire le fichier, il est plus judicieux de créer un fichier .bsq / .bil / .bip, avec un .hdr conforme à help.arcgis.com/en/arcgisdesktop/10.0/help/index .html # //… - le fichier binaire résultant sera une fraction de la taille du .asc et plus directement utilisable.
Vince