Текущее время: Вт апр 23, 2024 8:36 pm

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 62 ]  На страницу 1, 2, 3, 4, 5  След.
Автор Сообщение
 Заголовок сообщения: Не желаете потестировать?..
СообщениеДобавлено: Чт ноя 09, 2006 12:20 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Сочинил тут небольшой плагин к Фотошопу:
http://www.genesdigest.com/ps_actions/gradsharp.zip

Разархивировать, положить файл gradsharp.8bf в директорию фильтров, напр. C:\Program Files\Adobe\Adobe Photoshop CS2\Plug-Ins\Filters

Запускать через меню Filter-->Sharpening-->Edge gradient posterization

Что он делает -- шарпит изображение (16 или 8 бит на канал, только RGB) довольно любопытным методом, который я обозвал "краевая градиентная постеризация" :)

Плагин пока очень далек от совершенства, не настраивается. После нескольких проходов постеризация краев становится заметной.

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

Лучше всего, на мой взгляд, работает в комбинации с другими методами шарпенинга, консервативно.

Будет интересно услышать мнение членов клуба :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 09, 2006 7:59 pm 
Не в сети
Член Макроклуба

Зарегистрирован: Ср дек 21, 2005 12:35 pm
Сообщения: 14
Откуда: Санкт-Петербург
Здорово, мне очень понравилось, нечто новое.
Какие пожелания: во-первых, эффект хорошо работает на кртинках web-размера, на полиграфических же (более 3000 пиксел) эффект (радиус?) маловат, возможно ли увеличивать радиус? Во-вторых, хотелось бы, чтобы эффект действовал только на канал яркости, не затрагивая цвет. Ещё, полезен был бы параметр, аналогичный порогу (trechhold) в unsharp mask. Но это лишь пожелания, в целом - респект и благодарности за новый алгоритм. Кстати, вкратце, каков принцип работы фильтра?
Спасибо за инновацию.
Константин


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 09, 2006 8:28 pm 
Не в сети
Член Макроклуба
Аватара пользователя

Зарегистрирован: Пт июл 07, 2006 11:09 pm
Сообщения: 588
Откуда: Казахстан
Понравилось, работает мягко, если не злоупотреблять :) Особенно хорош для легкого шарпа перед ресайзом. Желательно, чтобы все изменения фильтр делал в отдельном слое, чтобы не затрагивать основное изображение. Респект!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 09, 2006 8:56 pm 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Константин Коржавин писал(а):
Здорово, мне очень понравилось, нечто новое.


Спасибо! Буду продолжать "доводить до ума".

Цитата:
Какие пожелания: во-первых, эффект хорошо работает на кртинках web-размера, на полиграфических же (более 3000 пиксел) эффект (радиус?) маловат, возможно ли увеличивать радиус? Во-вторых, хотелось бы, чтобы эффект действовал только на канал яркости, не затрагивая цвет. Ещё, полезен был бы параметр, аналогичный порогу (trechhold) в unsharp mask.


В принципе да, для этого потребуется переписать код. Думаю, что хотя бы частично "воплощу".

Цитата:
Кстати, вкратце, каков принцип работы фильтра?


На каждом пикселе, рассматривается матрица пикселей 3х3 с текущим в центре (для каждого цветового канала отдельно). Определяется среднее значение цвета матрицы (каждый пиксел матрицы учитывается с коэффициентом "удаленности" от центра, по Лапласу), сравнивается со средним пикселом. Если средний пиксел темнее среднего, из его значения вычитается эта разница, умноженная на некий коэффициент. Если светлее, его значение увеличивается по следующему принципу:

Представим себе координатный отрезок со следующими "точками":

A=средний цвет
B=текущий цвет
C=(максимально яркий пиксел окружения+текущий цвет)/2

(А) --> (B) --> ( C)

Теперь получаем для пиксела новое значение D по уравнению:

(B-A)/(C-B)=(D-B)/(C-D)

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не желаете потестировать?..
СообщениеДобавлено: Чт ноя 09, 2006 10:53 pm 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Новая версия:
http://www.genesdigest.com/ps_actions/gradsharp_005.zip

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

Цитата:
Если средний пиксел темнее среднего, из его значения вычитается эта разница, умноженная на некий коэффициент.


Здесь наврал: на самом деле сначала вычисляется МИНИМАЛЬНОЕ значение яркости в матрице, а затем разница между ним и текущим умножается на "коэффициент затемнения", вычитается из минимального и используется как новый минимум, который нельзя переступать. Далее скейлинг яркости осуществляется по тому же принципу, как для светлых пикселей.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 09, 2006 11:51 pm 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
L-E писал(а):
Желательно, чтобы все изменения фильтр делал в отдельном слое, чтобы не затрагивать основное изображение.


