Привязка растров в gdal_translate и gdalwarp
- Ruslan
- Участник
- Сообщения: 79
- Зарегистрирован: 27 окт 2003, 17:33
- Репутация: 11
- Откуда: НекстГИС
Привязка растров в gdal_translate и gdalwarp
с интересом прочитал статью Использование GDAL для привязки растровых материалов
http://gis-lab.info/qa/georef-gdal.html
. Попытался ее применить на практике.
Итак задача: сделать привязку растра если известны координаты верхнего левого угла и нижнего правого.
Зараннее было известно что растр в проекции меркатора wgs84
поэтому преобразований никаких не нужно. по идее, так что достаточно двух точек, как написано в статье.
итак описываю
задаю их в строке для gdal_translate
gdal_translate.exe -of GTiff -gcp X Y Long Lat -gcp X Y Long Lat исх_картинка.tif прописанная_картинка.tif
с этим все понятно.
теперь нужно задать проекцию данного растра. Проекция меркатор.
команду оформил так
gdalwarp.exe -s_srs "+proj=longlat +ellps=wgs84 +datum=wgs84" -t_srs "+proj=mercator +ellps=wgs84 +datum=wgs84" прописанная_картинка.tif привязанная_картинка.tif
ничего не получилось, выдает ошибку:
ERROR 1: Translating source or target SRS failed:
+proj=mercator +ellps=wgs84 +datum=wgs84
вот
подскажите что делаю не так?
http://gis-lab.info/qa/georef-gdal.html
. Попытался ее применить на практике.
Итак задача: сделать привязку растра если известны координаты верхнего левого угла и нижнего правого.
Зараннее было известно что растр в проекции меркатора wgs84
поэтому преобразований никаких не нужно. по идее, так что достаточно двух точек, как написано в статье.
итак описываю
задаю их в строке для gdal_translate
gdal_translate.exe -of GTiff -gcp X Y Long Lat -gcp X Y Long Lat исх_картинка.tif прописанная_картинка.tif
с этим все понятно.
теперь нужно задать проекцию данного растра. Проекция меркатор.
команду оформил так
gdalwarp.exe -s_srs "+proj=longlat +ellps=wgs84 +datum=wgs84" -t_srs "+proj=mercator +ellps=wgs84 +datum=wgs84" прописанная_картинка.tif привязанная_картинка.tif
ничего не получилось, выдает ошибку:
ERROR 1: Translating source or target SRS failed:
+proj=mercator +ellps=wgs84 +datum=wgs84
вот
подскажите что делаю не так?
Последний раз редактировалось Ruslan 12 май 2008, 16:52, всего редактировалось 2 раза.
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9128
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 747
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: Привязка растров в gdal_translate и gdalwarp
в том то и дело, что никаких преобразований делать не надо, а ты пытаешься их делать вот этим:
а по идее надоgdalwarp.exe -s_srs "+proj=longlat +ellps=wgs84 +datum=wgs84" -t_srs "+proj=mercator +ellps=wgs84 +datum=wgs84" прописанная_картинка.tif привязанная_картинка.tif
Код: Выделить всё
gdalwarp.exe -s_srs "+proj=longlat +ellps=wgs84 +datum=wgs84" -t_srs "+proj=longlat +ellps=wgs84 +datum=wgs84" прописанная_картинка.tif привязанная_картинка.tif
пристегивайтесь, турбулентность прямо по курсу
- Ruslan
- Участник
- Сообщения: 79
- Зарегистрирован: 27 окт 2003, 17:33
- Репутация: 11
- Откуда: НекстГИС
Re: Привязка растров в gdal_translate и gdalwarp
Процесс пошел, но остановился на следующем:
вот теперь какая ошибка:
error 6: Unable to load PROG.4 library <prog.dll>, creation of OGRCoordinateTransformation failed
то есть где брать куда копировать?
вот теперь какая ошибка:
error 6: Unable to load PROG.4 library <prog.dll>, creation of OGRCoordinateTransformation failed
то есть где брать куда копировать?
- Ruslan
- Участник
- Сообщения: 79
- Зарегистрирован: 27 окт 2003, 17:33
- Репутация: 11
- Откуда: НекстГИС
Re: Привязка растров в gdal_translate и gdalwarp
файл <proj.dll> нашел, скопировал в систем 32
программа все сделала.
но растр все равно не привязался не совпал ни с векторами ни с аналогичным но привязанным другим методом.
возможно если задать координаты но уже в метрах в меркаторе, то тогда может и получится. Возможно тогда сработает данный метод.
программа все сделала.
но растр все равно не привязался не совпал ни с векторами ни с аналогичным но привязанным другим методом.
возможно если задать координаты но уже в метрах в меркаторе, то тогда может и получится. Возможно тогда сработает данный метод.
- Ruslan
- Участник
- Сообщения: 79
- Зарегистрирован: 27 окт 2003, 17:33
- Репутация: 11
- Откуда: НекстГИС
Re: Привязка растров в gdal_translate и gdalwarp
Сегодня продолжил экспериментировать с "замечательной библиотекой Gdal и несколькими ее утилитами".
Автор статьи написал, что достаточно 2-х известных координат растра, что бы сделать ему привязку.
имеем растр (известно, что он в проекции "mercator", но файл привязки к нему потерян) нам известны две его координаты левого верхнего угла и правого нижнего угла.
Итак нужно, банально, его заново привязать, никакой трансформации растра не нужно. (для меня привязать, это значит, что бы данный растр при выставлении в виде проекции mercator оказался там где он в идеале должен находится, совпал с векторами)
В прошлый раз я провел все действия, как в статье, указав координаты углов в десятичных градусах. В результате привязка не получилась.
В этот раз:
Я пересчитал десятичные с помощью эрдасовского калькулятора в спроектированные координаты в меркаторе wgs84
далее вписал получившиеся метровые координаты углов. в строку утилиты gdal_translate.exe .
строка: gdal_translate.exe -of GTiff -gcp X Y Long Lat -gcp X Y Long Lat исх_картинка.tif прописанная_картинка.tif
И опять попытался прописать проекцию меркатора с помощью утилиты gdalwarp.
строку составил так:
gdalwarp.exe -s_srs "+proj=merc +ellps=wgs84 +datum=wgs84" -t_srs "+proj=merc +ellps=wgs84 +datum=wgs84" растр_обработанный_утилитой _gdal_translate.tif привязанный растр.tif
в результате выдается ошибка:
ERROR 1: Failed to compute GCP transform: Not enough points available
Вопрос, что делается не так?
Где закралась ошибка?
Автор статьи написал, что достаточно 2-х известных координат растра, что бы сделать ему привязку.
имеем растр (известно, что он в проекции "mercator", но файл привязки к нему потерян) нам известны две его координаты левого верхнего угла и правого нижнего угла.
Итак нужно, банально, его заново привязать, никакой трансформации растра не нужно. (для меня привязать, это значит, что бы данный растр при выставлении в виде проекции mercator оказался там где он в идеале должен находится, совпал с векторами)
В прошлый раз я провел все действия, как в статье, указав координаты углов в десятичных градусах. В результате привязка не получилась.
В этот раз:
Я пересчитал десятичные с помощью эрдасовского калькулятора в спроектированные координаты в меркаторе wgs84
далее вписал получившиеся метровые координаты углов. в строку утилиты gdal_translate.exe .
строка: gdal_translate.exe -of GTiff -gcp X Y Long Lat -gcp X Y Long Lat исх_картинка.tif прописанная_картинка.tif
И опять попытался прописать проекцию меркатора с помощью утилиты gdalwarp.
строку составил так:
gdalwarp.exe -s_srs "+proj=merc +ellps=wgs84 +datum=wgs84" -t_srs "+proj=merc +ellps=wgs84 +datum=wgs84" растр_обработанный_утилитой _gdal_translate.tif привязанный растр.tif
в результате выдается ошибка:
ERROR 1: Failed to compute GCP transform: Not enough points available
Вопрос, что делается не так?
Где закралась ошибка?
- Denis Rykov
- Гуру
- Сообщения: 3376
- Зарегистрирован: 11 апр 2008, 21:09
- Репутация: 529
- Ваше звание: Author
- Контактная информация:
Re: Привязка растров в gdal_translate и gdalwarp
Была такая проблема, всё решилось путём увеличения GCP-точек (утилитой gdal_translate).
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 22 гостя