Обязательная часть задания
Программа должна уметь:
- Открывать и сохранять изображения в формате BMP или в семействе форматом PBM/PGM/PPM
- Инвертировать значения пикселей изображения
- Производить отражение изображения по вертикали и по горизонтали
- Осуществлять поворот изображений по и против часовой стрелки на 90, 180 и 270 градусов
Выполнение обязательной части задания оценивается в 5 баллов.
Дополнительная часть задания
За реализацию отдельных алгоритмов обработки изображений начисляются дополнительные баллы:
- Фильтр Превитта по горизонтали и по вертикали (1 балл)
- Фильтр Собеля по горизонтали и по вертикали (1 балл)
- Фильтр Робертса по обеим диагоналям (1 балл)
- Медианный фильтр с окном 3х3 (1 балл), либо с окном произвольного размера (2 балла)
- Свёртка с фильтром Гаусса с произвольным выбором параметра — радиуса σ (3 балла)
- Выделение границ с помощью вычисления модуля градиента изображения как корень из суммы квадратов свёрток с первой производной фильтра Гаусса по горизонтали и вертикали (3 балла)
- Поворот изображения на произвольный угол (2 балла) с использованием билинейной интерполяции (+2 балла). За реализацию поворота с сохранением всего изображения (см. пример ниже) даётся дополнительно 1 балл.
Для фильтров Превитта, Собеля, Робертса пользователь должен иметь возможность выбора направления.
Справочные материалы