Компьютерное зрение Лекция 4 Математическая морфология
21 февраля 2003Компьютерная графика Лекция 4 Астана 2 Обработка и анализ изображений Обработка изображений Image processing Компьютерное (машинное) зрение Computer (machine) vision Компьютерная графика Computer graphics
21 февраля 2003Компьютерная графика Лекция 4 Астана 3 Изображение Изображение оптическое – картина, получаемая в результате прохождения через оптическую систему лучей, распространяющихся от объекта, и воспроизводящая его контуры и детали. Физический энциклопедический словарь. Компьютерное представление изображения: Функция от двух переменных Используется дискретное представление
21 февраля 2003Компьютерная графика Лекция 4 Астана 4 Компьютерное зрение Цель – принятие решений о реальных физических объектах и сценах, основываясь на воспринимаемых изображениях. Получение информации из изображений Анализ и интерпретация полученной информации
21 февраля 2003Компьютерная графика Лекция 4 Астана 5 Информация, содержащаяся в изображении Полезная информация –Информация низкого уровня Области однородные по некому признаку Границы однородных областей Цвет, форма области –Информация высокого уровня Объекты, содержащиеся на изображении Ошибочная информация (шум)
21 февраля 2003Компьютерная графика Лекция 4 Астана 6 Предобработка изображения Подготовка изображения к анализу Подавление и устранение шума Упрощение изображения (напр., бинаризация) Усиление и выделение полезной информации
21 февраля 2003Компьютерная графика Лекция 4 Астана 7 Предобработка изображения Подавление и устранение шума Причины возникновения шума: –Несовершенство измерительных приборов –Хранение и передача изображений с потерей данных
21 февраля 2003Компьютерная графика Лекция 4 Астана 8 Устранение шума в полутоновых и цветных изображениях Пример: изображение с равномерным шумом. noise(i,j) – нормально распределенная случайная величина.
21 февраля 2003Компьютерная графика Лекция 4 Астана 9 Усреднение
21 февраля 2003Компьютерная графика Лекция 4 Астана 10 Гауссиан (sigma=32)
21 февраля 2003Компьютерная графика Лекция 4 Астана 11 Размытие
21 февраля 2003Компьютерная графика Лекция 4 Астана 12 Свертка - дифференцирование
21 февраля 2003Компьютерная графика Лекция 4 Астана 13 Свертка - дифференцирование
21 февраля 2003Компьютерная графика Лекция 4 Астана 14 Маски дифференцирования
21 февраля 2003Компьютерная графика Лекция 4 Астана 15 Градиент
21 февраля 2003Компьютерная графика Лекция 4 Астана 16 Попикселная обработка Out[x, y] = f (In[x,y])
21 февраля 2003Компьютерная графика Лекция 4 Астана 17 Усиление и выделение полезной информации Коррекция яркости изображения. Простое линейное преобразование:
21 февраля 2003Компьютерная графика Лекция 4 Астана 18 g out = f(g in )
21 февраля 2003Компьютерная графика Лекция 4 Астана 19 g out = f(g in )
21 февраля 2003Компьютерная графика Лекция 4 Астана 20 Выравнивание гистограмм Используются все n уровней серого цвета На каждый уровень попадает примерно одинаковое количество пикселов: q=(R*C)/n
21 февраля 2003Компьютерная графика Лекция 4 Астана 21 Выравнивание гистограмм
21 февраля 2003Компьютерная графика Лекция 4 Астана 22 Упражнение Входное изображение содержит n = 200 пикселов Гистограмма H in = [0, 0, 20, 30, 5, 5, 40, 40, 30, 20, 10, 0, 0, 0, 0, 0] Каким будет значение f(8) в выходном изображении? Каким будет значение f(11) в выходном изображении?
21 февраля 2003Компьютерная графика Лекция 4 Астана 23 БИНАРИЗАЦИЯ ИЗОБРАЖЕНИЯ (1)
21 февраля 2003Компьютерная графика Лекция 4 Астана 24 ПРИМЕРЫ ПОРОГОВОЙ БИНАРИЗАЦИИ
21 февраля 2003Компьютерная графика Лекция 4 Астана 25 Устранение шума типа «соль и перец» Задача – избавиться от одиночных темных пикселов в светлых областях и одиночных светлых пикселов в темных областях. Применение масок к изображению С учетом 8ми соседей С учетом 4х соседей
21 февраля 2003Компьютерная графика Лекция 4 Астана 26 МОРФОЛОГИЧЕСКИЕ ФИЛЬТРЫ Сужение (Эрозия, Erosion) Расширение (Dilation) Закрытие (Closing) Раскрытие (Opening)
Морфологические операции
21 февраля 2003Компьютерная графика Лекция 4 Астана 28 Расширение & Сужение
Морфологические операции
21 февраля 2003Компьютерная графика Лекция 4 Астана 30 ПРИМЕР МОРФОЛОГИЧЕСКОГО РАСКРЫТИЯ Aopen(A)
21 февраля 2003Компьютерная графика Лекция 4 Астана 31 ПРИМЕР МОРФОЛОГИЧЕСКОГО ЗАКРЫТИЯ Aclose(A)
21 февраля 2003Компьютерная графика Лекция 4 Астана 32 Морфологические операции
21 февраля 2003Компьютерная графика Лекция 4 Астана 33 Подавление и устранение шума Устранение шума в бинарных изображениях Широко известный способ - устранение шума с помощью операций математической морфологии: Сужение (erosion) Расширение (dilation) Закрытие (closing) Раскрытие (opening)
21 февраля 2003Компьютерная графика Лекция 4 Астана 34 Устранение шума в бинарных изображениях Пример бинарного изображению с сильным шумом
21 февраля 2003Компьютерная графика Лекция 4 Астана 35 Применения сужения к бинарному изображению с сильным шумом
21 февраля 2003Компьютерная графика Лекция 4 Астана 36 Устранение шума в бинарных изображениях Пример бинарного изображению с дефектами распознаваемых объектов
21 февраля 2003Компьютерная графика Лекция 4 Астана 37 Не лучший пример для морфологии Не во всех случаях математическая морфология так легко убирает дефекты, как хотелось бы…
21 февраля 2003Компьютерная графика Лекция 4 Астана 38 Применения операции открытия
21 февраля 2003Компьютерная графика Лекция 4 Астана 39 Выделение границ В\(B (-) S) –внутренняя граница (В S)\B- внешняя граница
21 февраля 2003Компьютерная графика Лекция 4 Астана 40 ПРИМЕР ОКОНТУРИВАНИЯ ОБЪЕКТА
21 февраля 2003Компьютерная графика Лекция 4 Астана 41 МОРФОЛОГИЧЕСКАЯ СКЕЛЕТИЗАЦИЯ
21 февраля 2003Компьютерная графика Лекция 4 Астана 42 ПРИМЕРЫ МОРФОЛОГИЧЕСКОЙ СКЕЛЕТИЗАЦИИ 1
21 февраля 2003Компьютерная графика Лекция 4 Астана 43 ПРИМЕРЫ МОРФОЛОГИЧЕСКОЙ СКЕЛЕТИЗАЦИИ 2
21 февраля 2003Компьютерная графика Лекция 4 Астана 44 Медианный фильтр Выбор медианы среди значений яркости пикселов в некоторой окрестности. Определение медианы: Медианный фильтр радиусом r – выбор медианы среди пикселов в окрестности [-r,r].
21 февраля 2003Компьютерная графика Лекция 4 Астана 45 Применение медианного фильтра Результат применения медианного фильтра с радиусом 5 пикселов Результат применения медианного фильтра с радиусом в 7 пикселов к изображению с шумом и артефактами в виде тонких светлых окружностей.
21 февраля 2003Компьютерная графика Лекция 4 Астана 46 Очистка изображения с помощью медианного фильтра Фильтр с радиусом 3x3
21 февраля 2003Компьютерная графика Лекция 4 Астана 47 Очистка изображения с помощью медианного фильтра Фильтр с радиусом 3x3
21 февраля 2003Компьютерная графика Лекция 4 Астана 48 Быстрая реализация медианного фильтра Медианный фильтр считается дольше, чем операция свертки, поскольку требует частичной сортировки массива яркостей окрестных пикселей. Возможности ускорения: Делать несколько шагов быстрой сортировки до получения медианы Конкретная реализация для каждого радиуса (3x3, 5x5)
21 февраля 2003Компьютерная графика Лекция 4 Астана 49 Анализ информации, содержащейся в изображении Нас интересуют области однородные по некоторому признаку - например по яркости. Простейший случай – области, яркость который выше/ниже некоторого порога
21 февраля 2003Компьютерная графика Лекция 4 Астана 50 Выделение связных областей Определение связной области: Область, каждый пиксель которой связан с одним из других пикселей, принадлежащих данной области. Связность пикселей: 4-связность8-связность
21 февраля 2003Компьютерная графика Лекция 4 Астана 51 Разметка связных областей Бинарное изображениеРазмеченное изображение
21 февраля 2003Компьютерная графика Лекция 4 Астана 52 Рекурсивная разметка связных областей (1) void Labeling(BIT* img[], int* labels[]) { // labels должна быть обнулена L = 1; for(y = 0; y < H; y++) for(x = 0; x < W; x++) if( (img[x][y] = = 1) && (labes[x][y] = = 0) ) { Fill(img, labels, x, y, L++); }
21 февраля 2003Компьютерная графика Лекция 4 Астана 53 Рекурсивная разметка связных областей (2) void Fill(BIT* img[], int* labels[], int x, int y, int L) { if( (labels[x][y] = = 0) && (img[x][y] = = 1) ) { labels[x][y] = L; if( x > 0 ) Fill(img, labels, x – 1, y, L); if( x < W - 1 ) Fill(img, labels, x + 1, y, L); if( y > 0 ) Fill(img, labels, x, y - 1, L); if( y < H - 1 ) Fill(img, labels, x, y + 1, L); }
21 февраля 2003Компьютерная графика Лекция 4 Астана 54 Разметка связных областей путем последовательного сканирования Последовательно, сканируем бинарное изображение сверху вниз, слева направо: if A = O do nothing else if (not B labeled) and (not C labeled) increment label numbering and label A else if B xor C labeled copy label to A else if B and C labeled if B label = C label copy label to A else copy either B label or C label to A record equivalence of labels Постобработка - переразметка с учетом эквивалентностей областей
21 февраля 2003Компьютерная графика Лекция 4 Астана 55 Разметка связных областей путем последовательного сканирования Случай конфликта: Постобработка - переразметка с учетом эквивалентностей областей
21 февраля 2003Компьютерная графика Лекция 4 Астана 56 Анализ формы связных областей Для каждой области можно подсчитать некий набор простейших числовых характеристик: Площадь Периметр Компактность Ориентацию главной оси инерции Удлиненность (эксцентриситет) На основе этих характеристик можно классифицировать получаемые области.
21 февраля 2003Компьютерная графика Лекция 4 Астана 57 Анализ формы связных областей Площадь – количество пикселей в области; Периметр – количество пикселей принадлежащих границе области; Компактность – отношение квадрата периметра к площади; Наиболее компактная фигура – круг,.
21 февраля 2003Компьютерная графика Лекция 4 Астана 58 Подсчет периметра области 1.Пиксель лежит на границе области, если он сам принадлежит области и хотя бы один из его соседей области не принадлежит. (внутренняя граница) 2.Пиксель лежит на границе области, если он сам не принадлежит области и хотя бы один из его соседей области принадлежит. (внешняя граница) Периметр зависит также от того 4-х или 8-ми связность используется для определения соседей.
21 февраля 2003Компьютерная графика Лекция 4 Астана 59 Пример периметров области Область Внутренняя границаВнешняя граница
21 февраля 2003Компьютерная графика Лекция 4 Астана 60 Статистические моменты области Дискретный центральный момент m ij области определяется следующим образом: n – общее количество пикселей в области
21 февраля 2003Компьютерная графика Лекция 4 Астана 61 Инвариантные характеристики области Для распознавания нас интересуют характеристики инвариантные по отношению к масштабированию, переносу, повороту: Удлиненность, нецентрированность (эксцентриситет) Компактность
21 февраля 2003Компьютерная графика Лекция 4 Астана 62 Ориентация главной оси инерции Не является инвариантной к повороту, но в ряде случаев предоставляет полезную информацию об ориентации объекта:
21 февраля 2003Компьютерная графика Лекция 4 Астана 63 Пример изображения с подсчитанными характеристиками областей
21 февраля 2003Компьютерная графика Лекция 4 Астана 64 Другие инвариантные характеристики области
21 февраля 2003Компьютерная графика Лекция 4 Астана 65 Пример изображения для обработки
21 февраля 2003Компьютерная графика Лекция 4 Астана 66 Литература library/cv/cv_intro.html courses/cg2000b/notes/lect_1.doc
21 февраля 2003Компьютерная графика Лекция 4 Астана 67 Задания cg02b/assigns/hw-3/hw3.html cg01b/hw4/hw-4.htm