Редактировать и искать/просматривать метаданные изображения

У меня есть тысячи изображений мемов . К сожалению, неорганизованно. Всякий раз, когда мне может понадобиться конкретное изображение, найти его почти невозможно. Теперь я хочу упорядочить свою коллекцию, вручную добавив метаданные для каждого изображения.

Мне нужен единый инструмент, ориентированный на

  • поиск проиндексированных изображений и
  • редактирование метаданных изображения.

Я знаю, что многие графические редакторы предлагают обе эти функции, но часто это только второстепенная функция, например, «скрытая» в подменю или что-то в этом роде. Инструмент, который я ищу, в лучшем случае должен позволять мне искать изображения сразу после его запуска.

Формальные требования

  • Инструмент ДОЛЖЕН быть бесплатным/бесплатным программным обеспечением с открытым исходным кодом .
  • Инструмент ДОЛЖЕН изначально работать в GNU/Linux (будь то клиент для рабочего стола или веб-приложение).

  • Инструмент ДОЛЖЕН поддерживать следующие форматы изображений: PNG, JPG, GIF (анимированные).

    • Он ДОЛЖЕН поддерживать хотя бы один из этих форматов.

Метаданные

  • Инструмент НЕ ДОЛЖЕН сохранять метаданные в имени файла изображения.
  • Инструмент МОЖЕТ сохранить метаданные в изображении.
    • В этом случае инструмент ДОЛЖЕН использовать стандартизированный формат метаданных (например, XMP ).
  • ОБЯЗАТЕЛЬНО: мне нужно несколько полей (например, «Язык», «Видимый текст», «Категория», «Ключевые слова»). Инструмент должен либо позволять мне определять пары «имя-значение» отдельно для каждого изображения, либо я определяю имена глобально и заполняю только значения для каждого изображения.

Поиск

  • ОБЯЗАТЕЛЬНО: простого полнотекстового поиска, который всегда выполняет поиск по всем полям, недостаточно.
  • Это ДОЛЖНО позволить мне искать только в выбранных полях.
  • Он ДОЛЖЕН предлагать логические операторы поиска (такие как AND, OR, NOT) и поиск по фразе ( "").

Было бы очень здорово (но не обязательно), если бы инструмент поставлялся с каким-то браузером для детализации или многогранной навигации, чтобы вы могли находить изображения, щелкая, вместо того, чтобы знать и вводить условия поиска. Например, он может использовать поле «Ключевые слова» и разделять его значения запятыми, а затем использовать их как «теги».

Ваше требование «должно быть в метаданных» затрудняет поиск. Могу ли я предложить два разных подхода на случай, если не найдется подходящего кандидата? -> 1) Добавить файлы со структурированным форматом данных (например, XML) рядом с файлами изображений; они доступны для поиска и сопровождения, и, вероятно, для этого есть доступные инструменты. 2) Используйте какое-нибудь программное обеспечение для тегов; Недостатком является то, что теги будут храниться в отдельной (монолитной) структуре.
@JanDoggen: Какие именно требования к метаданным вы имеете в виду? -- Если я правильно понимаю решения 1) и 2), они оба кажутся правильными ответами в соответствии с моими требованиями.
@unor Извините, неправильно понял ваше требование, там написано «может». Вы по-прежнему сталкиваетесь с трудностью, связанной с тем, что XMP поддерживается не во всех форматах. но, может быть, это не обязательно для вас.
@JanDoggen: если инструмент записывает метаданные непосредственно в файлы (вместо использования базы данных и т. д.), я хочу, чтобы он использовал «известный» формат, то есть формат, который другие инструменты (в основном) могли бы читать, поэтому что я не привязан к поставщику.

Ответы (2)

Исследуя то же самое по той же причине в той же системе, я обнаружил:

  1. Шотвелл: https://wiki.gnome.org/Apps/Шотвелл
  2. jExifToolGUI: https://hvdwolf.github.io/jExifToolGUI
  3. Файловый менеджер Dolphin: https://apps.kde.org/dolphin
  4. Дигикам: https://www.digikam.org
  5. Geeqie, упомянутый здесь

После установки exiftool sudo apt-get install -y exiftoolя могу проверить сохраненные теги любого изображения через exiftool <ImageName.jpg>. Я работаю над Ubuntu 20.04 и провел приведенные ниже тесты со свежим PNG, созданным в GIMP. Кажется, нет хорошего способа создать или отредактировать тег «Язык», поэтому я просто публикую его в теге «Комментарий».

