GeoTIFF простыми словами
GeoTIFF — это стандартное изображение TIFF с дополнительными метаданными — системой координат, началом отсчёта и размером пикселя — которые привязывают каждый пиксель к реальному месту, превращая картинку в карту. Если вы работаете с растрами рельефа, вы работаете с GeoTIFF: это повседневный формат для DEM и ортофотопланов. Это руководство объясняет, почему он стал стандартом.
TIFF, который знает своё место
GeoTIFF — стандартное изображение TIFF с дополнительными метаданными, привязывающими каждый пиксель к реальному месту: система координат, начало отсчёта и размер пикселя. Именно эти метаданные превращают картинку в карту.
Поскольку геопривязка находится внутри файла, GeoTIFF ложится в нужную точку Земли без отдельного world-файла.
DEM и ортофотопланы
GeoTIFF несёт два очень распространённых продукта. Как одноканальный растр он хранит DEM, где каждый пиксель — высота. Как многоканальный растр он хранит ортофотоплан, где каждый пиксель — цвет.
Оба используют одну и ту же геопривязку, поэтому DEM и ортофотоплан одного объекта идеально совмещаются при наложении.
Почему это стандарт
GeoTIFF открыт, широко поддерживается и самоописателен, поэтому он чисто переходит между геодезическими, ГИС- и CAD-инструментами. Он также поддерживает тайлы и обзорные уровни, позволяющие ПО читать только нужную часть огромного файла.
Последнее важно на практике: GeoTIFF объекта может занимать гигабайты, и ПО, читающее его потоково, остаётся отзывчивым, вместо того чтобы загружать всё целиком.
Что внутри файла
Геопривязка GeoTIFF хранится в нескольких тегах. Зная их, легко диагностировать большинство проблем импорта.
| Тег или свойство | Что хранит | Почему важно |
|---|---|---|
| ModelPixelScale + ModelTiepoint (или ModelTransformation) | Размер пикселя и положение одного пикселя на местности | Без них у растра нет положения |
| Каталог GeoKey | Система координат, обычно в виде кода EPSG | Отсутствующая или неверная СК помещает данные не туда |
| Тип растра: pixel-is-area или pixel-is-point | Относятся ли координаты к углу или центру пикселя | При неверном чтении вся сетка сдвигается на полпикселя |
| GDAL_NODATA | Значение, означающее «нет измерения» | Если его игнорировать, значение вроде −9999 попадает в объёмы и статистику |
| Тайлы и обзоры (overviews) | Внутренние блоки и копии пониженного разрешения | Позволяют читать только нужную часть и детализацию |
| BigTIFF | 64-битные смещения вместо 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 см в программе, которая читает файл в память целиком, — а просмотрщик, потоково читающий тайлы и обзоры, работает плавно при любом разрешении.
| Размер пикселя | Пикселей | 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-приложение · полностью офлайн · бесплатная бета