?

Log in

О частотном разложении - Фотокузница [entries|archive|friends|userinfo]
Фотокузница

[ userinfo | информация о сообществе ]
[ archive | архив публикаций ]

Links
[Links:| Правила Теги Избранное Полезное Сокращения ]

О частотном разложении [May. 31st, 2011|01:29 pm]
Фотокузница
fotoforge
[nikitos_r]
Применение частотного разложения при обработке фотографий ведет к потере качества картинки если использовать фильтр "High Pass."
Вот пример:




Если разложить эту фотографию на высокие и низкие частоты с помощью фильтров "Gaussian Blur" и "High Pass" будут потеряны мелкие контрастные детали:



Чтобы избежать этого, вместо фильтра "High Pass" можно воспользоваться командой "Apply Image" и добавить к исходной картинке ее инвертированную разблюренную копию:



Результат:



И ссылка на PSD:
http://narod.ru/disk/14579865001/eye.psd.html


LinkReply

Buy for 1 000 tokens
Buy promo for minimal price.

Comments:
[User Picture]From: anatolyvasiliev
2011-05-31 06:36 pm (UTC)
http://zhur74.livejournal.com/998.html

"замечание второе. На форуме сайта www.modelmayhem.com есть пост с милым названием «HighPass курит взатяг (+решение)», в которой утверждается, что High Pass дает не аккуратный результат и предлагается следующая методика:

1. cделать две копии слоя с исходным изображением
2. применить к нижней Gaussian Blur с желаемым радиусом
3. к верхнему слою применить команду Apply Image, выбрав в качестве накладываемого изображения размытый слой, режим наложения — Subtract, в поле Offset ввести 128, в поле Scale ввести 2.
4. наслаждаться результатом, который «не курит взатяг».

Да простит меня автор этого сообщения, но я это считаю бредом. Описанная методика с коэффициентом Scale 1 полностью повторяет алгоритм действия фильтра HighPass, а коэффициент Scale 2 просто в два раза снижает контраст (мы это делали кривыми). Таким образом шаманские танцы с бубном лишаются всякого смысла. Я попробовал разложить и сложить картинку разными методами и получил совершенно одинаковые результаты. Кроме того, сразу сниженный контраст ВЧ-слоя подпортит нам жизнь во время ретуши. То же самое относится и ко второму предложенному автором алгоритму. Желающих поспорить прошу в коменты."
(Reply) (Thread)
From: nikitos_r
2011-05-31 07:32 pm (UTC)
Потому и приложил PSD.
Разница есть по всей картинке, особенно выражена на бликах
(Reply) (Parent) (Thread)
From: just_virt
2011-05-31 06:43 pm (UTC)
Сорри, я действительно не понимаю - с такими проблемами по всей картинке мы будем сперва заботиться о блике?
Тут хотя бы прикидываются профессионалами?
(Reply) (Thread)
[User Picture]From: lifanov_l_bpyc
2011-05-31 08:41 pm (UTC)
где ты видишь проблемы?
(Reply) (Parent) (Thread)
(Deleted comment)
[User Picture]From: k_sashka
2011-05-31 07:42 pm (UTC)

Видишь суслика?

... вот и я не вижу, а он есть!
(Reply) (Parent) (Thread)
[User Picture]From: psy_factor
2011-05-31 07:58 pm (UTC)
Тут у меня направшивается лишь одна фраза "Вам шашечки, или ехать?".
Если хочется чистых бликов, то после ретуши их можно подчистить руками. ИМХО.
(Reply) (Thread)
From: nikitos_r
2011-05-31 08:02 pm (UTC)
Можно.
Я просто описал метод который изначально не изменяет картинку и занимает не больше времени чем использование high pass
(Reply) (Parent) (Thread)
[User Picture]From: psy_factor
2011-05-31 08:28 pm (UTC)
Посмотрев внимательно картинки, которые выложены в посте, я не увидел сильно больших различий. А точнее, я почти ничего не увидел =)
На мой взгляд, вытаскивание деталей в бликах не есть правильный подход к фотографии а больше похоже на фотодрочерство.
Мне понравилась фраза Ильи Борга о том, что если вы не снимали детали в тенях, то не нужно их оттуда вытаскивать, тем самым вытаскивая попутно и шум.

Если это просто метод для наглядности. Ну что вот можно сделать так, а не как делает хайпасс. ИМХО эта информация малоинформативна, потому что если при использовании метода хайпасс, я понимаю как он работает и что он делает, то при использовании даных манипуляций, я совершенно не понимаю, что они делают.
(Reply) (Parent) (Thread)
From: nikitos_r
2011-05-31 09:34 pm (UTC)
Я не навязываю этот вариант разложения, я скорее показал разницу между использованием high pass и apply image.
Использование high pass вносит изменения во всю картинку, на бликах это особенно заметно.