Shotwell поддерживает иерархические теги, записывает теги в нескольких местах и ​​пишет комментарии с разрывами строк, разделенными точками. Он имеет самую удобную навигацию и позволяет пакетно применять теги, перетаскивая их в список тегов боковой панели. Иногда необходимо выйти из режима просмотра или закрыть программу, чтобы сохранить изменения тегов. Он не очень хорошо просматривает файлы (не в маленькой панели предварительного просмотра в углу), особенно не анимирует анимированные GIF-файлы. Я добавил к нему теги и комментарии, и вот некоторые из созданных им тегов, видимых в exiftool:

  • Notes: Shotwell comment line 1.Shotwell comment line 2.Shotwell comment line 3: English
  • Label: hierarchy3
  • Subject: hierarchy1, hierarchy2, hierarchy3
  • Tags List: hierarchy1, hierarchy1/hierarchy2, hierarchy1/hierarchy2/hierarchy3
  • Last Keyword XMP: hierarchy1, hierarchy1/hierarchy2, hierarchy1/hierarchy2/hierarchy3

Запуская одно и то же изображение через jExifToolUI, у вас есть гораздо больше вариантов тегов, но загружать много изображений обременительно, но вы можете редактировать несколько изображений с помощью множественного выбора с помощью Ctrl + щелчок. Вы видите, что некоторые из предыдущих тегов остаются, другие создаются (третья строка комментариев была «английской», так я бы назвал языки):

  • Last Keyword XMP: hierarchy1, hierarchy1/hierarchy2, hierarchy1/hierarchy2/hierarchy3
  • Notes: Shotwell comment line 1.Shotwell comment line 2.English
  • Creator: jExifToolUI creator
  • Description: jExifToolUI description
  • Tags List: hierarchy1, hierarchy1/hierarchy2, hierarchy1/hierarchy2/hierarchy3
  • Label: jExifToolUI tag

Dolphin, кажется, только меняет комментарии и теги внутри. Результаты exiftool после внесения изменений и закрытия программы выглядели так же, как и выше. У него отличная панель предварительного просмотра, которую я бы хотел, чтобы использовались другие приложения, включая анимационные анимированные GIF-файлы.

DigiKam кажется популярным стандартом. У него есть действительно крутая функция карты для тегов координат. Мне удалось увидеть, но не изменить тег Creator (в разделе «Подписи» > «Права» > «Имена»). Помимо этой икоты, я смог изменить или добавить почти все остальное:

  • Creator: jExifToolUI creator
  • Title: digiKam Title
  • Description: digiKam Caption
  • Subject: Digikam hierarchical tag3
  • Last Keyword XMP: Digikam hierarchical tag1/Digikam hierarchical tag2/Digikam hierarchical tag3
  • Hierarchical Subject: Digikam hierarchical tag1|Digikam hierarchical tag2|Digikam hierarchical tag3
  • Catalog Sets: Digikam hierarchical tag1|Digikam hierarchical tag2|Digikam hierarchical tag3

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

  • Caption: digiKam Title
  • Notes: digiKam Caption
  • Categories: <Categories><Category Assigned="0">Digikam hierarchical tag1<Category Assigned="0">Digikam hierarchical tag2<Category Assigned="1">Digikam hierarchical tag3</Category></Category></Category></Categories>
  • Captions Date Time Stamps: 2021-05-29T14:49:22
  • Tags List: Digikam hierarchical tag1/Digikam hierarchical tag2/Digikam hierarchical tag3
  • Subject: Geeqie tag (Keyword)
  • Title: Geeqie Title
  • Creator: jExifToolUI creator
  • Description: Geeqie Comment line 1.Geeqie Comment line 2
  • Last Keyword XMP: Digikam hierarchical tag1/Digikam hierarchical tag2/Digikam hierarchical tag3
  • Hierarchical Subject: Digikam hierarchical tag1|Digikam hierarchical tag2|Digikam hierarchical tag3
  • Catalog Sets: Digikam hierarchical tag1|Digikam hierarchical tag2|Digikam hierarchical tag3

Я еще не закончил свое исследование. Тегирование изображений сейчас кажется беспорядком, без четких стандартов, и каждое приложение частично перекрывает вещи неожиданным образом. Мне было бы интересно узнать, что ОП использует сейчас, семь лет спустя.