Можно просто создать новый слой и применять фильтр к нему. Сам он не умеет создавать новые слои и вряд ли когда-нибудь сумеет...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 12:38 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Limar писал(а):
Ух ты, у Вас полноценная версия FilterMeister! Тоже хочу, да жаба давит платить... :)


Я купил бету еще года два назад, что-то долларов за 20... копейки, в общем, за такую могучую вещицу. Хотя многое там еще недоделано..

Цитата:
А исходником не поделетесь? Интереснее код видеть, чем описания читать


Исходник не хотелось бы открывать, извините...
Если у Вас есть желание поучаствовать в написании, тогда могу заслать по электронной почте.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 12:54 am 
Не в сети
Член Макроклуба
Аватара пользователя

Зарегистрирован: Сб апр 16, 2005 1:52 am
Сообщения: 2183
Откуда: Москва
Gene, чисто в познаватльный целях любопытничаю. КАК (в двух словах) делаются ФШ-ные фильтры? Вижу, что это бинарный код (MZ... и все такое...), но... есть какой-то инструментарий или Вы на С писали поточечную обработку битмапа?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 1:06 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
LAY писал(а):
Gene, чисто в познаватльный целях любопытничаю. КАК (в двух словах) делаются ФШ-ные фильтры? Вижу, что это бинарный код (MZ... и все такое...), но... есть какой-то инструментарий или Вы на С писали поточечную обработку битмапа?


Я использую FilterMeister -- это плагин к Фотошопу, представляющий собой среду и компилятор для написания собственных плагинов (подобный Filter Factory). Синтаксис похож на упрощенный C.

Со значениями пикселей можно проделывать б-во арифметических действий, запоминать в буфер, можно делать операции в циклах, что ОЧЕНЬ удручает -- нельзя задавать функции, это делает код длинным, повторяющимся и неудобочитаемым.

(Сам я не программист и тем более не математик.)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 1:18 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Цитата:
Я на него смотрел... Вещь хорошая, но недоделанная, они дали года 2-3 назад заявку, что будет более мощная версия, но она так и не вышла, осталась Бета-версия... Плюс она падала постоянно (+память утекает заметно), жаба не позволяет за такое платить....


У меня она не падала ни разу, а недостатки преодолеваю "обходными путями" :) Иногда, конечно, приходится чесать правой ногой левое ухо, но не так чтобы очень часто. Все-таки, возможности для обработки он предоставляет колоссальные.

Цитата:
Если не пожалеете, пришлите, обещать однозначно участие в проекте не обещаю (на все не хватает времени), но очень интересно, есть 3-4 алгоритма, которые хотел испробовать, может и засяду, дожди этому способствуют :)


Заслал. Симметричная просьба -- надеюсь, поделитесь, если что интересное получится :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 1:35 am 
Не в сети
Член Макроклуба
Аватара пользователя

Зарегистрирован: Сб апр 16, 2005 1:52 am
Сообщения: 2183
Откуда: Москва
Gene писал(а):
Я использую FilterMeister -- это плагин к Фотошопу, представляющий собой среду и компилятор для написания собственных плагинов (подобный Filter Factory). Синтаксис похож на упрощенный C...
(Сам я не программист и тем более не математик.)

Фига се!
Я вот, к примеру, программист, и даже типа математик, но...
Снимаю шляпу :shock:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 2:26 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
LAY писал(а):
Снимаю шляпу :shock:


Ну что Вы :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 2:29 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Limar писал(а):
Наскребу время - займусь, будут хоть какие-то результаты - пошлю обязательно.


Сейчас сходил на их сайт -- оказывается, там довольно свеженькая (относительно моей) бета с массой новых функций. И самое приятное, мой купленный гораздо раньше ключик к ней подошел :) Вот это я понимаю, честный бизнес!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 11:47 am 
Не в сети
Член Макроклуба

Зарегистрирован: Чт май 18, 2006 11:49 pm
Сообщения: 1649
Откуда: Нью-Йорк
Limar писал(а):


Она самая!
Теперь она, (ура), поддерживает 48-битный Lab -- сейчас переписал свой алгоритм, скорость еще выросла раз в пять. Раньше Lab даже трогать не хотел, чтоб не возиться в восьмибитками.

Кстати, Limar, раз уж зашла речь о FM, не подскажете ли, где достать описание алгоритма резайзинга Lanczos? Все нормальные программы обработки его уже давно умеют, кроме Фотошопа... позор ему. Надо бы хоть плагин для этой цели написать...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт ноя 10, 2006 10:21 pm 
Простенький плагин для Lanczos ресайза очень хотелось бы. Странно, что до сих пор никто не сделал.


Вернуться к началу
  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 62 ]  На страницу 1, 2, 3, 4, 5  След.

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
cron
Купить Бокалы Zwiesel Glas - официальный магазин.