Автор Мехмет Акъюз · Инженер-геодезист · Разработчик|Обновлено: 8 мин чтения

GeoTIFF простыми словами

GeoTIFF — это стандартное изображение TIFF с дополнительными метаданными — системой координат, началом отсчёта и размером пикселя — которые привязывают каждый пиксель к реальному месту, превращая картинку в карту. Если вы работаете с растрами рельефа, вы работаете с GeoTIFF: это повседневный формат для DEM и ортофотопланов. Это руководство объясняет, почему он стал стандартом.

TIFF, который знает своё место

GeoTIFF — стандартное изображение TIFF с дополнительными метаданными, привязывающими каждый пиксель к реальному месту: система координат, начало отсчёта и размер пикселя. Именно эти метаданные превращают картинку в карту.

Поскольку геопривязка находится внутри файла, GeoTIFF ложится в нужную точку Земли без отдельного world-файла.

DEM и ортофотопланы

GeoTIFF несёт два очень распространённых продукта. Как одноканальный растр он хранит DEM, где каждый пиксель — высота. Как многоканальный растр он хранит ортофотоплан, где каждый пиксель — цвет.

Оба используют одну и ту же геопривязку, поэтому DEM и ортофотоплан одного объекта идеально совмещаются при наложении.

Почему это стандарт

GeoTIFF открыт, широко поддерживается и самоописателен, поэтому он чисто переходит между геодезическими, ГИС- и CAD-инструментами. Он также поддерживает тайлы и обзорные уровни, позволяющие ПО читать только нужную часть огромного файла.

Последнее важно на практике: GeoTIFF объекта может занимать гигабайты, и ПО, читающее его потоково, остаётся отзывчивым, вместо того чтобы загружать всё целиком.

Что внутри файла

Геопривязка GeoTIFF хранится в нескольких тегах. Зная их, легко диагностировать большинство проблем импорта.

Теги и свойства GeoTIFF, важные для данных рельефа
Тег или свойствоЧто хранитПочему важно
ModelPixelScale + ModelTiepoint (или ModelTransformation)Размер пикселя и положение одного пикселя на местностиБез них у растра нет положения
Каталог GeoKeyСистема координат, обычно в виде кода EPSGОтсутствующая или неверная СК помещает данные не туда
Тип растра: pixel-is-area или pixel-is-pointОтносятся ли координаты к углу или центру пикселяПри неверном чтении вся сетка сдвигается на полпикселя
GDAL_NODATAЗначение, означающее «нет измерения»Если его игнорировать, значение вроде −9999 попадает в объёмы и статистику
Тайлы и обзоры (overviews)Внутренние блоки и копии пониженного разрешенияПозволяют читать только нужную часть и детализацию
BigTIFF64-битные смещения вместо 32-битныхКлассический TIFF ограничен 4 ГБ; больше — только BigTIFF

Насколько большим бывает растр объекта

Размер определяется площадью и размером пикселя на местности. Объект 2 км × 2 км при 5 см — это 40 000 × 40 000 = 1,6 млрд пикселей. В виде 32-битных отметок с плавающей точкой — 6,4 ГБ без сжатия; в виде 8-битного RGB-ортофотоплана — 4,8 ГБ. При 10 см оба уменьшаются вчетверо: 1,6 ГБ и 1,2 ГБ.

Поэтому один и тот же объект легко открывается при 10 см и не открывается при 5 см в программе, которая читает файл в память целиком, — а просмотрщик, потоково читающий тайлы и обзоры, работает плавно при любом разрешении.

Размер без сжатия растра объекта 2 км × 2 км
Размер пикселяПикселейDEM (float32)Ортофотоплан (RGB, 8 бит)
10 см20 000 × 20 000 = 0,4 млрд1,6 ГБ1,2 ГБ
5 см40 000 × 40 000 = 1,6 млрд6,4 ГБ4,8 ГБ

Проверки до любых расчётов

Подтвердите систему координат и то, что вертикальная единица — метры (или футы), как вы ожидаете. Проверьте, что значение NoData задано и появляется там, где у съёмки пропуски. Убедитесь, что DEM и ортофотоплан совпадают на чётком объекте: сдвиг на полпикселя указывает на несоответствие pixel-is-point. Для всего, что больше нескольких сотен мегабайт, предпочитайте тайловые сжатые GeoTIFF с обзорами.

STREAM читает растры GeoTIFF и BigTIFF, просит подтвердить систему координат перед добавлением слоя в проект и потоково читает большие файлы по тайлам, а не загружает их целиком.

Частые вопросы

Что такое GeoTIFF?

GeoTIFF — это стандартный файл изображения TIFF с дополнительными метаданными — системой координат, началом отсчёта и размером пикселя — которые привязывают каждый пиксель к реальному месту, благодаря чему файл ложится в нужную точку карты без отдельного world-файла.

Чем отличается хранение DEM и ортофотоплана в GeoTIFF?

GeoTIFF хранит DEM как одноканальный растр, где каждый пиксель — значение высоты, и хранит ортофотоплан как многоканальный растр, где каждый пиксель — значение цвета. Оба используют одну и ту же геопривязку, поэтому DEM и ортофотоплан одного объекта идеально совмещаются при наложении.

Почему GeoTIFF стал стандартным форматом для растров рельефа?

GeoTIFF стал стандартом, потому что он открыт, широко поддерживается и самоописателен, что позволяет ему чисто переходить между геодезическими, ГИС- и CAD-инструментами.

Как ПО может обрабатывать очень большие файлы GeoTIFF, не загружая файл целиком?

GeoTIFF поддерживает тайлы и обзорные уровни, позволяющие ПО читать только ту часть огромного файла, которая действительно нужна — это важно на практике, поскольку GeoTIFF объекта может занимать гигабайты, и ПО, использующее эту возможность, остаётся отзывчивым вместо загрузки всего файла целиком.

Сколько весит DEM 5 см для объекта 2 км × 2 км?

40 000 × 40 000 = 1,6 млрд пикселей; в виде 32-битных отметок с плавающей точкой это 6,4 ГБ без сжатия — больше предела 4 ГБ классического TIFF, нужен BigTIFF. Тот же объект при 10 см — 1,6 ГБ.

Открывайте большие DEM и ортофотопланы GeoTIFF в STREAM

Нативное Windows-приложение · полностью офлайн · бесплатная бета

ПО для GeoTIFF