Анализ изображений и видео, часть 1, осень 2016: Image Processing 2

66
Анализ изображений и видео Наталья Васильева [email protected] HP Labs Russia 8 октября 2014, Computer Science Center Лекция 3: Обработка изображений часть 2

Transcript of Анализ изображений и видео, часть 1, осень 2016: Image Processing 2

Анализ изображений и видео

Наталья Васильева [email protected] HP Labs Russia

8 октября 2014, Computer Science Center

Лекция 3: Обработка изображений – часть 2

2 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Анализ изображений: мы бы хотели...

•  чтобы компьютер «понимал» семантику сцены на изображении •  автоматически распознавать что и где изображено

•  категоризировать и идентифицировать объекты, определять их свойства и отношения

Slide credit: M. Everingham

3 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Чтобы распознать, что и где изображено...

Первый шаг – выделение областей изображения, которые могут представлять собой объект: •  выделение однородных

областей •  выделение неоднородностей,

разрывов, перепадов, границ

4 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

План лекции

• Выделение компонент связности • Выделение краев • Математическая морфология

5 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Выделение компонент связности

Компонента связности – множество пикселей изображения, такое что для любых двух точек из этого множества существует путь, целиком состоящий из элементов этого множества. Путь – последовательность смежных пикселей. Смежные пиксели – соседи и их значения удовлетворяют некоторому критерию сходства.

– 4-связность

– 8-связность

6 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Выделение компонент связности: алгоритм

0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0 0 0 0 0 0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

0

0

0 0 0

0 0 0

0 0 0

0 0 0 0 0 0

0 0 0 0 0

1 1

1 1 1 1 1 1 1 1

1 1 1 1

1 1 1 1

1 1 1

1 1

1 1

2 2 3 3

3 3

3 3

4 4

3 3 3 3

3 3 3 3

3 3 3

3 3 3

5 3

5 3 6 6 3 3 3 7

0

Первый проход: размечаем пиксели, запоминаем пары эквивалентных номеров

7 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Выделение компонент связности: алгоритм

0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0 0 0 0 0 0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

0

0

0 0 0

0 0 0

0 0 0

0 0 0 0 0 0

0 0 0 0 0

1 1

1 1 1 1 1 1 1 1

1 1 1 1

1 1 1 1

1 1 1

1 1

1 1

1 1 3 3

3 3

3 3

3 3

3 3 3 3

3 3 3 3

3 3 3

3 3 3

3 3

3 3 3 3 3 3 3 3

0

Второй проход: переразмечаем с учетом запомненных пар эквивалентности

8 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Компоненты связности

9 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

План лекции

• Выделение компонент связности • Выделение краев • Математическая морфология

10 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Обнаружение разрывов, перепадов яркости

•  Обнаружение точек •  Обнаружение линий •  Обнаружение перепадов яркости •  Детекторы краев

Slide source: S. Lazebnik

•  Неоднородности, резкие перепады яркости на изображении – формируют края, контуры объектов

•  Содержат больше семантической информации, чем однородные области

•  Более компактный вариант представления семантики на изображении

11 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Обнаружение точек�

Точка обнаружена, если |g| ≥ T, • T – неотрицательный порог, g – результат свертки изображения с маской

12 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Обнаружение линий

•  Пусть g1, g2, g3, g4 – результаты свертки изображения с масками •  Если в точке x |gi| > |gj| для всех j≠i, то точка x лежит на линии, соответствующей маске i.

13 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Обнаружение перепадов Модель идеального

перепада

Горизонтальный профиль яркости (строка изображеня)

Модель наклонного перепада

Первая поизводная

Вторая поизводная

14 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Обнаружение перепадов

Фрагмент изображения Профиль яркости Первая производная

края соответсвуют экстремумам производной

Slide credit: S. Lazebnik

15 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Градиент изображения Градиент направлен в сторону наибольшего изменения интенсивности

Направление градиента:

Величина градиента:

16 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Дифференцирование и свертка

Для функции двух переменных f(x,y), частная производная по х:

