CV2011 Lecture 11. Basic video

107
Основы видеонаблюдения

Transcript of CV2011 Lecture 11. Basic video

Page 1: CV2011 Lecture 11. Basic video

Основы видеонаблюдения

Page 2: CV2011 Lecture 11. Basic video

Общая информация

Страница курса http://courses.graphicon.ru/main/vision

Этот курс подготовлен и читается при

поддержке Microsoft Research

Page 3: CV2011 Lecture 11. Basic video

Задачи видеонаблюдения

• Выделение «объектов интереса» в видео и отслеживание их движения в последующих кадрах

• Выделение объектов интереса • Результат - ограничивающий

прямоугольник • Или попиксельая маска

• Отслеживание (video tracking) • Вход – положение объекта на первом

кадре • Результат – траектория движения

объектов (след или “track”)

Page 4: CV2011 Lecture 11. Basic video

Проблемы

• Масштабируемость • Видео гораздо больше одного изображения, гораздо

выше вычислительная нагрузка

• Изменение по времени

• Вид объекта меняется от кадра к кадру из-за ракурса, изменения освещения, внутренних изменений (идущий человек)

• Несколько объектов

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

Page 5: CV2011 Lecture 11. Basic video

• Потребуются размеченные данные, в которых отмечено положение объекта в каждом (или в ключевых кадрах)

• Ошибка отслеживание – расстояние до ground truth данных

• Ожидаемая ошибка на видеопоследовательности

• Точность (precision)

• Надежность (robustness)

Оценка качества

Page 6: CV2011 Lecture 11. Basic video

Выбор объекта интереса

• Инициализация вручную

• Детектор объектов • Детектор «пешехода» • Детектор «лиц»

• Сегментация видео • Выделение движущихся объектов

Page 7: CV2011 Lecture 11. Basic video

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

• Построим стандартную, простую систему видеонаблюдения

• Упрощение 1: стационарная камера • Упрощение 2: стабильный фон, мало изменяющийся

между камера

Page 8: CV2011 Lecture 11. Basic video

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

• Background subtraction • Возьмем изображение без объектов (фон, background) • Вычтем фон из новых изображений с объектами • Сравним разницу для каждого пикселя с порогом

– Порог – параметр алгоритма • Если разница больше порога - то пиксель принадлежит

«переднему плану» (foreground) • Получаем маску «переднего плана»

- =

Page 9: CV2011 Lecture 11. Basic video

Обработка маски переднего плана

• Выделим отдельные объекты как связанные компоненты • «Блоб» («капля», blob) - связанная компоненты маски переднего

плана • Для подавления шума отфильтруем маску переднего плана

Медианная фильтрация, морфология Это простейший (и работоспособный) алгоритм выделения

движущихся объектов Для мышек часто применялся

Page 10: CV2011 Lecture 11. Basic video
Page 11: CV2011 Lecture 11. Basic video

Реальная картина

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

Page 12: CV2011 Lecture 11. Basic video

Яркость по времени

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

• Яркость (цвет) xi каждого пикселя фона изменяется по времени t • Построим модель яркости(цвета) xi пикселя i фона • Если на новом кадре яркость (цвет) пикселя не удовлетворяет

модели фона - значит это пиксель принадлежит движущемуся объекту

Page 13: CV2011 Lecture 11. Basic video

Общая схема вычитания фона

- Initialize_background_model() - For t = 1:N

- Compute_frame_difference() - Threshold_frame_difference() - Noise_removal() - Update_background_model()

- end

Page 14: CV2011 Lecture 11. Basic video

Усреднение кадров

• Простейшая модель фона – одно изображение чистого фона

• Возьмем N кадров и

попиксельно усредним интенсивности (цвета)

Page 15: CV2011 Lecture 11. Basic video

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

• Когда не работает усреднение: • Всегда в кадре движущиеся объекты • Случайные и резкие изменения яркости (блики, засветка)

• Вместо усреднения берем медиану

Page 16: CV2011 Lecture 11. Basic video

Среднее vs Медиана

Средний цвет Медиана