На данный момент я, скорее всего, буду использовать Shotwell из-за его чистого, хорошо организованного интерфейса и простой иерархической настройки, по крайней мере, внутри программы. Когда вы начинаете открывать файлы изображений в других программах для тегов, они иногда берут сгенерированные Shotwell иерархические теги и дублируют их странным образом, так что, когда вы возвращаетесь в Shotwell, теги на боковой панели снова дезорганизованы. Например, с примером, используемым в этом наборе, я теперь вижу это в Shotwell (до этого было просто Теги> иерархия1> иерархия2> иерархия3):

  • ▼ Tags
  • ▼ hierarchy1
  • ▼ hierarchy2
  • hierarchy3
  • ▼ hierarchy1, hierarchy1
  • ▼ hierarchy2, hierarchy1
  • hierarchy2
  • jExifToolUI tag

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

В идеальном мире я хотел бы иметь текущую настройку Shotwell с четкими тегами Author/Artist, которые я мог бы редактировать (я могу использовать командную строку, и это exiftool -artist=<Artist Name> FileName1.png FileName2.png FileName3.pngправильно отображается как в Shotwell, так и в exiftoolсписке сведений о файле CLI, но это трудоемко). Хотелось бы, чтобы я мог редактировать теги и комментарии на боковой панели напрямую, без необходимости щелкать правой кнопкой мыши изображение, и я хотел бы, чтобы программа имела панель предварительного просмотра, похожую на Dolphin, включая воспроизведение анимированных GIF-файлов, наряду с картой GPS-координат, как в digiKam или Geeqie. Сейчас я читаю https://news.ycombinator.com/item?id=22442144 , чтобы найти больше идей, но это, кажется, самое дно.

Я также хочу иметь возможность редактировать анимированные GIF-файлы так же, как JPG/PNG, но из-за их формата это очень сложно. В конечном итоге я могу просто преобразовать их все в беззвучные MP4, в любом случае это, кажется, новый стандарт для них в приложениях для обмена текстовыми сообщениями, а MP4 намного меньше. Мне не нравится, что это означает, что они будут рассматриваться как видеофайлы, но грань между изображениями и видео все равно становится все более размытой.

Я также заинтересован в разработке системы тегов изображений. В настоящее время я не знаю точно, что пометить или как. К счастью, такие вещи, как https://thenextweb.com/news/auto-imaging-tech-takes-pain-keyword-tagged-searching , позволяют лучше помечать физические объекты с помощью ИИ, поэтому я могу сосредоточиться на более конкретных, персонализированных тегах. Это, наряду с вышеперечисленным, представляет собой парный процесс разработки надежной базы данных мемов. Я бы хотел, чтобы был единый магазин для всех, но я думаю, что это то, чем все это является, мы в основном вносим свой вклад в его создание.

Хотя это и не 100% решение, Geegie — это инструмент, который может предложить отличную поддержку в метатеге ваших мем-изображений. Geegie — это просмотрщик изображений для Unix-подобных операционных систем и ответвление старого и несуществующего GQview . Geegie поддерживает различные форматы изображений, включая .jpg. png. .gif и является программным обеспечением с открытым исходным кодом, распространяемым по общедоступной лицензии GNU.

Примечание. У меня нет мема, чтобы проверить это, но пометка и воспроизведение метаданных обычных изображений видны в других приложениях для управления фотографиями (Darktable, Aftershoot Pro).Стартовый экран Джиги

Это программное обеспечение позволяет просматривать и редактировать метаданные EXIF, IPTC и XMP . В меню конфигурации вы можете выбрать запись метаданных в файл изображения или в стандартную и нестандартную боковую карту XMP.Конфигурация метаданных

Функцию поиска можно легко настроить для рекурсивного поиска по базе сходства, размера, комментария, ключевого слова, даты, размера и т. д. элемента/изображения, а правила поиска можно организовать любым удобным для вас способом ( например, поиск изображения abc с ключевым словом xy определенного размера с 50% сходством с изображением abcd ).Конфигурация поиска

Geegie не предлагает все необходимые поля в соответствии с вашим вопросом («Язык», «Видимый текст», «Категория», «Ключевые слова»), но в качестве решения можно использовать этот шаблон:

  • Ключевые слова/теги можно классифицировать,
  • Раздел комментариев можно использовать для поля «Язык».
  • Раздел заголовка можно использовать для видимого текстового поля.
  • Geegie также предлагает сортировать изображения в коллекциях.

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

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