Какая проекция google earth
В сервисе "Google Планета Земля" используются изображения из самых разных источников: спутниковые снимки, аэрофотосъемка, рендеринг трехмерных моделей, а также панорамные фотографии для функции "просмотр улиц". Мы получаем эти материалы от разных поставщиков и платформ в течение длительного времени. Съемка не осуществляется в режиме реального времени, поэтому с помощью приложения "Google Планета Земля" нельзя увидеть события, происходящие прямо сейчас.
Подробнее о типах изображений и датах съемки
Эти снимки делаются со спутников и самолетов в разные дни и часы, но в сервисе "Google Планета Земля" они могут объединяться в единое изображение с общей датой съемки. Впрочем, вот несколько важных замечаний:
- Иногда отдельные снимки местности, из которых состоит карта, делаются в течение нескольких дней или месяцев. И хотя внешне они выглядят как единое непрерывное изображение, отображаемая дата съемки может изменяться по мере того, как вы перемещаете курсор.
- Информация о датах съемки не всегда бывает точной и подробной. Поэтому отображаемая дата часто обозначает лишь начало периода, в который, скорее всего, было получено изображение.
- Трехмерные модели зданий и объектов ландшафта, отображаемые, когда включен слой "3D-здания", создаются на основе изображений с воздуха, полученных в разные дни. Поэтому для таких материалов Google Планета Земля не показывает дату съемки.
- Информация о датах съемки может быть неточной (или вовсе утерянной) из-за ошибок людей и по другим причинам.
В приложении "Google Планета Земля" можно просматривать панорамные фотографии улиц. При этом в нижней части экрана указываются год и месяц съемки.
В приложении "Google Планета Земля" не показываются даты съемки 3D-изображений. Это связано с тем, что они построены на базе изображений с воздуха, сделанных в разные дни. Так мы можем показывать пользователям объемные здания и объекты ландшафта.
При просмотре исторических снимков отображается временная шкала. Если на ней указана дата, то изображение получено не позже этой даты.
Общая информация про новый сервис Google Earth в комплектации бесплатной версии программного обеспечения и его недостатков\ограничений.
Летом 2005 г. интернет-компания Google, известная по одноименной поисковой системе, представила на суд общественности новую картографическую систему. При более внимательном рассмотрении становится понятно, что мы являемся свидетелями появления нового базирующегося на возможностях и технологиях Интернет по предоставлению данных дистанционного зондирования земли и других пространственных данных.
О ресурсе
Программное обеспечение
Все что необходимо для начала работы, это программа-навигатор Google Earth Lite, которая может быть бесплатно получена с сайта и позволяет сразу начать работать с данными дистанционного зондирования на любую точку земной поверхности в любом масштабе. Бесплатная версия (Lite) имеет базовую функциональность, расширить ее можно купив версию Plus или Pro. Пользователь сразу попадает на мировую карту и, имея элементарные географические знания, может найти нужное ему место, либо сместив и увеличив нужный фрагмент, либо введя в строку поиска название города или страны (список городов России пока сильно ограничен, поиск на русском языке тоже невозможен).
Количество инструментов предназначенных для навигации весьма ограничено, изменение масштаба (увеличение, уменьшение), сдвиг по осям (вверх, вниз, вправо, влево), поворот изображения и его перспективный наклон. Осуществлять навигацию можно также без помощи панели управления одной лишь мышью.
По большому счету ПО можно, с некоторым допущением отнести к разряду ПО ГИС (географических информационных систем), так как оно работает с пространственными данными и по нему можно в любой точке местности получить координаты этой точки. Особенностью и главным отличием GE от других, более профессиональных пакетов является хранение данных на сервере Google, то есть ничего в виде файлов на компьютере пользователя не сохраняется (кроме специального кэша, использующегося для ускорения работы), а также отображение и обработка данных «налету», любое действие сопровождается немедленным результатом. Большая скорость отображения данных достигается за счет показа данных на разных уровнях генерализации (обобщения) и постепенной прорисовки их более детально, по мере загрузки данных из Интернет.
Данные организуются по принципу слоев при этом подложку отключить нельзя. Также, в GE проведено четкое разделение между пользовательскими данными и данными предоставляемыми Google. Первые организованы в список Places (Места), вторые - Layers (Слои). Порядок отображения вторых изменять нельзя, первых можно.
Данные предоставляемые Google
Данные, используемые в системе Google Earth, уже подготовлены к использованию, их не нужно специальным образом обрабатывать, но и нельзя специфическим образом настроить, как это возможно в профессиональных пакетах ГИС, например, сменить систему координат, комбинацию каналов данных дистанционного зондирования ДДЗ, улучшить географическую привязку и т.д. Данные доступны на весь мир.
Основу данных представляют спутниковые снимки Landsat и Quickbird. Любая точка мира отображается с точностью до 1:25000 на основе данных, полученных после 1999 года. Эти снимки предоставлены компанией EarthSat и сделаны со спутника Landsat-7, камерой ETM+, разрешение на местности – 15 м, спектрозональные изображения получены с помощью специальной дополнительной обработки т.н. pansharpening, то есть комбинирования исходных 30-тиметровых и 15-тиметровых панхроматических данных, получаемыми одновременно со спектрозональными, эта обработка позволяет увеличить пространственное разрешение данных, т.е. количество деталей.
Крупные города (Москва, Санкт-Петербург и некоторые другие) и многие мировые территории отображаются вплоть до масштабов порядка 1:2000, эти данные представлены компанией DigitalGlobe и сделаны со спутника Quickbird-2, камерой BHRC-60, исходное разрешение этих снимков (0.68 м) уменьшено до 2 метров.
Кратер Маникуаган, Квебек, Канада
Landsat-7/ETM+ 30м
Большая Спортивная Арена "Лужники", Москва, Россия
Quickbird-2/BHRC-60, 2м
Рельеф – для создния перспективных изображений используются данные о рельефе SRTM.
Пользовательские данные
В Google Earth можно создавать и добавлять как векторные объекты (точки, линии, полигоны), так и растровые - изображения. Каждый объект будет отображаться как слой в списке Places (Места). В терминологии Google Earth точка называется Placemark, линия - Path, полигон - Polygon.
Пользовательские данные более управляемы, чем "встроенные", можно менять порядок их отображения (менять слои местами), создавать слои - папки, в которые вкладывать другие слои и объекты.
Возможности создания данных определяются типом ПО Google Earth. В бесплатной версии вы можете создавать данные только точечного типа (Placemark). Для создания линейных или полигональных объектов вам понадобится платная версия Google Earth Plus.
Однако, формат данных Google Earth (KML) является открытым и основывается на формате XML, что привело достаточно быстрому появлению специальных конвертеров из других форматов. Но, чтобы создавать линии и полигоны непосредственно в Google, вам все-таки понадобится платная версия.
Таким образом, если вы уже пользуетесь каким-то пакетом ГИС, например ArcGIS, то создавать нужные вам данные можно там с последующей конвертацией. Созданные данные могут быть просмотрены любым пользователем Google Earth и вам не понадобится передавать ему еще и подборку данных дистанционного зондирования, а так же обучать его пользоваться сложным ПО ГИС для их просмотра.
Возможности
- Просмотр спутниковых снимков - удобная навигация, бесшовное соединение спутниковых снимков и моментальное отображение с постепенной прорисовкой деталей;
- Построение перспективных (рельефных) изображений с наложением спутниковых снимков;
- Нанесение своих точек, линий и полигонов и экспорт их в специальный файл (в формате Google ) для обмена с другими пользователями GE;
- Наложение своих изображений (например логотипы, собственные карты и т.д.) и их примерное совмещение с подстилающей поверхностью;
- Измерение расстояний;
- Облет территории на заданной высоте и скорости.
Общая информация про картографический сервис Google Maps.
Прошло несколько лет с того момента, как известный поисковый сервер Google открыл новый картографический ресурс. Несмотря на относительно малые сроки существования можно уверенно говорить о том, что ресурс произвел революцию в средствах визуализации и управления картографической информацией в интернет и завоевал массовую популярность у рядовых пользователей со всего мира.
С чего все началось?
Выход Google на рынок представления картографической информации связан, помимо планирования развития комании в этом направлении, конечно, с покупкой компании Keyhole, занимавшейся разработкой системы доставки картографической информации массовому пользователю.
Что представляет собой ресурс?
Новый картографический ресурс состоит из базы данных дистанционного зондирования и топографических карт (Satellite и Map). Для доступа к данным предлагается два сервиса - Google Maps и Google Earth.
- IE 5.5 и выше;
- Firefox 0.8 и выше;
- Safari 1.2.4 и выше;
- Netscape 7.1 и выше;
- Mozilla 1.4 и выше;
- Opera 7 и выше.
Рассмотрим подробнее Google Maps.
Что же отличает этот ресурс от прочих?
Простота и доступность. Пользователь сразу попадает на мировую карту и, имея элементарные географические знания, может найти нужное ему место, либо, сместив и увеличив нужный фрагмент, либо введя в строку поиска название города, штата или страны. В настоящий момент доступны версии карт на нескольких языках, включая Русский, при этом на русском языке отображается только информация по России. Для работы с русскоязычными картами необходимо использовать русский сервис Google Maps. Количество инструментов предназначенных для навигации несколько ограничено, изменение масштаба (увеличение, уменьшение), сдвиг по осям (вверх, вниз, вправо, влево) и центрирование на выбранной точке. Также возможно переключение от карты к космическому снимку на любом увеличении.
Полнота и актуальность данных. Основу данных представляют спутниковые снимки Landsat, SPOT, Quickbird и топографические карты. Любая точка мира отображается с точностью до 1:25000 на основе данных, полученных после 1999 года. Эти снимки предоставлены компанией EarthSat и сделаны со спутника Landsat-7, камерой ETM+, разрешение на местности – 15 м, спектрозональные изображения получены с помощью специальной дополнительной обработки т.н. pansharpening, то есть комбинирования исходных 30-ти метровых спектрозональных, цветных изображений с 15-ти метровыми панхроматическими данными, получаемыми одновременно со спектрозональными.
Крупные города и многие мировые территории отображаются вплоть до масштабов порядка 1:2000, эти данные представлены компанией DigitalGlobe и сделаны со спутника Quickbird-2, камерой BHRC-60, исходное разрешение этих снимков (0.68 м) уменьшено до 2 метров. Другими источниками данных являются данные SPOT и аэрофотосъемка, в основном на территорию США и Западной Европы.
Данные спроектированы в проекцию Меркатора и базируются на сфере.
Кратер Маникуаган, Квебек, Канада
Landsat-7/ETM+ 30м
Большая Спортивная Арена "Лужники", Москва, Россия
Quickbird-2/BHRC-60, 2м
Подробные топографические карты на текущий момент доступны только на крупные населенные пункты США, Великобритании, частично Канады (источник - компания NAVTEQ). На другие территории (включая Россию), основная топография (гидросеть, границы стран) отображается до масштаба 1:1000000 (в 1 см 10 км).
Для городов, где доступна подробная информация можно также просматривать так называемую "гибридную" карту, представляющую космический снимок высокого разрешения с наложенной топографией, для этого нажав на кнопку Satellite (Спутник), необходимо включить режим Show labels (Показывать ярлыки).
Топографическая карта (Map)
Космический снимок (Satellite)
Космический снимок с наложенной атрибутивной информацией.
Популярность. Количество пользователей традиционного поискового сервиса Google около полумиллиарда. Можно быть уверенным, что не менее половины из них воспользуются и новыми картографическими возможностями. Все это открывает большие возможности, как для самого Google, так и для разработчиков умеющих работать с этой технологией.
Тематические данные. Авторы и клиенты могут локально дополнять карту своими данными. Несложные команды позволяют добавить на карту собственные контуры, маркеры, интерактивные подсказки и всплывающие окна. Данные для отображения могут находиться как непосредственно в коде web страниц, так и во внешних файлах. В систему управления поведением карты включены стандартные возможности навигации и анимации. Имеется возможность создавать тематические слои непосредственно в режиме просмотра web страницы, подобно заполнению формы.
Чем станет Google Maps для индустрии ГИС?
Сегодня сложно сказать, как сложатся у Google отношения с ведущими производителями геоданных и программного обеспечения. В любом случае карты приобретают новых многочисленных пользователей, которые захотят с их помощью решать свои многочисленные задачи.
Первого октября 2014 года американское Национальное Агентство Геопространственной Разведки (NGA) опубликовало отчет, в котором изложена критика системы координат Web Mercator, используемой во множестве картографических веб-сервисов. К документу прилагалось подробное разъяснение проблемы и рекомендации для партнеров NGA. Документ получил большой резонанс, но далеко не все статьи, основанные на этом отчете, отличались точностью и грамотностью изложения. Это касается, например, статьи на сайте ГИС Ассоциации, которую, по причине грубейших ошибок в терминологии, можно считать безграмотной. Поскольку именно с этой системой координат разработчики веб-сервисов сталкиваются чаще всего, я считаю, что есть смысл разобраться в проблеме.
Для начала — пара определений, без которых некоторые детали не могут быть ясны. Важно понимать, что Web Mercator — это система координат, а не только проекция, хотя ее название и напоминает известную многим проекцию Меркатора. Именно это терминологическое разночтение вводит в заблуждение читателей статьи на сайте ГИС Ассоциации. Разница между проекцией и системой координат состоит в том, что проекция — это только способ, которым сложная форма модели фигуры Земли разворачивается на плоскость, тогда как система координат включает в себя также математическое определение модели (эллипсоида или сфероида), аппроксимирующей сложную фигуру Земли.
На этой иллюстрации красным отмечено то, что относится только к механизму проекции (в данном случае — цилиндрической). К системе координат же относится вообще все, что здесь изображено.
В свою очередь, именно эта самая аппроксимирующая модель поверхности (пунктирная сфера на рисунке выше, на которой определены координаты λ,φ) и является источником проблемы, о которой дальше пойдет речь.
Я не могу сказать достоверно, кому первому и когда все это пришло в голову. Но, на сколько мне известно, первым крупным проектом, который стал использовать систему координат Web Mercator, был сервис Google Maps, и случилось это в 2005 году. Перед разработчиками стояла тогда задача упростить вычисления, необходимые для работы с картографическими данными, и самое очевидное, что можно было сделать — это использовать в системе координат сферу вместо эллипсоида. Занятно, что сам Герард Меркатор, скорее всего, исходил из таких же геометрических представлений, создавая свой способ проецирования карт на плоскость, потому что только Ньютон, живший несколько позже, предложил гипотезу о том, что Земля из-за центробежной силы имеет форму эллипсоида вращения, а не шара. Таким образом, разработчики Google, в каком-то смысле, вернулись в шестнадцатый век.
Критика в адрес этого подхода в профессиональных кругах звучит уже не в первый раз. Начиная с 2005 года, организация European Petroleum Survey Group (EPSG), занимающаяся стандартизацией в области систем координат и являющаяся держателем реестра их идентификаторов — кодов EPSG — отказывалась присвоить системе Web Mercator свой собственный официальный код, мотивируя это ее заведомым геометрическим несовершенством. Потому в сети можно встретить ссылки на эту систему через неофициальные коды: EPSG:900913, EPSG:102113 и другие. Однако, в 2008 году этой организации пришлось сдаться и присвоить код, так как популярность системы выросла, и ее нужно было как-то однозначно обозначать, чтобы не породить еще большую анархию. Первая попытка дать определение системе была не совсем удачной, но в конце концов ей был присвоен официальный SRID EPSG:3857.
Поскольку проекции — предмет изучения математики, я начну с формул, а потом дам им графическую иллюстрацию. Строго говоря, не обязательно даже хорошо владеть тригонометрией, чтобы понять разницу между реализацией систем координат на основе проекции Меркатора, сферы в одном случае и эллипсоида — в другом. Формулы заметно различаются внешне.
Проекция Меркатора эллипсоида на плоскость задается следующим образом:
где:
x и y — прямоугольные координаты,
λ — долгота на эллипсоиде в радианах,
φ — широта на эллипсоиде в радианах,
a — значение большой полуоси эллипсоида,
e — значение эксцентриситета эллипсоида (отношения большой и малой полуосей).
Если же вместо эллипсоида используется сфера, как это происходит в системе координат Web Mercator, все становится существенно проще, так как формула для ординат (оси Y) вырождается, давая следующее:
Согласитесь, выглядит куда проще и короче, чего и добивались разработчики Google. Это позволяет довольно заметно сократить количество математических операций при работе с картографическими материалами в клиентских и серверных приложениях.
Геометрия и картография
Даже если вообще не вдаваться в формулы, простые иллюстрации неплохо демонстрируют суть проблемы. Поясню сначала, что принцип построения проекции Меркатора состоит в том, что любая точка поверхности эллипсоида или сфероида проецируется на цилиндр, внутрь которого этот эллипсоид помещен так, чтобы их вертикальные оси совпадали, а поверхности либо касались по одной линии (наиболее частый случай), либо пересекались по двум. (Смотрите иллюстрацию выше). Далее, условные лучи проекции выходят из центра эллипсоида, пересекают его поверхность в точке P и попадают на поверхность цилиндра в точке P', куда и переносится соответствующая точка поверхности Земли. Легко мысленно представить себе, что если реальная поверхность Земли при этом сначала спроецирована не на довольно близкий к ее форме эллипсоид, а на идеализированную сферу, то при проекции на цилиндр точек сферы, одни и те же исходные точки земной поверхности окажутся на ином расстоянии от линии экватора по вертикальной оси, чем в случае с эллипсоидом.
Попробую проиллюстрировать «масштабы бедствия». Возьмем в архиве NASA EOSDIS спутниковый снимок в естественных цветах Центрального Федерального округа России, сделанный аппаратом MODIS Aqua с разрешением 250 метров на пиксель 21 сентября 2014 года (именно этот день — потому что он был ясным, так будет красивее) — это будет наш фон.
Далее, запросом через Overpass Turbo выгрузим из базы OpenStreetMap административные границы Московской области в формате GeoJSON. Код запроса:
Теперь, используя Global Mapper, трансформируем данные границ Московской области из географической проекции в проекцию Меркатора эллипсоида WGS84. А далее, чтобы имитировать ситуацию, когда система координат будет опознана неправильно, скопируем получившиеся данные и вручную сменим определение системы координат на Web Mercator. В реальности, скорее, возможна обратная ситуация: данные в Web Mercator могут быть приняты за данные в WGS84/Mercator (это более чем возможно, потому что у Web Mercator есть еще куча названий, в некоторых из которых присутствует «WGS84»), однако от нашей имитации она будет отличаться только направлением сдвига. Получившиеся данные загрузим в Global Mapper, наложим поверх сетку с шагом 100 километров и посмотрим, что получилось.
Зеленый контур на карте находится там, где нужно, а красный — сдвинут. Величина этого сдвига — 19,6 километров. Это не значит, что такая ошибка существует во всех картографических сервисах, использующих эту систему координат, вовсе нет. Но она проявится в случае, если взять данные в этой системе и попытаться совместить с другими данными без ее верного учета. В этом случае, к ней будет применено неверное обратное преобразование в географические координаты, что и приведет к ошибке.
Некоторые картографические проекции обладают особыми свойствами, которые критичны для решения навигационных задач. Проекция Меркатора входит в их число, потому что ее широко используют для создания морских и аэронавигационных карт. Это возможно благодаря такому геометрическому свойству этой проекции, как конформность. В данном случае, оно означает, что форма объектов достаточно большого размера на этой карте сохраняется, так как сохраняются величины углов между линиями. Для навигации это означает, что глядя на карту, можно вычислить направление на искомую точку относительно меридиана (направления на географический север) и, двигаясь в этом направлении по магнитному компасу или под постоянным углом к линии на Полярную звезду, оказаться в нужном месте. Такой путь называется «локсодрома» и не является кратчайшим путем между двумя точками на поверхности Земли, а современные навигационные устройства позволяют вычислять путь по «ортодроме» — действительно кратчайшей линии, но от проекции Меркатора не отказываются, потому что карта, выполненная в ней, дает возможность в экстренной ситуации использовать для навигации подручные средства, не полагаясь на GPS-приемник и прочую электронику.
И вот здесь система координат Web Mercator оказывается обманчивой. Хотя она и основана на проекции Меркатора, но использование сферы с постоянным радиусом, как предельного упрощения модели поверхности Земли, лишает ее свойства конформности. Это значит, что двигаясь с постоянным курсовым углом, измеренным по такой карте, не удастся попасть в искомую точку из-за искажений углов в этой системе координат. Казалось бы, это не так важно для веб-сервисов, потому что по ним никто в своем уме не будет прокладывать путь в экстренной ситуации. Однако, разнообразие веб-сервисов велико, и гарантировать, что кто-то из разработчиков не вздумает считать какие-то направления в этой проекции — нельзя. При вычислениях в этой проекции ошибка может очень сильно накапливаться. Плюс, сейчас весьма популярны средства вроде САС.Планета, выкачивающие данные из веб-сервисов, и никто не может предугадать, что дальше с этими данным сделает пользователь.
Масштабы проблемы в данном случае тоже довольно легко измерить. Возьмем тот же снимок для фона, те же данные о положении административной границы Московской области. Теперь нам нужны три линии: ортодрома (кратчайшая с учетом кривизны Земли) и две локсодромы, построенные в системах Mercator/WGS84 и Web Mercator. Строить эти линии будем между самой южной точкой в Серебрянопрудском районе области, недалеко от населенного пункта с занятным названием «Мочилы» и самой северной — в Талдомском районе.
Построим ортодрому. Теперь измерим ее длину (получилось чуть меньше трехсот семи километров) и начальный угол относительно меридиана. Дальше — самое интересное. Перепроецируем рабочее пространство в проекцию Меркатора и построим из той же начальной исходной точки прямую в этой проекции линию, задав измеренный угол и длину 307 километров, не глядя, куда она попадет другим концом. Повторим то же самое, но в системе координат Web Mercator. Две локсодромы готовы. Для наглядности еще найдем на ортодроме центральную точку, поделив ее пополам и поставив в этом месте маркер. Перепроецируем рабочее пространство в UTM 37N WGS84, чтобы добиться минимального искажения углов, пропорций и прочих свойств карты.
В таком масштабе почти ничего нельзя разобрать — все линии практически сливаются. Но взглянем поближе на центр линий, включив предварительно сетку с шагом 100 метров.
Зеленая линия с черной точкой на карте — это ортодрома. Желтая — локсодрома, которая построена в Mercator/WGS84, красная — локсодрома в Web Mercator. Как и ожидалось, локсодромы ушли от ортодромы, потому что они не являются кратчайшими расстояниями и относительно прямой ортодромы являются дугами. Основательно ушли — более чем на 500 метров. Но куда же они нас привели?
Желтая локсодрома, построенная в проекции Меркатора эллипсоида WGS84, описав правильную дугу, «волшебным образом» вернулась к нужной точке. Это означает, что в данной проекции можно попасть в нужную точку, зная начальный курсовой угол и двигаясь все время под этим углом к направлению на географический север. А с красной так не вышло — она промахнулась более чем на полторы сотни метров. Полторы сотни на три сотни тысяч метров пути. Четыре сотых доли процента. Много это, или мало? Это достаточно, чтобы не считать ее конформной и не использовать для вычислений, где это важно.
Имена, явки, пароли
Проблема с определением того, что используется система координат Web Mercator — не выдумана. Из-за ее, скажем так, «анархического» прошлого у нее столько имен, что все просто невозможно перечислить. Однако, я попробую продемонстрировать, на сколько все ужасно, перечислив только некоторые из известных имен и кодов этой системы координат:
Web Mercator, Google Web Mercator, Spherical Mercator, WGS 84 Web Mercator, WGS 84/Pseudo-Mercator (при том, что «псевдо» тут как раз не Меркатор, а WGS84), WGS84 Web Mercator (Auxiliary Sphere), Popular Visualisation CRS / Mercator, WGS84 / Simple Mercator.
Вот так эта система выглядит в формате PROJ.4:
+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +a=6378137 +b=6378137 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
Здесь следует обратить внимание на равные значения параметров размеров полуосей эллипсоида a и b. Их равенство и означает использование сферы. В случае, если это «честная» проекция Меркатора эллипсоида WGS84, она же EPSG:3395, в формате PROJ.4 она определяется вот так:
+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
Еще одна неприятная ситуация — это существование определений этой системы координат в формате Well-known Text (WKT), в которых само определение в WKT почти совпадает с определением для «честной» системы координат, использующей эллипсоид WGS84, то есть там есть строка SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"] , однако дальше либо встречается переопределяющая эту строку декларация PARAMETER["semi_minor",6378137.0] , либо вообще адская конструкция EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"] . Проблема с такими определениями (идущими в виде PRJ-файла с какими-нибудь данными) в том, что никто не гарантирует вам, что софт, которым вы эти данные будете открывать, поймет, что именно от него хотят в таком противоречивом определении, как первый вариант. А внедрение в определение строки в формате PROJ.4, противоречащей всему, что написано в WKT — это вообще тонкое извращение, так как неизвестно, кто вообще поддерживает такое. Получается, что в лучшем случае программа выдаст ошибку о нечитаемом содержимом определения системы координат, а в худшем — попытается интерпретировать этот винегрет, игнорируя непонятное, что и приведет к тому, что данные в Web Mercator будут прочитаны, как данные в «честном» WGS84/Mercator.
Логика ситуации
Я не пытаюсь тут доказать, что система координат Web Mercator никуда не годится. Годится, конечно. И ровно тот же вывод (кроме вопросов, где важно соответствие военным стандартам США) можно обнаружить в отчете NGA. Просто важно понимать разницу между системами координат и их возможностями. Важно понимать, что Web Mercator используется почти везде: Google, OpenStreetMap, Bing, Yahoo и несчетное число других сервисов. Она также заложена в формат Slippy Map Tiles, в котором хранятся многие тайловые источники растровых данных. Она столь популярна, что далеко не все, кто ее используют, задумываются над тем, как же именно она устроена. А задуматься иногда стоит, особенно если планируемый сервис должен выполнять функции, более сложные чем простой показ картинки с картой.
Несколько занятных фактов вместо заключения
Агентство NGA, с отчета которого начался новый виток этой истории, до появления таких сервисов как NASA World Wind, Google Maps, Яндекс.Карты и других, было единственным доступным любому источником спутниковых снимков сравнительно высокого разрешения (10 метров на пиксель, черно-белое изображение) на территорию России, которые можно было бесплатно скачать через сервис NIMA Raster Roam (тогда NGA еще носило название NIMA — National Imagery and Mapping Agency). Эти снимки были частью разведывательной программы, выполнявшейся спутниками начиная с пятидесятых годов, и попавшие в программу рассекречивания в 1995 году.
Сервис Яндекс.Карты не использует систему координат Web Mercator, он использует честную проекцию Меркатора эллипсоида WGS84, код EPSG:3395. С чем это связано изначально, мне неизвестно, но было бы весьма интересно услышать комментарии сотрудников Яндекса, которые здесь, на Хабре, присутствуют в немалом количестве.
Местные картографические сервисы скандинавских стран часто не используют проекцию Меркатора вообще, предпочитая те системы координат, которые приняты в этих странах, например, норвежский государственный сервис Norge i Bilder использует три зоны проекции UTM и датум EUREF89. Это вызвано тем, что в северных широтах проекция Меркатора дает слишком сильные деформации масштаба.
Визуализация данных самого разного рода, имеющих некое географическое распределение, в последнее время получает все большее и большее распространение. Тут, на Хабре, статьи с картами встречаются чуть ли не каждую неделю. Карты в статьях очень разные, но роднит их одно: как правило, в них используются всего две картографические проекции, при том — не самые удачные из существующих. Мне бы хотелось дать несколько наглядных примеров проекций, которые выглядят более эстетично и лучше приспособлены для разных видов визуализации. В этой статье будут рассмотрены общемировые проекции и проекции большей части Земли, так как визуализация чего-либо на карте мира, пожалуй, является наиболее распространенной из подобных задач.
Легкое введение
Поскольку статья ориентирована на вопросы визуализации данных, я не буду касаться глубоко теории проекций (датумов, конформности, равноугольности и тому подобного), кроме общих принципов их построения. Также, я буду говорить тут о «проекциях», формально подразумевая «систему координат», coordinate reference system, потому что для карт таких масштабов не имеет смысла отдельно рассматривать проекцию и датум. Математики здесь тоже практически не будет, кроме простой геометрии. Желающие ознакомиться с математическими принципами, могут это сделать по статьям на Wolfram MathWorld. Так что изучающим программирование в области геоинформационных систем или их опытным пользователям, эта статья, возможно, будет не очень полезна.
Перед началом, объясню пару вещей. Все примеры будут даваться с использованием набора данных государственных границ с вот этого сайта и набора данных Blue Marble Next Generation с сайта NASA. Последний включает в себя синтезированные безоблачные снимки земной поверхности за каждый из двенадцати месяцев 2004-го года, что позволит внести некоторое разнообразие в иллюстрации.
Я очень люблю открытый софт, но использовать GDAL в данном случае мне показалось неэффективно — некоторых не очень ходовых, но полезных проекций в его реализации на данный момент либо нет, либо я плохо смотрел исходники, а потому иллюстрации я готовил в коммерческой программе GlobalMapper, которой пользуюсь уже много лет, и которая славится поддержкой внушительного списка систем координат.
Названия проекций и некоторые термины я буду давать и англоязычные, потому что если кому-то захочется поискать материалы по этой теме, русскоязычных источников в сети найдется несколько меньше (объем статей в Википедии на русском меньше в несколько раз). Для большинства проекций я постараюсь дать не только названия, но и коды EPSG и/или WKID, а также название проекции в библиотеке PROJ.4, широко используемой в открытом софте (например, в пакете R) для поддержки систем координат.
Некоторые проекции, возможно, окажутся кому-то знакомыми по картинке с xkcd, но все из них тут рассмотрены не будут.
Проблема
Начнем с того, что же это за самые распространенные проекции, и что с ними не так.
Первая проекция — так называемая «Географическая», она же – Geographic projection, Latitude/Longitude, Plate carrée EPSG:4326 WKID:54001 PROJ.4:longlat. Строго говоря, она даже не совсем является проекцией, потому что получается путем интерпретации полярных угловых координат, как линейных прямоугольных, без всяких вычислений. Эту проекцию используют, потому что она способна отобразить всю поверхность Земли целиком и потому, что она самая простая математически, а данные очень часто распространяются не спроецированными, то есть именно в географических координатах (градусах широты и долготы).
Что же получается? Получается прямоугольник, где точки полюсов обращены в линии (верхнюю и нижнюю границы). Чем дальше от экватора, тем сильнее любой объект на карте оказывается сплюснут по вертикали и растянут по горизонтали. Как я уже сказал, это худо-бедно годится для отображения глобальных наборов данных, но полярные территории (Канада, Норвегия, Швеция, север России, Финляндия, Гренландия, Антарктида, Исландия) оказываются искажены. Проекции, которые позволяют избежать этого, существуют, и о них пойдет речь дальше. Единственная причина использовать эту проекцию — ее предельная простота программной реализации — нужно просто отобразить систему координат от -180º до 180º по X и от -90º до 90º по Y на плоскость, считая угловые единицы линейными.
Другая весьма популярная проекция — «проекция Меркатора», Mercator projection PROJ.4:merc. Она также используется для визуализации данных, покрывающих весь мир, но ее популярность продиктована не только простотой — ее варианты являются стандартом де-факто для глобальных картографических сервисов, таких как Google Maps, Bing Maps, Here. С ней глубоко связаны картографические библиотеки OpenLayers, Leaflet, API упомянутых выше сервисов. В варианте Google и OpenStreetMap она носит название Web Mercator и имеет код EPSG/WKID:3857, иногда на нее также ссылаются, как на EPSG:900913. Принцип ее построения не сильно сложнее Географической – это проекция на цилиндр, чья ось совпадает с географической осью Земли, проецирование происходит линиями, выходящими из центра планеты, от чего ошибка растяжения приполярных областей по горизонтали оказывается скомпенсирована пропорциональным растяжением по вертикали. Проблема с этим только в том, что карта получится слишком большой по вертикали, если попытаться отобразить и север Гренландии. Потому обычно отбрасывают 16° полярных областей (в равной пропорции или больше — с юга).
На чей-то взгляд выглядит чуть лучше, чем Географическая, но одну проблему мы уже упомянули, а вторая — чем ближе объект к полюсам, тем он кажется больше, хотя его форма уже не так искажена. Потому, если предмет визуализации — плотность маркеров на единицу территории или расстояния, такой способ отображения будет вводить в заблуждение. При грамотном выборе способа визуализации, конечно, это можно скомпенсировать, а для каких-то случаев это вообще не проблема: например, если величина какого-то показателя в целой стране соотнесена с цветом этой страны на карте, эффект растяжения площадей не сказывается. Эта проекция сохраняет только форму объектов, потому очертания континентов и стран выглядят довольно узнаваемо. И, как я уже сказал, она — ваш первый и самый простой вариант при создании интерактивных веб-карт.
Варианты решения
Что же делать с глобальными данными, если нам по какой-то причине понадобилась проекция, лучше сохраняющая такие свойства объектов, как форма, площадь, расстояния и углы? Законы геометрии не дают нам сохранить все эти свойства сразу, развернув круглую поверхность Земли на плоскость. Однако, для визуализации данных более всего важна эстетика и восприятие, а не сохранение свойств, как для навигационных или измерительных задач. Потому становится возможным подобрать такую проекцию, искажения в которой были бы равномерно распределены по свойствам. И таких проекций существует довольно много. Существуют три самых известных, обладающих сходными свойствами: «Тройная проекция Винкеля» Winkel Tripel WKID:54042 PROJ.4:wintri, «проекция Робинсона» Robinson projection WKID:54030 PROJ.4:robin, «проекция Каврайского» (Kavrayskiy projection). Первая и последняя имеют визуально минимальные искажения, а неспециалисту, не видя градусной сетки, вообще весьма сложно различить их, потому я приведу иллюстрацию для Winkel Tripel, как той, которая лично мне нравится больше всего.
Вот так описание этой проекции выглядит в формате ESRI WKT:
PROJCS["Robinson",
GEOGCS["GCS_WGS_1984",
DATUM["D_WGS84",
SPHEROID["WGS84",6378137,298.257223563]
],
PRIMEM["Greenwich",0],
UNIT["Degree",0.017453292519943295]
],
PROJECTION["Robinson"],
PARAMETER["central_meridian",0],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0],
UNIT["Meter",1]
]
Как легко видеть, хотя искажение контуров и некоторое увеличение площади стран к полюсам здесь также наблюдаются, но это нельзя даже сравнивать с растяжением Географической проекции и пропорциональным увеличением проекции Меркатора.
Тут стоит сделать небольшое отступление и обратить внимание на то, что вид этой проекции по умолчанию страдает одним недостатком, который касается и других общемировых проекций. Дело в том, что если за центральный меридиан — линию, соединяющую северный и южный полюс через центр карты (longitude of origin) — принять нулевой меридиан, то карта будет разрезана по 180-му. Но при этом треть Чукотки окажется на левом краю карты, а две трети — на правом. Чтобы сделать карту красивее, разрез должен проходить где-то в районе 169-го западного меридиана восточнее острова Ратманова, для чего за центральный должен быть принят 11-й. Вот иллюстрация того, что получается:
А вот измененное для этого случая описание в ESRI WKT:
PROJCS["Robinson",
GEOGCS["GCS_WGS_1984",
DATUM["D_WGS84",
SPHEROID["WGS84",6378137,298.257223563]
],
PRIMEM["Greenwich",0],
UNIT["Degree",0.017453292519943295]
],
PROJECTION["Robinson"],
PARAMETER["central_meridian",11],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0],
UNIT["Meter",1]
]
В формате определения системы координат для PROJ.4 долгота центра проекции задается параметром +lon_0=.
11-й меридиан — «магическое» число: практически все мировые проекции, имеющие равномерный масштаб вдоль экватора, могут быть разрезаны по Берингову проливу, если за центральный принять именно его, а не нулевой.
Замечу, что задумываясь о выборе проекции, стоит принимать во внимание все существующие реальные требования к визуализации. Например, если данные касаются климата, то может иметь смысл либо нанести на карту линии широты, либо использовать проекцию, где они горизонтальны, а не загибаются к краям карты (то есть, отказаться от Тройной Винкеля в пользу, например, Робинсона). В данном случае, это позволит легче и точнее оценить относительную близость разных мест к полюсам и экватору. Еще один весомый плюс проекции Робинсона — то, что она поддерживается множеством софта, в том числе открытого, тогда как про некоторые другие этого сказать нельзя.
Иногда, когда требуется максимально сохранить какое-то свойство, например — соотношение площадей объектов (стран) — эстетическая сторона страдает. Но поскольку это все же может для чего-то понадобиться, я приведу один пример такой проекции — «проекцию Моллвейде», Mollweide projection WKID:54009 PROJ.4:moll.
Как видно, она довольно сильно напоминает проекцию Робинсона, но с той разницей, что полюса все же стянуты в точки, от чего форма приполярных областей выглядит сильно искаженной. Но пропорции площадей стран, как и требовалось, сохраняются куда лучше.
Самым молодым конкурентом этих проекций является проекция Natural Earth PROJ.4:natearth — она представляет из себя гибрид проекций Каврайского и Робинсона, а ее параметры были подобраны группой американских, швейцарских и словенских специалистов в 2007 году, тогда как возраст большинства картографических проекций — не менее полувека.
Для перепроецирования данных в нее существует некоторое количество инструментов, которые были написаны специально для этого, но ее поддержка еще далека от повсеместной.
Немного экзотики и специальных случаев
Конечно, все многообразие проекций на этом не заканчивается. Их изобретено немало. Некоторые просто выглядят странно (скажем, проекция Бонне изображает Землю в виде фигуры, напоминающей разрезанное яблоко или стилизованное сердце), некоторые — предназначены для особых ситуаций. Например, готов поспорить, что очень многие видели на картинках карту мира, которая похожа на корку мандарина, которую сняли и расплющили. Это, наверняка, была «Разрывная гомолосинусоидальная проекция Гуда» Interrupted Goode Homolosine projection WKID:54052.
Вид ее вполне достоин названия. Ее назначение — отображать размер объектов (и в некоторой степени — форму) близко к естественным пропорциям. Ее главная проблема, кроме названия и странного вида, состоит в том, что путем подбора центрального меридиана невозможно добиться того, чтобы ни один крупный кусок суши не был разрезан. Обязательно пострадает что-то из списка: Гренландия, Исландия, Чукотка, Аляска. Лично на мой взгляд, проще привести отдельно изображения стран, чем использовать такую карту, если вы не хотите стилизовать свою работу под середину XX века.
Существуют проекции, которые по своей природе никак не отнести к общемировым, но мне бы хотелось рассмотреть их здесь, потому что они способны показать земной шар, то есть как-бы вид планеты из космоса. Одна из них - «Проекция вертикальной ближней перспективы» Vertical Near-Side Perspective projection WKID:54049. Ее особое свойство — показывать земную поверхность в такой перспективе, как она выглядит с определенной высоты. Высота над эллипсоидом (идеализированной фигурой, моделирующей Землю) задается для этой проекции в явном виде.
На иллюстрации эта проекция имеет широту и долготу центра, равные широте и долготе Москвы, а высоту — 5000000 метров. Чем больше это расстояние, тем сильнее изображение Земли становится похоже на ее изображение в проекции, которую мы рассмотрим последней.
Проекция, которая показывает вид на Землю в параллельной перспективе, то есть как-бы с бесконечного расстояния, называется «Ортографическая проекция» Orthographic projection WKID:43041 PROJ.4:ortho. В каком-то смысле, она знакома всем, кто когда-либо пользовался Google Earth. Я говорю, что в каком-то смысле, потому что «направление взгляда» в этой проекции всегда перпендикулярно поверхности Земли, тогда как в Google Earth его можно наклонять как угодно.
Для нее, как и для предыдущей проекции, можно задать центральные широту и долготу, чтобы ориентировать Землю желаемым образом. Например, можно показать полушарие с центром в какой-то точке, о которой идет речь — скажем, иллюстрируя транспортные потоки континентального масштаба, исходящие от одного предприятия. Сделав две карты с противоположными значениями координат, можно получить карту всего мира (правда, на краях искажения будут очень велики). Генерация последовательности карт с плавным изменением центральной точки даст кадры для анимации вращающейся планеты без всякой трехмерной графики.
Если статья окажется интересной, постараюсь написать продолжение о проекциях, используемых для отображения отдельных стран или регионов, ориентированную, как и эта статья, на базовые свойства этих проекций для задачи визуализации данных, инфографики и тому подобного.
Когда мы получаем изображения
- В некоторых изображениях указана определенная дата съемки, полученная от поставщика материалов.
- Если изображение собрано из нескольких фрагментов воздушных и спутниковых снимков,полученных в течение нескольких дней или даже месяцев, то в нем указывается диапазон дат.
- Если поставщик материалов не указалдату съемки, изображение помечается периодом времени, в который оно, скорее всего, было снято.
Примеры:
- Если изображение получено летом 1995 г., то может быть указан диапазон дат 1.06.1995–30.09.1995.
- Если изображение получено в 1943 г., то может быть указан диапазон дат 1.01.1943–31.12.1943.
Примечание. Если для изображения известен только период съемки, то в пункте "Дата съемки" показывается первый день этого периода. Таким образом, указанный день съемки не может быть позже фактического.
Чтобы получить более точную информацию о дате съемки определенного изображения, обратитесь к его поставщику. Названия поставщиков указываются в сведениях об авторских правах в нижней части экрана. Компания Google не может предоставить более подробную информацию об изображениях, чем та, что доступна в сервисах "Google Планета Земля" и "Google Карты".
Почему отображаемая дата съемки может изменяться
- Наиболее детализированные снимки поверхности планеты обычно представляют собой единые изображения. Поэтому отображаемая дата съемки в таких случаях не изменяется, когда вы перемещаете курсор по карте.
- Изображения, охватывающие большую территорию, обычно составлены из нескольких снимков. Поэтому отображаемая дата может изменяться, когда вы перемещаете курсор по карте.
- Дата съемки не показывается, если она неизвестна или если указатель находится на стыке двух изображений.
Читайте также: