Изображения хранятся в виде растровых данных, в которых каждая ячейка имеет номер строки и столбца. Такие векторные данные, как классы пространственных объектов в базах геоданных, шейп-файлы и покрытия, хранятся в координатах реального мира. Для отображения изображений вместе с векторными данными, необходимо задать преобразование изображения, которое конвертирует координаты изображения в координаты реального мира. Информация о таком преобразовании обычно хранится вместе с изображением.
Как правило, форматы изображений, такие как ERDAS IMAGINE, BSQ, BIL, BIP, GeoTIFF и гриды, хранят пространственную привязку в заголовке файла. Однако, некоторые форматы изображений (включая перечисленные) хранят эту информацию в отдельном файле привязки ASCII. То, где хранится информация о пространственной привязке, часто зависит от возможностей программного обеспечения, используемого для создания файлов или предпочтений пользователя. Файлы привязки можно создать с помощью любого редактора, или вы можете экспортировать файл привязки наборов растровых данных с помощью инструмента Экспорт файла привязки растра.
Соглашения о наименовании файлов привязки
Файл привязки, относящийся к изображению, определить очень легко, он использует то же самое имя, что и файл изображения, с буквой w на конце. Например, файл привязки изображения mytown.tif будет называться mytown.tifw, а файл для изображения redlands.rlc - redlands.rlcw. Иногда соглашение о наименовании файлов может отличаться от указанного, при этом используется первая и третья буквы расширения файла изображения, к которым добавляется буква w. В этом случае, для mytown.tif, файл привязки будет выглядеть так mytown.tfw, а для redlands.jpg - redlands.jgw.
Если файл изображения не имеет расширения, или расширение имеет менее трех знаков, буква w добавляется в конце имени файла. В этом случае, файл привязки для изображения terrain будет выглядеть как terrainw, а для изображения floorpln.rs - floorpln.rsw.
Примеры имен файлов привязки
Файл растровых данных | Файл привязки |
---|---|
image.tif | image.tfw или image.tifw |
image.bil | image.blw или image.bilw |
image.jpg | image.jgw или image.jpgw |
image.raster | image.rasterw |
image.bt | image.btw |
В ArcGIS 9.2 SP2, если преобразование не может быть записано в файл привязки, команда Обновить пространственную привязку с панели Пространственная привязка записывает данные о преобразовании в .aux.xml файл, а также записывает приблизительную аффинную трансформацию в текстовой файл или в файл привязки с буквой x, добавленной к расширению. Например, изображение формата TIFF с приблизительной аффинной трансформацией будет иметь расширение .tfwx. Имейте в виду, это не точное преобразование, а только приближенное.
Существует один случай, когда такой текстовой файл содержит истинную аффинную трансформацию. При выполнении команды Обновить пространственную привязку для набора растровых данных, который уже содержит координаты карты, записывается текстовый файл с расширением x. Например, если выполняется пространственная привязка изображения в формате TIFF, которое уже имеет координаты карты, команда Обновить пространственную привязку создаст файл с расширением .tfwx, который будет содержать истинную аффинную трансформацию.
Этот текстовый файл можно использовать в качестве файла привязки для ArcGIS 9.1 и стороннего программного обеспечения. Чтобы использовать этот текстовой файл, удалите букву x из расширения файла привязки. Поскольку такой текстовый файл не является частью набора растровых данных, его не следует использовать в качестве файла привязки в тех версиях ArcGIS, которые могут считывать файл .aux.xml, т.е. ArcGIS 9.2 и выше.
Как осуществляется доступ к пространственной привязке
Преобразование изображения считывается каждый раз при его отображении, например, когда вы панорамируете его или изменяете масштаб. Преобразование вычисляется по одному из следующих источников, указанных в порядке их приоритета:
- Файл заголовка (если поддерживается типом изображения)
- Файл привязки (будет использоваться в первую очередь, если вы включите опцию Использовать файл привязки для определения координат растра, которую можно найти в диалоговом окне Опции.)
- Из данных строки/столбца изображения (тождественное преобразование)
Содержание файла привязки
Содержание файла привязки выглядит приблизительно так:
20.17541308822119
0.00000000000000
0.00000000000000
-20.17541308822119
424178.11472601280548
4313415.90726399607956
Если такой файл существует, ArcGIS выполняет преобразование координат изображения в координаты карты. Это преобразование является аффинной трансформацией с шестью коэффициентами в виде
x1 = Ax + By + C y1 = Dx + Ey + F
где
x1 = calculated x-coordinate of the pixel on the map
y1 = calculated y-coordinate of the pixel on the map
x = column number of a pixel in the image
y = row number of a pixel in the image
A = x-scale; dimension of a pixel in map units in x direction
B, D = rotation terms
C, F = translation terms; x,y map coordinates of the center of the upper left pixel
E = negative of y-scale; dimension of a pixel in map units in y direction
Параметры преобразования хранятся в файле привязки в следующем порядке:
20.17541308822119 - A
0.00000000000000 - D
0.00000000000000 - B
-20.17541308822119 - E
424178.11472601280548 - C
4313415.90726399607956 - F
Каждый из этих коэффициентов может быть определён как
A = mx · cos t
B = my · (k · cos t - sin t)
D = mx · sin t
E = -1 · my · (k · sin t + cos t)
C = translation in x direction
F = translation in y direction
где
mx = change of scale in x direction
my = change of scale in y direction
k = shear factor along the x-axis = tan (skew angle) (the skew angle is measured from the y-axis)
t = rotation angle, measured counter-clockwise from the x-axis
Настройка ArcGIS для считывания файла привязки в первую очередь
ArcGIS автоматически считывает пространственную привязку, если она находится в заголовке таких файлов, как GeoTIFF, и, таким образом, игнорирует пространственную привязку, находящуюся в файле привязки. Вы можете изменить это поведение, включив опцию Использовать файл привязки для определения координат растра в диалоговом окне Опции.
- Щелкните Настройка в Главном меню и выберите Опции ArcMap (или Опции ArcCatalog, в зависимости от используемого приложения).
- Щелкните закладку Растр в окне Опции.
- На закладке Растр щелкните Набор растровых данных и включите опцию Использовать файл привязки для определения координат растра.
- Щелкните ОК.