Лекция 07 Обработка видео

63
Анализ последовательностей Сайт курса: http://cvbeginner.blogspot.com/ 1

Upload: victor-kulikov

Post on 05-Jul-2015

4.417 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Лекция 07 Обработка видео

Анализ последовательностей

Сайт курса:

http://cvbeginner.blogspot.com/

1

Page 2: Лекция 07 Обработка видео

Из прошлой лекции…

• Локальные особенности

• Дескрипторы

• Скользящее окно

• Градиенты

2

Page 3: Лекция 07 Обработка видео

Трассировка

3

Page 4: Лекция 07 Обработка видео

План лекции

• Технические моменты

• Модель фона

• Адаптивная модель фона

• Сопровождение

• Mean Shift

• Оптический поток (Lucas-Canade)

• Predator

4

Page 5: Лекция 07 Обработка видео

Работа с видео OpenCV

cv::VideoCapture cap;

//Открыть файл

cap.open(‘filename’);

cv::Mat img;

//Загрузить в память изображение

cap >> img;

5

Page 6: Лекция 07 Обработка видео

Работа с видео Matlab//Открыть файл и получить указатель

hReader = mmreader(‘filename');

//Кол-во кадров в файле

numFrames = get(hReader, 'numberOfFrames');

//Прочитать i-ый кадр

x = read(hReader,i);

ВАЖНО: Необходимо чтобы былиустановлены нужные кодеки. Естьбесплатные наборы кодеков напримерK-Lite codec pack.

6

Page 7: Лекция 07 Обработка видео

Задача

• Наблюдение за объектом

• Захват объекта с помощьюограничевающего прямоугольника или с помощью попиксельной маске

• Трассировка. Вход первое положение объекта, выход -положение объекта в других кадрах

7

Page 8: Лекция 07 Обработка видео

Система наблюдения

1. Неподвижная камера

2. Постоянный фон

8

Page 9: Лекция 07 Обработка видео

Простой алгоритм трассировки

• Вычитание фона:

–Взяли снимок без объектов, только фон

–Из снимка с объектом вычитаем фон

–Строим передний план

–Считаем параметры связанных компонент

–Фильтрация медианная или морфологическая

9

Page 10: Лекция 07 Обработка видео

Пример животные

• Идеальные лабораторные условия

10

Page 11: Лекция 07 Обработка видео

Пример эритроциты

• Движущийся фон

• Множество объектов

11

Page 12: Лекция 07 Обработка видео

Реальные условия

• Фон существенно меняется

12

Slide credit: Антон Конушин

Page 13: Лекция 07 Обработка видео

Изменения яркости• У каждого пикселя индивидуальная функция

яркости от времени

• Строим модель фона

• Если пиксель пришедший не удовлеторяет модели фона, значит он относится к переднему плану

13

v

t

Page 14: Лекция 07 Обработка видео

Блок схема алгоритма

14

Начальное приближение фона

Межкадровая разница

Выделение объектов

Обновление модели фона

Page 15: Лекция 07 Обработка видео

Среднее изображение фон

15

Page 16: Лекция 07 Обработка видео

Медианная модель фона

16

Page 17: Лекция 07 Обработка видео

Как построить медиану для 1000 кадров?

17

Page 18: Лекция 07 Обработка видео

Медианная фильтрация или среднее

18

Page 19: Лекция 07 Обработка видео

Обновление фона

19

Page 20: Лекция 07 Обработка видео

Модуль шума в точке изображения

• В точке шум в яркосте можно описать с помощью нормального распределения (среднего значения и дисперсии)

• Тогда вероятность что пиксель принадлежит фону будет равна:

20

Page 21: Лекция 07 Обработка видео

Модель фона как смесь гауссианов

BackgroundSubtractorMOG

P. KadewTraKuPong and R. Bowden, An improved adaptive background mixture model for real-time tracking with shadow detection, Proc. 2nd European Workshp on Advanced Video-Based Surveillance Systems, 2001

21

Page 22: Лекция 07 Обработка видео

Трассировка множества объектов

22

Page 23: Лекция 07 Обработка видео

Сопровождение объектов

23

Page 24: Лекция 07 Обработка видео

Сопровождение объектов• Выделили «объекты интереса» на каждом

кадре с помощью вычитания фона в виде набора блобов

• Какому объекту (следу) какой блобсоответствует?

• Фактически – задача сопоставления или ассоциации данных (Data association)

• «Tracking by detection»

• Можем каждый объект описать набором признаков

24

Page 25: Лекция 07 Обработка видео

Простейшая стратегия

25

Slide credit: Антон Конушин

Page 26: Лекция 07 Обработка видео

Ограничения

26

Slide credit: Антон Конушин

Page 27: Лекция 07 Обработка видео

Трассировка через обнаружения

27

Начальное приближение фона

Межкадровая разница

Выделение объектов

Ассоциация объектов в треки

Инициализация новых треков

Обновление модели фона

Page 28: Лекция 07 Обработка видео

Что делать если фон изменяется?

28

Page 29: Лекция 07 Обработка видео

Перерыв

• Вопрос?

29

Page 30: Лекция 07 Обработка видео

Функции правдоподобия

• Функции дающие ответ на вопрос на сколько вероятно что точка принадлежит объекту

30

Page 31: Лекция 07 Обработка видео

Прямое сопоставление (корреляция)

31

Page 32: Лекция 07 Обработка видео

Обратная проекция гистограммы

32

Page 33: Лекция 07 Обработка видео

Трассировка смещением среднего

33

Page 34: Лекция 07 Обработка видео

Трассировка смещением среднего

34

Вероятность признака в модели Вероятность признака в изображении

Page 35: Лекция 07 Обработка видео

Расстояние между нормированными векторами

35

Page 36: Лекция 07 Обработка видео

Переход к непрерывной модели

36

Прогнозированная плотность Реальные измерения

Page 37: Лекция 07 Обработка видео

Смещение

Интересующий

регион

Центр масс

Page 38: Лекция 07 Обработка видео

Смещение

Интересующий

регион

Центр масс

Page 39: Лекция 07 Обработка видео

Смещение

Интересующий

регион

Центр масс

Page 40: Лекция 07 Обработка видео

Смещение

Интересующий

регион

Центр масс

Page 41: Лекция 07 Обработка видео

Смещение

Интересующий

регион

Центр масс

Page 42: Лекция 07 Обработка видео

Смещение

Интересующий

регион

Центр масс

Page 43: Лекция 07 Обработка видео

Интересующий

регион

Центр масс

Page 44: Лекция 07 Обработка видео

Трассировка смещением среднего

44

Page 45: Лекция 07 Обработка видео

Реализация в OpenCV

• int meanShift(InputArrayprobImage, Rect& window, TermCriteria criteria)

• probImage – изображение правдоподобия

• Window – выходное окно описывающее объект

• Criteria – критерий остановки

45

Page 46: Лекция 07 Обработка видео

Пример

• http://www.youtube.com/watch?v=vGDy20VxwAA&feature=related

46

Page 47: Лекция 07 Обработка видео

Выбор признаков

47

COLLINS, R. AND LIU, Y.. On-line selection of discriminative tracking features. ICCV 2003

Page 48: Лекция 07 Обработка видео

Выбор признаков

48

Slide credit: Антон Конушин

Page 49: Лекция 07 Обработка видео

49

Page 50: Лекция 07 Обработка видео

Predator (совмещение обучения с трассировкой)

• http://www.youtube.com/user/ekalic2

50

Zdenek Kalal et al. Forward-Backward Error: Automatic Detection of Tracking Failures

, ICPR 2010

Page 51: Лекция 07 Обработка видео

Итог по трассировке

• Что лучше обнаружение и сопоставление или трассировка?

51

Page 52: Лекция 07 Обработка видео

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

• Задача - аналог задачи сопоставления изображений (dense matching)

• Один из базовых инструментов анализа изображений

52

Slide credit: Антон Конушин

Page 53: Лекция 07 Обработка видео

Задача

53

Как оценить движение пикселей от H в изображение I?

Пусть дан пиксель H, наити близкие пиксели того же цвета в I

•Константный цвет: точка в H выглядит также, как и в I

– Для изображения в градациях серого, это постоянная яркость

•Малое движение: точки не уезжают далеко между кадрами

Slide credit: Антон Конушин

Page 54: Лекция 07 Обработка видео

Уравнение оптического потока

54

Сколько неизвестных и уравнений для каждого пикселя?

Slide credit: Антон Конушин

Page 55: Лекция 07 Обработка видео

Дополнительные ограничения• Как можно получить больше уравнений?

– Пусть оптический поток меняется плавно

– Пусть для всех пикселей p из окрестности (x,y) смещение (u,v) постоянно

• В чем теперь проблема?

55

Page 56: Лекция 07 Обработка видео

Алгоритм Лукаса-Канаде

56

Slide credit: Антон Конушин

Page 57: Лекция 07 Обработка видео

Условия на разрешимость

57

Slide credit: Антон Конушин

Page 58: Лекция 07 Обработка видео

58

Page 59: Лекция 07 Обработка видео

Контрастная область

59

Slide credit: Антон Конушин

Page 60: Лекция 07 Обработка видео

Реализация

• GoodFeatureToTrack

–Выбор особых точек (фактически, Harris)

• cvCalcOpticalFlowPyrLK

–Иерархическое расширение метода Lucas-Kanade для оптического потока

60

Page 61: Лекция 07 Обработка видео

Оценка движения

61

Page 62: Лекция 07 Обработка видео

Решение задачи Structure from motion

62

Page 63: Лекция 07 Обработка видео

Вопросы

63