Page 17: CV2011 Lecture 11. Basic video

Вычитание медианного фона

-

=

Page 18: CV2011 Lecture 11. Basic video

Другие методы

• Во многих случаях медиана может не помогать • Пр.: когда мышь сидит в одном месте >50% кадров

тестового видеоролика

• Предлагаются другие методы, на основе оптимизации целевой функции • Например, разобьём все изображения на сегменты • Будем выбирать сегменты из разных кадров, чтобы была

наиболее плавная и стабильная картинка

Page 19: CV2011 Lecture 11. Basic video

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

Что делать, если освещенность постепенно меняется?

Moving average – постоянное обновление фона Взвешенная сумма текущего и предыдущих N

кадров

Ещё один (или несколько) параметр – вес кадра

Page 20: CV2011 Lecture 11. Basic video

Виды помехи

Page 21: CV2011 Lecture 11. Basic video

Гауссиана

• Предположение: • Интенсивность меняется в небольших пределах вокруг

какого-то значения • «Шум камеры» • Нормальное распределение

Wren, Christopher R., Ali Azarbayejani, Trevor Darrell, and Alex Pentland. “Pfinder: Real-Time Tracking of the Human Body,” IEEE PAMI, 1997

Page 22: CV2011 Lecture 11. Basic video

Вычисление параметров

• Для одного канала: • Вычисляем среднее

• Вычисляем дисперсию

• Вероятность нового пикселя y:

N

iixN 1

1

N

iixN 1

22 )(1

1

2

2

2)(

21),|(

x

ex

Page 23: CV2011 Lecture 11. Basic video

Обновление параметров

11 )1( ttt x

211

21

21

21 ))(1())(( tttttt x

• Обновление матожидания

• Обновление дисперсии

а – скорость обновления (обучения)

Page 24: CV2011 Lecture 11. Basic video

Многоканальное изображение

• Можно рассчитать полную матрицу ковариации K • Обновлять полную матрицу сложно • Обновление только среднего, с сохранением

ковариации

11 )1( ttt x

Page 25: CV2011 Lecture 11. Basic video

Смесь гауссиан

• Один гауссиан – один кластер • Значения могут группироваться в несколько

кластеров

W.E.L.Grimson, C.Stauffer. Adaptive background mixture models for real-time tracking. CVPR 1999

Page 26: CV2011 Lecture 11. Basic video

Распределение интенсивности красного и зеленого каналов

Смесь гауссиан

Page 27: CV2011 Lecture 11. Basic video

- вес компоненты I в момент t

),,()( ,,1

, titit

K

itit xNxP

ti,

Вероятность интенсивности y при модели смести К гауссиан

• Вычисление смеси требует EМ алгоритма (не в реальном времени), поэтому используем приближение

Смесь гауссиан

Page 28: CV2011 Lecture 11. Basic video

Обучение смеси на лету

• Пусть N – количество компонент в смеси • Инициализируем 1ую компоненту по первому

изображению, вес = 1, вес остальных – 0 • Сравниваем пиксель с каждой компонентой, пока

не найдем совпадения • Обновляем матожидание и дисперсию совпавшей

компоненты • Если совпадения не найдено, то заменяем

компоненту с наименьшим весом • Обновляем веса

Page 29: CV2011 Lecture 11. Basic video

Обновление весов

tititi aMa ,1,, )1(

tiM ,

Обновление весов:

= 1, если интенсивность пикселя удовлетворяет i-ой компоненте

После обновления всех весов, они нормализуются

Page 30: CV2011 Lecture 11. Basic video

Моделирование фона

• Упорядочим все компоненты по критерию • Чем «стабильнее» компонента, тем выше • Чем больше вес (чаще встречается, тем тоже выше

• Определим порог T - какая доля выборки для каждого пикселя должна соответствовать фону

• Тогда фон для каждого пикселя:

• Все остальные компоненты - объекты

/i

b

ii

bTB

1

)(minarg

Page 31: CV2011 Lecture 11. Basic video

Пример работы

(1) (2) (3) (4)

1. Исходный кадр 2. Модель фона (старшая гауссиана) 3. Мат.ожидания второй гауссианы 4. Маска переднего плана

Page 32: CV2011 Lecture 11. Basic video

Как настраивать модель? • Если есть размеченные данные:

• Оценка precision/recall на наборе видеороликов

• Выбор параметров, оптимизирующих желаемую точность

• Если нет размеченных данных • Можно взять видео без объектов • Настроить параметры таким образом,

чтобы получить заданное количество ложных обнаружений

• Минимальные пороги для достижения заданной «чувствительности»

Page 33: CV2011 Lecture 11. Basic video

Непараметрическая модель

A. Elgammal, D. Harwood, and L. Davis. Non-parametric model for background subtraction,“ ICCV'99 Frame-rate workshop, 1999

Page 34: CV2011 Lecture 11. Basic video

Непараметрическая модель

N

jjxxK

NxP

1

)(1)(

Nxx ,...,1Пусть - N значений пикселя (выборка)

K – ядровая функция, обычно тоже гауссиан

TxP )( - тогда фон

Page 35: CV2011 Lecture 11. Basic video

Непараметрическая модель

• K можем считать с помощью lookup-таблицы • Можно суммировать до тех пор, пока не

превысим порог (и пометим как объект) • Оценка ширины ядра:

268.0m

1 ii xxmedianm

Page 36: CV2011 Lecture 11. Basic video

Двухэтапное обнаружение • Объект может случайно сдвинуться дальше, чем в

обученной модели • Образуются ложные обнаружения • Второй этап обнаружения:

• Сравним пиксель со всеми из окрестности:

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

сдвинулась:

Page 37: CV2011 Lecture 11. Basic video

Схема обновления фона • Short-term model

• N последних элементов • Выборочное обновление

• Long-term model • N элементов за долгий период времени • Слепое обновление • Больше false positives (т.к. модель не учитывает

последних изменений) • Больше false negatives (т.к. в модель слепо можем

добавить объекты)

• Комбинированная модель • Находим объекты на обеих моделях • Берём их пересечение • Добавляем объекты из «срочной» модели, если они

граничат с найденным на «долгой» модели объектами

Page 38: CV2011 Lecture 11. Basic video

Пример работы

Page 39: CV2011 Lecture 11. Basic video

Поблочная обработка

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

• Точность сегментации получается хуже, зато считается статистика изображения в блоке, что повышает надежность

Page 40: CV2011 Lecture 11. Basic video

Статистики по окрестностям

Ko, T.[Teresa], Soatto, S.[Stefano], Estrin, D.[Deborah], Background Subtraction on Distributions, ECCV 2008

Page 41: CV2011 Lecture 11. Basic video

• Посчитаем статистику (гистограмму) по 3D окрестности пикселя (фон):

• Посчитаем статистику по 2д окрестности пикселя на текущем кадре:

• Вычислим разницу:

• Обновление модели:

Схема алгоритма

Page 42: CV2011 Lecture 11. Basic video

Результаты работы

Page 43: CV2011 Lecture 11. Basic video

Глобальные модели цветов

• Если у объекта и фона характерные цвета, то почему бы это не использовать?

• Построим цветовые модель объекта и модел фона

• Для каждого пикселя будем сравнивать вероятности принадлежности пиксела обоим моделям и выбирать ту, вероятность для которой будет выше

Page 44: CV2011 Lecture 11. Basic video

Модель фона

• Построим и глобальную, и локальную модели фона

• Глобальная: смесь гауссиан (GMM)

)1510( bK

bK

k

bk

bkr

bkrr INBxIp

1

),|()|(

Page 45: CV2011 Lecture 11. Basic video

• Построим и глобальную, и локальную модели фона

• Глобальная: смесь гауссиан (GMM)

• Локальная: один гауссиан

)1510( bK

Модель фона

Page 46: CV2011 Lecture 11. Basic video

• Глобальная: смесь гауссиан (GMM)

• Локальная: один гауссиан

• Объединенная:

bK

k

bk

bkr

bkrrglobal INBxIp

1

),|()|(

),|()( Br

Brrrlocal INIp

)()1()|()( rlocalrrglobalrmix xpBxIpIp

)1510( bK

Общая модель фона

Page 47: CV2011 Lecture 11. Basic video

• Возьмём те пиксели, для которых вероятность фона низкая

• Обучим по ним смесь гауссиан (K=5)

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

frB tIp )(

Page 48: CV2011 Lecture 11. Basic video

Соотношение моделей?

BxifIpFxifFxIp

rrmix

rrrglobal

)()|(

)()1()|()( rlocalrrglobalrmix xpBxIpIp

?

Page 49: CV2011 Lecture 11. Basic video

)()1()|()( rlocalrrglobalrmix xpBxIpIp

Адаптивная смесь

Page 50: CV2011 Lecture 11. Basic video

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

Дивергенция Kullback-Liebler

дает разницу между двумя смесями гауссин

fbKL

)log)||((min0

bi

fkb

ifk

K

k i

fkfb w

wNNKLwKL

fbKL0

0fbKL модели идентичные

Page 51: CV2011 Lecture 11. Basic video

)|()( BxIpIp rrglobalrmix 1fbKL

KLfbKL

e 2

11

5.0

1fbKL

1

)()|()( 21

21

rlocalrrglobalrmix xpBxIpIp Только глобальная модель

Поровну локальная и глобальные модели

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

Page 52: CV2011 Lecture 11. Basic video

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

)()1()|()()( rlocalrrglobalrmix xpBxIpIp

• Параметр смешения моделей можно уточнять на каждом кадре, в т.ч. с учётом других факторов

• Глобальная модель позволит нам обрабатывать сложные случаи изменения фона, когда локальная модель срабатывает плохо и наоборот

BxifIpFxifFxIp

rrmix

rrrglobal

)()|(

Page 53: CV2011 Lecture 11. Basic video

Поддержка модели фона

Изменение освещенности • Автоподстройка камеры

• Лампы дневного света

• Включение света

Небольшое изменение освещенности: • Преобразование цветовых моделей на основе преобразования

гистограмм

Резкие изменения • Перестройка цветовой модели фона и переднего плана • Использование карты достоверности краёв как подсказки

}{}{ BII rBr

Page 54: CV2011 Lecture 11. Basic video

Поддержка модели фона

Page 55: CV2011 Lecture 11. Basic video

Поддержка модели фона • Движение в фоне

• Опираемся на глобальную модель

• Дрожание камеры • Применяем размытие по гауссу

• Уменьшаем вес локальной цветовой модели

• «Заснувшие» и «Пешеход» на заднем плане • Оставляем только самую большую связанную компоненту

Page 56: CV2011 Lecture 11. Basic video

Поддержка модели фона

Page 57: CV2011 Lecture 11. Basic video

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

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

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

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

• «Tracking by detection» • Можем каждый объект описать набором

признаков

Page 58: CV2011 Lecture 11. Basic video

Детерминированное слежение

Нахождение соответствий между объектами, найденными на соседних кадрах с учетом ограничений

Варианты: Новые объект Сопоставление старому следу Пропадание объекта

Page 59: CV2011 Lecture 11. Basic video

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

Простейшая стратегия в более сложных случаях не срабатывает, поэтому исследовались разные ограничения

Сопоставим ближайшее наблюдение следу

Page 60: CV2011 Lecture 11. Basic video

Виды ограничений

• (а) близость • (b) максимальная скорость • (c) малое изменение вектора скорости • (d) общее движение • (e) «жесткость»

Page 61: CV2011 Lecture 11. Basic video

Детерминированные алгоритмы

Двухкадровые Многокадровые

Page 62: CV2011 Lecture 11. Basic video

Базовый метод видеонаблюдения

• Обучение модели фона • Для каждого кадра

• Вычитание фона • Обработка маски (фильтрация, морфологии) • Выделение связанных компонент • Ассоциация объектов в треки • Инициализация новых треков • Обновление фона

Page 63: CV2011 Lecture 11. Basic video

Отслеживание объектов

• Что делать, если фон не стационарный? • Придётся строить какую-то модель объекта, и

искать на следующем кадре похожий объект

Page 64: CV2011 Lecture 11. Basic video

Current frame

… …

Схема слежения

Выбрать пространство

признаков

Представить модель в

выбранном пространстве

Инициализация модели

Page 65: CV2011 Lecture 11. Basic video

Поиск в окрестности в следующем

кадре

Старт с текущей позиции

Выбор положения,

максимизирующего сходство

Повторение процедуры

для следующего

кадра

Текущий кадр

… … Модель Кандидат

Схема слежения

Page 66: CV2011 Lecture 11. Basic video

Представление объектов

• Как будем описывать модель объекта и фона? • Некоторое приближение – адаптивные модели для вычитания

фона («глобальная цветовая модель фона» и «модель цвета объекта»

Page 67: CV2011 Lecture 11. Basic video

Множество точек

• Простейший kernel метод – отслеживание ключевых точек

• Общая проблема – быстрая деградация точек

• Решение – использование «стаи точек» (flock of features)

Page 68: CV2011 Lecture 11. Basic video

Пример: отслеживание руки

• Условия «стаи» • Никакие две особенности не совпадают (порог на

близость) • Никакая особенность не уходит далеко от медианного

центра (порог на удаление)

Page 69: CV2011 Lecture 11. Basic video

Пример: отслеживание руки

• Шаг 1: инициализация

• Находим 100 особенностей в рамке руки • Вычисляем медиану • Вычисляем цветовую статистику в окрестности центра

– одна гауссиана (или гистограмма нормализованная) • Можем вычислить карту цветовой сегментации

Page 70: CV2011 Lecture 11. Basic video

Пример: отслеживание руки

• Шаг 2: слежение • Отслеживаем особенности • Если особенность нарушает условия стаи, её удаляем

• Шаг 3: инициализация новых особенностей • Ищем особенности, используем карту вероятности цвета

кожи • Если вероятность <порога, отбрасываем особенность

Page 71: CV2011 Lecture 11. Basic video

Template matching

• Сопоставление шаблонов – поиск положения (bbox, эллипс)

• Ключевой вопрос – моделирование внешности: • Само изображение как шаблон (NCC)

– Ищем на следующем кадре похожие по кросс-корреляции фрагменты

• Карты краёв • Вероятностное моделирование

– Цвет, текстура, и т.д. (гистограммы обычно)

• Общая проблема – негладкость функции качества, из-за чего градиентные (итеративные) методы часто ошибаются

Page 72: CV2011 Lecture 11. Basic video

• HUTTENLOCHER, D., NOH, J., AND RUCKLIDGE, W.. Tracking nonrigid objects in complex scenes. ICCV 1993

Карта краёв

• Карта краёв выбирается как шаблон для дальнейшего сравнения • Вычисляется метрика Хаусдорфа на основании distance transform • Шаблон обновляется как набор краёв, ближайших к краям шаблона предыдущего кадра

Page 73: CV2011 Lecture 11. Basic video

Выбор опорной модели

Квантованная цветовая модель

Выбор пространства

признаков

Представим модель как

распределение (PDF)

признаков

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

1 2 3 . . . m

color

Prob

abili

ty

Слежение сдвигом среднего

Dorin Comaniciu, Visvanathan Ramesh, Peter Meer, Kernel-Based Object Tracking, PAMI 2003

• Метод на основе вероятностного представления модели объекта • Решение проблемы гладкости целевой функции

Page 74: CV2011 Lecture 11. Basic video

,f y f q p y

Сходство:

Модель (центр в 0)

Кандидат (центр в y)

1..1

1m

u uu mu

q q q

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

1 2 3 . . . m

color

Prob

abili

ty

1..1

1m

u uu mu

p y p y p

0

0.05

0.1

0.15

0.2

0.25

0.3

1 2 3 . . . m

color

Prob

abili

ty

Слежение сдвигом среднего

Page 75: CV2011 Lecture 11. Basic video

f y

Сходство: ,f y f p y q

Проблема: Цель

описывается только цветом

Пропадает информация о

положении

Решение: Покроем цель изотропным ядром

f(y) станет гладкой в y

f не гладкая Градиентные

методы не робастные

Возможны резкие скачки метрики при небольших

сдвигах

Слежение сдвигом среднего

Page 76: CV2011 Lecture 11. Basic video

1..i i nx

Пиксели цели

( )k x Изотропное, выпуклое, дифференцируемое, монотонно убывающее ядро (Пиксели по краям могут перекрываться, взаимодействовать с фоном и т.д.)

( )b x Индекс ячейки гистограммы (1..m) для пиксела x

2

( )iu i

b x uq C k x

Нормализация Вес пиксела

Вероятность фичи u в модели

0

0.05

0.1

0.15

0.2

0.25

0.3

1 2 3 . . . m

color

Prob

abili

ty

Вероятность фичи u в кандидате

0

0.05

0.1

0.15

0.2

0.25

0.3

1 2 3 . . . m

colorPr

obab

ility

2

( )i

iu h

b x u

y xp y C kh

Нормализация Вес пиксела

0

model

y

candidate

Слежение сдвигом среднего

Page 77: CV2011 Lecture 11. Basic video

1 , , mp y p y p y

1, , mq q q

Модель цели:

Кандидат:

Подобие: , ?f y f p y q

1 , , mp y p y p y

1 , , mq q q

q

p yy

1

1

The Bhattacharyya Coefficient

1cos

T m

y u uu

p y qf y p y q

p y q

Слежение сдвигом среднего

Page 78: CV2011 Lecture 11. Basic video

,f p y q

Начинаем с текущей позиции

q

Ищем в окрестности сл.

кадра

p y

Максимизируем сходство

Слежение сдвигом среднего

Page 79: CV2011 Lecture 11. Basic video

01 1 0

1 12 2

m mu

u u uu u u

qf y p y q p yp y

Линейное

приближение.

(вокруг y0)

0yПоложение модели: yПоложение кандидата:

2

12

nh i

ii

C y xw kh

2

( )i

iu h

b x u

y xp y C kh

Независимо от y

Оценка плотности!

(как функции от y)

1

m

u uu

f y p y q

Слежение сдвигом среднего

Page 80: CV2011 Lecture 11. Basic video

2

12

nh i

ii

C y xw kh

Мода = целевой максимум

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

Одна мода в окрестности

Предстваление цели достаточно

для распознавания

Слежение сдвигом среднего

Page 81: CV2011 Lecture 11. Basic video

Original Mean-Shift:

20

11 2

0

1

ni

ii

ni

i

y xx gh

yy xgh

Find mode of

2

1

ni

i

y xc kh

using

2

12

nh i

ii

C y xw kh

Extended Mean-Shift:

20

11 2

0

1

ni

i ii

ni

ii

y xx w gh

yy xw gh

2

1

ni

ii

y xc w kh

Find mode of using

Слежение сдвигом среднего

Мода = целевой максимум

2K x ck x k x g x

Page 82: CV2011 Lecture 11. Basic video

Epanechnikov kernel:

1 if x 10 otherwisex

k x

Особый класс радиально-симметричных ядер

2K x ck x

11

1

n

i iin

ii

x wy

w

20

11 2

0

1

ni

i ii

ni

ii

y xx w gh

yy xw gh

1 if x 10 otherwise

g x k x

Uniform kernel:

Слежение сдвигом среднего

k x g x

Page 83: CV2011 Lecture 11. Basic video

Иллюстрация

Page 84: CV2011 Lecture 11. Basic video

Проблема :

Масштаб цели

меняется

Масштаб (h) ядра должен

меняться

Решение:

Прогоняем поиск 3 раза с

разными h

Выбираем h, на котором достигается максимум

Слежение сдвигом среднего

Page 85: CV2011 Lecture 11. Basic video

Слежение сдвигом среднего

Пространство признаков: 161616 квантованное RGB

Page 86: CV2011 Lecture 11. Basic video

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

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

• В зависимости от разных факторов, объект может быть различим в разных каналах, по разным признакам

Page 87: CV2011 Lecture 11. Basic video

Схема метода

Page 88: CV2011 Lecture 11. Basic video

Оценка качества канала

Рассмотрим отдельный канал

Page 89: CV2011 Lecture 11. Basic video

Оценка каналов

• Всего 49 каналов, как линейные комбинации цветовых каналов:

Page 90: CV2011 Lecture 11. Basic video

Примеры оценки каналов

Page 91: CV2011 Lecture 11. Basic video

Сравнение методов

Один фиксированный канал (MeanShift)

Выбор каналов на лету

Page 92: CV2011 Lecture 11. Basic video

Комитетный трекер

S. Avidan. Ensemble tracking. PAMI, 2007

• Для слежения будем классифицировать пиксели на объект/фон сильным классификатором (бустинг) • На каждом кадре убирается K самых старых слабых классификаторов • Строится K новых классификаторов для текущего кадра

Page 93: CV2011 Lecture 11. Basic video

Слабые классификаторы

• 11D признаки для каждого пикселя (HOG + RGB) • Линейный классификатор по МНК

Page 94: CV2011 Lecture 11. Basic video

Адаптация классификаторов

• Демонстрация изменения слабых классификаторов • 5 слабых классификаторов, вверху – самый свежий • Уровни задают веса признаков, первые 8 –HOG, далее RGB

Page 95: CV2011 Lecture 11. Basic video

Многомасштабное слежение

• Для 3х уровней масштаба строится свой сильный классификатор • На каждом уровне строится своя карта вероятности объекта • Карты приводятся к одному уровню и смешиваются • Находим пик карты с помощью MeanShift

Page 96: CV2011 Lecture 11. Basic video

Результаты

Page 97: CV2011 Lecture 11. Basic video

B. Stenger, T. Woodley, R. Cipolla Learning to Track With Multiple Observers, СVPR 2009

Объединение трекеров

• Идея: • Протестировать ряд базовых трекеров на наборе выборок, оценить качество и надежность • Найти зависимость качества трекера от уверенности (confidence value) • Найти хорошо дополняющие друг друга группы методов • При падении доверия к первому методу в группе мы переключаемся на второй метод

Page 98: CV2011 Lecture 11. Basic video

Тестовые данные

• Indoor и Outdoor данные • Во всех присутствует изменение позы, размера, размытие из движения (motion blur)

Page 99: CV2011 Lecture 11. Basic video

Обучение метрики доверия

• По тестовым данным обучаем p(e|c ), где c – параметр доверия, специфичный для каждого метода

Page 100: CV2011 Lecture 11. Basic video

Результаты оценки

Page 101: CV2011 Lecture 11. Basic video

Каскадное объединение

• Если оценка качества по доверию для метода 1 падает ниже порога, переключаемся на метод 2 • Когда все методы дают низкое качество, происходит переинициализация метода

Page 102: CV2011 Lecture 11. Basic video

Результаты объединения

Page 103: CV2011 Lecture 11. Basic video

Сравнение

• Сравнение результатов на тестовых данных и на других реальных данных

Page 104: CV2011 Lecture 11. Basic video

NCC NCC NCC

CM CM CM

Примеры работы

• Работает NCC, при возникновении motion blur система переключается на CM (color + motion map)

Page 105: CV2011 Lecture 11. Basic video

Примеры работы

NCC NCC NCC

FF FF MS • Работает NCC, потом переключение на FF (flock of features), потом на MS (mean shift)

Page 106: CV2011 Lecture 11. Basic video

Примеры работы

Page 107: CV2011 Lecture 11. Basic video

Резюме лекции

• Вычитание фона – основа систем видеонаблюдения со стационарным фоном

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

• Зато есть ряд базовых методов, каждый в своём случае хорошо работает • NCC • Flocks of features • MeanShift

• Выход в их комбинации, но это иногда существенно замедляет скорость работы