Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Windows Forms
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.03.2017, 20:09   #1
Seferus
Пользователь
 
Регистрация: 18.09.2010
Сообщений: 56
По умолчанию Переквантование значений

Преобразования цветного RGB (полноцветного, т.е. full color) изображения в аналог индексированного изображения с 256-ю оттенками цвета, изменив шкалу цвета так, чтобы было 8 оттенков красного и зеленого и 4 синего. Все оттенки цвета исходного изображения округлить до ближайших в новой шкале. Показать на нескольких цветных фотографиях результат изменений цветных изображений (было-стало).

Программа сделана через "ползунки". Возможно и не правильно, прошу помощи.

Известно, что для изменения цветового баланса по одному из каналов R, G, B на N процентов следует вычислить новое значение цветового канала по формуле:
I = I + N • 128 / 100
N фиксировано?
Новый оттенок никак не связан с исходным значением?

Программа прикреплена Преобразование.rar

Алгоритм программы:
Фильтр «Цветовой баланс»
Для изменения цветового баланса по одному из каналов R, G, B на N процентов следует вычислить новое значение цветового канала по формуле:
I = I + N • 128 / 100 (1), где I – это R, G или B каждой точки изображения. Если новое I не попадает в диапазон 0..255 – то его следует урезать.
В функцию изменения цветового баланса по соответствующему каналу передается значение цвета текущего пикселя, текущее положение ползунка (poz) изменения цветового баланса и максимальное значение, которое он может принимать (length).
Преобразование изображений по цветовому балансу.
1) Вычисляется количество процентов N = (100 / lenght) * poz.
2) По формуле (1) для соответствующего цветового канала рассчитывается новое значение.
3) Контролируем переполнение переменных:
ЕСЛИ I < 0, ТО I = 0,
ЕСЛИ I > 255, ТО I = 255,
где I – соответствующий (R, G или B) канал цвета пикселя return значения цвета пикселя.
Seferus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить схему алгоритма и программу для вычисления значений функций Y и F для заданных значений Иван Олегович Паскаль, Turbo Pascal, PascalABC.NET 11 04.12.2013 08:49
В задаче необходимо вывести на экран таблицу значений функции У(х) и ее разложения в ряд С (х) для значений х от до с шагом.(Паск fashionweek Паскаль, Turbo Pascal, PascalABC.NET 1 07.02.2013 23:11
Вычисление значений функции для нескольких значений аргументов и параметров kolychii Помощь студентам 0 08.10.2012 15:49
Сравнение значений в 2х столбцах и удаление лишних значений.. Tyr Microsoft Office Excel 2 16.12.2010 18:19
Сохранение и загрузка в файл текстовых значений и значений типа Boolean krikaved Общие вопросы Delphi 1 16.03.2010 07:53