Пингвин-фотолюбитель
Цикл постов 2016 года об обработке фотографий под Linux
Содержание
Пожалуй, теперь, когда этот цикл постов немного устарел, его можно считать законченным. Он остается вполне полезным, но с учетом значительного обновления, как использованного софта, так и моих знаний о нем, дорабатывать я его не буду — надо переписывать целиком.
-
О чем пойдет речь, и о чем не пойдет…
-
Как использовать Darktable, и (очень кратко) какие еще есть варианты…
-
2. Командная строка и пакетная обработка
Получение данных EXIF и обработка в командной строке посредством ImageMagick…
-
2а. Краткое замечание к предыдущим сериям
Демонстрация странностей работы UFRaw…
-
2б. Краткое примечание к краткому замечанию
Исправление дисторсии: в чем все-таки UFRaw прав, и как это сделать в Darktable…
-
-
Склейка панорам посредством программы Hugin…
-
Работа с расширенным динамическим диапазоном с помощью Luminance HDR…
-
Стекинг (посредством enblend/enfuse) по экспозиции и по фокусу, а также уменьшение шумов без потери детализации…
А как послесловие к этому циклу порекомендую пост «Darktable — (не очень) быстрый старт». Он намного свежее и подробнее (но только про Darktable).
Последние записи
Пингвин-фотолюбитель: 5. Стекинг
Первым делом, пожалуй, сошлюсь на источники: ключевым по теме данного поста стал англоязычный пост Barry Grussling — «Focus Stacking in Linux»; прочая информация получена из официального руководства enblend/enfuse. Собственно enfuse и будет нашим главным инструментом для стекинга.
Что такое стекинг? Это когда мы делаем несколько кадров одного и того же, в общем случае — с разными параметрами, а затем хитрый алгоритм собирает нам результирующую картинку. Например, если мы сделаем несколько снимков с разной экспозицией, то можем получить в результате что-то очень похожее на результат сведения HDR, о котором я говорил в предыдущем посте. С той лишь разницей, что собственно HDR-изображения (т.е. с динамическим диапазоном более 8 бит на канал) мы не получим, сразу приведение к 8-битному виду.
Кроме стекинга по экспозиции рассмотрим еще уменьшение шумов и стекинг по фокусу.
Пингвин-фотолюбитель: 4. HDR
HDR — High Dynamic Range — термин для обозначения технологий работы с диапазоном яркости, который превышает стандартный. Относительно любительской фотографии этим термином обычно обозначают создание HDR-изображений из нескольких снимков обычного диапазона, а также их сведение к стандартному RGB разными специфическими методами. Картинка сверху поста демонстрирует удачный пример применения таких технологий.
Строго говоря, RAW-файлы и 16-битные TIFF сами по себе являются HDR-изображениями, поскольку их глубина цвета превосходит стандартную однобайтную. Однако и ее как правило недостаточно, чтобы на одном снимке запечатлеть и яркое небо (не допустив пересветов) и какие-нибудь ближние затемненные участки. Кроме того, обычные мониторы все равно этот диапазон полностью отобразить не способны. В отличие от человеческого глаза, который очень хорошо адаптируется, рассматривая разные участки общей картины… К счастью, мозг при восприятии зрительной информации тоже хорошо адаптируется, и мы можем специальными программными методами построить картинку, которая будет выглядеть более естественно, чем просто взятая с камеры фотография. Ну, или совсем неестественно и сюрреалистично, что тоже можно использовать в качестве выразительного средства.
Итак, нас сегодня интересует программа Luminance HDR.
Пингвин-фотолюбитель: 3. Панорамы
Для склеивания панорам нам понадобится программа с гордым именем Hugin. Имя действительно гордое, ибо дано в честь Хугина — одного из воронов Одина.
На КДПВ, конечно, не сам Хугин, а некий современный его сородич. Будем считать, потомок.
Устанавливать программу я рекомендую опять же свежую версию из PPA — «ppa:hugin/hugin-builds
». На момент написания
поста актуальна версия 2016.0.0.
Вообще-то, тут у меня накладочка — Hugin отказался заводиться на виртуалке, как свежий, так и из основного репозитория. Судя по всему, ему не хватило драйверов видеокарты. Так что гарантировать, что свежая версия работает под Linux Mint лучше старой, я не могу. Скрины будут с моей основной системы, т.е. Gentoo.
Raw-файлы Hugin, к сожалению, читать не умеет, поэтому склеивать будем из 16-битного TIFF, предварительно полученного посредством Darktable.
Пингвин-фотолюбитель: 2б. Краткое примечание к краткому замечанию
Если внимательно приглядеться к фотографиям в прошлом посте, становится видно, что магия UFRaw — это ни в коем случае не внесение искажений, а напротив — исправление бочкообразной дисторсии — прямые в его варианте прямее. Тогда как Darktable по умолчанию сконвертировал нам картинку «как есть» — со всеми оптическими искажениями. Если мы хотим эти искажения исправить, нам в нем надо задействовать модуль «Оптические искажения» (см. скрин выше). При этом черные поля добавляться не будут (а вот выступающие уголки обрежутся).
Пингвин-фотолюбитель: 2а. Краткое замечание к предыдущим сериям
Как я уже говорил, «проявку» RAW можно делать и в пакетном режиме — из командной строки, например, посредством UFRaw. Более того, можно натравить на raw-файл и ImageMagick, а следовательно — мой скрипт, описанный в предыдущем посте. Впрочем, ImageMagick препоручит конвертацию консольной версии UFRaw.
А теперь я хочу продемонстрировать, почему так делать не надо.
Пингвин-фотолюбитель: 2. Командная строка и пакетная обработка
Коротко о главном: главный обработчик изображений из командной строки, равно как и в пакетном режиме, у нас по прежнему пакет ImageMagick. КДПВ справа взята поиском по его названию в «картинках Google», помимо демонстрации некоторых возможностей там и пингвин присутствует.
Кроме того, нам понадобятся минимальные знания оболочки GNU Bash и замечательная утилита для работы с данными EXIF (Exchangeable Image File Format — стандарт, позволяющий добавлять к изображениям метаданные, в первую очередь, когда и чем снято) — exiftool.
С одной стороны, расписывать все возможности ImageMagick и ExifTool в подробностях — никакого терпения не хватит. С другой — у меня есть парочка примеров, собственноручно наскриптованных, но не описанных… Поэтому в данном посте я просто разберу эти примеры, а если нужно что-то дополнительно, прошу в комментарии.
Пингвин-фотолюбитель: 1. «Проявка» raw-файлов
Первая программа, которая нам понадобится — это Darktable. И это тот редкий случай, когда можно говорить об аналогах: по своим задачам и базовым функциям Darktable соответствует любимому многими фотографами софту от Adobe — Lightroom. Насколько хорошо соответствует, я обсуждать не готов, поскольку лайтрума под рукой нет.
К сожалению, в репозиториях Linux Mint находится довольно древняя версия Darktable — 1.4, поэтому я рекомендую
добавить PPA «ppa:pmjdebruijn/darktable-release
» с последними стабильными версиями и устанавливать оттуда
(информация взята с официального сайта). Старой версией тоже можно пользоваться, но новая лучше.
Актуальная версия, о которой и пойдет речь — 2.0.4.
Пингвин-фотолюбитель: Предисловие
Кажется, у меня появилось немного времени, чтобы сделать то, что давно собирался — описать возможности, доступные в Linux, для любительской обработки фотографии. И нет, это не будет очередной список «аналогов Фотошопа».
Во-первых, слово «любительской» выше — тут ключевое. Профессионалам все-таки стоит работать с профессиональными инструментами, которые запускаются отнюдь не под Linux. Человеку же, снимающему для собственного удовольствия, ради хобби (одного из) менять родную систему на платную и неудобную — не резон.
Во-вторых, поиск аналогов — дело в принципе неблагодарное. Поэтому я буду использовать другой подход: вот задача (осмысленная и более-менее часто встречающаяся) — а вот решение. Без особых заморочек на сравнение с аналогами. Кто захочет — может углубиться в тему самостоятельно, остальные получат в руки соответствующие задаче инструменты с минимально достаточными пояснениями.
В-третьих, как раз тем, для чего предназначен Фотошоп — то есть глубокой ретушью — я не занимаюсь, не интересуюсь и, как результат, совершенно в ней некомпетентен.
Итак, а что же я подразумеваю под любительской обработкой и что собираюсь описывать? Это такие задачи:
- «Проявка» «цифровых негативов» — файлов RAW, включая корректировку яркости, контраста, баланса белого и всего такого.
- Работа с данными EXIF, каталогизация, пакетная обработка.
- Сложные, но хорошо автоматизированные задачи: склейка панорам и HDR.
- Возможно, что-то еще.
В комментариях можно задавать вопросы и подкидывать темы. Ответить на всё, правда, не обещаю. Просто фотография для меня всего лишь хобби, одно из, да и относительно недавнее, так что каких-то особо глубоких знаний я в этом деле не постиг. Тем не менее решился написать серию постов, поскольку даже имеющиеся у меня неглубокие в рунете толком не представлены, да и на английском языке систематизированного введения для начинающих я не нашел — полезной информации много, но ее приходится собирать по кусочкам, как панораму.
Постараюсь ориентироваться на «простого пользователя», минимизируя обращения к командной строке и всяческое скриптование. Компиляции чего-либо из исходников и хитрого конфигурирования точно не будет.
Примеры я буду делать на свежеустановленной и свежеобновленной виртуалке с Linux Mint 17.3 (KDE4), поскольку это представляется более соответствующим «простому пользователю», чем моя основная система — Gentoo. А «свежесть» системы позволяет отследить, что именно будет устанавливаться.