Практический курс по базовым методам цифровой обработки изображений.
Курс построен вокруг последовательного изучения основных этапов работы с изображениями: от простых поэлементных преобразований и локальной фильтрации до обнаружения объектов и сжатия изображений.
Основной формат работы - реализация алгоритмов в Jupyter Notebook и их экспериментальное исследование.
В ходе курса студенты научатся:
- представлять изображение как двумерный массив значений яркости;
- выполнять поэлементные преобразования изображений;
- анализировать и преобразовывать гистограммы;
- выполнять линейную локальную обработку изображений;
- выделять контуры различными методами;
- работать с аддитивным и импульсным шумом;
- реализовывать линейную и медианную фильтрацию;
- использовать корреляционные методы для обнаружения объектов;
- применять согласованную фильтрацию;
- оценивать качество обнаружения объектов;
- реализовывать дифференциальное кодирование изображений;
- оценивать качество восстановления и помехоустойчивость алгоритмов.
Особое внимание уделяется не использованию готовых реализаций исследуемых алгоритмов, а пониманию того, как эти методы устроены и почему дают тот или иной результат.
Изучение простейших методов обработки, при которых каждый элемент изображения преобразуется независимо от соседних.
Основные темы:
- поэлементные преобразования;
- гистограммы изображений;
- линейное контрастирование;
- эквализация гистограммы;
- пороговая обработка;
- препарирование изображений.
В лабораторной работе предусмотрены варианты заданий на линейное контрастирование, эквализацию гистограммы и пороговую обработку.
Перейти к лабораторной работе №1
Изучение локальной обработки изображений с использованием скользящего окна и методов выделения перепадов яркости.
Основные темы:
- линейная локальная обработка;
- свёртка изображения с маской;
- градиентный метод;
- оператор Лапласа;
- оператор Прюитт;
- метод согласования;
- пороговая обработка изображения контуров;
- влияние шума на выделение границ.
Студенты реализуют несколько методов выделения контуров и сравнивают полученные результаты.
Перейти к лабораторной работе №2
Исследование методов восстановления изображений, искажённых случайными шумами.
Основные темы:
- аддитивный белый шум;
- импульсный шум;
- критерии качества фильтрации;
- линейный сглаживающий фильтр;
- медианный фильтр;
- повторная фильтрация;
- квадрат средней квадратичной ошибки;
- коэффициент снижения шума.
Студенты сравнивают линейную и медианную фильтрацию при различных типах и уровнях шума.
Перейти к лабораторной работе №3
Изучение методов поиска объектов известного типа на фоне случайных помех.
Основные темы:
- эталон объекта;
- корреляционный метод обнаружения;
- нормированная взаимная корреляция;
- корреляционные пики;
- согласованная фильтрация;
- разбеливание коррелированного фона;
- пороговое обнаружение;
- ложные и пропущенные объекты.
В зависимости от варианта студенты исследуют влияние уровня фона на корреляционное обнаружение либо сравнивают корреляционный метод и согласованную фильтрацию.
Перейти к лабораторной работе №4
Изучение сжатия изображений на основе дифференциальной импульсно-кодовой модуляции.
Основные темы:
- избыточность изображений;
- коэффициент сжатия;
- предсказание отсчётов;
- разностный сигнал;
- квантование;
- шкала Макса;
- восстановление изображения;
- оценка погрешности;
- помехоустойчивость ДИКМ.
Студенты сравнивают несколько предсказателей, выбирают наиболее точный и исследуют распространение ошибки при повреждении сжатых данных.
Перейти к лабораторной работе №5
Каждая лабораторная работа оценивается по 10-балльной шкале.
| Критерий | Что оценивается | Баллы |
|---|---|---|
| Правильность реализации | Корректность алгоритмов и вычислений, работа на предусмотренных тестах и примерах | 3 |
| Полнота выполнения | Выполнены все обязательные задания, представлены необходимые результаты | 1 |
| Качество кода | Читаемость, логичная структура, понятные имена, отсутствие существенного дублирования | 1 |
| Эксперименты и анализ | Проведены необходимые эксперименты, представлены результаты и краткие выводы | 1 |
| Итого | 6 |
На защите задаются только вопросы по коду и выполненной лабораторной работе.
| Критерий | Что оценивается | Баллы |
|---|---|---|
| Понимание реализации | Умение объяснить структуру программы, назначение основных функций, этапы работы алгоритма и используемые вычисления | 2 |
| Вопросы по коду | Умение объяснить отдельные фрагменты собственной реализации, выбор параметров, обработку граничных случаев и полученные результаты | 2 |
| Итого | 4 |
Итоговая оценка за лабораторную работу складывается из баллов за выполнение работы и её защиту:
6 баллов за работу + 4 балла за защиту = 10 баллов.