PS а я как раз непонимаю что именно делает high pass
(Reply) (Parent) (Thread)
[User Picture]From: psy_factor
2011-06-01 05:27 am (UTC)
Понятно.
Спасибо за вашу работу.
(Reply) (Parent) (Thread)
[User Picture]From: chaka
2011-05-31 08:25 pm (UTC)
После той дискуссии поддался влиянию авторитета Андрея, а сейчас перепроверил.
Разница — есть!

HighPass, в отличие от ApplyImage-Subtract, некорректно ведет себя в зонах максимального микроконтраста (и с краю файла?):

freq test

Слева исходные через-пиксельные полоски, справа - Difference исходника со сборкой после ЧР с HPass. Разница не столь ярка - усилена Levels'ами для наглядности.

Вот файл с этим полосатым тестом (2.5 Mb, CS4)

P.S. Кстати, ту тему на ModelMayhem я раскопал : )

Edited at 2011-06-01 08:00 am (UTC)
(Reply) (Thread)
[User Picture]From: oleg_ivanenko
2011-06-01 04:50 am (UTC)
Меня во всей этой истории тоже смущает то, что я не понимаю что именно происходит внутри High Pass. Для меня это бинарный черный ящик.

К сожалению(или к счастью), я никогда не пользовался Photoshop. В том инструменте, которым пользуюсь я(gimp), "частотное разложение" осуществляется за счет одноразового разблюривания и небольшой хитрости в последовательности и режимах наложения слоев, которых, к слову нет в Photoshop. То есть нет последовательности работы ТРЕХ разных обработок(blur, high pass, curves), которые, нмв, действительно могут внести искажения, как алгоритмические, так и за счет округления, о котороых уже писали выше. Конечно, для кого-то такие искажения, если они действительно появляются, могут быть незначительными, а для кого-то напрягающими, но это уже вкусовщина.

метод gimp я описал здесь
(Reply) (Thread)
[User Picture]From: sastanin
2011-11-16 04:53 pm (UTC)
highpass теперь есть в darktable; алгоритм такой:

- инвертировать L в Lab пространстве
- выбрать радиус размытия r от 0 до 16 пикс. (sharpness = 100%)
- размыть L
- выбрать коэффициент усиления k от 0 до 7,5 (contrast boost = 100%)
- смешать размытое инвертированное и исходное L в пропорции 0.5 + 0.5
- взять разницу результата и среднего серого (50.0), усилить в k раз, прибавить средний серый (50.0)
- обрезать значения L выходящие за пределы диапазона (от 0.0 до 100.0)
- убрать насыщенность (обнулить каналы a и b)

Потом можно накладывать с любым режимом (overlay, softlight, hardlight). Все вычисления, естественно, с плавающей точкой (в отличии от gimp, где только 8 бит на канал).
(Reply) (Parent) (Thread)
[User Picture]From: oleg_ivanenko
2011-11-16 05:56 pm (UTC)
честно признаюсь -- не понял процентов 75 из того, что Вы написали

если речь идет исключительно о настройках разных плагинов в darktable -- напишите, пожалуйста, какие настройки и каких плагинов используются на каждом этапе алгоритма

можно в личку, чтобы не перегружать топик
(Reply) (Parent) (Thread)
[User Picture]From: sastanin
2011-11-16 09:12 pm (UTC)
Это был ответ на вопрос «что именно происходит внутри High Pass»; поскольку фотошопа у меня тоже нет, то я описал алгоритм в том виде, в котором они применяется в darktable (вы им тоже пользуетесь, судя по вашему блогу).

Речь идёт о настройках одного плагина в последних версиях darktable, в котором всё это делается (настроек таких, не считая режима наложения, две: sharpness и contrast boost):

highpass plugin in darktable

Практически sharpness отвечает радиус размытия, color boost — за коэффициент на который умножается разница изображений, его изменение позволяет избежать потери деталей; то есть по сути алгоритм highpass в darktable работает не как фильтр High Pass в фотошопе (у которого только один параметр — радиус), а именно как описанный приём nikitos_r с Apply Image. Разница только в том, что darktable работает с каналом L в модели Lab, а не со всем тремя по отдельности в RGB.

P.S. Поскольку это абсолютно по теме топика (тот же самый способ обработки), то в нём же и отвечаю.
(Reply) (Parent) (Thread)
[User Picture]From: oleg_ivanenko
2011-11-16 09:28 pm (UTC)
я понял Вас. единственное что я не понял, так это то, как именно мне поможет этот плагин в применении техники "ретушь при помощи частотного разложения". насколько я понимаю, результат работы этого плагина скорее помогает "повысить резкость при помощи high pass". при этом, если я правильно понимаю, результат работы плагина монохромный, то есть количество blending modes достаточно ограничено?

