recoder: (Default)
[personal profile] recoder

В процессе разборки фотоархивов, затянувшегося на годы, у меня возникла интересная идея. В большинстве фотографий отсутствует привязка геолокации - мои фотоаппараты (кроме панасоника) геотеги ставить не умели. Зато я всегда с собой таскаю андроидный телефон, в котором крутится Google Maps, который постоянно записывает моё местоположение. Так вот, вместо того чтобы судиться с Гуглём, надо просто вытянуть Google Location History и прописать в фотки гео-теги в EXIF'ы согласно временным отметкам.

Разумеется, оказалось что это ни фига не оригинальная идея. Да и реализация в принципе несложная - скачать полную историю перемещений через Google Takeout, скриптом вытянуть из EXIF время фотографии, взять координаты из истории, прописать координаты обратно.

Как всегда, программистский дьявол - он в деталях реализации. Во-первых, история перемещений - здоровая, многомегабайтный JSON обработать - нетривиально. Во-вторых - таймзоны, одна из самых адских тонкостей в прикладном программизме. Где-то в фотках время местное, где-то домашнее, где-то - совсем левое. Так что время всё равно придётся подкручивать руками. В-третьих, в истории не так много опорных точек, так что координаты надо будет как-то интерполировать.

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

Получается, следующий workflow должен сделать именно то что надо:

  1. Экспортируем KML-файл на время путешествия из Google
  2. Пробуем сделать привязку к одной фотке:
    exiftool -geotag=track.kml -geosync=-4:00:00 ./photos/DSCN0001.jpg
  3. Проверяем - угадал ли geosync, если нет - то обратно на шаг #2
  4. Прогоняем привязку всех фоток:
    exiftool -geotag=track.kml -geosync=./photos/DSCN0001.jpg ./photos/*

Мне кажется, должно сработать...

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

December 2024

S M T W T F S
1234567
891011121314
15161718192021
22232425 262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 10th, 2026 11:59 am
Powered by Dreamwidth Studios