• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
20120413 videorecognition konushin_lecture01
 

20120413 videorecognition konushin_lecture01

on

  • 3,114 views

 

Statistics

Views

Total Views
3,114
Views on SlideShare
577
Embed Views
2,537

Actions

Likes
1
Downloads
5
Comments
0

6 Embeds 2,537

http://compsciclub.ru 1580
http://logic.pdmi.ras.ru 519
http://www.compsciclub.ru 435
http://mnxw24dtmnuwg3dvmixhe5i.cameleo.ru 1
http://webcache.googleusercontent.com 1
http://hghltd.yandex.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    20120413 videorecognition konushin_lecture01 20120413 videorecognition konushin_lecture01 Presentation Transcript

    • Алгоритмы распознавания видео Антон Конушин Computer science club, Екатеринбург 13-15 мая 2012 года
    • О лекторе • Научный сотрудник лаборатории компьютерной графики и мультимедиа ВМК МГУ имени М.В. Ломоносова, к.ф.-м.н. • Руководитель группы компьютерного зрения • Научный консультант стартапов Антон «Технологии мобильногоКонушин картографирования» и «Технологии видеоанализа» E-mail: ktosh@graphics.cs.msu.ru
    • Видеокамеры• Наиболее близкий аналог «человеческого глаза» из доступных компьютеру• Широкое распространение: • Видеокамеры в смартфонах, планшетах, ноутбуках • ~200 000 камер видеонаблюдения в одном Лондоне!
    • Чего мы хотим достичь?Извлечение данных из видеопотока:• Разметить все объекты, людей, и происходящие события• Определить позу людей, распознать жесты
    • Чего мы хотим достичь?• «Situation awareness»• Свойство систем и класс приложений, которые позволяют извлечь из сенсорных данных знание, ведущие к действиям
    • Очень сложно!• Огромный поток информации• Быстрое принятие решения• Изменчивость и сложность мира! • 100000 категорий разных объектов!• Система должна уметь больше, чем умеет человек
    • Состояние и перспективы• Сейчас большинство видеокамер работают в режиме «регистрации» • Видеорегистраторы в автомобилях • Видеокамеры для любительской съёмки • Видеозапись с камер наблюдения• Количество информации огромное, управлять её без анализа очень сложно• «Видеоаналитика» - все алгоритмы для извлечения информации из видео • Есть ряд практически работающих систем
    • Видеонаблюдение на дорогах VOCORD Traffic, Vocord, Россия http://www.vocord.ru/218/
    • Спортивные соревнования http://www.hawkeyeinnovations.co.uk
    • Обнаружение лица и улыбки Sony Cyber-shot® T70 Digital Still Camera Source: S. Seitz
    • Биометрические паспорта• Получение фотографий для паспорта• Идентификация в контролируемых условиях на пунктах контроля («кооперативная процедура»)
    • Умные машины• Mobileye • Топ-модели от BMW, GM, Volvo • К 2010: 70% производителей машин Source: S. Seitz
    • Умные машины
    • 3D модели и захват движения L.A. Noire, Team Bondi/Rockstar
    • План курса• 13 апреля • Основы обработки изображений • Оптический поток и вычитание фона• 14 апреля • Выделение объектов • Отслеживание объектов и распознавание событий• 15 апреля • Распознавание человека по лицу • Дополненная реальность и Kinect
    • Основы обработки изображений
    • Модель камеры-обскурыКамера-обскура – основная модель фотографического устройства и глаза человека. • Захватывает пучок лучей, проходящих через одну точку • Точечное отверстие называется «Центр проекции» (фокальная точка / focal point) • Изображение формируется на картинной плоскости (Image plane) Slide by Steve Seitz
    • Машина Понижения Размерности 3D мир 2D картина Point of observationЧто мы теряем? • Углы • Расстояния и длины Slide by A. Efros Figures © Stephen E. Palmer, 2002
    • Перспективные искажения• Крайние колонны кажутся толще• Эти искажения вызваны не погрешностью линз!• Проблема была отмечена еще да Винчи Slide by F. Durand
    • Современная камера Тот же самый принцип, но с пленкой, объективом и т.д.
    • Цифровая камера - дискретизацияПо пространству По яркости
    • 10 событий в истории фотографииhttp://listverse.com/history/top-10-incredible-early-firsts- in-photography/ Первое цифровое фото (1957 год), разрешение 176*176 пикселов Slide by S. Lazebnik
    • Цветные фотографии??
    • Что такое цвет?Цвет – это психологическое свойство нашего зрения, возникающее при наблюдении объектов и света, а не физические свойства объектов и света (S. Palmer, Vision Science: Photons to Phenomenology)Цвет – это результат взаимодействия света, сцены и нашей зрительной системы Wassily Kandinsky (1866-1944), Murnau Street with Women, 1908 Slide by S. Lazebnik
    • Человеческий глазГлаз как камера! • Радужка – цветная пленка с радиальными мышцами • Зрачок - отверстие (апертура), диаметр управляется радужкой • Хрусталик – «линза», меняющая форму под действием мышц • Где матрица? – Клетки-фоторецепторы на сетчатке Slide by Steve Seitz
    • Восприятие цвета M L Power S WavelengthПалочки и колбочки – фильтры спектра • Спектр умножается на кривую отклика, производится интегрирование по всем длинам волн – Каждый тип колбочек даёт 1 число – При этом часть информации теряетсяТрихроматическая теория: • Мы можем описать все цвета 3мя числами Slide by Steve Seitz
    • Линейные цветовые модели: RGB• Произвольный цвет представляется как комбинация трёх основных цветов• Основные цвета – монохроматические (в мониторе им соответствует три вида фосфоров)• Вычитание необходимо для соответствия некоторым длинам волны RGB функции сопоставления Slide by S. Lazebnik
    • Модель HSVКоординаты выбраны с учетом человеческого восприятия: Hue (Тон), Saturation(Насыщенность), Value (Intensity) (Интенсивность) Slide by S. Lazebnik
    • Цветное цифровое изображениеБайеровский шаблон Демозаикинг (оценка пропущенных значений цвета) Source: Steve Seitz
    • Устранение мозаичности и ошибки Тонкие черные и белые детали интерпретируются как изменения цвета
    • Дискретное изображение Функция интенсивности канала, заданная на прямоугольной сетке (матрица) I  g k (i , j), {i  1, n, j 1, m},k  1,2,3 В цветном изображении 3 канала (цвета), может быть 4 (например, в системе цветности CMYK)В изображении с глубиной может быть тоже 4 каналаОбработка изображений может дать ещё каналы
    • Цифровое изображениеЧто может получить плохо при получении изображения?
    • Что может получиться плохо?Темное или слабоконтрастное Неправильные цветаШумное Размытое Неравномерно освещённое
    • Постоянство цвета и освещенности Способность зрительной системы человека оценивать собственные отражательные свойства поверхностей в не зависимости от условий освещенности Пример: Белый цвет на свету и в тени J. S. Sargent, The Daughters of Edward D. Boit, 1882 Slide by F. Durand
    • Постоянство яркости http://web.mit.edu/persci/people/adelson/checkershadow_illusion.html Slide by S. Lazebnik
    • Постоянство яркости http://web.mit.edu/persci/people/adelson/checkershadow_illusion.html Slide by S. Lazebnik
    • Почему может получиться плохо?• Ограниченный диапазон чувствительности датчика• “Плохая” функции передачи датчика
    • Что такое гистограмма?Гистограмма – это график распределения величин ввыборке. Посмотрим на примере гистограммы яркостипикселей изображения. На горизонтальной оси - шкалаяркостей тонов от белого до черного, на вертикальнойоси - число пикселей заданной яркости. 0 255 0 255
    • Глобальная коррекцияГлобальная коррекция – преобразование значений каналовизображения, независимое и одинаковое для всех пикселейизображения.Глобальная коррекция яркости: y – яркость пикселя на исходном изображении, f 1 ( y)  x x – яркость пикселя после коррекции.Коррекция может быть линейная и нелинейная, в зависимости отвида функции.
    • Линейная коррекцияКомпенсация узкого диапазона яркостей –линейное растяжение: 1 (255  0) f ( y)  ( y  ymin ) * ( ymax  ymin ) График функции f -1(y)
    • Линейная коррекцияКомпенсация узкого диапазонаяркостей – линейное растяжение:
    • Робастная линейная коррекцияЧто будет при применении линейной коррекции ктакой картинке?Робастная (устойчивая) версия метода:• Вычислим такую линейную коррекцию, чтобы 5% самых темных пикселов стали черными и 5% самых светлых стали белыми
    • Линейная коррекцияЛинейное растяжение – «как AutoContrast в Photoshop»
    • Линейная коррекция Линейная коррекция помогает не всегда!
    • Нелинейная коррекция x y График функции f -1 (y)
    • Нелинейная коррекцияНелинейная компенсация недостаточнойконтрастностиЧасто применяемые функции:• Гамма-коррекция • Изначальная цель – коррекция для правильного отображения на мониторе. y  c  x• Логарифмическая • Цель – сжатие динамического диапазона при визуализации данных y  c  log(1  x)
    • Гамма-коррекция Графики функции f -1 (y)
    • Нелинейная коррекция График функции f -1 (y)
    • Цветовой баланс («баланс белого»)Когда мы смотрим на фотографию или монитор, глаза адаптируются к освещению в комнате, а не к освещению сцены на фотографииЕсли «баланс белого» неточен, цвета фотографии кажутся неестественными incorrect white balance correct white balance http://www.cambridgeincolour.com/tutorials/white-balance.htm Slide by S. Lazebnik
    • Баланс белогоПленочные камеры: • Разные виды пленки и светофильтры применяются для разных сценЦифровые камеры: • Автоматический баланс белого • Предустановки баланса белого для типичных условий съемки • Настраиваемый по опорному объекту http://www.cambridgeincolour.com/tutorials/white-balance.htm Slide by S. Lazebnik
    • Баланс белогоVon Kries adaptation • Домножаем каждый канал r,g,b на «коэффициент передачи» • В ряде случаев эффект более сложный, соответствующий домножению вектора (r,g,b) на матрицу 3x3Простейший способ: серые (белые) карточки • Фотографируем нейтральный объект (белый) • Оцениваем вес каждого канала – Если цвет объект записывается как rw, gw, bw тогда веса 1/rw, 1/gw, 1/bw Slide by S. Lazebnik
    • Киноиндустрия Вместо серых карточек мы можем использовать цветной шаблон для расчёта матрицы преобразования 3x3 Source: The dark knight
    • Другие методыЕсли нет серых/цветных карточек, тогда нам нужно угадать (или оценить) коэффициенты усиленияМодель «Серого мира» (Grayworld) • Средний уровень («серый») по каждому каналу должен быть одинаков для всех каналов • Если цветовой баланс нарушен, тогда «серый» в этом канале больше «серого» других каналов • Вычислим коэффициенты усиления так, чтобы среднее в каждом канале стало одинаковым: Slide by S. Lazebnik
    • «Серый мир» - примеры
    • Цветовая коррекция изображений• Растяжение контрастности (“autolevels”) • Идея – растянуть интенсивности по каждому из каналов на весь диапазон;• Метод: • Найти минимум, максимум по каждому из каналов: Rmin , Rmax , Gmin , Gmax , Bmin , Bmax • Преобразовать интенсивности: (255  0) ( 255  0) ( R  Rmin ) * ; (G  Gmin ) * ; ( Rmax  Rmin ) (Gmax  Gmin ) (255  0) ( B  Bmin ) * ; ( Bmax  Bmin )
    • Растяжение контрастности
    • Важность для обработки видео• Если цветовая калибровка двух камер различна, то один и тот же объект может иметь разные цвета на двух изображениях.
    • Шумоподавление • Причины возникновения шума: – Несовершенство измерительных приборов – Хранение и передача изображений с потерей данныхШум фотоаппарата Сильное сжатие JPEG
    • Виды шума • Соль и перец: случайные черные и белые пиксели • Импульсный: случайные белые пиксели • Гауссов: колебания яркости, распределенные по нормальному закону Source: S. Seitz
    • Гауссов шум• Мат.модель: сумма множества независимых факторов• Подходит при маленьких дисперсиях• Предположения: независимость, нулевое матожидание Source: M. Hebert
    • Усреднение• Заменим каждый пиксель взвешенным средним по окрестности• Веса обозначаются как ядро фильтра• Веса для усреднения задаются так: 1 1 1 1 1 1 1 1 1 “box filter” Source: D. Lowe
    • Определение свертки• Пусть f – изображение, g -ядро. Свертка изображения f с помощью g обозначается как f * g. ( f  g )[m, n]   f [m  k , n  l ] g[k , l ] k ,l f• Соглашение: ядро “перевернуто”• MATLAB: conv2 vs. filter2 (also imfilter) Source: F. Durand
    • Основные свойства• Линейность: filter(f1 + f2 ) = filter(f1) + filter(f2)• Инвариантность к сдвигу: не зависит от сдвига пиксела: filter(shift(f)) = shift(filter(f))• Теория: любой линейный оператор, инвариантный к сдвигу, может быть записан в виде свертки• Чтобы доказать нелинейность фильтра, можно воспользоваться основными свойствами, и показать их не выполнение на примере Slide by S. Lazebnik
    • Простейшие фильтры 0 0 0 0 1 0 ? 0 0 0 Original Source: D. Lowe
    • Простейшие фильтры 0 0 0 0 1 0 0 0 0 Original Filtered (no change) Source: D. Lowe
    • Простейшие фильтры 0 0 0 0 0 1 ? 0 0 0 Original Source: D. Lowe
    • Простейшие фильтры 0 0 0 0 0 1 0 0 0 Original Shifted left By 1 pixel Source: D. Lowe
    • Простейшие фильтры 1 1 1 1 1 1 ? 1 1 1 Original Source: D. Lowe
    • Простейшие фильтры 1 1 1 1 1 1 1 1 1 Original Blur (with a box filter) Source: D. Lowe
    • Сглаживание с box-фильтром• Результат сглаживание с помощью усреднения отличается от разфокусированного изображения• Точка света, наблюдаемая с расфокусированного объектива, выглядит как кружок света, а усреднение дает квадратик Source: D. Forsyth
    • Сглаживание• Точка света, наблюдаемая с расфокусированного объектива, выглядит как кружок света, а усреднение дает квадратик• Другой способ: взвешиваем вклад пикселей по окрестности с учетом близости к центру: “fuzzy blob” Slide by S. Lazebnik
    • Ядро фильтра гаусса 0.003 0.013 0.022 0.013 0.003 0.013 0.059 0.097 0.059 0.013 0.022 0.097 0.159 0.097 0.022 0.013 0.059 0.097 0.059 0.013 0.003 0.013 0.022 0.013 0.003 5 x 5,  = 1Эмпирика: полуразмер фильтра равен 3σ Source: C. Rasmussen
    • Сглаживание фильтром гаусса
    • Маленькая экскурсия к Фурье +Низкие частоты Высокие частоты Фильтр Гаусса – фильтр низких частот
    • Подавление гауссова шумаСглаживание фильтрами большого радиуса подавляетшум, но размывает изображение Slide by S. Lazebnik
    • Подавление шума «соль и перец» 3x3 5x5 7x7Чем результат плох? Slide by S. Lazebnik
    • Медианный фильтр• Выбор медианы из выборки пикселей по окрестности данного• Является ли фильтр линейным? Source: K. Grauman
    • Медианный фильтр Salt-and-pepper noise Median filteredMATLAB: medfilt2(image, [h w]) Source: M. Hebert
    • Медианный фильтр Результат применения медианного фильтра с радиусом в 7 пикселей к изображению с шумом и артефактами в виде тонких светлых окружностей.
    • Выделение краев• Задача: Выделить резкие изменения (разрывы) изображения• Интуитивно понятно, что основная информация в картинке содержится как раз в краях (границах) • Компактное представление • Соответствует устройству мозга• Идеал: рисунок художника (но артист уже пользуются своими знаниями об объектах) Source: D. Lowe
    • Откуда берутся края Резкое изменение нормали поверхности Резкое изменение глубины Резкое изменение цвета поверхности Резкое изменение освещеенности Резкое изменение = «разрыв»• Существует множество причин формирования краев на изображении Source: Steve Seitz
    • Описание «края»• Край – это точка резкого изменения значений функции интенсивности изображения Функция интенсивности изображение (строка изображения) 1ая производная Края соответствуют экстремумам производной Slide by S. Lazebnik
    • Градиент изображения• Градиент изображения:•Градиент направлен в сторону наибольшего изменения интенсивностиНаправления градиента задается как: • Как направление градиента соответствует направлению края? • Сила края задается величиной (нормой) градиента: Source: Steve Seitz
    • Дифференцирование и свёртка•Для функции 2х • Разностная производная:переменных, f(x,y): f f xn1 , y  f xn , y  f  f x   , y f x, y  x x  lim    x  0     • Можно показать, что её можно реализовать свёрткой -1 1 Простейший фильтр Source: D. Forsyth, D. Lowe
    • Вычисление градиента яркостиСемейство методов основано на приближенномвычисление градиента, анализе его направления иабсолютной величины. Свертка по функциям:  - 1  1  1  -1 0 1  -1 2 1   -1 0 1 1 0 0 1 00 0 0 0 1 0 1 0 0  2 0 2 1  1  0      1 2 1   1 0  1 1 1 1   1  0 1      Робертса Превитт СобеляМатематический смысл – приближенное вычислениепроизводных по направлению
    • Карта силы краевПримеры: Робертса Превитт Собеля
    • Влияние шума• Рассмотрим строку или столбец изображения • Интенсивность от положения можно рассматривать как сигналКрай исчез Source: S. Seitz
    • Влияние шума• Разностные производные очень чувствительны к шуму • Зашумленные пиксели отличаются от соседей • Чем сильнее шум, тем выше отклик• Сглаживание • Сглаживание делает все пиксели (зашумленные?) чуть более похожими на соседей Source: D. Forsyth
    • Предобработка (сглаживание) f g f*g d ( f  g) dx d• Для поиска краев ищем пики в: ( f  g) dx Source: S. Seitz
    • Свойства свертки• Операции свертки и дифференцирования ассоциативны: d d ( f  g)  f  g• Это экономит 1 операцию: dx dx f d g dx d f  g dx Source: S. Seitz
    • Производная фильтра Гаусса * [1 -1] = Slide by S. Lazebnik
    • Производная фильтра Гаусса x-direction y-direction Slide by S. Lazebnik
    • Сглаживание и локализацияПрименим сглаженные производные разного размера: 1 pixel 3 pixels 7 pixels Сглаженные производные подавляют шум, но размывают края. Плюс края находится на разных «масштабах» Source: D. Forsyth
    • Разработка детектора краев• Критерии качества детектора: • Good detection: оптимальный детектор должен минимизировать ошибки 1 и 2го родов (ложные края и пропущенные края) • Точная локализация: найденный край должен быть как можно ближе к истинному краю • Единственный отклик: детектор должен выдавать одну точку для одной точки истинного края, т.е. локальных максимум вокруг края должно быть как можно меньше Source: L. Fei-Fei
    • Выделение краев Вычисление градиента – это еще не всё… Исходное изображение Карта силы градиента Чего не хватает?  Точности – края «толстые» и размытые  Информации о связности
    • Детектор Canny1. Свертка изображения с ядром – производной от фильтра гаусса2. Поиск значения и направления градиента3. Выделение локальных максимумов (Non-maximum suppression) • Утоньшение полос в несколько пикселей до одного пикселя4. Связывание краев и обрезание по порогу (гистерезис) • Определяем два порога: нижний и верхний • Верхний порог используем для инициализации кривых • Нижний порог используем для продолжения кривых• MATLAB: edge(image, ‘canny’)J. Canny, A Computational Approach To Edge Detection, IEEE Trans. PatternAnalysis and Machine Intelligence, 8:679-714, 1986. Source: D. Lowe, L. Fei-Fei
    • Пример • Исходное изображение (Lena) Slide by S. Lazebnik
    • Пример Норма градиента Slide by S. Lazebnik
    • Пример Отсечение по порогу Slide by S. Lazebnik
    • Пример Утоньшение (non-maximum suppression) Slide by S. Lazebnik
    • Поиск локальных максимумов Максимум достигается в q, если значение больше p и r. Значения в p и r интерполируем.Source: D. Forsyth
    • Связывание точек Пусть отмеченная точка – край. Строим касательную к границе (нормаль к направлению градиента) и используем ее для предсказания новой точки (это либо s либо r).Source: D. Forsyth
    • Отсечение по порогу• Проверяем точку, чтобы значение градиента было выше порога • Используем гистерезис – Большой порог для начала построения кривой и низкий порог для продолжения края (связывания) Source: S. Seitz
    • Эффект гистерезиса Исходное изображениеВысокий порог Низкий порог Порог по гистерезису(сильные края) (слабые края) Source: L. Fei-Fei
    • Влияние  (Размер ядра размытия) original Canny with Canny withВыбор  зависит от задачи • большое  - поиск крупных границ • маленькое  - выделение мелких деталей Source: S. Seitz
    • Ограничения детектора Canny Source: Martin et al. 2003
    • Признаки изображенияКакие признаки пикселя мы научились вычислять?• Яркость• Цвет• Градиент и его направление• Края (Edges)Какие ещё признаки использует человек для выделенияобъектов и анализа изображения?
    • Пример Видите отдельные области? Image source: Landy & Graham (2004)
    • «Текстура» Image source: Landy & Graham (2004)
    • «Текстура» Image source: Landy & Graham (2004)
    • «Текстура» Типичный пример текстурного шаблона для исследований психофизиологоического восприятия изображений Image source: Landy & Graham (2004)
    • Текстура• Это типичные примеры текстурных шаблонов для исследований психофизиологоического восприятия изображений• Человек явно использует не только яркость и цвет, но и ориентацию краёв (градиентов изображения), их распределение, для анализа изображений Image source: VPfaCGP Fig 8.5
    • «Простые клетки» V1• В первичной визуальной коре головного мозга есть клетки, чувствительные к краям определенной ориентации• Для каждой области есть набор таких клеток, чувствительные к краям разной ориентации
    • Анализ текстуры• Выберем фильтр, чувствительный к краю определенной ориентации• Результат фильтрации сгладим• Будут «подсвечены» области, содержащие текстуру с краями заданной ориентацииPietro Perona and Jitendra Malik «Detecting and Localizing edges composed of steps, peaks and roofs», ICCV 1990
    • Банки фильтров• Возьмём теперь несколько фильтров разного масштаба и ориентации• Такой набор называют «банк фильтров»• Каждый пиксель изображения после обработки банком фильтров даёт вектор признаков• Этот вектор признаков эффективно описывает локальную текстуру окрестности пикселя• Активно используется в сегментации, распознавании изображений и т.д.
    • Модель «back pocket» • Такие модели текстуры называют «back pocket» • Модель «биологически возможна» • По подобным моделям опубликовано много работ. Ввод После 1 этапа После 2 этапа Выход Image source: Landy & Graham (2004)
    • Пример, Bergen & Adelson (1988)
    • Психологическое свойство текстуры Image source: Todd et al. 2005
    • Форма из текстуры• Человек интуитивно считает текстуру изотропной, т.е. с постоянными свойствами на поверхности объекта• Shape from texture: Исходя из предположения об изотропности шаблона текстуры, можно определить наклон поверности Image source: VPfaCGP Fig 8.7
    • Резюме• Глобальная коррекция изображения• Локальная фильтрация изображения• Вычисление градиента• Выделение краёв на изображении• Текстура и текстурные признаки