LINUX.ORG.RU

Как правильно unsharp mask считать?

 ,


0

1

http://nodeca.github.io/pica/demo/ - мне подозрительно, что на больших unsharp amount плывут цвета. Это нормально? Задумывалось сделать те же значения что в фотошопе.

Вот исходник: https://github.com/nodeca/pica/blob/master/lib/pure/unsharp.js

Делаю так:

1. Делаю чернобелую картинку со значениями яркости 0..65535.
2. Считаю блюр и вычисляю для яркости USM(O) = O + (2 * (Amount / 100) * (O - GB))
3. Смотрю, во сколько раз изменилась яркость, и корректирую RGB этим коэффициентом (но значение < 0 и > 255 обрезаются).

Вроде на переводе в HSL и обратно можно сэкономить.

Все правильно или где-то ошибка? Опираюсь на яркость, чтобы каналы не разъехались.

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

мне подозрительно, что на больших unsharp amount плывут цвета. Это нормально?

Это нормально.

nikitos ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.