2. Режимы слоя

У GIMP двадцать один режим слоя. Режимы слоя иногда называются «режимами смешивания». Выбор режима слоя изменяет внешний вид слоя или изображения в зависимости от низлежащих слоёв. Если есть только один слой, то режим слоя ни на что не влияет. Поэтому должно быть по крайней мере два слоя, чтобы использовать режимы слоя.

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

[Замечание] Замечание

На панели инструментов есть список, содержащий режимы, которые влияют на инструменты рисования также, как и режимы слоя. GIMP использует те же режимы для слоя, что и для рисования, и есть два дополнительных слоя только для рисования. За дополнительной информацией обратитесь сюда: Раздел 3.3, «Кистевые инструменты (Карандаш, Кисть, Аэрограф)».

Режимы слоёв позволяют изменять цвета в изображении сложным образом. Они обычно применяются для нового слоя, который ведёт себя как маска. Например, если новый белый слой поставит в режим «Насыщенность», то нижние слои будут выглядеть серыми.

Рисунок 8.8. Маски для примеров

Маски для примеров

Маска 1

Маски для примеров

Маска 2


Рисунок 8.9. Исходные изображения для примеров режимов слоя

Исходные изображения для примеров режимов слоя

Железный человечек

Исходные изображения для примеров режимов слоя

Утки


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

Уравнения написаны в краткой форме. На пример, уравнение

Формула 8.1. Пример


означает «для каждой точки верхнего слоя (Маска) и нижнего слоя (I изображение) сложи соответствующие цветовые компоненты вместе, чтобы получить цвет точки результата.» Значения цветовых компонентов всегда между 0 и 255.

[Замечание] Замечание

Если ниже специально не оговорено, отрицательные значение ставятся на 0, а те, что больше 255-ти — на 255.

Примеры ниже показывают эффект каждого режима

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

Нормальный

Рисунок 8.10. Пример для режима слоя «Нормальный»

Пример для режима слоя Нормальный

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

Пример для режима слоя Нормальный

Со 100% непрозрачностью при смешивании в «Нормальном» режиме показывается только верхний слой.


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

Уравнение:

Формула 8.2. Уравнение для режима «Нормальный»


Растворение

Рисунок 8.11. Пример для режима слоя «Растворение»

Пример для режима слоя Растворение

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

Пример для режима слоя Растворение

Со 100% непрозрачностью при смешивании слоёв с помощью «растворения» показывается только верхний слой.


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

Это особенно заметно вокруг краёв в изображении. В увеличенном снимке экрана изображение слева показывает «Нормальный» режим слоя, а изображение справа показывает те же два слоя в режиме «Растворение», где хорошо видно разброс точек.

Рисунок 8.12. Увеличенные снимки экрана

Увеличенные снимки экрана

Нормальный режим

Увеличенные снимки экрана

Режим растворения


Умножение

Рисунок 8.13. Пример для режима слоя «Умножение»

Пример для режима слоя Умножение

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Умножение

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Умножение перемножает значение точек верхнего и нижнего слоёв и делит на 255. Результат обычно темнее исходного изображения. Если один из слоёв белый, то результат равен другому слою (1 * I = I). Если один из слоёв чёрный, то результат полностью чёрный (0 * I = 0).

Уравнение:

Формула 8.3. Уравнение для режима «Умножение»


Режим накапливающийся; порядок слоёв не имеет значения.

Деление

Рисунок 8.14. Пример для режима слоя «Деление»

Пример для режима слоя Деление

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Деление

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Деление умножает значение точки нижнего слоя на 256 и делит на значение точки верхнего слоя плюс один. Слагаемое «+ 1» находится в уравнении для того, чтобы избежать деления на ноль. Результат обычно светлее исходного изображения, и иногда выглядит «выжженным».

Уравнение:

Формула 8.4. Уравнение для режима «Деление»


Экран

Рисунок 8.15. Пример для режима слоя «Экран»

Пример для режима слоя Экран

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Экран

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Экран инвертирует значения точек верхнего и нижнего слоёв (т.е. вычитает их из 255-ти), умножает их, делит на 255 и инвертирует результат. Результат обычно светлее исходного изображения, и иногда выглядит «выцветшим». Исключение составляют чёрный слой, который не меняет результата, и белый слой, результат которого - белое изображение. Тёмные цвета выглядят более прозрачными.

