Используется ли программное обеспечение для контроля версий для фотографий?


34

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

  • Создать файл
  • Начните работать над файлом
  • Проверьте в файле (создайте его версию 1)
  • Откройте файл и отредактируйте снова
  • Проверьте снова (версия 2)
  • Поймите, что вы удалили что-то важное из версии 1, вернитесь в прошлое, получите то, что вы удалили ...
  • ...
  • Прибыль ...

Во всяком случае, мне интересно, если что-то подобное используется с фотографиями? По сути, я думал о чем-то вроде:

  • Импорт фотографий (V1).
  • Начните помечать фотографии ( автомобили на стороне V2 ... XMP должны действительно изменяться только здесь).
  • Начните добавлять звезды, больше тегов (V3)
  • Начните регулировать некоторые настройки (V4 +)

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

Ответы:


32

Приложения для обработки фотографий, такие как Adobe Lightroom и Apple Aperture, предоставляют такую ​​историю как встроенную часть их функциональности.

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

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

(Я предполагаю, что нет никаких причин, по которым вы не можете использовать SVN-репозиторий для фотографий, т.е. двоичные файлы?)


1
Lightroom сохраняет историю сеанса редактирования, но сохраняется ли эта история, если вы закроете Lightroom и снова откроете изображение из каталога позднее? Я знаю, что у вас всегда есть оригинальный файл RAW, но можете ли вы произвольно получить версию где-нибудь между оригиналом и самой последней в любое время?
MikeW

2
Да! Единственный раз, когда он будет удален, это если вы удалите изображение из каталога и добавите его снова. Тогда вы начинаете с нуля. Но в остальном история сохраняется.
Майк

Digikam обеспечивает ту же функциональность инструкций.
Унапьедра

4
В дополнение к журналу истории Lightroom позволяет создать «снимок», который позволяет назначить метку текущим настройкам разработки и легко вернуться к ней. Вроде как пометки в SVN. lightroomkillertips.com/2009/whats-a-lightroom-snapshot Некоторые инструменты, такие как плагины Джеффри Фридла, могут быть настроены на автоматическое создание моментального снимка при экспорте в такие службы, как Flickr. regex.info/blog/lightroom-goodies [Я написал это одновременно с fzwo ... извините за избыточность с его комментарием.]
coneslayer

2
Если вам нужна полная функциональность контроля версий, вы можете просто контролировать исходные файлы sidecar, как и любой другой файл (они представляют собой размеченный текст внутри). Тогда вы не ограничены историей, но можете делать «ветки» с совершенно разными типами эффектов, если хотите. Программное обеспечение должно позволять вам применять новый файл sidecar к любому заданному изображению RAW, по крайней мере, моему.
rumtscho

8

Виртуальные Изменения

Я использую Lightroom v3, и этот продукт имеет неразрушающий рабочий процесс. Это позволяет мне вносить изменения в мои изображения в виртуальном смысле.

Контроль версий

Затем я использую SVN для поддержания контроля над каталогом Lightroom (простой базой данных SQLite), и это, по сути, дает мне контроль версий над виртуальными изменениями.

избыточность

У меня есть установка RAID 6, которая содержит носитель для резервирования и цикл USB-накопителей в качестве ротационной резервной системы.


Хотя это может не работать для всех, это работает для меня. Плюс это позволяет мне использовать несколько машин и иметь один и тот же каталог LR (используя цикл фиксации / обновления svn).

Выдержки из сообщения в блоге здесь :

У меня есть Lightroom на нескольких компьютерах с сервером на базе RAID 6, и я изо всех сил пытался синхронизировать все, чтобы облегчить мою жизнь между компьютерами.

После некоторых решений я переместил свои фотографии в \ server \ share, и каталог отслеживается с помощью Subversion! Это делает все намного проще между машинами.

Я сделал репозиторий, в котором находится каталог Lightroom. Я добавил исключение, чтобы не включать файлы предварительного просмотра, поскольку у Subversion есть некоторые проблемы с ними.

Теперь мои шаги таковы:

Update subversion
Run Lightroom
Import pictures
Move images between local drive import and the media file share
Make any required changes
Exit lightroom
Commit catalog
That's it!

Круто. Итак, ваш SVN-сервер содержит только каталог, а ваш файловый сервер содержит реальные изображения ... и каталог указывает на файлы на сервере? правильный? Можете попробовать это.
TiernanO

@TiernanO - Верно. Вот как я настроил свою инфраструктуру / рабочий процесс
Уэйн

это круто. В настоящее время импортируем около 200 ГБ фотографий в единый каталог Lightroom, и начну играть с этой идеей ... надеюсь, это сделает то, что мне нужно! Спасибо за совет!
TiernanO

