CV2015. Лекция 2. Простые методы распознавания изображений.Anton Konushin
Курс "Введение в компьютерное зрение", читаемый на
ВМК МГУ имени М.В. Ломоносова в весеннем семестре 2015 года. Лектор - Конушин Антон. Лекция 2. Простые методы распознавания изображений. Рассматриваются методы бинаризации изображений, основы математической морфологии, медианная фильтрация, выделение связанных компонент, метод последовательного сканирования, метод К-средних, оценка характеристик сегментов.
CV2015. Лекция 2. Простые методы распознавания изображений.Anton Konushin
Курс "Введение в компьютерное зрение", читаемый на
ВМК МГУ имени М.В. Ломоносова в весеннем семестре 2015 года. Лектор - Конушин Антон. Лекция 2. Простые методы распознавания изображений. Рассматриваются методы бинаризации изображений, основы математической морфологии, медианная фильтрация, выделение связанных компонент, метод последовательного сканирования, метод К-средних, оценка характеристик сегментов.
2. Модель «сумки слов» в анализе текстов
• Представление документа без порядка: частоты слов из
словаря Salton & McGill (1983)
US Presidential Speeches Tag Cloud
http://chir.ag/phernalia/preztags/
3. Модель «сумки слов» в анализе текстов
• Представление документа без порядка: частоты слов из
словаря Salton & McGill (1983)
US Presidential Speeches Tag Cloud
http://chir.ag/phernalia/preztags/
4. Модель «сумки слов» в анализе текстов
• Представление документа без порядка: частоты слов из
словаря Salton & McGill (1983)
US Presidential Speeches Tag Cloud
http://chir.ag/phernalia/preztags/
5. Распознавание текстур
• Текстура является повторением набора базовых
элементов или текстонов
• Для стахостических текстур важны сами текстоны, а не их
пространственное расположение
Julesz, 1981; Cula & Dana, 2001; Leung & Malik 2001; Mori, Belongie & Malik, 2001;
Schmid 2001; Varma & Zisserman, 2002, 2003; Lazebnik, Schmid & Ponce, 2003
9. Схема метода «сумки слов»
1. Извлечение особенностей
2. Обучить “визуальный словарь”
у у р
10. Схема метода «сумки слов»
1. Извлечение особенностей
2. Обучить “визуальный словарь”
у у р
3. Квантуем особенности по словарю
11. Схема метода «сумки слов»
1. Извлечение особенностей
2. Обучить “визуальный словарь”
у у р
3. Квантуем особенности по словарю
4. Описываем картинку частотами «визуальных
визуальных
слов»
5. Классифицируем по этому вектор-признаку
ф ру у р р у
19. 2. Обучение словаря
Визуальный
… словарь
Кластеризация
Slide credit: Josef Sivic
20. Кластеризация K-cредними
• Минимизируем сумму квадратов Евклидовых
расстояний между точками xi и ближайшими
центрами кластеров mk
D( X , M ) = ∑ ∑ (x − m )
cluster k point i in
i k
2
cluster k
• Алгоритм:
• Случайно инициализируем K центров кластеров
• Повторяем до сходимости:
• Назначаем каждую точку ближайшему центру
• Пересчитываем центр каждого кластера как среднее всх
назначенных точек
21. От кластеризации к квантизации
• Кластеризация является обычным методов
обучения визуального словаря или «кодовой
книги» (codebook)
• Обучение без учителя
• Центр каждого кластера становится кодовым вектором
Ц
• Словарь можно обучить на отдельной выборке
• Если обучающая выборка достаточно представительна,
представительна
тогда словарь может стать «универсальным»
• К
Квантуем особенности с помощью словаря
б
• Сопоставляем каждый дескриптор ближайшему слову из
словаря
• «Кодовая книга» = «Визуальный словарь»
• «Кодовый вектор» = «Визуальное слово»
26. Классификация изображений
• Как мы будем различать изображение, если
представление изображения в виде сумки слов
б
уже получено?
27. Классификатор – ближайший сосед
• Назначаем объекту метку ближайшего
прецедента из обучающей выборки
from Duda et al.
Диаграмма вороного для разбиения пространства признаков
на 2 класса Source: D. Lowe
28. К ближайших соседей
• Для каждой точки найти k ближайших точек из
обучающей выборки
• Метки k точек голосуют за метку
• Работает неплохо при наличии большой обучающей
выборки и хорошей ф
б й функции б
близости
k=5
Source: D. Lowe
29. Функции сравнения гистограмм
N
• L1 distance D (h1 , h2 ) = ∑ | h1 (i ) − h2 (i ) |
i =1
• χ2 distance
D(h1 , h2 ) = ∑
N
(h1 (i) − h2 (i) ) 2
i =1 h1 (i ) + h2 (i )
• Quadratic d s a ce (c oss b )
Quad a c distance (cross-bin)
D(h1 , h2 ) = ∑ Aij (h1 (i ) − h2 ( j )) 2
i, j
Jan Puzicha, Yossi Rubner, Carlo Tomasi, Joachim M. Buhmann: Empirical Evaluation of
Dissimilarity Measures for Color and Texture. ICCV 1999
30. Earth Mover’s Distance
• Каждое изображение описывается «подписью» S,
состоящей из набора центров {mi } и весов {wi }
• Центр - это кодовые слова или даже отдельные
особенности (если квантизации не требуется)
• Earth Mover’s Distance:
f ij d (m1i , m2 j )
EMD( S1 , S 2 ) = ∑
i, j f ij
где поток fij - это решение транспортной задачи
(поток)
Y. Rubner, C. Tomasi, and L. Guibas: A Metric for Distributions with Applications to
Image Databases. ICCV 1998
31. Решающие деревья
• Classification trees
• Двоичное дерево
• Узлы:
• Помечены некоторымр π 0 (x )
предикатом true false
f l
π : X → bool
π 1 (x ) y = +1
• Связи:
С true false
f l
• Помечены
⎧ true ⎫ y = +1 y = −1
⎨ ⎬
• Листья: ⎩ false ⎭
• Помечены ответами из Y
34. От дерева к лесу
1. Yali Amit, Donald G
1 Y li A it D ld Geman: Sh
Shape quantization and recognition with randomized t
ti ti d iti ith d i d trees.
Neural Computation, 1997.
2. Leo Breiman: Random forests. Machine Learning, 2001.
Slide by Victor Lempitsky
36. Решающий лес - обучение
function Node = Обучение Вершины( {(x y)} Level)
Обучение_Вершины( {(x,y)}, {
if {y} одинаковые или Level == maxLevel
return Создать_Лист(Распределение y);
{tests} = Создать_N_Случайных_Разбиений({(x,y)},N);
test = Выбрать лучшее разбиение из({tests});
Выбрать_лучшее_разбиение_из({tests});
{(x0,y0)} = {(x,y) | test(x) = 0};
{(x1,y1)} = {(x,y) | test(x) = 1};
LeftChild = Обучение_Вершины( {(x0,y0)}, Level+1);
RightChild = Обучение Вершины( {(x1 y1)} Level+1);
Обучение_Вершины( {(x1,y1)},
return Создать_Вершину(test, LeftChild, RightChild);
}
//Обучение леса
function main() {
{X,Y} = Прочитать_Обучающие_Данные();
for i = 1 to N
{Xi,Yi} Случайное_Подмнжество({X,Y}));
{Xi Yi} = Случайное Подмнжество({X Y}));
TreeRoot_i = Обучение_Вершины({Xi,Yi});
end
}
Slide by Victor Lempitsky
37. Решающий лес – свойства
1.
1 Один из самых эффективных алгоритмов классификации
2. Вероятностное распределение на выходе
3. Применим для высоких размерностей пространства
признаков
4. Высокая скорость обучения и тестирования
5. Относительная простота реализации
Caruana, R Ni l
C R., Niculescu-Mizil, A A empirical comparison of
Mi il A.: An ii l i f
supervised learning algorithms, 2006
Slide by Victor Lempitsky
38. Добавляем положение
• Расширение «сумки слов»
• Локально-неупорядоченное представление на нескольких уровнях
level 0
Lazebnik, Schmid & Ponce (CVPR 2006)
39. Добавляем положение
• Расширение «сумки слов»
• Локально-неупорядоченное представление на нескольких уровнях
level 0 level 1
Lazebnik, Schmid & Ponce (CVPR 2006)
40. Добавляем положение
• Расширение «сумки слов»
• Локально-неупорядоченное представление на нескольких уровнях
level 0 level 1 level 2
Lazebnik, Schmid & Ponce (CVPR 2006)
41. Сортировка результата
• Используем афинно-
инвариантные особенности
• По одной особенности можно
вычислить преобразование
• RANSAC, LO-RANSAC
• Количество инлаеров дает
«качество» модели
• Поднимаем выше изображения,
д р ,
которые дают много инлаеров
42. Случайные окна для классификации
- случайные окна
й
- нормализация
Признаки –
р
интенсивности
пикселей (цвета)
Raphaël Marée, Pierre Geurts, Justus H. Piater, Louis Wehenkel:
Random Subwindows for Robust Image Classification. CVPR 2005
43. Возможные тесты
I(p) τ I(p) I(q) + τ
p
p
q
Σp A I(p) τ Σp A I(p) Σ p B I(p) + τ
A
• Интегральные
изображения для
быстрого A B
подсчета
45. Результат работы
• Размер выборки = 100.000
• Глубина = максимум
• К
Количество тестов = 1 (“extremely-randomized d i i t
1 (“ t l d i d decision trees”) ”)
• 10 деревьев в лесу
• всего 6 минут на обучение!!!!
• 100 окон (2000 тестов) на классификацию картинки – realtime
• Сравнимая с другими методами точность работы!
46. Learning realistic human actions from movies
I. Laptev, M. Marszałek, C. Schmid and B. Rozenfeld; "Learning realistic
human actions from movies“ CVPR 2008
47. Аннотация по сценарию
• Сценарии есть для более 500 фильмов
www.dailyscript.com, www.movie-page.com, www.weeklyscript.com …
d il i t i kl i t
• Субтитры (со временем) есть почти для всех фильмов
• Можем сопоставить на основе этой информации
… subtitles movie script
1172 …
01:20:17,240
01 20 1 240 --> 01 20 20 43
01:20:20,437 RICK
Why weren't you honest with me? Why weren't you honest with me? Why
Why'd you keep your marriage a secret? did you keep your marriage a secret?
1173 01:20:17
01:20:20,640 --> 01:20:23,598 Rick sits down with Ilsa.
01:20:23
lt wasn't my secret, Richard. ILSA
Victor wanted it that way
way.
Oh, it wasn't my secret, Richard.
1174 Victor wanted it that way. Not even
01:20:23,800 --> 01:20:26,189 our closest friends knew about our
marriage.
g
Not even our closest friends …
knew about our marriage.
…
48. Оценка качества
• Аннотация действий текстом
• Автоматические сопоставление сценария и
видео
• Необходимо проверять соответствие
Пример ошибки
A black car pulls up, t
bl k ll two army
officers get out.
a: - качество сопоставления
49. Извлечение действий из сценария
• Large variation of action expressions in text:
GetOutCar “… Will gets out of the Chevrolet. …”
действий “… Erin exits her new truck…”
Потенциальн
“…About to sit down, he freezes…”
ая ошибка:
• => Классификация текста с учителем
50. Набор данных из кино
vies
12 mov
20 different
movvies
d
• Обучить классификатор по автоматической разметке
• Сравнить работы с ручной разметкой
51. Схем метода
Мешок STIP + многоканальный SVM
[Schuldt 04, Niebles’06 Zhang 07]
[Schuldt’04 Niebles 06, Zhang’07]
Набор S
б STIP-патчей
Histogram of visual words
HOG & HOF Multi-channel
patch SVM
descriptors Classifier
53. STIP: Дескриптор
Патчи по окрестностям
Histogram of Histogram
oriented spatial of optical •
grad. (HOG)
d flow (HOF)
Public code available at
www.irisa.fr/vista/actions
3x3x2x4bins HOG 3x3x2x5bins HOF
descriptor descriptor
54. «Мешок слов»
We use global spatio-temporal grids
In the spatial domain:
p
1x1 (standard BoF)
2x2, o2x2 (50% overlap)
h3x1 (horizontal) v1x3 (vertical)
(horizontal),
3x3
In the temporal domain:
t1 (standard BoF) t2 t3
BoF), t2,
•••
55. Распознавание в кино
Figure: Example results for action classification trained on the
automatically annotated data We show the key frames for test
data.
movies with the highest confidence values for true/false pos/neg
56. Распознавание в кино
Note the suggestive FP: hugging or answering the phone
Note th di lt FN: tti
N t the dicult FN getting out of car or handshaking
t f h d h ki
57. Распознавание в кино
Table: Average precision (AP) for each action class of
our test set. We compare results for clean (annotated)
and automatic training data. We also show results for a
g
random classifier (chance)