Страница 1 из 1

GDALWarp (latitude or longitude exceeded limits)

Добавлено: 30 янв 2017, 12:38
Voin
Добрый день,

пытаюсь трансформировать снимок Sentinel 1 в какую-нибудь проекцию (не важно какую, например UTM или вэб-меркатор). Обычно с этим не было никаких проблем, пока не столкнулся со следующей ситуацией. Снимок пересекает -/+180 меридиан, опорные точки к снимку лежат по обе строны меридиана, например:

GCP[ 15]: Id=16, Info= (7815,0) -> (175.175867378252,-66.8310013895681,-2.82004475593567e-06)

GCP[ 21]: Id=22, Info= (0,507) -> (-178.840974107832,-68.4810317707879,-8.65384936332703e-06)

при попытке спроецировать получаю следующую ошибку "ERROR 1: latitude or longitude exceeded limits"

Подозреваю что проблема/ограничения в самой библиотеке, GDAL/OGR/PROJ4 ...??? Кто-нибудь сталкивался с этой проблемой и есть ли пути решения?

Пользуюсь GDAL С/С++ API, версия 2.1.3 (на машинах с 2.1 и 2.1.2 то же самое)

Заранее благодарен

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 31 янв 2017, 17:15
Евгений Брусникин
Пересчитайте исходные долготы в 0 +360,

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 01 фев 2017, 05:55
andverh

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 01 фев 2017, 11:13
Voin
Евгений Брусникин писал(а):Пересчитайте исходные долготы в 0 +360,
такой подход работает не со всеми целевыми проекциями. С EPSG4326 проблем нет, все работает. А вот UTM обрезается на 180 меридиане. С псевдо-меркатором (EPSG3857) вообще ничего не выходит.


Спасибо. Судя по всему, это единственный выход для меня - резать изображения на две части.

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 01 фев 2017, 17:20
gamm
Voin писал(а):Спасибо. Судя по всему, это единственный выход для меня - резать изображения на две части.
можно сделать проще - просто убрать в исходниках проверку, и перекомпилировать. Под VC все собирается минут за 20 ...

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 01 фев 2017, 17:29
Voin
gamm писал(а):
Voin писал(а):Спасибо. Судя по всему, это единственный выход для меня - резать изображения на две части.
можно сделать проще - просто убрать в исходниках проверку, и перекомпилировать. Под VC все собирается минут за 20 ...
в моем случае это не проще. Программа работает на нескольких машинах под разными ОС - Ubuntu, CentOS, Solaris. У меня нет прав на перекомпиляцию билиотек. Разве что себе отдельно GDAL собирать, под свой проект..

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 01 фев 2017, 21:05
alexandr cherepanov
Если UTM подходит, что мешает перевести опорные точки в метры в 59 или 1 зону и трансформировать?
Если нужно отображать в 3857, тогда конечно резать.

Re: GDALWarp (latitude or longitude exceeded limits)

Добавлено: 02 фев 2017, 18:49
gamm
Voin писал(а):в моем случае это не проще.
тогда Plan-B, для UTM. Выгружаете GCP из TIF, каким-нибыдь пакетным редактором (под Унихом их хватает) отнимаете (прибавляете) к долготе 6 градусов (или 12, если 6 мало), трансформируете с указанием соответствующей зоны, и назначаете результаты правильную зону. Немного через назад, но не требует перекомпиляции.

С остальными проекциями подобный фокус может пройти тоже (если соответствующим образом поменять центральный меридиан, а вместо загадочных номеров использовать нормальное задание проекции +proj)