Ilya Matveev (ilya_314) wrote,
Ilya Matveev
ilya_314

Categories:

организация фоток - выбор решения

Сейчас храню все фотографии на hdd в одном месте. Есть иерархия каталогов, которая отражает только один вариант разбиения на подмножества. Зачастую фотка должна быть в нескольких множествах одновременно, т.е. одного дерева явно недостаточно. Например фотки можно группировать по событиям, по автору, по сюжету, по месту, по рэйтингу и т.д. - эти множества имеют пересечение.

Здесь была бы полезна идея тэгов (еще это называют ключевыми словами или категориями). Нужен инструмент который позволил бы удобно управлять тэгами, производить поиск по этим тэгам. Но где хранить эту информацию, как ее не потерять? Если она будет хранится в проприетарной базе данных этого приложения - это плохой вариант - есть вероятность, что эта база грохнется или приложение перестанет удовлетворять запросам. Лучше всего чтобы эти данные хранились прямо в самих файлах, а база конечно никуда не девается - она нужна только для индексации данных и эффективного поиска.

Выяснилось что хранить такие экстра данные можно внутри jpeg (tiff и возможно еще каких-то форматах) по стандартам IPTC и XMP. IPTC самый широко применяемый для этого стандарт - самое главное что там есть поля для хранения наборов строк - те самые ключевые слова. XMP - тоже открытый стандарт, который предложен Adobe и пока кроме Adobe мало кем поддерживается, но вроде имеет больше возможностей.

Кстати индексацию и поиск по IPTC поддерживает Google Desktop. MSN Desktop может с помощью дополнительного фильтра индексировать XMP. Кроме того я нашел фильтр который умеет смотреть IPTC, но пока его не проверил. Вообще если кому интересны фильтры для MSN search, то по ним много ссылок на странице Desktop Search IFilters.

После небольшого поиска в internet выявил некоторые приложения которые стоит посмотреть. Критерием была поддержка работы с тэгами, ну и конечно хотелось чтобы программа была профессионально и качественно выполнена. Итак я остановился на следующих:

   * Picasa 2
   * XnView
   * PicaJet FX
   * PixVue
   * ACDSee 8 Pro
   * IrfanView

Еще есть Adobe Photoshop Album. Но он ориентирован на XMP, IPTC не любит - война форматов :)

Picasa 2

Бесплатна.
Сейчас выложена версия 2.1.0 release этой программы. Google может удивить и было интересно что тут предлагается. Они наконец решили проблему с русскими буквами - теперь даже интерфейс становится русским если стоит русская locale.

   * есть мониторинг папок (автоматическое отслеживание изменений)
   * есть разовое ручное сканирования заданных папок
   * сканирует папки очень быстро, размер базы на 10000 фоток ~ 60 Mb
   * база одна - в документах юзера, место нельзя поменять, нет бэкапа, импорта, экспорта
   * есть понятие коллекции - внутри нее группы по годам, в каждой группе - папки, иерархии нет - папки лежат линейно внутри {коллекция/год}, после сканирования все кидается в коллекцию "папки на диске", каждая физическая папка попадает в соответствующий год
   * просматривать можно только просканированные данные - т.е. нельзя смотреть произвольную папку на диске
   * можно редактировать ключевые слова IPTC, но их нигде не видно, все вслепую
   * поиск учитывает ключевые слова, но практически не имеет настроек
   * можно выкладывать фотки на blog.google.com
   * редактирование (crop, поворот, эффекты и т.д.) не меняет исходную картинку, сделано все довольно удобно и красиво
   * показывает часть EXIF данных, может рисовать гистограмму
   * есть печать с хорошим preview, печать группы, создание всяких там коллажей, есть всякие слайдшоу, таймлайн, создание дисков, экспорт для web

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

"13. Расторжение
Если Вы пожелаете расторгнуть настоящее Соглашение, Вы можете просто прекратить пользоваться Программным обеспечением Picasa и выполнить указания по его деинсталляции.
Google оставляет за собой право в любое время и без объяснения причин расторгнуть настоящее Соглашение и аннулировать предоставленное Вам разрешение на использование Программного обеспечения Picasa."

Вобщем Google вас приглашает использовать их сервисы, а в один прекрасный день попросит денег (а может еще чего-то противоестественного :) или просто расторнгнет с вами соглашение, после чего использование станет незаконным. У меня нет паранойи на этот счет, но все-же забавно, хотя может такие формулировки сплошь и рядом.

