Ограничить толщину линии

Статус
Закрыто для дальнейших ответов.

Skvoznyak

Топикстартер
15 лет на форуме
Сообщения
5 500
Реакции
2 168
Задача - есть bitmap, линии толщиной от 1 пикселя до допустим 20 пикселей.
Можно как-то исхитриться, чтобы самые тонкие линии утолщить до 2 пикселей, а остальные не изменять? filter->other->minimum обводит все
custom filter мне что-то не сообразить

(во избежании излишних теоретизирований прикрепляю тестовый образец - нижний слой оригинал, верхний - что надо получить)
 

Вложения

  • test_lines.psd.zip
    3.9 КБ · Просм.: 189

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 236
Реакции
10 852
Интересная задачка.
Сходу приходит на ум следующий алгоритм - выделить все линии - преобразовать в канал, продублировать, применить медиану 1 пиксел, загрузить выделение, вычесть из первого канала.
Получим выделение на все объекты не больше 1 пиксела. Бинго!
 

Skvoznyak

Топикстартер
15 лет на форуме
Сообщения
5 500
Реакции
2 168
+ края остальных объектов (или я что-то неправильно делаю). кусок толстой линии зацепило
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 236
Реакции
10 852
А как иначе?
Разве что попробовать поиграться вместо медианы каким нибудь диспеклом или царапинами
 

Skvoznyak

Топикстартер
15 лет на форуме
Сообщения
5 500
Реакции
2 168
да у меня тоже особо идей нет, разве что написать плагин-фильтр. но не настолько надо )
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 236
Реакции
10 852
На самом деле задачу даже четко алгоритмизировать нельзя.
Как жестко определить линию, толщиной в пиксел? Только как совокупность пикселов у каждого из которых максимум два соседа. В этом случае в качестве фильтра должна работать медиана. Если медиана не работает, то значит исходная предпосылка ложная и мы в тупике. :(
 
  • Спасибо
Реакции: Skvoznyak

RPavel

15 лет на форуме
Сообщения
1 686
Реакции
1 152
применить медиану 1 пиксел, загрузить выделение, вычесть из первого канала.
Вместо медианы: maximum на 1 пикс а потом всему что осталось minimum на 1 пикс. Получаем маску - все толще 1 пикс.
Но сочленения скорее всего тоже будет зацеплять.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 236
Реакции
10 852
Да вот фиг там.
Максимум 1 пиксел, в отличие от аналогичной медианы, убирает и 2 пиксельные линии.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 236
Реакции
10 852
Вполне вменяемо и через медиану получается, сейчас проверил.
Было:
upload_2014-8-12_23-36-3.png

Стало:
upload_2014-8-12_23-35-13.png
 
  • Спасибо
Реакции: Skvoznyak
Статус
Закрыто для дальнейших ответов.