Как извлечь GPS координаты из фото

Рука держит лупу над картой, увеличивая участок горного рельефа под ней

Чтобы извлечь GPS-координаты из файла фотографии, откройте снимок в программе, которая читает метаданные, и посмотрите на группу GPS. Ничего не вычисляется и ничего не запрашивается в интернете. Координаты уже лежат внутри файла: они были записаны в тот момент, когда сработал затвор телефона с включёнными службами геолокации. Вы получаете широту и долготу, а вместе с ними небольшой набор сопутствующих тегов, которые и решают, означают ли эти два числа то, что вы думаете.

Прочитать эту пару легко. Прочитать её правильно удаётся далеко не всем, и дальше объясняется почему.

Как извлечь GPS-координаты из файла фотографии

  1. Откройте снимок в просмотрщике метаданных или в панели свойств файла вашей операционной системы.
  2. Найдите раздел с названием GPS, отдельный от разделов камеры и экспозиции.
  3. Прочитайте широту и долготу, а сразу за ними два их тега полушария.
  4. Соберите из этого пару со знаком и вставьте её в любую карту, чтобы проверить метку.
  5. Прежде чем доверять координатам, посмотрите, как была получена привязка и какую точность она заявляет.

В первом шаге есть нюанс приватности, о котором стоит знать. Большинство онлайновых читалок метаданных загружают ваш снимок на сервер, чтобы его разобрать, то есть передают постороннему ровно те координаты, которые вы хотели просто посмотреть. Наш просмотрщик EXIF читает файл прямо в браузере и никуда его не отправляет, и здесь это важнее, чем почти для любого другого инструмента.

EXIF viewer listing a photo's GPS group, showing latitude, longitude and their N/S and E/W reference letters
Группа GPS, считанная из настоящего файла.

Почему у числа в файле нет знака минус

Откройте снимок, сделанный в Рио-де-Жанейро, и широта не будет равна −22,95. Там будут 22, 57 и 6,98: три отдельных положительных числа, а рядом тег с одной-единственной буквой S.

На этом спотыкаются все хотя бы раз. Файл никогда не хранит отрицательную координату. Он хранит градусы, минуты и секунды как положительные значения, а полушарие кладёт в сопутствующий тег: GPSLatitudeRef содержит N или S, а GPSLongitudeRef содержит E или W.

Возьмём статую Христа-Искупителя, которая стоит на 22°57′7″S, 43°12′38″W. Чтобы восстановить десятичное число, которое ждёт карта, разделите минуты на 60, секунды на 3 600, прибавьте всё это к градусам, а затем позвольте букве задать знак:

  • 22 + (57 ÷ 60) + (6.98 ÷ 3600) = 22.95194
  • Сопутствующий тег говорит S, значит ответ равен −22.95194
  • 43 + (12 ÷ 60) + (38.02 ÷ 3600) = 43.21056, а W превращает это в −43.21056

Уберите эти два тега полушария, и тот же снимок начнёт утверждать, что сделан у побережья Сомали, примерно в 9 000 километрах оттуда, причём без единого сообщения об ошибке. Просмотрщик, который показывает голое положительное число и не показывает букву, дал вам половину ответа.

Теги, по которым видно, стоит ли доверять метке

Координата выглядит одинаково уверенно и когда её дал спутник, и когда её кто-то вписал в поле руками. Вопрос решают два тега из группы GPS, и их почти никто не читает.

GPSProcessingMethod фиксирует, каким способом была получена позиция. Спецификация EXIF определяет четыре значения: спутниковая привязка, сотовая вышка, сеть Wi‑Fi или ручной ввод. Снимок, координаты которого вписаны вручную, делает заявление, а не измерение: именно это различие решает, годится ли изображение как доказательство в страховом деле или в акте осмотра.

GPSHPositioningError фиксирует, насколько позиция может быть неточной, в метрах. Это разница между "вот этот подъезд" и "где-то в этом почтовом индексе". Руководства, которые расплывчато предупреждают о дрейфе GPS, описывают ровно то, что измеряет этот тег.

Прочитанные вместе, эти два тега превращают метку в доказательство с заявленной достоверностью либо разоблачают её как догадку. Если клиент присылает вам фотографии объекта, а координаты введены вручную и без цифры точности, теперь вы знаете, что нужно задать вопрос.

Где стояла камера и куда она смотрела

Основная пара координат отвечает на вопрос, где стоял фотограф. Она не говорит, на что он смотрел, а для работы с недвижимостью, геодезией и осмотрами этот разрыв имеет значение.

GPSImgDirection хранит компасный азимут, в сторону которого была направлена камера, а сопутствующий тег фиксирует, отсчитан ли этот азимут от истинного севера или от магнитного. Разница между ними достаточна, чтобы указать на соседнее здание. Именно этот тег отличает снимок витрины снаружи от снимка, сделанного внутри магазина.

Есть и второй, почти никому не известный набор тегов положения, предназначенный не для камеры, а для объекта съёмки, так что файл может записать и место, где стоял фотограф, и место того, что он снимал. Мало какие камеры это пишут, но геодезические и дроновые инструменты пишут, а просмотрщик, показывающий только первую пару, молча спрячет вторую.

Читаем часы вместе с координатами

В группе GPS есть собственные дата и время, и они записаны в UTC. Обычная отметка времени съёмки, которая лежит в другом месте файла, указана по местному времени камеры.

Разрыв между ними и есть часовой пояс, в котором сделан снимок, а это полезная перекрёстная проверка: фотография, заявляющая место в Бразилии, у которой двое часов расходятся на девять часов, сообщает вам, что что-то не так. Если файл редактировали или собирали из частей, эта пара часто противоречит сама себе так, как пиксели никогда не покажут.

Когда в файле вообще нет координат

Пустой раздел GPS встречается часто и обычно безобиден. Службы геолокации были выключены, у камеры нет приёмника, съёмка шла в помещении без приёма, или снимок уже прошёл через площадку, которая удалила метаданные. Исследование 2023 года на 2 475 парах загруженных изображений показало, что Facebook удалял все поля EXIF, кроме Artist и Copyright, поэтому фотография, сохранённая обратно из ленты, обычно приходит с пустым разделом GPS.

Координату, которая никогда не была записана, вернуть нечем. Ни один инструмент не выведет её из пикселей. Зато вы можете задать её осознанно. Если вы знаете, где сделан снимок, и файл должен об этом сообщать, добавьте координаты в файл, и в него запишутся те самые теги, описанные выше.

Две соседние задачи стоит отделить от этой. Полный разбор всех полей, которые несёт фотография, а не только группы GPS, находится в справочнике тегов, доступных для редактирования. А если вы читаете координаты потому, что хотите убрать их до отправки снимка, то удаление геотега представляет собой другую операцию с другими подводными камнями: прочитать не значит стереть.

Инструмент для геотегов и метаданных EXIF

В ваших снимках нет данных о местоположении?

Широта и долгота GPS вместе с тегами EXIF, встроенными в фотографии, улучшают их показ в поиске и в локальных результатах Google Карт.

Попробовать бесплатно
DEVFINIX
Автор статьи

DEVFINIX

Devfinix является digital агентством полного цикла: разработка сайтов и мобильных приложений на заказ, проекты на Shopify и WordPress, техническое SEO и платное продвижение в соцсетях. Статьи здесь выросли из этой же SEO практики, от аудитов и работы с метаданными до задач локального поиска, которые возникают на реальных клиентских сайтах.

Похожие статьи

Explore more tutorials & local SEO guides