Уравнение:

Формула 8.5. Уравнение для режима «Экран»


Режим накапливающийся; порядок слоёв не имеет значения.

Перекрытие

Рисунок 8.16. Пример для режима слоя «Перекрытие»

Пример для режима слоя Перекрытие

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Перекрытие

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Перекрытие инвертирует точки нижнего слоя, умножает на значение точки верхнего слоя, умножает на два, прибавляет результат к исходному значению точки нижнего слоя, делит на 255, умножает на исходное значение точки нижнего слоя и делит на 255 во второй раз. Обычно он затемняет изображение, но не на столько, как режим «Умножение».

Уравнение для режима [5]

Формула 8.6. Уравнение для режима «Перекрытие»


Осветлитель

Рисунок 8.17. Пример для режима слоя «Осветлитель»

Пример для режима слоя Осветлитель

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Осветлитель

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Осветлитель умнозает значение точки нижнего слоя на 256 и делит на обратное значение точки верхнего слоя. Обычно изображение становится светлее, но некоторые цвета могут инвертироваться.

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

Уравнение:

Формула 8.7. Уравнение для режима «Осветлитель»


Затемнитель

Рисунок 8.18. Пример для режима слоя «Затемнитель»

Пример для режима слоя Затемнитель

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Затемнитель

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Затемнитель инвертирует точки нижнего слоя, умножает результат на 256, делит на один плюс значение точки верхнего слоя и инвертирует результат. Обычно он делает изображение темнее, сравнимо с нежимом «Умножение».

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

Уравнение:

Формула 8.8. Уравнение для режима «Затемнитель»


Жёсткий свет

Рисунок 8.19. Пример для режима слоя «Жёсткий свет»

Пример для режима слоя Жёсткий свет

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Жёсткий свет

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Жёсткий свет сложен тем, что уравнение для него состоит из двух частей, для светлых и тёмных цветов. Если цвет точки верхнего слоя ярче, чем 128, слои комбинируются по первой формуле. В противном случае, значение точки верхнего слоя умножается на значение точки нижнего слоя, результат умножается на два, а затем делится на 256. Если совместить две одинаковые фотографии в этом режиме, то цвета станут ярче, а края — резче.

Уравнение сложное и разбито на две части по значению >128 и ≤128:

Формула 8.9. Уравнение для режима «Жёсткий свет», M > 128


Формула 8.10. Уравнение для режима слоя «Жёсткий свет», M ≤ 128


Мягкий свет

Рисунок 8.20. Пример для режима слоя «Мягкий свет»

Пример для режима слоя Мягкий свет

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Мягкий свет

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Мягкий свет не имеет ничего общего с «Жёсткий свет», но делает края мягче и цвета не такими яркими. Он похож на режим «Перекрытие». В некоторых версиях GIMP режимы «Перекрытие» и «Мягкий свет» индентичны.

Уравнение сложное. Оно требует Rs - результат режима «Экран»:

Формула 8.11. Уравнение для режима «Экран»


Формула 8.12. Уравнение для режима слоя «Мягкий свет»


Вытяжка зерна

Рисунок 8.21. Пример для режима слоя «Вытяжка зерна»

Пример для режима слоя Вытяжка зерна

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Вытяжка зерна

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


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

Уравнение:

Формула 8.13. Уравнение для режима «Вытяжка зерна»


Слияние зерна

Есть ещё два режима слоя, но они доступны только для инструментов рисования. За дополнительной информацией обратитесь к главе See Режимы рисования.

Рисунок 8.22. Пример для режима слоя «Слияние зерна»

Пример для режима слоя Слияние зерна

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Слияние зерна

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Слияние зерна складывает значения точек верхнего слоя с значениями точек нижнего слоя и вычитает 128 из результата, чтобы получить конечное изображение. Он сливает зернистый слой (например, создаваемый режимом «Вытяжка зерна») с активным слоем, оставляя зернистую версию исходного слоя и таким образом противоположен режиму «Вытяжка зерна».

Уравнение:

Формула 8.14. Уравнение для режима слоя «Слияние зерна»


Разница

Рисунок 8.23. Пример для режима слоя «Разница»

Пример для режима слоя Разница

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Разница

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Разница вычитает значение точек верхнего слоя из значений точек нижнего слоя и берёт абсолютное значение результата, чтобы получить конечное изображение. Обычно результат получается довольно странным. Этот режим можно использовать для инвертирования областей изображения.

Уравнение:

Формула 8.15. Уравнение для режима слоя «Разница»


Режим накапливающийся; порядок слоёв не имеет значения.

Добавление

Рисунок 8.24. Пример для режима слоя «Добавление»

Пример для режима слоя Добавление

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Добавление

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Добавление складывает значения точек верхнего слоя со значениями точек нижнего слоя, чтобы получить конечное изображение. Результат обычно светлее искомого изображения. значение больше 255, получаемые в результате применения уравнения, заменяются на 255.

Уравнение:

Формула 8.16. Уравнение для режима слоя «Добавление»


Режим накапливающийся; порядок слоёв не имеет значения.

Вычитание

Рисунок 8.25. Пример для режима слоя «Вычитание»

Пример для режима слоя Вычитание

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Вычитание

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


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

Уравнение:

Формула 8.17. Уравнение для режима слоя «Вычитание»


Только тёмное

Рисунок 8.26. Пример для режима слоя «Только тёмное»

Пример для режима слоя Только тёмное

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Только тёмное

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Только тёмное сравнивает каждый компонент каждой точки верхнего слоя с соответствующим компонентом точки нижнего слоя и использует меньшее значение для конечного изображения. Полностью белый слой не влияет не результат, а полностью чёрный слой даёт полностью чёрный результат.

Уравнение:

Формула 8.18. Уравнение для режима «Только тёмное»


Режим накапливающийся; порядок слоёв не имеет значения.

Только светлое

Рисунок 8.27. Пример для режима слоя «Только светлое»

Пример для режима слоя Только светлое

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Только светлое

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Только светлое сравнивает каждый компонент каждой точки верхнего слоя с соответствующим компонентом точки нижнего слоя и использует большее значение для конечного изображения. Полностью чёрный слой не влияет не результат, а полностью белый слой даёт полностью белый результат.

Уравнение:

Формула 8.19. Уравнение для режима «Только светлое»


Режим накапливающийся; порядок слоёв не имеет значения.

Тон

Рисунок 8.28. Пример для режима слоя «Тон»

Пример для режима слоя Тон

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Тон

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Тон использует тон верхнего слоя и насыщенность и яркость нижнего слоя, чтобы получить конечное изображение. Однако, если насыщенность верхнего слоя равна нулю, то тон берётся из нижнего слоя.

Насыщенность

Рисунок 8.29. Пример режима слоя «Насыщенность»

Пример режима слоя Насыщенность

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример режима слоя Насыщенность

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Насыщенность использует насыщенность верхнего слоя и тон и яркость нижнего слоя, чтобы получить конечное изображение.

Цвет

Рисунок 8.30. Пример для режима слоя «Цвет»

Пример для режима слоя Цвет

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Цвет

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Цвет использует тон и насыщенность верхнего слоя и яркость нижнего слоя, чтобы получить конечное изображение.

Значение

Рисунок 8.31. Пример для режима слоя «Значение»

Пример для режима слоя Значение

Маска 1 используется как верхний слой с 100%-ой непрозрачностью

Пример для режима слоя Значение

Маска 2 используется как верхний слой с 100%-ой непрозрачностью


Режим Значение использует яркость верхнего слоя и насыщенность и тон нижнего слоя, чтобы получить конечное изображение. Он годится, когда нужно выявить детали из тёмных или светлых областей изображения, не меняя насыщенности.

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

Рисунок 8.32. Пример множества слоёв

Пример множества слоёв

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

За описанием двух дополнительных режимов обратитесь к главе Раздел 3.1.3, «Примеры режимов рисования».



[5] Это уравнение теоретическое. Из-за ошибки #162395, настоящее уравнение эквивалентно мягкому свету. Эту ошибку трудно исправить, не изменяя существующих изображений.