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

Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 11:42
Syllion
Мне нужно положить снимок сделанный в проекции 4326 на эллипсе на карту. Для карт-основы использую leaflet (который как я понимаю данные берет с OSM). Исходя из этого на выходе мне проекция нужна EPSG:3857

Проблема в том, что у меня почему-то перепроецированные данные отображаются на карте со смещением т.е. вот так:
Изображение

Использую следующие команды:
gdalwarp -t_srs EPSG:3857 -srcnodata 0 <tif1> <tif2>
gdal_translate -of PNG <tif2> <png>

В чем может быть проблема?

В QGIS результирующий png почему-то ложится нормально:
Изображение

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 12:44
SergeyRyzhkov
tif1 и tif2.
В первой команде не перепутан порядок?

[ Сообщение с мобильного устройства ]

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 13:15
Syllion
Вроде бы нет. Я там добавил пример того как те же данные qgis отображает.

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 13:30
SergeyRyzhkov
Syllion писал(а):Вроде бы нет. Я там добавил пример того как те же данные qgis отображает.
У вас все правильно. Просто где-было что первым идет target первым, а вторым source
Только поможет пример растра. Растр в студию!

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 13:46
Syllion
Прикрепил файл.

Вот полный список используемых команд:
1) Перевод из с 16 в 8 бит с рескейлом изображения
gdal_translate -ot byte -scale <img> <tif1>

2) Перепроецирование изображения с заданием значения NoData
gdalwarp -t_srs EPSG:3857 -srcnodata 0 <tif1> <tif2>

3) Перевод в PNG
gdal_translate -of PNG <tif2> <png>

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 14:16
SergeyRyzhkov
Что-то в архиве уже результат, а не исходники (либо я не понял, ссори).
Также желательно сразу показать JS для Leaflet, который Вы используете для визуализации растра

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 14:24
Syllion
В архиве данные в проекции 4326. Нужно их трансформировать так, чтобы они легли на карту. Трансформировать нужно в 3857. Пока в северных широтах вылезает вот такой сдвиг, как я на скриншоте привел.

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 14:54
trir
Ну если QGIS показывает правильно, то может цепляете неправильно?

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 15:17
Syllion
trir, ой вы правы. А не подскажите как мне координаты из 4326 в 3857 трансформировать? Именно вот есть строка долготы и широты. Нужна точно такая же но трансформированная для 3857

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 15:21
Игорь Белов
Syllion писал(а):А не подскажите как мне координаты из 4326 в 3857 трансформировать?
gdaltransform

Вы уверены, что именно этого хотите? Растр в Вашем архиве в проекции UTM.

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 15:45
Syllion
Раст я перевожу в PNG вроде как правильно, но у меня есть отдельный специальный файл с метаданными, которые записаны в UTM. Их то и надо пересчитать.

По поводу gdaltransform. После запуска примера вот что получается:
> gdaltransform -s_srs EPSG:28992 -t_srs EPSG:31370 177502 311865
ERROR 4: `177502' does not exist in the file system,
and is not recognised as a supported dataset name.

что ему не нравится то? Это ж вроде тупо копи-паста.

Re: Не правильно проходит перепроецирование

Добавлено: 22 авг 2016, 15:58
Игорь Белов
Вот копипаста:

Код: Выделить всё

> gdaltransform -s_srs EPSG:28992 -t_srs EPSG:31370
> 177502 311865
А в Вашем варианте программа считает, что "177502" и "311865" - названия входного и выходного растров.