2. Режим слоя

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

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

[Примечание] Примечание

There is a drop-down list in the Toolbox options box which contains modes that affect the painting tools in a similar way to the layer modes. You can use all of the same modes for painting that are available for layers, and there are two additional modes just for the painting tools. See Раздел 3.2, «Кистевые инструменты (Карандаш, Кисть, Аэрограф)».

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

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

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

Маска 1

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

Маска 2


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

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

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

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

Утки


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

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

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


means, « For each pixel in the upper (Mask)and lower (Image) layer, add each of the corresponding color components together to form the E resulting pixel's color. » Pixel color components must always be between 0 and 255.

[Примечание] Примечание

Unless the description below says otherwise, a negative color component is set to 0 and a color component larger than 255 is set to 255.

The examples below show the effects of each of the modes.

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

Нормальный

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

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

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

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

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


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

Уравнение:

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


Растворение

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

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

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

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

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


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

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

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

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

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

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

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


Умножение

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

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

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

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

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


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

Уравнение:

Формула 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 во второй раз. Обычно он затемняет изображение, но не на столько, как режим «Умножение».

The equation is: [4]

Формула 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. Equation for layer mode «Hard light», M ≤ 128


Мягкий свет

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

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

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

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

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


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

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

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


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


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

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

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

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

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

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


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

Уравнение:

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


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

There are two more layer modes, but these are available only for painting tools. See Painting Modes for detailed information.

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

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

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

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

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


Уравнение:

Уравнение:

Формула 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 also has similar modes which are used for the painting tools. These are the same twenty-one modes as the layer modes, plus additionally two modes which are specific to the painting tools. You can set these modes from the Mode menu in the Tools option dialog. In the equations shown above, the layer you are painting on is the «lower layer» and the pixels painted by the tool are the «upper layer». Naturally, you do not need more than one layer in the image to use these modes, since they only operate on the current layer and the selected painting tool.

See Раздел 3.1.3, «Примеры режимов рисования» for a description of the two additional painting modes.



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