Частная производная линейна и

инвариантна к переносу => м.б. выражена через операцию свертки

Приближение разностной производной: что является сверткой с ядром:

∂f∂x

= limε→0

f x + ε, y( )ε

−f x,y( )ε

⎛ ⎝ ⎜

⎞ ⎠ ⎟

∂f∂x≈f xn+1,y( )− f xn , y( )

Δx

-1 1

Source: D. Forsyth, D. Lowe

17 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Вычисление градиента изображения

Roberts: Prewitt: Sobel:

Дискретный случай:

Операторы для приближенного вычисления первых частных производных:

18 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

Slide credit: S. Lazebnik

Edge map (карта силы краев)

19 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

20 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Вычисление второй производной

Вычисление второй производной: Лапласиан

• Маски Лапласиана:

2

2

2

22 ),(),(

yyxf

xyxff

∂+

∂=∇

21 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Поведение производных на перепадах яркости с шумом

Сигнал, искаженный гауссовым шумом с stddev = 0, 0.1, 1.0 и 10.0

22 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Влияние шума на первую производную

Где край?

Source: S. Seitz

23 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Влияние шума

• Основанные на разностных производных фильтры очень чувствительны к шуму

•  Из-за шума значения яркости соседних пикселей могут сильно отличаться •  Чем сильнее шум, тем больше отклик фильтра

• Что делать? Использовать сглаживание •  Сглаживание уменьшает разницу между соседями

Source: D. Forsyth

24 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Решение: сглаживание перед дифференцированием

Для обнаружения краев ищем экстремумы )( gfdxd

f

g

f * g

)( gfdxd

Source: S. Seitz

25 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

• Дифференцирование и свертка ассоциативны:

• Это экномит 1 оперцию:

gdxdfgf

dxd

∗=∗ )(

Воспользуемся свойствами свертки

gdxdf ∗

f

gdxd

Source: S. Seitz

26 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Поизводная Гауссова фильтра

* [1 -1] =

Slide credit: S. Lazebnik

27 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Производная Гауссова фильтра

x-direction y-direction

Slide credit: S. Lazebnik

28 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Сглаживание подавляет шум, но размывает и смещает края

1 pixel 3 pixels 7 pixels

Сглаживание v.s. локализация края

Source: D. Forsyth

29 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

• Как точно локализовать край? • Как получить связный край?

Недостатки градиента

Source: D. Forsyth

30 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Свойства хорошего детектора краев

• Good detection: должен минимизировать ошибки первого и второго родов (ложные края и пропущенные края) • Good localization: найденный край должен быть как можно ближе к истинному краю • Single response: детектор должен выдавать единственную точку для одной точки истинного края, минимизировать число локальных максимумов рядом с истинным краем

Source: L. Fei-Fei

31 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Детектор Canny

J. Canny, A Computational Approach To Edge Detection, IEEE Trans. Pattern Analysis and Machine Intelligence, 8:679-714, 1986.

Source: L. Fei-Fei

1.  Свертка изображения с производной фильтра Гаусса 2.  Поиск значения и направления градиента 3.  Выделелине локальных максимумов (non-maximum suppression):

•  «Утоньшение» края 4.  Связывание краев и обрезание по порогу (hysteresis):

•  Определяем два порога: нижний и верхний •  Используем верхний порог для начала построения кривой, нижний –

для продолжения

32 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

Исходное изображение

33 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

Норма градиента

34 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

Пороговая обработка

35 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

Утоньшение (non-maximum suppression)

36 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Effect of σ (Gaussian kernel spread/size)

Canny with Canny with original

The choice of σ depends on desired behavior •  large σ detects large scale edges •  small σ detects fine features

Source: S. Seitz

37 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Выделение краев: примеры

Sobel

Canny Исходное

38 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

План лекции

• Выделение компонент связности • Выделение краев • Математическая морфология

39 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Математическая морфология

•  Обработка изображений на языке теории множеств

•  Первые работы: Jean Serra, Georges Matheron (1964)

•  Бинарная морфология a Z2 •  Элемент множества – точка с координатами (x,y), принадлежащая объекту на изображении

• Трехмерная морфология (grayscale morphology) a Z3 •  Элемент множества – точка (x, y, z), (x, y) – координаты точки на изображении, z - яркость точки

40 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Базовые операции теории множеств

41 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Отражение и перенос

} |{ˆ BbbB ∈−=

} |{ AazaAz ∈+=

Центральное отражение:

Параллельный перенос:

42 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Структурный элемент

Структурный элемент – некоторое двоичное изображение произвольной формы с выделенным начальным элементом (origin)

При морфологической обработке происходит зондирование (probing) исходного изображения структурным элементом

43 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Основные операции математической морфологии

Dilation – расширение, наращивание Erosion – эрозия, сужение

Opening – размыкание, открытие (сглаживание по отношению к объекту) Closing – замыкание, закрытие (сглаживание по отношению к фону)

Базовые:

Производные:

44 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Расширение, наращивание, дилатация Dilation

Расширение множества А по множеству В:

B – структурный примитив (элемент), структурообразующее множество

 

45 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Dilation: примеры

46 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Dilation: примеры  

1 1 1 1 1 1 1 1 1

1 1 1 1 1 0 1 0 0

0 1 0 1 1 1 0 1 0

47 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Применение расширения

48 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Erosion Эрозия

Эрозия множества А по множеству В:

B – структурообразуещее множество (примитив)

49 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Erosion Эрозия

Эрозия множества А по множеству В:

B – структурообразуещее множество (примитив)

50 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Эрозия: примеры

51 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Эрозия: примеры

1 1 1 1 1 1 1 1 1

1 1 1 1 1 0 1 0 0

1 0 1 0 1 0 1 0 1

52 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Применение расширения и эрозии

Расширение – заполнение «дырок» определенной формы и размера, задаваемыми структурным элементом Эрозия – удаление объектов определенной формы и размера, задаваемыми структурным элементом

Цель: заполнение «дырок», удаление объектов без «побочных» эффектов на остальных объектах изображения

Решение: комбинирование расширения и эрозии с одним и тем же структурным элементом

53 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Пример

54 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Размыкание, открытие Opening

Размыкание множества А по множеству В:

•  сглаживает контуры объекта •  обрывает узкие перешейки •  ликвидирует узкие выступы

55 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Opening

BBABA ⊕−= )(!

Сдвиги B внутри A

{ }ABBBA zz ⊆= )()(∪"

56 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Замыкание, закрытие Closing

Замыкание множества А по множеству В:

•  сглаживает контуры объекта •  «заливает» узкие разрывы и узкие углубления •  ликвидирует небольшие отверстия •  заполняет промежутки контура

57 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Closing

BBABA −⊕=• )(

58 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Свойства

Opening (i)  (ii)  (iii)  (A°B)°B = A°B

Closing (i)  (ii)  (iii)  (A•B)•B = A•B

ABA ⊂!

BDBCDC !! ⊂⇒⊂

BAA •⊂

BDBCDC •⊂•⇒⊂

59 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

60 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Преобразование «успех/неудача» Hit-or-Miss Transform

Задача – найти на изображении местоположение объектов заданной формы Используется составной структурный элемент: B1 – для выделения объекта, B2 – для выделения фона B1 fits the object while B2 misses the object (fits the background)

61 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Задача – найти местоположение фигуры X

62 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Как можно выделить границу объекта с помощью морфологических операций?

Выделение границ

63 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Как можно выделить границу объекта с помощью морфологических операций?

Выделение границ

64 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Заполнение областей

,...3,2,1 )( 1 =∩⊕= − kABXX ckk

65 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Выделение связных компонент

Y – искомая связная компонента, p – произвольная точка из Y

66 © Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Построение остова

K

kk ASAS0)()(

=

∪=

BkBAkBAASk !)()()( −−−=

})(|max{ Φ≠−= kBAkK

))((0

kBASA k

K

k⊕∪=

=