Преобразование карты Google Maps в проекцию Гаусса Крюгера
Добавлено: 28 фев 2011, 12:55
Доброго времени суток, уважаемые форумчане.
Есть задачка, для решения которой хочется попросить вашего совета, так как все мыслимые и немыслимые способы ее решить привели к неправильному результату. Опишу подробно проблему.
Имеется карта с GoogleMaps, в виде JPEG файла, а также файла привязки в формате MapInfo TAB. В файле привязка осуществляется к координатам в системе WGS84.
Необходимо преобразовать эту карту (трансформировать растр) в проекцию Гаусса-Крюгера на эллипсоиде Крассовского соответствующей зоны.
Проекции определяю строкой в формате PROJ.4.
Так как исходно растр находится в проекции Popular Visualization Mercator / Google Mercator (или как там его еще называют), то исходную систему координат задаю так:
Этот PROJstring соответствует EPSG:3395. Отсюда первый вопрос: можно ли говорить, что Google Mercator = EPSG:900913 это то же самое, что EPSG:3395?
Конечную систему координат задаю также PROJstring-ом вида:
где NN - долгота осевого мередиана зоны в градусах.
Итоговая строка запуска gdalwarp выглядит так:
К сожалению, что-то точно идет не так в дальнейшем. Об этом говорит тот факт, что при получении параметров привязки растра (уже из программного кода) получаются неверные координаты (погрешность в долготе в секундах, WGS84).
Прошу вас подсказать, в чем может заключаться проблема, так как сам я с картографией знаком очень плохо - сам являюсь математиком по образованию.
Также есть несколько дополнительных вопросов, на которые хотел попросить у Вас ответа:
Алексей
Есть задачка, для решения которой хочется попросить вашего совета, так как все мыслимые и немыслимые способы ее решить привели к неправильному результату. Опишу подробно проблему.
Имеется карта с GoogleMaps, в виде JPEG файла, а также файла привязки в формате MapInfo TAB. В файле привязка осуществляется к координатам в системе WGS84.
Необходимо преобразовать эту карту (трансформировать растр) в проекцию Гаусса-Крюгера на эллипсоиде Крассовского соответствующей зоны.
Проекции определяю строкой в формате PROJ.4.
Так как исходно растр находится в проекции Popular Visualization Mercator / Google Mercator (или как там его еще называют), то исходную систему координат задаю так:
Код: Выделить всё
+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
Конечную систему координат задаю также PROJstring-ом вида:
Код: Выделить всё
+proj=tmerc +lat_0=0 +lon_0=NN +k=1 +x_0=500000 +y_0=0 +ellps=krass +units=m +no_defs
Итоговая строка запуска gdalwarp выглядит так:
Код: Выделить всё
gdalwarp.exe -of BMP -s_srs "+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs" -t_srs "+proj=tmerc +lat_0=0 +lon_0=NN +k=1 +x_0=500000 +y_0=0 +ellps=krass +units=m +no_defs" sourceRaster.jpg destRaster.tif -overwrite
Прошу вас подсказать, в чем может заключаться проблема, так как сам я с картографией знаком очень плохо - сам являюсь математиком по образованию.
Также есть несколько дополнительных вопросов, на которые хотел попросить у Вас ответа:
- Можно ли пользоваться таким преобразованием по всему земному шару? (полагаю что нет, ведь это референсная СК для РФ)
- Можно ли преобразовывать координаты таким образом в UTM? Если да, можно ли пользоваться для этого диапазонами EPSG:32601-32660, EPSG:32701-32760
Алексей