Как стать автором
Обновить

GIMP: префильтрация перед порогом

Уровень сложностиПростой

В GIMP порог применяется в основном для создания различных масок при работе со слоями. Сам порог в GIMP реализован в виде простого, интерактивно настраиваемого глобального порога: "Цвет" -> "Порог".

Инструмент "Порог" в GIMP.
Инструмент "Порог" в GIMP.

По умолчанию в "пороге" стоит значение 127, но есть кнопка "Авто", при нажатии на которую происходит определение оптимального для данной цветовой гистограммы значения по алгоритму Оцу.

Инструмент "порог" в GIMP прост и понятен и даёт, соответственно, простой и понятный результат. И именно таким он и должен быть. Но! А как же все те "сложные" результаты, которые получаются в другом ПО? Чтобы ответить на данный вопрос, необходимо отделить "зёрна" от "плевел". Все "сложности" результатов, полученные в другом ПО, связаны не со "сложностью" заложенного в них "порога", а с префильтрацией перед порогом. Вопрос префильтрации изображений перед порогом и влияние её на результат изучался многими, в том числе небезызвестным Дональдом Эрвином Кнутом в своей книге "Компьютерная типография". Можно опять задать "каверзный" вопрос: а как же локальные пороги? Ответ может показаться неожиданным, но они все воспроизводятся префильтрацией. Но есть нюанс: фильтров, воспроизводящих такую префильтрацию простым способом, в графических редакторах нет, поэтому воспроизведение их требует большого количества манипуляций с изображением.

Приведу простейший пример префильтрации перед порогом с помощью фильтра "Гауссово размывание" на изображении "Лена":

Исходное изображение "Лена".
Исходное изображение "Лена".

Ежели применить к нему "порог" с автоматическим определением порогового значения (кнопка "Авто") без префильтрации, то получим следующий результат:

Порог и изображению "Лена".
Порог и изображению "Лена".

Теперь посмотрим, как повлияет на результат префильтрация. Создадим копию исходного слоя и применим к ней фильтр "Гауссово размывание" с радиусами 5 и 5:

"Гауссово размывание" 5x5 изображения "Лена".
"Гауссово размывание" 5x5 изображения "Лена".

Создадим ещё одну копию исходного слоя, а к размытому изображению применим режим наложения "Извлечение зерна" и объединим два новых слоя:

"Извлечение зерна" из размытого и копии изображения "Лена".
"Извлечение зерна" из размытого и копии изображения "Лена".

Ежели мы сразу применим порог к этому изображению, то получим следующее:

Порог фильтрованного слоя.
Порог фильтрованного слоя.

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

Но не будем спешить. Хотелось бы посмотреть не граничное, а плавное влияние префильтрации на результат порога. Поэтому порог будет применяться к микшированному с исходным при различных значениях прозрачности фильтрованного слоя:

25% прозрачности:

Микширование 25% фильтрованного слоя.
Микширование 25% фильтрованного слоя.
Порог при микшировании 25% фильтрованного слоя.
Порог при микшировании 25% фильтрованного слоя.

50% прозрачности:

Микширование 50% фильтрованного слоя.
Микширование 50% фильтрованного слоя.
Порог при микшировании 50% фильтрованного слоя.
Порог при микшировании 50% фильтрованного слоя.

75% прозрачности:

Микширование 75% фильтрованного слоя.
Микширование 75% фильтрованного слоя.
Порог при микшировании 75% фильтрованного слоя.
Порог при микшировании 75% фильтрованного слоя.

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

Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.