Entendendo o arquivo .asc de Esri?

17

Lendo a ajuda do ArcGIS: Formatos de arquivo de conjunto de dados raster suportados , eu li que os tipos de arquivo ASCII Grid são endereçados com a extensão de arquivo singular .asc para números inteiros assinados de 16 bits (para dados discretos) e arquivos de ponto flutuante de 32 bits (para dados contínuos )

Eles dizem na seção de formato Esri Grid :

Uma grade é um formato de armazenamento de dados raster nativo da Esri. Existem dois tipos de grades: inteiro e ponto flutuante.

e, em seguida, descreve quais são os dois formatos.

Minha confusão vem na próxima seção de ajuda, formato raster ASCII da Esri . Lá, eles mencionam apenas o formato de ponto flutuante. Então, eu gostaria de saber:

  1. O formato inteiro assinado de 16 bits para dados discretos também é considerado um formato raster, além da grade?
  2. Na seção 'Formato da grade ESRI - armazenamento de dados da grade', eles citam várias outras extensões, como .bnd, .hrd, etc.? O arquivo .asc de número inteiro assinado de 16 bits é a versão ASCII de um formato de grade de dados discretos da Esri?

A motivação para esta pergunta é descrever / entender o que é um arquivo com extensão .asc.

Andre Silva
fonte

Respostas:

20

No mundo da Esri, um .ascarquivo geralmente se refere à saída criada pelo comando GRIDASCII (ArcInfo Workstation) ou pela ferramenta Raster to ASCII (ArcGIS for Desktop). Na prática, pode significar praticamente qualquer formato, geralmente texto sem formatação, o que significa que não é possível assumir da .ascextensão como ela se parece por dentro.

É um formato de intercâmbio, o que significa que não é (normalmente) usado como entrada para análise ou armazenamento primário, mas para intercâmbio com outros programas.

O formato Esri ASCII Raster pode usar números inteiros ou de ponto flutuante para o valor de Z (célula). Ambos são válidos:

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 ...

O formato ESRI GRID , também chamado Arcinfo Binary Grid é composto de vários arquivos em um único diretório ( .hdr, .adf...) e cujo conteúdo é opaco (parece gobbledygook em um editor de texto). A especificação da grade não foi publicada, mas teve a engenharia reversa com muito sucesso . Binary Grid é o formato raster padrão para o ArcInfo Workstation (na verdade, vem do seu programa GRID) e é usado como entrada primária de armazenamento e análise.

Você não perguntou sobre isso, mas para completar: também há o formato de arquivo de intercâmbio de grade de ponto flutuante da Esri . Não é usado para armazenamento ou análise primária.

As grades de ponto flutuante são criadas a partir do comando GRIDFLOAT (ArcInfo Workstation) ou da ferramenta Raster to Float (ArcGIS for Desktop) e normalmente possui uma .fltextensão para os valores brutos (codificado em binário) e o .hdrarquivo do carro lateral que descreve o formato. O .hdr é um texto sem formatação e se assemelha ao início de um arquivo .asc:

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

Na prática , se você tem um arquivo de formato desconhecido que você acha que pode ser uma varredura, mostre-o para gdalinfo a partir de e ele geralmente poderá descobrir o que é:

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

... e use gdal_translate para convertê-lo em algo útil se você não tiver o ArcGIS for Desktop à mão.

Matt Wilson
fonte
3
... para ser completo eu também acrescentou algo sobre GRIDFLOAT
Matt Wilkie
3

Os formatos de grade Esri são arquivos binários proprietários. Não existe uma versão ASCII dos arquivos de grade. Há um formato de transferência ASCII, ao qual sua postagem faz referência.

Nunca tentei carregar dados de ponto flutuante em um arquivo ASCII, mas sei que dados assinados de 16 bits seriam aceitos (grades inteiras são dados assinados de 32 bits). Os dados ASCII são convertidos em uma grade na importação, que pode ser exportada para qualquer um dos doze formatos binários de 16 bits diferentes.

Observe que a extensão ".asc" não é necessária ou exclusiva, portanto, é confuso fazer referências à "extensão .asc".

Vince
fonte
1
Qualquer arquivo pode ser um binário, incluindo qualquer coisa com o sufixo ".txt". Francamente, se você precisar gravar o arquivo de qualquer maneira, é melhor criar um arquivo .bsq / .bil / .bip, com um .hdr que esteja em conformidade com help.arcgis.com/en/arcgisdesktop/10.0/help/index .html # //… - o arquivo binário resultante será uma fração do tamanho do arquivo .asc e mais diretamente utilizável.
Vince