Как создать GeoTiff
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Как создать GeoTiff
Всем привет,
подскажите
есть bmp файлы (карта) которую генерит прога, и известны географические координаты например 4-х углов, (в принципе можно вычислить всех точек)
как из этого создать файл GeoTiff наиболее простым способом и желательно встроить в программу на Buildere ?
Я так понимаю есть два способа :
1) использовать сторонние библиотеки (GDAL ? ) (как их прикрутить к проекту неясно )
2) вручную прописать все директории в файле Tiff (так и не нашел внятного описания где там что прописывать)
Может кто сталкивался покажет дорогу ?
Для меня второй вариант предпочтительнее, все прозрачно, никаких библиотек устанавливать никуда не надо.
подскажите
есть bmp файлы (карта) которую генерит прога, и известны географические координаты например 4-х углов, (в принципе можно вычислить всех точек)
как из этого создать файл GeoTiff наиболее простым способом и желательно встроить в программу на Buildere ?
Я так понимаю есть два способа :
1) использовать сторонние библиотеки (GDAL ? ) (как их прикрутить к проекту неясно )
2) вручную прописать все директории в файле Tiff (так и не нашел внятного описания где там что прописывать)
Может кто сталкивался покажет дорогу ?
Для меня второй вариант предпочтительнее, все прозрачно, никаких библиотек устанавливать никуда не надо.
-
- Завсегдатай
- Сообщения: 426
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 163
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Как создать GeoTiff
а ваша прога не может генерить вместе с bmp файл-спутник с геопривязкой, такой как world-файл (https://gis-lab.info/qa/tfw.html)? Из этой пары потом не сложно получить GeoTiff, хоть через командную строчку gdal, хоть любым подручным ГИС.
Пример вызова gdal, файл 1map.bmp и рядом с ним 1map.bpw:
gdal_translate -of GTiff D:/temp/1map.bmp D:/temp/1map.tif
Содержимое bpw, что то вроде (если без поворотов):
0.00003659111904762 - сколько в точке по Х
0
0
-0.00003659111904762 - сколько в точке по Y
36.58674340522618706 - долгота левый нижний угол
54.7949135714404818 - широта левый нижний? или верхний, не помню, угол
Для совсем ленивых - есть утилитка gtt, конвертирующая в разные геопривязанные форматы: , только она с bmp не работает
Ей (да и всем конверторам) потребуется файл-спутник растра с геопривязкой, world (esry) или tab (mapinfo)
Пример вызова gdal, файл 1map.bmp и рядом с ним 1map.bpw:
gdal_translate -of GTiff D:/temp/1map.bmp D:/temp/1map.tif
Содержимое bpw, что то вроде (если без поворотов):
0.00003659111904762 - сколько в точке по Х
0
0
-0.00003659111904762 - сколько в точке по Y
36.58674340522618706 - долгота левый нижний угол
54.7949135714404818 - широта левый нижний? или верхний, не помню, угол
Для совсем ленивых - есть утилитка gtt, конвертирующая в разные геопривязанные форматы: , только она с bmp не работает

Ей (да и всем конверторам) потребуется файл-спутник растра с геопривязкой, world (esry) или tab (mapinfo)
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Re: Как создать GeoTiff
Файл привязки генерировать может, правда не совсем ясно как обеспечивается поворот ,
наверно через С и D.
Еще не нашел gdal на 32-разрядную систему и как вообще его установить.
Я так понимаю придется на каждой машине его устанавливать что нереально.
Я тут нашел описание GeoTiff https://gis-lab.info/docs/geotiff-1.8.2.pdf
пока вникаю, может получиться сразу прописать все дириктивы вручную ?
Можно вместо bmp генерировать tiff практически без разницы.
Я не пойму файл gdal_translate.exe можно просто взять отдельный без всяких установок библиотек или к нему идет какие то доп файлы и в одиночку он работать не будет?
Если он отдельный то можно просто прикрутить к программе.
наверно через С и D.
Еще не нашел gdal на 32-разрядную систему и как вообще его установить.
Я так понимаю придется на каждой машине его устанавливать что нереально.
Я тут нашел описание GeoTiff https://gis-lab.info/docs/geotiff-1.8.2.pdf
пока вникаю, может получиться сразу прописать все дириктивы вручную ?
Можно вместо bmp генерировать tiff практически без разницы.
Я не пойму файл gdal_translate.exe можно просто взять отдельный без всяких установок библиотек или к нему идет какие то доп файлы и в одиночку он работать не будет?
Если он отдельный то можно просто прикрутить к программе.
-
- Активный участник
- Сообщения: 231
- Зарегистрирован: 28 июл 2018, 08:40
- Репутация: 16
- Откуда: Киев
Re: Как создать GeoTiff
GeoTiff прекрасно формирует программа R с библиотеками терра и иже с ними. Возможно через неё Вы можете решить свою задачу.
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Re: Как создать GeoTiff
Решил пока попробовать напрямую в директории писать.
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Re: Как создать GeoTiff
Научился вручную генерировать tiff файлы, чтобы превратить их в geo осталось заполнить всего три поля,
вроде все понятно но как вычислять параметры c и d поворота непонятно.
вроде все понятно но как вычислять параметры c и d поворота непонятно.
-
- Завсегдатай
- Сообщения: 426
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 163
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Как создать GeoTiff
А поворота может и не быть. Если ваши геоданные сразу хранятся в географических (или в любых других, но карта в географических), или рендер ее фрагмента производится в географических, с "квадратным" вертикально-горизонтальным охватом по градусной сетке, тогда и bmp получится прямоугольной, без поворота. Проверяйте. Откройте результат (GeoTIFF) где нибудь (хоть в qgis), просмотрите, координаты точек сравните.
Аналогично, без поворота, получится, если рендер будете делать из цилиндрической проекции (типа 3857 Pseudo-Mercator)
Аналогично, без поворота, получится, если рендер будете делать из цилиндрической проекции (типа 3857 Pseudo-Mercator)
-
- Завсегдатай
- Сообщения: 426
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 163
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Как создать GeoTiff
С поворотом получится в следующем случае: у вас растровый планшет в местной прямоугольной системе координат. Его геопривязка в географической СК - как раз с поворотом, тем большим, чем дальше планшет от осевого меридиана местной СК
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Re: Как создать GeoTiff
Я тут почитал спецификацию на GeoTiff по моему ее спецом написали так чтобы никто ничего не понял.
Есть какое то внятное описание какие куда директории поля и данные писать в tiff чтобы он стал Geo?
Поиски не дали пока результатов, все бездумно пользуются библиотеками, у меня задача напрямую
прописать.
В моем случае есть просто снимок местности прямоугольный, обычно длинной 100-200м, шириной 200м, под разными углами к северу, в котором известны координаты всех точек.
Я так понимаю там не так все сложно прописать но нужно внятное объяснение.
Неужели не нашлось у нас героя который бы разобрался в этом вопросе ?
Есть какое то внятное описание какие куда директории поля и данные писать в tiff чтобы он стал Geo?
Поиски не дали пока результатов, все бездумно пользуются библиотеками, у меня задача напрямую
прописать.
В моем случае есть просто снимок местности прямоугольный, обычно длинной 100-200м, шириной 200м, под разными углами к северу, в котором известны координаты всех точек.
Я так понимаю там не так все сложно прописать но нужно внятное объяснение.
Неужели не нашлось у нас героя который бы разобрался в этом вопросе ?
-
- Гуру
- Сообщения: 5359
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1021
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: Как создать GeoTiff
посмотри исходники gdal
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Re: Как создать GeoTiff
Я смотрел, там пол года в них разбираться надо.
-
- Завсегдатай
- Сообщения: 426
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 163
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Как создать GeoTiff
Таких полно - авторов библиотек типа gdal. Которые, в свою очередь, используют библиотеки типа PROJ (чем облегчают себе жизнь, доверяя чужим компетенциям).
GeoTIFF - не единственный целевой формат, есть еще штук тридцать полезных. Если самому - придется геройствовать со всеми тридцатью. Причем, геройствовать не только с координатами углов (геопривязкой), есть гриды с float значениями растра (не целочисленного цвета, а дробного типа высоты), надо уметь хранить альфа-канал (области без данных), надо хранить описания проекций и параметров перехода, хранить пирамиды (все это в т.ч. в GeoTIFF), тайловые сетки и много чего еще. А спецификации не вечные, регулярно обновляются, еще и за этим гоняться.
Уважаю Ваш подход, в 90-е насмотрелся на таких самоотверженных героев. В итоге - все брошено (в силу технологического старения программ)
-
- Новоприбывший
- Сообщения: 7
- Зарегистрирован: 19 сен 2025, 00:25
- Репутация: 0
- Откуда: Россия
Re: Как создать GeoTiff
Тайловые сетки , пирамиды и высоты мне не нужны ,
альфа канала тоже наверно не надо, растр у меня серый 8 бит,
у меня растры водной поверхности,
нормальное описание бы найти всего этого дела а там разберемся.
альфа канала тоже наверно не надо, растр у меня серый 8 бит,
у меня растры водной поверхности,
нормальное описание бы найти всего этого дела а там разберемся.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 22 гостя