XnView

Бесплатный.
Продвинутый броузером. Понимает EXIF, IPTC, позволяет все это редактировать - скорее был интересен как средство контроля за тем что там внутри появляется. В нем никаких баз нет, поиска тоже нет. Вобщем броузер со стандартными возможностями браузера но не более.
Интересно что на их сайте я попутно нашел другую интересную вещь - тоже бесплатный конвертор nconvert. Это win32 консольное приложение которое основано на ядре xnview и насколько я понял даже работает с его плагинами. Впервые увидел такое мощное средство со времен alchemy (та просто отдыхает). Тут чуть ли не более 200 форматов, поддержка многостраничных форматов, EXIF данных, loseless вращение, наклон, обрезка, изменение размера холста, фильтры, работа с raw на основе библиотеки dcraw, наложение картинок и т.д. Вообщем кому требуется пакетная обработка - это то что надо.

IrfanView

Бесплатный.
Неплохой браузер, я его почти не смотрел. Он тоже понимает IPTC, но примерно в том же режиме как и xnview.

PicaJet FX

В россии можно купить легально за 190 р. через интернет оплату, за бугром - 39$.
Довольно свежая программа на которую много неплохих отзывов. Без проблем работает с русскими названиями и имеет возможность включить русский интерфейс.

   * есть мониторинг папок (автоматическое отслеживание изменений)
   * есть разовое ручного сканирования заданных папок
   * сканирует не быстро, есть утечка памяти при работе с tiff, размер базы на 10000 фоток ~ 65 Mb
   * при сканировании можно скзать построить структуру категорий на основе папок
   * показывает только то что отсканировано
   * есть возможность создания любого числа баз (альбомов), можно подключать их из разных мест, есть возможность бэкапа, экспорта в xml (но нет импорта из xml)
   * основной режим просмотра - иерархия тэгов (категорий)
   * можно смотреть по таймлайну
   * можно смотреть по папкам, но только то что отсканировано в базу
   * можно экспортировать категории в IPTC, XMP (даже с иерархией, но иерархию он пишет хитро и никто кроме него ее не распознает - у других будет плоская структура)
   * импортирует категории из IPTC
   * присваивать категории можно через перетаскивание на них
   * ткнув в категорию можно перейти на срез
   * есть поиск по критериям
   * если фотку перенесли или удалили, то она не пропадет из базы даже после повторного сканирования - надо запустить поиск missing - потом их просто удалить или указать новое место

Не понравилось отсутствие просмотра списка картинок в табличном виде с параметрами - параметры можно выдать, но в дополнение к маленькой картинке. Не понравилось то что показывая содержимое папки - встаем в начало набора этих картинок, но в составе всех. Т.е. выделить этот поднабор будет крайне неудобно (у picasa кстати такой же прикол). Перетаскивание папки в категорию не поддерживается. Вобщем непонятно почему этого нет в программе ориентированную на категории неудобно сделать присвоение категории картинкам из папок.

PixVue

Бесплатна.
Это по сути расширитель explorer. Раширяет механизм индексации в windows и добавляет фильтры для MSN Desktop Search. Т.е. искать можно будет по ключевым словам прямо в проводнике. Thumbnails становятся более продвинутыми, свойства позволяеют редактировать один или группу файлов, поддерживается EXIF, IPTC, XMP. Я не люблю подобные вещи - слишком глубокая интеграция в систему, на мой взгляд снижает надежность. Вобщем и средства управления и поиска весьма спартанские.

ACDSee 8 Pro

