Понимание файла .asc Esri?

18

Читая справку ArcGIS: Поддерживаемые форматы файлов наборов растровых данных , я прочитал, что типы файлов ASCII Grid имеют расширение единственного файла .asc для 16-разрядных целых чисел со знаком (для дискретных данных) и 32-разрядных файлов с плавающей точкой (для непрерывных данных). ).

Они говорят в разделе формата Esri Grid :

Сетка - это формат хранения растровых данных, свойственный Esri. Существует два типа сеток: целочисленные и с плавающей точкой.

а затем он описывает, что оба формата.

Моя путаница возникает в следующем разделе справки Esri ASCII растрового формата . Там они упоминают только формат с плавающей запятой. Итак, я хотел бы знать:

  1. Считается ли формат 16-разрядного целого числа со знаком для дискретных данных также растровым?
  2. В разделе «Формат сетки ESRI - Хранение данных сетки» они ссылаются на несколько других расширений, таких как .bnd, .hrd и т. Д.? Является ли 16-битный файл .asc со знаком целого числа версией ASCII формата сетки дискретных данных Esri?

Мотивация для этого вопроса - описать / понять, что такое файл с расширением .asc.

Андре Силва
источник

Ответы:

21

В мире Esri .ascфайл обычно ссылается на вывод, созданный командой GRIDASCII (ArcInfo Workstation) или инструментом Растр в ASCII (ArcGIS for Desktop). На практике это может означать практически любой формат, обычно простой текст, то есть из .ascрасширения нельзя предположить, как он выглядит внутри.

Это формат обмена, то есть он (обычно) не используется в качестве входных данных для анализа или основного хранилища, а для обмена с другими программами.

Формат Esri ASCII Raster может использовать целые числа или числа с плавающей запятой для значения Z (ячейки). Они оба действительны:

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

Формат Esri GRID , называемый также ARCInfo Binary Grid, состоит из нескольких файлов в одном каталоге ( .hdr, .adf, ...) и содержание которого является непрозрачными (выглядит как абракадабра в текстовом редакторе). Спецификация сетки не опубликована, но была очень успешно переработана . Бинарная сетка является растровым форматом по умолчанию для рабочей станции ArcInfo (фактически происходит из ее программы GRID) и используется в качестве основного хранилища и входных данных для анализа.

Вы не спрашивали об этом, но для полноты: существует также формат файла обмена сетки с плавающей запятой Esri . Он не используется для первичного хранения или анализа.

Сетки с плавающей точкой создаются с помощью команды GRIDFLOAT (ArcInfo Workstation) или инструмента Raster to Float (ArcGIS for Desktop) и, как правило, имеют .fltрасширение для необработанных значений (в двоичном коде) и .hdrфайл боковой машины, описывающий формат. .Hdr представляет собой простой текст и напоминает начало файла .asc:

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

На практике , если у вас есть файл неизвестного формата, который, по вашему мнению, может быть растром, покажите его gdalinfo из и он, как правило, сможет обнаружить, что это такое:

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

... а затем используйте gdal_translate, чтобы преобразовать что-то полезное, если у вас нет удобной ArcGIS for Desktop.

Мэтт Уилки
источник
3
... для полноты я также добавил кое-что о GRIDFLOAT
Мэтт Уилки
3

Форматы сетки Esri являются проприетарными двоичными файлами. Нет такой вещи как ASCII-версия файлов сетки. Существует формат передачи ASCII, на который ссылается ваш пост.

Я никогда не пробовал загружать данные с плавающей точкой в ​​файл ASCII, но я знаю, что 16-разрядные подписанные данные будут приняты (целочисленные сетки - это 32-разрядные подписанные данные). Данные ASCII при импорте преобразуются в сетку, которую затем можно экспортировать в любой из дюжины различных 16-битных двоичных форматов.

Обратите внимание, что расширение «.asc» не является обязательным или исключительным, поэтому путать ссылки на «расширение .asc» непонятно.

Винс
источник
1
Любой файл может быть двоичным, включая любой с суффиксом «.txt». Честно говоря, если вам все равно нужно написать файл, имеет смысл создать файл .bsq / .bil / .bip с .hdr, который соответствует help.arcgis.com/en/arcgisdesktop/10.0/help/index .html # //… - результирующий двоичный файл будет частью размера .asc и более пригоден для непосредственного использования.
Винс