1

Параметрическая маска в Darktable

 Параметрическая маска Darktable. Звучит немного даже страшно, информации в сети мало, но в принципе ничего сложного нет. Во многих модулях встречается этот инструмент, в его основе лежат сложные алгоритмы преобразования пикселей на выходном файле, но в использовании он достаточно прост. Что-то подобное есть в Photoshop, называется Blend If, да и предыдущих версиях Darktable инструмент назывался conditional blending, что довольно похоже. И смысл примерно один и тот же этих инструментов. Единственно, в Darktable нельзя соединить несколько изображений для смешивания, и создания коллажей, но программа предназначена не для этих целей, а для первоначальной обработки снимков. А инструмент параметрическая маска может существенно облегчить как и дальнейшую обработку в цифровой лаборатории получившегося изображения, так и создать уж законченное произведение.

Официальный сайт теорию описывает так – параметрическая маска, которая ранее называлась “условное смешивание”, предлагает выборочный контроль над процессом слияния отдельных пикселей. Это достигается путем автоматической генерации наложения от заданных пользователем параметров. Этими параметрами являются цветовые координаты, в отличии от геометрических координат, используемых в рисуемой маске. То есть алгоритм параметрической маски ищет координаты всех схожих пикселей на снимке и применит к ним все те изменения, которые произведет пользователь с помощью выбранного модуля. Или, при случае инвертирования, оставит схожие пискели нетронутыми, а изменит все другие. Это достигается алгоритмом, который объединяет цифровые значения  пикселей исходного изображения с такой же информацией полученной в результате обработки цифрового негатива в одном из модулей Darktable ранее.

Итак, в теории параметрическая маска в Darktable делает следующее — по одному из каналов RGB или каналов LAB можно произвести следующие изменения — модуль будет преобразовывать только пиксели, схожие между собой  по свойствам каналов. Опять технология pixelpipe, в одной «трубе» хранится информация о изображении до обработки его в модуле, в другом — то, что из него может получится после применения инструментов модуля. То есть можно отдельно сделать например ярким только один выбранный цвет, тон или канал. Созданная параметрическая маска может быть использована в нескольких модулях также, как и описанная ранее рисуемая маска Darktable. Её также можно инвертировать, регулировать размывание маски, производить объединение масок. Но стоит заметить, что не во всех модулях Darktable можно добиться результата от применения параметрической маски, велик риск появления артефактов на снимке. Поэтому инструмент чаще всего применяется в модулях, работающих именно с цветом изображений.

Рассмотрим два примера применения параметрической маски Darktable. Первый снимок был произведен в пасмурную погоду, причем экспонометр сработал по небу — оно имеет свой натуральный цвет:

первый

А вот трава, и земля склона получились темные. Можно вытянуть цвета с помощью рисуемой маски, но край неба здесь ярко выражен и много уйдет времени на подгонку контуров, добиться идеального результата будет трудно.

Выберем модуль “цветовой контраст”, он идеально подходит в этом случае  чтобы повысить контраст пикселей травы и песчаника до натурального цвета. Открываем модуль, включаем инструмент параметрическая маска. Каждая вкладка показывает два слайдера (Color channel sliders) – выход и вход. Редактировать нужно нижний — входной pipe. Также есть вкладки, открывающий регулировку каналов для L, A, B, C (цветности из LCh) и H (оттенок LCh). Вкладки, действующие в RGB имеют каналы передачи данных для г (серый), R, G, B, H (оттенок HSL), S (насыщенность HSL) и L (легкость HSL). С помощью слайдеров можно построить функцию трапециевидной непрозрачности. Для этого есть четыре маркера на слайдере. Два верхних треугольника слайдера отмечают диапазон значений, где непрозрачность пикселей по умолчанию равна логической единице. Два треугольника под ползунком отмечают значения диапазона, где непрозрачность равна логическому нулю. Все треугольники задают диапазон непрозрачности выбранных пикселей.

Выбираем вкладку C — всплывающая подсказка говорит нам, что это ползунки канала цветности. Возьмем пипеткой образец цветов — травы и песка. На слайдере появилась вертикальная черта, отмечающая, где нужно построить трапецию. Создаем трапецию на нижнем слайдере:

второй

Теперь сдвигаем ползунок непосредственно модуля — крутизна кривой a* в CIE LAB. Трава и песок обретают свой натуральный цвет:

итог2

Если же использовать и второй полузнок модуля – крутизна кривой b* в CIE LAB, то небо станет неестественным, ярко-синим, там же тоже есть схожие по цветности пиксели:

последний2Это немного не то — день то был пасмурный.

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

тюльп первый2

Попробуем сделать его более привлекательным. Для этого переведем его в черно-белый с помощью модуля обесцвечивание в Darktable, наложим на него параметрическую маску, вернув тюльпанам их цвет. Открываем модуль Обесцвечивание, выбираем режим параметрическая маска, все изображение стало черно-белым. Переходим на вкладку h — ползунки для канала тона. Строим трапецию на втором слайдере, в районе красной тональности, не используя пипетку, доверяясь цветовосприятию своих глаз. Трапеция готова, но прозрачны и другие пиксели

тюльп два2

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

тюльп итог2

Математически это объяснить можно так: исходное изображение на входе в модуле Обесцвечивание — цветное, на выходе — черно-белое, и когда мы применяем к изображению на входе инструмент параметрическая маска — слайдеры тональности ставятся в виде трапеции (смотрите официальный сайт). Аналогичные пиксели двух этих виртуальных изображений смешиваются, при этом алгоритмом на исходное изображение как бы накладывается черно-белое, но тот участок, где пиксели красного цвета, у виртуального черно-белого изображения принимает значение логической единицы, то есть они становятся прозрачными, и в выходное изображение алгоритм добавляет выбранный цвет исходного, в нашем случае пиксели красного цвета. Фу, ну как то так, не судите строго….

7 комментариев к “Параметрическая маска в Darktable”

  1. Мда, тема сложнее чем кажется на первый взгляд. Только перечитав последний абзац раз 5, я наконец понял как это вообще работает.

    – Официальный сайт теорию описывает так — параметрическАЯ маска,
    – Это достигается смешиванием пикселей из информации об исходнОм изображении _и_ с пикселями изображения, поДвергшимся (подвергшемуся?) обработке в одном из модулей.
    – Опять технология pixelpipe, в одной «трубе» хранится информация о изображениИ до обработки его в модуле, в другоЙ
    – Каждая вкладка показывает слайдера (Color channel sliders) — выход и вход. (очевидно “два слайдера”)

  2. Тема действительно сложная, вы даже не представляете с каким трудом удалось написать эту статью… Спасибо за добровольную грамматическую модерацию статей! Реально некогда вычитывать – вот отсюда и ляпы, ошибки в других местах исправил, поэтому комментарии не стал публиковать… Еще раз спасибо!

  3. Дмитрий, спасибо за труды! Открыл для себя новые возможности, хоть и, откровенно говоря, не до конца понял, как использовать параметрическую маску, но методом проб и ошибок добился нужного результата. Жду новых статей :)

  4. Вам спасибо за комментарий, состою в группе ВК, читаю ее периодически.

  5. “Вкладки, действующие в RGB имеют каналы передачи данных для г (серый), R, G, B, H (оттенок HSL), S (насыщенность HSL) и L (легкость HSL).”

    Где эти вкладки для RGB найти? В параметрической маске только LAB-вкладки смог обнаружить.

Обсуждение закрыто.