Сортировать коллекцию фотографий с айфона по папкам по году, месяцу и городу/региону

Я использую Photostream для беспроводной синхронизации фотографий с iPhone на компьютер. Со временем моя коллекция фотографий становилась все больше и больше, и, поскольку Photostream просто сбрасывает все в одну папку, я ищу инструмент, который автоматически сортировал бы всю коллекцию по папкам, используя этот формат:

YYYY-MM-GEOLOCATION

пример:

2013-05-Rome

где GEOLOCATIONлибо город либо регион где сделано фото. это можно получить из информации GPS в данных EXIF ​​каждого изображения (точно так же, как функция Placesв Photosприложении на iPhone)

Данные EXIF ​​Данные GPS

Функция геотегов в приложении «Фотографии» на iPhone

Я ищу инструмент, который бы:

  1. Создайте структуру папок, как описано выше.
  2. Перемещайте фотографии в соответствующие папки на основе даты и информации о географическом местоположении.

Я нашел AmoK Exif Sorter , но он не может интерпретировать информацию GPS на фотографиях. Вы знаете инструмент, который может помочь мне сделать это.

Ответы (1)

Ответ №1. Требуется написание скрипта, exiftool и создание базы данных мест.

Частичный ответ будет использовать скрипт и инструмент exif.

Exiftool может читать как exif, так и IPTC, а также большинство других метаданных изображения. Геолокация является частью данных, которые он может прочитать.

Итак, если ваш фотопоток находится в папке ~/PhotoStream (я понятия не имею, где вы его храните.)

foreach photo in ~/Photostream {
  (year,month,lat,long) = exiftool {bunch of flags} photo
  foreach placename in ~/Placenames {
    # Place name has lat, long, name, radius
    # Calculate angular distance from present lat/long to each placename
    distance = sqrt((picture_lat - place_lat)^2 + (picture_long - place_long)^2)
    if (distance < place_radius) { # found one!
      if not exists directory year-month-placename {mkdir MyPics/year-month-placename
      move file year-month-placename
    }
}

Проблема с общей сортировкой географических данных заключается в том, что она по своей сути двумерна. Если вы отсортируете только по широте, вы получите Нью-Йорк, примыкающий к Риму.

Сценарий выше, хотя и не очень сложный, потребует некоторого времени, чтобы заставить его работать правильно, в основном из-за географических названий.

Ответ №2 Сортировать по папкам по дате и добавлять места вручную.

Я бы предположил, что если ваши географические названия не достаточно детализированы, чтобы они менялись несколько раз в день. (Например, у вас есть отдельные записи для вашего отеля, храмов, Колизея...), которые делают первую корзину по дате, а затем переименовывают полученные папки вручную.

Недавно я просмотрел свой файл апертуры (15000 изображений) и, по сути, сделал это вручную. Некоторые из этих фотографий имеют информацию о геолокации.

О: Переименовал каждое изображение в формате гггг-мм-дд чч-мм-сс. Aperture может сделать это автоматически.

B: Сделайте партию папок года. Сделал проект в каждом из них под названием «несортированный».

c: Вручную перемещал пиктограммы каждого года в папки года/несортированные.

d: Создайте группу месячных проектов в папке каждого года.

e: переместите изображение из несортированного в соответствующую папку месяца.

f: В некоторых случаях я делал специальный проект yyyy-mm-project_name, где у меня было большое количество фотографий, посвященных одной теме.

Это не заняло так много времени, как кажется.

Гораздо дольше было перебирать каждую папку и применять ключевые слова. Стоит сделать.

Спасибо за ответ. Я выбрал вариант номер 2, однако я сделал это давным-давно, когда еще работал в Windows, и я не могу вспомнить название утилиты, которая помогла мне поставить отметку времени на имена файлов. Но спасибо за ответ!