ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 01.12.2023
Просмотров: 47
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
КУРСОВОЙ ПРОЕКТ
«Разработка редактора изображений»
по дисциплине «Информационные технологии. ч.II»
1 Наименование изделия, цель и сроки выполнения курсового проекта
-
Наименование изделия: «Редактор изображений Номер группы_ФамилияИО» (далее по тексту – ПО Номер группы_ФамилияИО). -
Шифр изделия: «Номер группы_ФамилияИО». -
Целью выполнения курсового проекта является разработка программного обеспечения для редактирования изображений, отладка программного обеспечения. -
Срок выполнения: окончание – 02.06.2023 г. -
Перечень ссылочных нормативных документов приведен в Приложении А.
2 Технические требования к программному изделию
2.1 Состав программного изделия
2.1.1 В состав ПО «Номер группы_ФамилияИО» должны входить (рис. 1):
- программное обеспечение, реализующее 4 фильтра по обработке изображений согласно индивидуальному варианту;
2.1.2 ПО должно работать с полутоновыми (8бит) изображениями и цветными RGB изображениями.
2.1.3 Результаты применения фильтров должны сохраняться в отдельные файлы изображений.
2.2 Группа фильтров №1 Рисование фигур
2.2.1 Общее для всех вариантов задание
Нарисуйте фигуру согласно индивидуальному варианту. Реализуйте возможность выбора прямоугольной области на изображении и перемещения ее на заданную мышью позицию.
а) пример фигуры | б) перемещение прямоугольной области | в) изменение средней яркости изображения |
Рис. 1 Пример фигуры
2.2.2 Фильтр 1.1
Для цветного изображения: реализуйте с помощью ползунков изменение средней яркости зеленого, красного и синего согласно рис.1(в) и рис.2.
Рис. 2
Фильтр должен содержать ползунок, позволяющий изменять числовое значение от 0 до 255 для каждого канала.
Для полутонового изображения: изменение средней яркости.
2.2.3 Фильтр 1.2
Реализуйте ластик заданного размера. Реализовать визуальный эффект «стирания» изображения в области нажатия «ластика». Размер ластика задается пользователем (в количестве пикселов).
2.2.4 Фильтр 1.3
По щелчку мыши реализовать вырез участка изображения, заданной площадью (количество пикселов по вертикали и горизонтали задается пользователем), с центром, находящимся в текущих координатах курсора. Осуществить вывод изображения в отдельное окно.
2.3 Группа фильтров №2 Масштабирование изображения
Реализуйте фильтр согласно индивидуальному варианту.
Масштаб изображения должен изменяться с помощью ползунка.
2.3.1 МАСШТАБИРОВАНИЕ ИЗОБРАЖЕНИЯ МЕТОДОМ БЛИЖАЙШЕГО СОСЕДА
Увеличение масштаба изображения (рис. 3)
Рис. 3
Фильтр 2.1 Увеличение масштаба по вертикали
Фильтр 2.2 Увеличение масштаба по горизонтали
Фильтр 2.3 Увеличение масштаба всего изображения
Уменьшение масштаба изображения (рис.4)
Рис. 4
Фильтр 2.4 Уменьшение масштаба по вертикали
Фильтр 2.5 Уменьшение масштаба по горизонтали
Фильтр 2.6 Уменьшение масштаба всего изображения
2.3.2 МАСШТАБИРОВАНИЕ ИЗОБРАЖЕНИЯ МЕТОДОМ ЛИНЕЙНОЙ ИНТЕРПОЛЯЦИИ (рис. 5)
Рис. 5
Y(i,j)=(x(i,j)+x(i,j+1)+ x(i+1,j)+x(i+1,j+1))/4
Y(i,j+1)=(x(i,j+2)+x(i+1,j+2)+ x(i+1,j+3)+x(i,j+3))/4
Фильтр 2.7 Увеличение масштаба по вертикали
Фильтр 2.8 Увеличение масштаба по горизонтали
Фильтр 2.9 Увеличение масштаба всего изображения
Фильтр 2.10 Уменьшение масштаба по вертикали
Фильтр 2.11 Уменьшение масштаба по горизонтали
Фильтр 2.12 Уменьшение масштаба всего изображения
2.4Группа фильтров №3 Линейное контрастирование изображения
2.4.1 Фильтр 3.1 БИНАРИЗАЦИЯ
Значения пиксела преобразуется в соответствии с условием (рис. 6)
Значение серого оттенка устанавливается равным 0 (0 - черный цвет), если его исходное значение меньше заданного порога, или устанавливается равным числу 255 (белый цвет), если исходное значение больше или равно пороговому значению.
Такая обработка превращает изображение, созданное в оттенках серого, в черно-белое. Это называется бинаризацией (преобразование в двоичную форму).
Рис. 6
Значение порога qпор задает пользователь.
Если загружено цветное изображение, то для применения фильтра предварительно его нужно преобразовать в полутоновое.
Преобразование в полутоновое изображение осуществляется по формуле
Y=0.3R+0.59G+0.11B
2.4.2 Фильтр 3.2 ИНВЕРСИЯ
С помощью операции «инверсия» (рис. 7) можно получить негатив изображения, т.е. все значения яркости изображения изменяются на противоположные.
Осуществление данного преобразования производится следующим образом
q*=255- q;
где q –значение яркости, изменяется в диапазоне [0…255].
Рис. 7
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.3 Фильтр 3.3 ПОСТЕРИЗАЦИЯ
С помощью операции «постеризация» (рис. 8) изменяется количество уровней яркости изображения.
Пользователь задает число уровней яркости.
Рис. 8
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.4 Фильтр 3.4 ЯРКОСТНОЙ СРЕЗ
Преобразование осуществляется согласно рис.9.
Пользователь задает уровни q1, q2, q*max
Рис. 9
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.5 Фильтр 3.5 ГАММА-КОРРЕКЦИЯ
Для реализации фильтра (рис. 10) используется следующая упрощенная формула qout = qinγ
А) γ < 1
Б) γ > 1
В) γ = 1
γ – задается пользователем
Рис. 10
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.6 Фильтр 3.6 ЛИНЕЙНОЕ МАСШТАБИРОВАНИЕ
Преобразование осуществляется согласно рис. 11.
Рис. 11
Пользователь задает уровень q*max.
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.7 Фильтр 3.7 ЛИНЕЙНОЕ МАСШТАБИРОВАНИЕ С ОГРАНИЧЕНИЕМ
Преобразование осуществляется согласно рис. 12.
Рис. 12
Пользователь задает уровни q1, q2 , q3 и q*max.
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.8 Фильтр 3.8 ЛИНЕЙНОЕ ПИЛООБРАЗНОЕ МАСШТАБИРОВАНИЕ
Преобразование осуществляется согласно рис. 13.
Рис. 13
Пользователь задает количество «зубьев пилы» и уровень q*max.
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.9 Фильтр 3.9 СОЛЯРИЗАЦИЯ
Преобразование осуществляется согласно рис. 14.
Рис. 14
Пользователь задает уровни q1и q*max.
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.10 Фильтр 3.10
Преобразование осуществляется согласно рис. 15.
Рис. 15
Пользователь задает уровни q1 и q2.
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.11 Фильтр 3.11
Реализуйте коррекцию (рис. 16) согласно следующему уравнению (обратите внимание на диапазон входных и выходных значений)
Рис. 16
В случае обработки цветного изображения фильтр применяется к каждому каналу отдельно.
2.4.12 Фильтр 3.12
Тоновая коррекция для повышения контраста медицинских изображений может быть реализована применением тональных кривых независимо к каждому каналу цветного изображения. Тональные кривые представляют собой сигмоиды и задаются уравнением:
где – коэффициент усиления, определяющий кривизну сигмоиды, – коэффициент отсечки, определяющий положение точки перегиба, – значение яркости в канале в диапазоне [0…1]. Рекомендуемые параметры сигмоиды: для зеленого и синего каналов изображения, – для красного. Графики, иллюстрирующие форму кривых с указанными параметрами, представлены на рис. 17.
f(x)
R-канал
G и B-каналы
x
Рис. 17
2.5 Группа фильтров №4
2.5.1 ГИСТОГРАММА
Гистограмма – это графическое отображение распределения полутонов. По горизонтали идет шкала яркости, а по вертикали – количество пикселей с данной яркостью (рис. 18).
Гистограмма читается слева на право, от черного к белому. Анализ гистограммы и модификация гистограммы изображения – важный инструмент в компьютерном зрении и видеоаналитике.
Рис. 18
2.5.1 Фильтр 4.1 Линейная растяжка гистограммы.
Уровням исходного изображения, лежащим в интервале [fмин, fмакс], присваивают новые значения с тем, чтобы охватить весь возможный интервал изменения яркости [0, 255]. При этом существенно увеличивается контраст. Преобразование уровней яркости осуществляется по формуле: