Your SlideShare is downloading. ×
0
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

20120414 videorecognition konushin_lecture04

658

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
658
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Сопровождение объектов ираспознавание событий Антон Конушин Computer science club, Екатеринбург 13-15 апреля 2012 года
  • 2. Сопровождение объектов• Допустим, объект уже выделен на первом кадре. • Вручную рамкой • Детектор объектов • Вычитание фона• Нужно определить его положение на всех последующих кадрах• Результат – след (track) или траектория движения • X(1), X(2), X(3),…,X(N)• Object tracking • Сопровождение объектов • Отслеживание объектов • Слежение за объектами
  • 3. Сложность задачи• Изменение по времени • Вид объекта меняется от кадра к кадру из-за ракурса, изменения освещения, внутренних изменений (идущий человек)• Масштабируемость • Видео гораздо больше одного изображения, гораздо выше вычислительная нагрузка• Несколько объектов • В сцене могут быть несколько объектов, которые могут быть похожи друг на друга, перекрывать друг друга и т.д.
  • 4. Сложность оценки результата• Для оценки качества работы алгоритмов слежения и настройки параметров требуются размеченные эталонные данные• Подготовить эталонные данные для видео существенно сложнее, чем для изображений • Один эталонный пример для выделения объектов – 1 изображение • Один эталонный пример для отслеживания объектов - 1 видео
  • 5. Оценка качества по эталонным данным• Допустим, есть эталонные данные, в которых отмеченоположение объекта в каждом кадре (или в ключевых кадрах)• Ошибка сопровождения – покадровое расстояние отизмеренного до эталонного следа• Ожидаемая ошибка на видеопоследовательности• Точность (precision)• Надежность (robustness)
  • 6. Методы к рассмотрению• Ассоциация обнаружений между кадрами• Сопоставление шаблонов • Кросс-корелляция • На основе карт краёв• «Стая точек»• Сдвиг среднего• Комбинация методов
  • 7. Ассоциация выделенных объектов• Допустим, на I(t) и I(t+1) выделении объекты с помощью вычитания фона• Какому объекту (следу) какой блоб соответствует?• Фактически – задача сопоставления или ассоциации данных (Data association)• «Tracking by detection»• Можем каждый объект описать набором признаков • Цвет, текстура, и т.д.
  • 8. Детерминированное слежение Алгоритм установления соответствий между объектами, найденными на соседних кадрах с учетом ограничений Варианты:  Появление нового объекта в поле зрения  Сопоставление сопровождаемому объекту  Пропадание объекта из поле зрения
  • 9. Простейшая стратегия Сопоставим ближайшее наблюдение следуПростейшая стратегия в более сложных случаях не срабатывает,поэтому исследовались разные ограничения
  • 10. Примеры других ограничений• (а) близость• (b) максимальная скорость• (c) малое изменение вектора скорости• (d) общее движение• (e) «жесткость»
  • 11. Детерминированные алгоритмы Двухкадровые МногокадровыеПодходы к установлению соответствий:• Перебор разных варианты• Энергетическая формулировка: • Для каждого ограничения сформулируем «штраф» • Составим функцию «энергии» сопоставления • Будем оптимизировать энергию с помощью какого-нибудь метода дискретной оптимизации
  • 12. Пример работы
  • 13. Отслеживание объектов• Что делать, если фон не стационарный или и мы не можем на каждом кадре выделять объекты? • Выделять объекты (те же лица) на каждом кадре вычислительно тяжело• Придётся строить какую-то модель «вида» объекта, и искать на следующем кадре похожий объект
  • 14. Схема слежения ПредставлениеИнициализация Выбор модели в модели пространства выбранном признаков пространстве… Текущий … кадр
  • 15. Схема слежения Старт с Поиск в Выбор текущей окрестности в положения, следующем максимизирую позиции кадре щего сходство Повторение процедуры для следующего кадра Модель Кандидат… Текущий … кадр
  • 16. Представление объектов• Как будем описывать объект (модель объекта) ? • Шаблон • Набор точек • Признаки объекта
  • 17. Сопоставление шаблонов• Фиксируем изображение объекта (шаблон – pattern)• Будем искать положение шаблона в новом кадре • Например, в окрестности предыдущего положения• Попиксельно будем сравнивать шаблон и фрагмент нового кадра с помощью какой-нибудь метрики
  • 18. Метрики (SAD) Sum of absolute differences (SSD) Sum of squared differences (CC) Cross-correlation (NCC) Normalized cross correlation• SAD, SSD – минимизируются (0 – точное совпадение)• CC, NCC – максимизируется (1 – точное совпадение)
  • 19. Пример: пульт ТВ• Шаблон (слева), изображение (в центре), карта нормализованнойкорреляции (справа)• Пик яркости (максимум корреляции) соответствует положениюруки (искомого шаблона)
  • 20. Пример: пульт ТВ
  • 21. Пример: пульт ТВ
  • 22. Пример: пульт ТВ
  • 23. Пример: пульт ТВ
  • 24. Края для сопоставления шаблонов• Мы знаем, что в края – очень информативный признак, иони устойчивы к измненеию освещения• Попробуем использовать только края для поиска /отслеживания объекта• Как эффективно сопоставлять карты краев? • Попиксельно явно нельзя!
  • 25. Метрики• Сhamfer Distance •Для каждого пикселя a края шаблона A вычисляем расстояние до ближайшего пикселя b края изображения B r (a, B )  min a  b bB Суммируем все найденные расстояния • ChDist ( A, B )   min a  b bB aA• Hausdorff Distance •Почти то же самое, но берём не сумму, а максимальное расстояния HausDist ( A, B )  max min a  b a A bB Какую метрику использовать заранее сказать нельзя, нужна экспериментальная проверка
  • 26. Поиск ближайших пикселей края Вопрос: как найти ближайший пиксель края на изображении?
  • 27. Distance Transform «Дистантное преобразование»Для каждого пикселя вычисляется расстояние доближайшего пикселя края• Многопроходный алгоритм (пометить соседей, потом их соседей и т.д.)• Двухпроходный алгоритм
  • 28. Применение DT Совмещаем шаблон и карту DT Вычисляем ошибку, суммирую все значения в пикселяхкраев (для Chamfer distance)
  • 29. Пример поиска с помощью DT
  • 30. Сопровождение с помощью карт краёв• Карта краёв шаблона используется для дальнейшего сравнения• Вычисляется метрика Хаусдорфа на основании DT• Шаблон обновляется как набор краёв, ближайших к краям шаблонапредыдущего кадра• HUTTENLOCHER, D., NOH, J., AND RUCKLIDGE, W.. Tracking nonrigid objectsin complex scenes. ICCV 1993
  • 31. Пример работы
  • 32. Множество точек• Мы умеем вычислять движение отдельных точек с помощью локального метода оценки оптического потока Lucas-Kanade• Но каждая точка в отдельности может быстро сбиться из-за ошибок в вычислении оптического потока и его несоответствия движению точек сцены• Решение – использование «стаи точек» («flock of features»)
  • 33. Пример: отслеживание руки• Стая – множество контрольных точек, удовлетворяющих 2м условиям: • Никакие две контрольные точки не совпадают (порог на близость) • Никакая контрольные точки не уходят далеко от медианного центра (порог на удаление)
  • 34. Пример: отслеживание руки• Шаг 1: инициализация • Находим 100 контрольных точек с помощью метода поиска локальных особенностей (Harris corners) в рамке руки • Вычисляем медиану • Вычисляем цветовую статистику в окрестности центра – Одна гауссиана (или гистограмма) – Это модель кожи • Разметить в рамке руки все пиксели, похожие на кожу
  • 35. Пример: отслеживание руки• Шаг 2: слежение • Отслеживаем контрольные точки • Если точка нарушает условия стаи, её удаляем• Шаг 3: инициализация новых контрольных точек • Ищем особенности (Harris corners) • Если точка не на коже, то отбрасываем её
  • 36. Пример работы
  • 37. Мean-Shift («Cдвиг среднего») Инициализац Выбор Модель = ия объекта пространства распределение признаков в слежения признаков объекте 0.35 Квантованная 0.3 0.25 цветовая Probability 0.2 модель 0.15 0.1 0.05 0 1 2 3 . . . m color• Вместо жесткого шаблона вычислим вектор-признак по области объекта• Например, гистограмму распределения цветов
  • 38. Слежение сдвигом среднего Модель Кандидат (центр в 0) (центр в y) 0.35 0 .3 0.3 0.2 5 0.25 Probabilit y 0 .2 Probab ility 0.2 0.1 5 0.15 0 .1 0.1 0.05 0.0 5 0 0 1 2 3 . . . m 1 2 3 . . . m color color m  mq  qu u 1.. m q u 1 p  y    pu  y u1..m p u 1 u 1 u 1   Сходство: f  y   f  q , p  y   •Будем сравнивать гистограммы опорной модели и положений-кандидатов на новом кадре
  • 39. Слежение сдвигом среднего   Сходство: f  y  f  p  y,q    f y • Методы сопоставления шаблонов страдают от проблемы негладкости целевой функции • Небольшие смещения могут привести к резким скачкам ошибки сопоставления • Поэтому мы не можем использовать, например, метод градиентного спуска для поиска оптимального положения • Для решения этой проблемы и был предложен метод Mean-ShiftDorin Comaniciu, Visvanathan Ramesh, Peter Meer, Kernel-Based Object Tracking, PAMI 2003
  • 40. Слежение сдвигом среднего   Сходство: f  y  f  p  y,q    f y Изотропное ядро:• Покроем цель изотропным ядром. Веса на границе цели близки кнулю• Теперь небольшие смещения приводят к небольшим изменениямошибки сопоставления• Ошибка сопоставления становится гладкой (по сдвигу отоптимального положения• Теперь мы можем не перебирать все положения в окрестности, авоспользоваться методом градиентного спуска
  • 41. Слежение сдвигом среднего model candidate  xi i 1..n Пиксели цели 0 y k ( x) Изотропное, выпуклое, дифференцируемое, монотонно убывающее ядро (Пиксели по краям могут перекрываться, взаимодействовать с фоном и т.д.) b( x ) Индекс ячейки гистограммы (1..m) для пиксела x Вероятность признака u в модели Вероятность признака u в кандидате 2  y  xi  qu  C  b ( xi ) u k xi   2 pu  y   C h  k   h b ( xi ) u     0. 3 0.3 0.25 0.25 0. 2 0.2 Probabi lity ProbabilityНормализация Нормализация 0.15 Вес 0.15 Вес пиксела 0. 1 0.1 пиксела 0.05 0.05 0 0 1 2 3 . . . m 1 2 3 . . . m color co lor
  • 42. Функция сравнения  Модель цели: q   q1 , , qm   Кандидат: p  y    p1  y  , , pm  y     Подобие: f  y  f  p  y,q   ?   The Bhattacharyya Coefficient  q  1 q   q1 , , qm   y p  y    p1  y  ,  , pm  y   1  p  y  T p  y  q m f  y   cos y    pu  y  qu p   y   q  u 1
  • 43. Гладкая целевая функцияНачинаем с Ищем в текущей Максимизируем окрестности сл. позиции сходство кадра     q p y f  p  y  , q  
  • 44. Иллюстрация сдвига среднегоДля определенных ядер можно показать, что поиск градиентный спускпревращается в «сдвиг среднего», где: n xw i 1 i i y1  n w i 1 i
  • 45. Слежение сдвигом среднегоПроблема : Масштаб Масштаб (h) ядра цели должен меняется менятьсяРешение: Выбираем h, Прогоняем на которомпоиск 3 раза с достигается разными h максимум
  • 46. Пример работы
  • 47. Выбор признаков • В зависимости от разных факторов, объект может быть различим в разных каналах цветностиCOLLINS, R. AND LIU, Y.. On-line selection of discriminative tracking features.ICCV 2003
  • 48. Виды каналов• Построим 49 каналов, как линейные комбинациицветовых каналов:
  • 49. Идея оценки каналов• Мы оцениваем, насколько хорошо по каналуотличается объект и фон.• Отберём несколько наилучших каналов• На следующих кадрах мы можем изменить каналы!
  • 50. Примеры оценки каналов
  • 51. Сравнение методов Один фиксированный канал (MeanShift) Выбор каналов на лету
  • 52. Композиция методов • Идея: • Протестировать ряд базовых трекеров на наборе выборок, оценить качество и надежность • Найти зависимость качества трекера от уверенности (confidence value) • Найти хорошо дополняющие друг друга группы методов • При падении доверия к первому методу в группе мы переключаемся на второй методB. Stenger, T. Woodley, R. Cipolla Learning to Track With Multiple Observers,СVPR 2009
  • 53. Тестовые данные• Indoor и Outdoor данные• Во всех присутствует изменение позы, размера, размытие издвижения (motion blur)
  • 54. Обучение метрики доверия• По тестовым данным обучаем p(e|c), где c – параметрдоверия, специфичный для каждого метода
  • 55. Каскадное объединение• Если оценка качества по доверию для метода 1падает ниже порога, переключаемся на метод 2• Когда все методы дают низкое качество, происходитпереинициализация метода
  • 56. Примеры работы NCC NCC NCC CM CM CM• Работает NCC, при возникновении motion blur системапереключается на CM (color + motion map)
  • 57. Примеры работы NCC NCC NCC FF FF MS• Работает NCC, потом переключение на FF (flock of features),потом на MS (mean shift)
  • 58. Примеры работы
  • 59. Распознавание действий• Огромное количество видеоданных• Действия (action) людей – главные события вкино, новостях, домашнем видео,видеонаблюдении 150,000 uploads every dayДля чего может пригодится: • Автоматизация систем видеонаблюдения • «Началась драка у пивного киоска» • Поиск видео в архивах • Найти сцену «Обама пожимает руку Медведеву» • Навигация по контенту •Перемотка до следующей важной сцены (пр. гола)
  • 60. Действия (Actions)Определение 1: • Физическое движение тела человека • Атомарное (жест) или KTH action dataset более сложноеОпределение 2  Взаимодействие человека с окружением с определенной целью • Одно и то же движение имеет разный смысл в зависимости от окружения
  • 61. Действия (Actions)Определение 3: • Взаимодействие нескольких человек с определенной целью Драка Кража
  • 62. Тестовые базы• Самые известные: • KTH Actions • UCF Sport Actions • Hollywood2
  • 63. KTH Actions • 25 человек, 6 действий, 4 сценария (внутри, снаружи, снаружи др. масштаба, снаружи в др. одежде) • Всего 2391 фрагментC. Schüldt, I. Laptev, and B. Caputo. Recognizing human actions: A localSVM approach. ICPR, 2004.
  • 64. UCF Sport Actions • 10 видов «спортивных» действий • 150 видеофрагментов • Можно увеличить с помощью «шевеления»/зеркального отображенияM. Rodriguez, J. Ahmed, and M. Shah. Action mach: A spatio-temporalmaximum average correlation height filter for action recognition. CVPR, 2008
  • 65. Hollywood2 • 10 разных обыденных действий из 69 голливудских фильмов • 1707 фрагментов • Интересно, как можно автоматизировать подготовку таких эталонных данных?•I. Laptev, M. Marszałek, C. Schmid and B. Rozenfeld; "Learning realistichuman actions from movies“ CVPR 2008•M. Marszałek, I. Laptev, and C. Schmid. Actions in context. CVPR, 2009
  • 66. Аннотация по сценарию • Сценарии есть для более 500 фильмов www.dailyscript.com, www.movie-page.com, www.weeklyscript.com … • Субтитры (со временем) есть почти для всех фильмов • Можем сопоставить на основе этой информации… subtitles movie script1172 …01:20:17,240 --> 01:20:20,437 RICKWhy werent y ou honest with me? Why werent y ou honest with me? WhyWhyd y ou keep y our marriage a secret? did y ou keep y our marriage a secret?1173 01:20:1701:20:20,640 --> 01:20:23,598 Rick sits down with Ilsa. 01:20:23lt wasnt my secret, Richard. ILSAVictor wanted it that way . Oh, it wasnt my secret, Richard.1174 Victor wanted it that way . Not ev en01:20:23,800 --> 01:20:26,189 our closest friends knew about our marriage.Not ev en our closest friends …knew about our marriage.…
  • 67. Извлечение действий из сценария • Высокая вариабельность описаний в тексте: GetOutCar “… Will gets out of the Chevrolet. …” действий “… Erin exits her new truck…” Потенциальн “…About to sit down, he freezes…” ая ошибка: • => Классификация текста с учителем
  • 68. Неустранимые ошибкиАвтоматическую разметку необходимо потомпросматривать на наличие ошибок Пример ошибки A black car pulls up, two army officers get out.
  • 69. Распознавание действий“стабильныепо виду”объекты“атомарныедействия car exit phoning smoking hand shaking drinking • Человек может некоторые действия распознать по статичному изображению • Много сложностей: • Все обычные сложности при распознавании • Некоторые действия не возможно определить по одному кадру • Для описания действия нужно распознавать несколько предметов и их взаимное отношение
  • 70. Подходы к распознаваниюРаспознавание событий – одна из самых сложных задач вкомпьютерном зрении, сейчас ей уделяется очень многовнимания:• Одноуровневые подходы • Анализ последовательностей событий (HMM) • Пространственно-временные признаки• Иерархические подходы • Синтаксические/статистические методы • Методы на основе описаний (description-based)Мы рассмотрим только один вариант – одноуровненый подход наоснове пространственно-временных признаков
  • 71. «Скользящее окно» time time time time• Применим к видео схему «скользящее окно»• Выделим фрагмент - пространственно-временной параллелепипед• Возникают задачи, аналогичные задачам классификации изображений и поиска объектов, но для 3х мерного пространственно-временного объема
  • 72. Задачи распознавания в видео• Задачи, аналогичные задачам классификации изображений и поиска объектов, но для 3х мерного пространственно-временного объема • Классификация видеофрагмента • Поиск действий в видео (3D bbox)• Можем применить наработанную методологию • Вычисление признаков (но уже по объему) • Поиск особых точек • Построение словарей • Классификация (Nearest Neighbor, SVM, Boosting) • И т.д.
  • 73. Распознавание событий 30и пиксельный человечекAlexei A. Efros, Alexander C. Berg, Greg Mori and Jitendra Malik. Recognizing Actionat a Distance. ICCV 2003
  • 74. Идея• Движение – информативный признак и позволяет распознать многие действия без распознавания объектов и их взаимодейстия• Этот алгоритм – наглядный пример важности использования движения, даже в простой форме • Будем сравнивать тестовые объекты с примерами из базы с помощью Nearest Neighbor
  • 75. Задача и её свойства• Распознавать события (действия человека) на расстоянии • Низкое разрешение, шумные данные • Движущаяся камера, перекрытия • Широкая гамма событий • Объект существенно перемещается между кадрами
  • 76. Сбор данных• Отслеживание • Инициализируется пользователем • Простой коррелятор
  • 77. Представление• Стабилизированный пространственно-временной объем • Нет информации о перемещении • Всё движение вызвано движением конечностей человека• Стабилизировать «окно» нам важно потому, что объект быстро меняет своё положение в кадре • Если это не так, то можной обойтись без стабилизации
  • 78. Схема распознавания• Будем аннотировать видеопоток сопоставляя его с ранее записанными видеофрагментами • Для каждого кадра, сопоставим фрагмент в некотором временном интервале • Распознавание через сопоставление (Nearest Neighbor) input sequence motion analysis run jog swing walk left walk right database
  • 79. Дескриптор движения Изображение Оптический поток Fx , yFx , Fy Fx , Fx , Fy , Fy сглаженные Fx , Fx , Fy , Fy
  • 80. Дескриптор движения Временной интервал E … … Фрагмент A S … … Фрагмент B t E A A E I -матрица EB E B Покадровая Матрица сходства Матрица сходства сглаженная I движений
  • 81. Действия: сопоставление Исходное видеоСопоставленныекадры вход сопоставление
  • 82. Классификация действий: футбол10 действий; 4500 кадров всего; 13 кадров в дескрипторе
  • 83. Распознавание: теннис
  • 84. Аннотированная база событий input sequence run jog swing walk left walk right databaseРаспознавание действий: run walk left swing walk right jogПоложения суставов:
  • 85. Перенос 2D скелета • База размечена 2D точками в местах сочленений конечностей (суставах) • После сопоставления перенос скелета на новую последовательность • Уточнение (Поиск наилучшего сдвига/масштаба для совмещения карты движения)Исходная последовательность:Перенос скелета:
  • 86. “Do as I Do” синтез движения input sequence synthetic sequence• Параметры качества синтеза: • Сходство движений между видео • Сходство внешности между видео• Энергетическая формулировка, динамическое программирование
  • 87. “Do as I Do” Исходное движение Исходный вид 3400 кадров Результат
  • 88. Замена персонажа
  • 89. Наработки в распознавании изображений Область Классифицируем анализа Вычислим Разбиваем Посчитаем Квантуемпризнаки по область на статистики признаки области блоки по блокам• Особые точки или плотный выбор фрагментов• Разные дескрипторы для описания фрагментов• Квантование (словари, «мешок слов» и т.д.)• Классификация с помощью SVM, Boosting и т.д.Все это адаптировали для классификации событий
  • 90. Локальныей особенности • Известные декторы локальных особенностей: • Harris3D (2003) • Сuboid (2005) • Hessian (2008)H. Wang, M. M. Ullah, A. Kläser, I. Laptev and C. Schmid; "Evaluation of localspatio-temporal features for action recognition" in Proc. BMVC‘2009,
  • 91. Harris3D Ivan Laptev, INRIAI. Laptev and T. Lindeberg; "Space-Time Interest Points”, ICCV’2003
  • 92. Harris3D• Вычислим матрицу вторых моментов, аналогично детектору Harris: Где g – ядро гаусса (сглаживание) σ, τ - параметры масштаба • Функция отклика угла:
  • 93. Синтетические примеры
  • 94. Примеры на видео
  • 95. Код• Ivan Laptev’s code • http://www.irisa.fr/vista/Equipe/People/Laptev/download.html#s tip• Piotrs Image & Video Toolbox for Matlab • http://vision.ucsd.edu/~pdollar/toolbox/doc/index.html • Много полезных функций (k-means, meanshift, PCA, ferns, RBF, DOG-фильтры и т.д.)• Hessian executables: • http://homes.esat.kuleuven.be/~gwillems/research/Hes-STIP/
  • 96. Плотный выбор точек• По аналогии с обычными изображениями, можно точки выбирать плотно на изображении, а не искать специальным детектором• Обычно выбирают с 50% перекрытием
  • 97. Дескрипторы• Jet (2003) • Вектор градиентов: • Расстояние Махаланобиса• Cuboid (2005)• HOG/HOF (2007)• HOG3D (2008)• Extended SURF (2008)
  • 98. HOG/HOF Гистограммы по 3D окрестностям точек Гистограмма ориентаций Гистограмма  градиентов (HOG) оптического потока(HOF)Public code available atwww.irisa.fr/vista/actions 3x3x2x4bins HOG 3x3x2x5bins HOF дескриптор дескриптор
  • 99. Построение словаря• Кластеризуем К- средними• Квантуем особенности
  • 100. Примеры• Примеры 4х самых часто встречающихся пространственно-временных особенностей
  • 101. Классификация по мешку слов• Сравним разные детекторы / дескрипторы с помощью простого алгоритма: • Построим словарь • Построим мешок слов для всего видео • Классификация через SVM с ядром Хи-Квадрат
  • 102. Результаты сравнения База KTH Actions База UCF Sports Actions
  • 103. Результаты сравнения База Hollywood2 База Hollywood2 – разное разрешение
  • 104. Результаты сравнения Размеры окрестностей Оценка скорости
  • 105. Пространственное разбиениеДля повышения качества распознавания на сложных данных, каки в изображениях, можем разбивать окрестности на блоки исчитать признаки для каждого блока, а затем конкатенировать водин дескриптор По пространству 1x1 (стандартный мешок) 2x2, o2x2 (50% перекрытие) h3x1 (горизонтальный), v1x3 (вертикальный) 3x3 По времени: t1 (стандартный мешок), t2, t3 
  • 106. Многоканальное ядро для SVMМожем подобрать «оптимальную» комбинацию типовпризнаков и разбиений с помощью SVM смногокальным хи-квадрат ядром для классификации: Канал c – это комбинация детектора, дескриптора и вида сетки Dc(Hi, Hj) – расстояние хи-квадрат между гистограммами Ac среднее расстояние между всеми обучающими примерами Выбор наилучшей комбинации каналов осуществляется жадным методом
  • 107. Многокальный SVM Сравнение разных комбинаций Разные сетки и комбинации каналов обеспечивают прирост качества
  • 108. Распознавание в кино Примеры работы на данных из кинофильмов
  • 109. Устойчивость к шумуДеградация качества в присутствии неправильныхметок До 20% неправильных – незначительное снижение качества При 40% - снижение качества на 10%
  • 110. Распознавание в кино Сравнение по средней точности для каждого классапри автоматической и чистой (ручной) разметке данных
  • 111. Пример
  • 112. Выделение событий в видео • Попробуем не просто распознавать присутствие события в видео, но и локализовывать его в кадре • Идея «нацеливания алгоритма» на нужных кадрахI. Laptev and P. Pérez. "Retrieving actions in movies“ ICCV 2007
  • 113. Выбранные действия Выберем пару сложных и похожих действий Разница в формеПить Разница в движении Оба действия похожи по форме (позаКурить человека) и по движению (движение руки) Вариабельность больше, чем для изображений Но движение дает дополнительную информацию
  • 114. Тестовая база• Ролики собраны из фильмов “Coffee and Cigarettes”; “Sea of Love” “Пить”: 159 размеченных примеров “Курить”: 149 размеченных примеров Временная разметкаПространственная разметка First frame Keyframe Last frame head rectangle torso rectangle
  • 115. Примеры действия «пить»
  • 116. Классификация по форме и движению Random motion patterns• Обучим детекторы – 1) по объёму и движению 2) по одному кадру игистограммам градиентов• Детектор по одному кадру может выделить фрагмент и быстро, но неможет отделить «пить» от «курить»
  • 117. Нацеливание алгоритмаИдея: обучим классификатор по объёму и движению только на техфрагментах, которые нашел детектор по одному кадруОбучение Positive Negative training training sample samples Тестирование
  • 118. Важность «нацеливания» Нацеливание позволяет классификатору действий настроится только на важные признаки для различения действий, и получается лучше, чем пытаться сразу выделить «объём» действияСнацеливаниемБезнацеливания
  • 119. Примеры работы
  • 120. Резюме• Базовые методы – шаблоны, стая точек, сдвиг среднего.• Комбинация методов, выбор каналов позволяют повысить качество слежения• Слежение всегда ошибётся, нужно быть готовым к восстановлению после ошибок• Для распознавания видео мы можем использовать те же подходы, что и к изображению, но переведя их в трёхмерные пространственно-временной объём • Скользящее окно • Особенности, детекторы и дескрипторы • Мешок слов и методы классификации• Данные и их объём является общей проблемой. Нужно использовать «слабую» разметку.

×