Как использовать метаданные IPTC / EXIF ​​для категоризации фотографий? - PullRequest
0 голосов
/ 04 мая 2010

Многие приложения для просмотра и редактирования фотографий позволяют просматривать и изменять данные EXIF ​​и IPTC в JPEG и других файлах изображений. Например, я вижу такие вещи, как выдержка, диафрагма и ориентация в файлах изображений, которые выходят из моего Canon A430. Во всех этих метаданных есть много-много пар имя / значение. Но ...

Что мне делать, если я хочу сохранить некоторые данные, которые не имеют имени встроенного поля. Допустим, я фотографирую соревнования по легкой атлетике и хочу пометить каждую фотографию номером участника соревнования. Могу ли я создать поле "bib_number" и присвоить ему значения "0001", "5478", "8124" и т. Д., А затем выполнить поиск всех фотографий с помощью bib_number = "5478"?

Я потратил несколько часов на поиски, и лучшее, что я могу придумать, это поместить эту пользовательскую информацию в поле "ключевые слова", но это не совсем то, что мне нужно. При таком взаимодействии мне нужно было бы создать запрос типа «ключевые слова содержат bib_number_5478», а то, что я хочу - «bib_number is 5478».

Итак, допускают ли стандарты EXIF ​​и / или IPTC дополнительные пользовательские имена полей?

Спасибо Кев

Ответы [ 2 ]

0 голосов
/ 14 октября 2015

Он может использоваться для этого, но на самом деле не должен: он предназначен для редактирования пользователем и поэтому не является безопасным местом для размещения критических метаданных. Использование XMP-коляски лучше для такого рода вещей: в XMP любое добавленное поле, которое не понимает данное приложение, согласно стандарту должно игнорироваться этим приложением и не уничтожаться.

0 голосов
/ 01 сентября 2010

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

C # код:

using System.Windows.Media.Imaging;
using System.IO;

...

FileStream fs = new FileStream(@"<img_path>", FileMode.Open, FileAccess.ReadWrite);
BitmapMetadata bmd = (BitmapMetadata)BitmapFrame.Create(fs).Metadata;
bmd.Comment = "Some Comment Here";

также, если вы ищете приложение, в которое уже встроены эти функции, тогда я мог бы порекомендовать Irfan View (откройте изображение, перейдите в меню «Изображение», нажмите кнопку «Комментарии»).

Надеюсь, это поможет.

...