![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно менять увеличивать резкость изображения [D7, WinXP]
dimon_programmer © (2004-05-09 13:12:00)Я пробую менять резкость битмапа по вот такому алгоритму:
1). Для каждого цветового канала (24-битный битмап) для каждого пикселя я
нахожу сумму значений соседей, затем делю на их количество(8)-
получаю среднее значение окружающего цвета.
2). Нахожу разность между центральным пикселем и полученным средним
значением.
3). Умножаю эту разность на некий K - больше 1 для увеличения контраста.
4). Прибавляю получившееся значение к значению цвета центрального пикселя
Получается, что "темные" по отношению к соседям становятся темнее, "светлые" -
светлее.
Но увеличения резкости вроде как не происходит, и каким - то образом
прилично возрастает яркость. Что я делаю не так ? - помогите!!!
ma5ter (2004-05-31 13:20:00) [1]Вообще то резкость (контрастность) изображения это характеристика отличия соседних пикселей друг от друга. Соответственно яркость - интенсивность точки. Таким образом для изменения яркости добавляем/уменьшаем значение интенсивности на дельту, а контрастность - умножаем на некий коэффициент больше/меньше 1. Все это делается по каждому цветовому каналу в отдельности и сводится воедино.
Или я не прав?
Мимо проходил (2004-05-10 10:48:00) [2]Однозначно, не факт.
Serzh ML (2004-05-09 13:35:00) [3]я делал проще, (хотя не факт что правильно), цвет с яркостью > 128 становиться ещё ярче, а с яркостью < 128 ещё темнее.