я, к сожалению, никогда не пользовался такого рода плагинами, не совсем понимаю для себя их ценность. даже sharpness не использую -- не вижу смысла на этапе проявки...
(Reply) (Parent) (Thread)
From: oleg_dl
2011-06-01 06:50 am (UTC)
Разница - есть. Причем действительно на бликах.
Взят снимок - sRGB, после чего проделаны стандартные операции частотного разложения, в 8 и 16 битовом формате.
На выходе блик - вместо 255, 254, 255 - 200, 199, 200, в обоих вариантах.
(Reply) (Thread)
[User Picture]From: pdv
2011-06-01 07:31 am (UTC)
Елки-палки, а я думал, что это мне мерещится, что после ЧР картинка софтит... Оказалось, что не казалось... :)
(Reply) (Thread)
[User Picture]From: gaillard
2011-06-01 11:28 am (UTC)
В чем трабл? Записали экшен и вперед. Какая разница, что он там внутри будет делать - хай-пасс юзать или описанную последовательность.
И, кстати, видел в каком-то уроке, что для 16 и 8 битных изображений методика разная. Надо порыться, если будет интересно, выложу потом...
(Reply) (Thread)
From: mariarlp
2011-06-01 11:49 am (UTC)
Интересно! Выложите, пожалуйста!
(Reply) (Parent) (Thread)
[User Picture]From: gaillard
2011-06-01 11:54 am (UTC)
Ок.
(Reply) (Parent) (Thread)
From: mariarlp
2011-06-04 08:34 am (UTC)
А когда сможете выложить?
(Reply) (Parent) (Thread)
[User Picture]From: dmitry_novak
2011-06-01 02:55 pm (UTC)
Я вам, господа, вот что скажу - для частотного разложения есть хороший, проверенный и главное удобрый профессиональный инструмент в виде Portraiture. Он не только не уступает экшнам с частотным разложением на основе хайпасса и его инверсии, но и превосходит, что я неоднократно доказывал тем, кто мне регулярно показывал отвратные результаты после обработки через хайпассы.
И да, с портретюрой никто не мешает использовать слои и ручные маски.

Я понимаю, что можно даже равы конвертить вручную в шопе поканально из байера (пробовал однажды из чистого мазохизма), но все-таки на дворе 21 век...
(Reply) (Thread)
[User Picture]From: pdv
2011-06-01 06:30 pm (UTC)
+1
А есть еще Portrait Professional.
(Reply) (Parent) (Thread)
[User Picture]From: eklipsis
2011-06-01 06:33 pm (UTC)
расскажите тогда, пожалуйста, как сделать вот так портетурой?
(Reply) (Parent) (Thread)
[User Picture]From: dmitry_novak
2011-06-01 06:38 pm (UTC)
все движки в ноль, кроме низкочастотного, если надо - пройтись по маске.

Честно сказать, в вашем примере слишком неявная коррекция, чтобы сказать что-то определенное.
(Reply) (Parent) (Thread)
[User Picture]From: eklipsis
2011-06-01 06:52 pm (UTC)
Коррекция предельно простая: был синячек - не стало синячка. Портретурой Вы его как ни блюрьте, все равно он никуда не денется, (как и глубокие носогубные складки, замятости на одежде и т.д.) а вот веснушки поедут...
(Reply) (Parent) (Thread)
[User Picture]From: dmitry_novak
2011-06-01 06:58 pm (UTC)
на службе снимаю частенько сумки и одежду - и портретурой вполне успешно правлю крупные складки.

По части портретов - то же самое, портретура справляется - и крупные морщины лечит, и носогубный - вполне. По моему опыту, не с потолка.
(Reply) (Parent) (Thread)
[User Picture]From: nowaiting
2011-06-06 07:24 pm (UTC)
Если не секрет, не подскажите, как Вы убирали темноту под глазами?
(Reply) (Parent) (Thread)
[User Picture]From: Дмитрий Гоцкин
2011-06-01 09:05 pm (UTC)
Доброго, а можно пруфлинк на софт? Спасибо
(Reply) (Parent) (Thread)
[User Picture]From: dmitry_novak
2011-06-01 09:08 pm (UTC)
гуглить Porttraiture
(Reply) (Parent) (Thread)
[User Picture]From: it_lis
2011-06-02 07:58 am (UTC)
А кто нибудь провел опыт отдельно для изображений 8 и 16 битного. Что то как то не однозначно всё. Для представленного здесь 16 битового изображения согласен есть отличия при пристальном рассмотрение. Если же данное изображение перевести в 8 бит и поиграться тем и другим методом разложения то становиться очевидно что метод с хай пасом куда предпочтительнее в использовании, так как по моим ощущениям ведет себя одинаково в не зависимости от битности изображения. Кстати отличия в методе разложения с применением "Apply Image" хорошо заметны в теневых областях.
(Reply) (Thread)
[User Picture]From: egorfine
2011-06-04 09:33 pm (UTC)
А зачем делать частотное разложение по всему кадру, включая глаза? o_O
(Reply) (Thread)
(Deleted comment)
[User Picture]From: zhur74
2011-11-14 01:21 am (UTC)
Написал у себя подробный ответ:
http://zhur74.livejournal.com/26003.html
(Reply) (Thread)