@Tierno - Тебе должно быть хорошо с этим. Я считаю, что любые ограничения будут касаться ограничений SQLite, которые, как разработчик, вы можете исследовать. (К сведению: SQLite Manager для Firefox прекрасно работает при просмотре этого каталога)
Уэйн,

@TiernanO - Было бы интересно узнать, действительно ли это сработало для вас так же, как для меня
Уэйн

4

Я думаю, что вы можете использовать git-annex (для управления фотографиями и резервными копиями) вместе с удаленным bup (для версионирования). Я сам сейчас в это разбираюсь.

git- annex отслеживает ваши файлы с помощью git, передавая символические ссылки на ваши файлы. Сами файлы не добавляются в хранилище. Как только ваши фотографии будут «приложены», если вы клонируете свой репозиторий (например, на внешнем жестком диске), вы можете попросить клон получить файлы (или их часть), связанные с репозиторием на жестком диске. git-annex отслеживает, в каком хранилище есть копия каждого файла. Таким образом, вы можете разбить резервную копию на два маленьких жестких диска и быть уверенным, что ни одна фотография не была забыта.

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

git-annex отслеживает изменения в вашей коллекции, но сохраняет только последнюю версию ваших фотографий. Для создания версий файлов вы можете добавить специальный пульт дистанционного управления bup в ваш репозиторий git- annex . Я еще не изучал это, потому что я не уверен, что мне это нужно, но оно должно делать то, что вы хотите. Смотрите это или это .


отредактировал мой ответ.
барсанупе

Кроме того, разработчик Git-Annex в настоящее время поддерживает кикстартер, чтобы упростить задачу для менее склонных к техническим проблемам.
Barsanuphe

2

Я использую Lightroom для редактирования изображений и ведения истории версий. Если вы хотите использовать Photoshop, контроль версий почти встроен: Adobe Drive и Version Cue. Я думаю, что Version Cue является лишь частью Creative Suite, к вашему сведению.


2

Pixel Novel подключится к Photo Shop и будет работать с любыми серверами Subversion, которые у вас уже есть, или, я думаю, вы можете приобрести репозиторий на них.

http://pixelnovel.com/

Они называют это «Контроль версий для дизайнеров»


2

Я использую Photoshop и Adobe Camera Raw вместо Lightroom, поэтому я использую управление версиями для файлов XMP, которые отслеживают мои необработанные настройки преобразования для отслеживания изменений. Это работает очень хорошо, так как файлы XMP - это просто XML. Удобно сначала выполнить все цветокоррекции, проверить файлы XMP, а затем выполнить обрезку до нестандартных соотношений сторон. Таким образом, я могу быстро вернуться к необрезанной версии, если мне нужно напечатать изображения в оригинальном формате 3x2.

Я знаю, что в Photoshop есть собственная встроенная система отслеживания версий, но это тот случай, когда я использую инструменты, которые я знаю лучше. Существуют и другие полезные инструменты кодирования, такие как сценарии сборки / автоматизация сборки. Например, я могу выполнить одну команду для «создания» набора фотографий, используя распакованные файлы XMP, предназначенные для печати, которые преобразуют процесс переименования и выводят все изображения из набора. Это действительно легко, если вы уже знаете, как сделать это для программного обеспечения!

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

Это для обычных необработанных конверсий, настройки экспозиции, цветового баланса и т. Д. Для более сложной работы с Photoshop я делаю все возможное, не разрушая, с корректирующими слоями и умными фильтрами, но я еще не дошел до того, что я могу сделать все неразрушающе, так что пока я просто сохраняю несколько версий файла .PSD.


Вы можете установить lightroom для использования файлов XMPP тоже ... Я использовал это раньше, и работает великолепно.
TiernanO

2

Я также являюсь разработчиком программного обеспечения и пытался использовать Git и SVN для больших RAW и XMP только для возможности синхронизировать мои изображения между съемными дисками и версией XMP. Это было невыносимо медленно и становилось все медленнее со временем, когда я добавлял больше файлов. Я также использую Lightroom для истории, поэтому я вернулся к rsync.

Теперь я также заглядываю в git-annex, и пока все хорошо и быстро. Он также имеет дополнительное преимущество проверки контрольных сумм каждого файла RAW, так что вы можете увидеть, не испортил ли плохой HD ваши изображения с момента импорта. Это огромная выгода для меня, так как я могу проверить свои резервные копии, чтобы убедиться, что они не повреждены из-за копий / гниения. Я планирую создавать версии только для XMP и добавлять RAW. git-annex может выполнить всю работу, зная, где что находится, и я могу быть уверен, что на моем сервере все резервное копирование, а также иметь рабочую копию на моем ноутбуке, если я захочу.