129$
Я когда-то пробовал версию 4, 5, 6. Весь этот хлам я выкидывал - тормоза и никакой пользы, использую acdsee32 (2.41) - очень маленькая и быстрая. Но в начиная с 7-ой версии пошла поддержка категорий. В 7-ой они не реаботали с IPTC. Теперь это есть - можно данные извлекать и засовывать в эти структуры. По кастомизации этой программе нет равных. Интерфейс очень гибкий. Теперь еще docked windows с закладками a-la visual studio.net. Вобщем круто - все можно скомпоновать как захочется. Понимает EXIF, причем сепцифично для целой кучи устройств, там вплоть до GPS данных есть информация. Можно поставить параллельно старой версии при этом они не конфликтуют (документированый факт), надо только новую ставить после старой. Меня бесили новые версии тем, что они принудительно ведут базу и все что ты смотришь туда кидают - отключить это было нельзя. База раздувалась, управлять ей толком тоже было нельзя. Теперь появились средства управления базой, но все равно остались некоторые старые болезни.

   * нет мониторинга
   * есть прямой просмотр каталога как в проводнике
   * пополняет базу на автомате при просмотре фоток, кроме removable и network (конфигурируется)
   * можно задать exclude folders для отмены пополнения базы (лучше бы задавались include)
   * можно сканировать в ручном режиме задав определенные папки
   * есть дерево категорий + рейтинги
   * везде где можно кастомизировать поля - можно выбирать любые поля из базы, файла, exif, iptc - очень мощно
   * можно перетаскивать файлы в категории
   * можно перетаскивать целые папки с подпапками в категории
   * в списке файлов видем только то что выделили - нет сквозного списка как в picasa2 и в picajet (и слава богу!)
   * есть возможность выбирать несколько категорий для просмотра - это удобно для категоризации
   * есть возможность выбирать несколько папок для просмотра - тоже очень удобно для категоризации
   * мощный поиск
   * редактор/viewer свойств EXIF, IPTC
   * есть спец категория - все что в базе
   * есть backup базы (можно по расписанию), причем можно не целиком - например без thumbnails (они занимают почти весь объем)
   * размер базы на 10000 фоток - 380 Mb, 19 Mb - данные, остальное превью
   * сканирует со средней скоростью - не очень быстро но не медленнее picajet
   * есть экспорт базы в xml
   * thumbnails из базы очень быстро извлекает, даже если запросить все 10000 - памяти жрет не более 100 Mb - подгружает не все, но очень большой кусок
   * база одна и она всегда в папке документов юзера
   * есть синхронизация фоток с другими папками и т.д.
   * чтобы база не раздулась рекомендуют делать ее компрессию, кроме того в менеджере базы можно видеть дерево папок в базе и просто их оттуда выносить, можно просто ее полностью очистить одной командой
   * если файл удален или перемещен я не проверял что будет при пересканировании, но в менеджере базы есть операция снести неактуальную информацию - в частности о файлах которых нет

Самая главня фича - batch set information - это великая вещь. Выделяем набор файлов, затем идем в эту операцию. Имеем закладки для параметров хранящиеся в базе, EXIF, IPTC, кроме того есть preview каким будет выбранное поле после операции (показывается в виде списка - файл/поле). Если в поле стоит * - значит сохранить поле, иначе можно вписать строку, есть спец подстановки для любых полей. Т.е. можно таким образом вписав в IPTC::keywords значение ACDSeeBase::category записать в IPTC соответствующую инфу из базы или наоборот перекачать из IPTC в базу. Рэйтинг можно в ICPT:urgent засунуть. Они не заморачивались на попытку засунуть туда иерархию (это не предусмотрено в IPTC). Надо придерживаться стандарта - ключевые слова должны быть без ";", "," и без пробелов. Еще один важный момент (существенное отличие от picajet) - допустим есть родительская категория и вложенная, присваивая вложенную категорию родительская не присваивается! Это приводит к тому что ткнув в родителя мы не увидим все картинки из вложенных - для этого надо их все выделить в дереве категорий (их не должно быть много и это не сложно). Казалось бы это неудобно, но имеет интересное применение. Это позволяет все-же использовать группировку категорий для удобства навигации в интерфейсе категорий, но при этом группирующие элементы остаются не присовенными и не мешают записи в IPTC. Если в IPTC имеем ключевое слово при импорте категорий - acdsee ищет первое совпадающее по иерархии. Отсюда вытекают простые правила для безпроблемной работы с категориями и их хранения и извлечения в IPTC:

   * категории можно группировать, но группирующие элементы не надо назначать картинкам
   * имена категорий уникальны
   * имена не должны содержать пробелы - если будут содержать то при записи в IPTC каждое слово в предложении будет рассмотрено как отдельно ключевое слово

Вывод

Я решил остановиться на ACDSee т.к. здесь имею мощный броузер, полный контроль за метаданными. Есть два главных недостатка. Первый - нельзя иметь множество баз и указать ее местоположение, это бы позволило использовать одну базу разными пользователями. Второй - база всегда пополняется в процессе просмотра - немного в этом помогает exclude folders - можно исключать целые диски, но понятно что это полумера - лучше бы если бы это можно было совсем вырубить.
Tags: photo
Subscribe
  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 8 comments