Вы также можете иметь пульт Amazon Glacier, так что я прочитал, но я еще не пробовал это.


1

Проверьте наш Daminion. Это программное обеспечение для управления фотографиями (многопользовательское), которое поддерживает контроль версий ваших архивных фотографий и других форматов мультимедиа.

Daminion Version Control

Однопользовательская версия Daminion бесплатна, поэтому вы можете скачать и проверить ее прямо сейчас .


14
Привет Мурат! Вы были в течение некоторого времени, и ваши сообщения на Daminion, как правило, на тему и полезны, и включают в себя надлежащий отказ от членства. Но я не могу не заметить, что все ваши ответы предлагают попробовать Daminion, и, из часто задаваемых вопросов : «Если огромный процент ваших сообщений включает упоминание вашего продукта или веб-сайта, вы, вероятно, здесь по неправильным причинам «. Пожалуйста, подумайте над тем, чтобы написать ответы на вопросы, не связанные с вашим продуктом.
Mattdm

Спасибо за объяснение, Мэтт. Нет проблем. Но, как вы правильно заметили, все мои посты дают полезные ответы на вопросы.
Murat - Daminion Software

0

Я не использую и, вероятно, никогда не буду использовать контроль версий исходного кода, например Git или SVN, из-за огромного размера используемых файлов. Каждый необработанный файл занимает 20–30 МБ, а изменения часто затрагивают каждый пиксель всего изображения, что снижает эффективность «отслеживания изменений».

Для одного изображения я мог легко увидеть 200 МБ SVN-репозиторий вместо, возможно, 60 МБ, если бы я просто хотел сохранить копию оригинала и копию окончательного изображения.


3
если вы используете файлы RAW, вам не нужно изменять фактическое изображение RAW, просто XMP side car. Если вы изменяете образ RAW, GIT сохраняет только изменения, а не полный файл ... GIT может быть не лучшим вариантом (SVN) для этого, так как это большие файлы, но есть несколько вариантов, которые хорошо работают для большие файлы ...
TiernanO

0

Вот плагин для Apple Aperture. Прелесть Aperture заключается в том, что он имеет около 95% функциональности Photoshop, которую желают фотографы (с ней нельзя делать пламенный текст, зевок), и что редактирование контролируется версиями в очень легком весе.

Это работает с JPEG и другими форматами изображений, а также с форматом RAW.

Вы можете даже выполнить «круговую передачу» с внешними редакторами, такими как Photoshop, но они обязательно сохранят всю копию изображения, а не облегченный фильтр, который применяется к основному изображению.


0

Хорошее обсуждение этого здесь: https://www.impulseadventure.com/photo/flow-catalog-versions.html

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

  1. Использование изображений имеет тенденцию быть многоотраслевым деревом. Хотя у вас есть ветки в коде, цель обычно состоит в том, чтобы минимизировать их. При использовании изображений вы можете столкнуться с такими ситуациями

Мастер

--- Обрезано и заточено.

--- --- Уменьшенное разрешение для Facebook

--- --- Большой эскиз для галереи

--- --- Средний эскиз для галереи

--- --- Маленькая миниатюра для галереи.

--- --- Большая версия с водяным знаком для галереи

--- --- --- Черно-белая версия с водяным знаком

--- --- --- Черно-белая версия

--- --- Специальный урожай для клиента.

--- --- Скорректированный цветовой оттенок для другого клиента

(Я сделал одну веб-страницу, где каждое изображение имело 18 разных разрешений.)

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

  2. В хранилище кода вас интересуют изменения уровня битов. Здесь строка кода, значение константы там. В манипуляции с изображениями история шагов, которые вы сделали, более значима.

  3. Работа с изображениями, как правило, намного менее совместна, чем код. Хотя художники-графики могут взять существующее изображение и наложить на него графические изображения, большинство изображений управляются одним человеком на протяжении всей их жизни. (Это отличается в видео / фильме.)

  4. В программном обеспечении фундаментальным уровнем является проект. Один файл класса не имеет большого значения без остальной части проекта. В обработке изображений изображение является фундаментальной единицей. Вы можете посвятить всю свою жизнь работе над одним программным проектом (Microsoft Word ...). В фотографии вы редко тратите на изображение более нескольких минут.

  5. В программном обеспечении важная задача - иметь возможность отслеживать изменения и возвращаться к предыдущей версии. При обработке изображений важная задача - найти это изображение и его производные позднее.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.