ݺߣ

ݺߣShare a Scribd company logo
Классификация изображений Many slides adapted from Fei-Fei Li, Rob Fergus, Antonio Torralba and Svetlana Lazebnik CSEDays-2010
Сколько всего классов объектов ? ~10,000 to 30,000 Biederman 1987 1500-3000  основных существительных,  ~10  подкатегорий
Миллионы крошечных картинок (« Tiny images ») http:// people.csail.mit.edu/torralba/tinyimages /
Миллионы крошечных картинок (« Tiny images »)
Классификация текстов Представление документа без порядка :  частоты слов из словаря («мешок слов»)  Salton & McGill (1983) US Presidential Speeches Tag Cloud http://chir.ag/phernalia/preztags/
Классификация текстов Представление документа без порядка :  частоты слов из словаря («мешок слов»)  Salton & McGill (1983) US Presidential Speeches Tag Cloud http://chir.ag/phernalia/preztags/
Представление документа без порядка :  частоты слов из словаря («мешок слов»)  Salton & McGill (1983) Классификация текстов US Presidential Speeches Tag Cloud http://chir.ag/phernalia/preztags/
Слова и словари Что такое «слово» в контексте изображений? Как составить «словарь» для коллекции изображений?
Моделирование текстур Текстура является повторением набора базовых элементов («текстонов») Для стохастических текстур важны сами текстоны, а не их пространственное расположение
Распознавание текстур Universal texton dictionary histogram
«Визуальные слова» face, flowers, building «Визуальное слово» – часто повторяющийся фрагмент изображения В отличие от текстур – не в одном изображении, а в коллекции В изображении визуальное слово может встречаться только один раз!
«Визуальный словарь» Словарь – набор фрагментов, часто повторяющихся в коллекции изображений Как составить словарь? Составить большой список всех фрагментов по всей коллекции Разделить весь список на похожие группы Типичная задача «кластеризации» Будем считать все фрагменты в одной группе – «экземплярами» одного и того же слова
«Мешок визуальных слов»
Регулярная сетка Vogel & Schiele, 2003 Fei-Fei & Perona, 2005 1. Сбор фрагментов
Регулярная сетка Vogel & Schiele, 2003 Fei-Fei & Perona, 2005 Характерные точки Csurka et al. 2004 Fei-Fei & Perona, 2005 Sivic et al. 2005 1.  Сбор фрагментов
Характерная точка изображения - это точка с характерной (отличающейся) окрестностью Характерные точки Пример особой точки Пример точки, не являющейся особой Названия: Особенность ( feature) Характеристическая / интересная точка ( interest point)
Свойства характерных точек Локальность ( Locality ) Особенность занимаем маленькую область изображения, поэтому работа с ней нечувствительна к перекрытиям Повторяемость ( Repeatability ) Особенность ( feature)  должна находится в том же месте не смотря на изменения точки обзора и освещения   Значимость ( Saliency ) Каждая особенность должна иметь уникальное ( distinctive)   описание Компактность и эффективность Особенностей гораздо меньше .чем пикселей в изображении
Детекторы характерных точек Harris Difference of Gaussian Harris-Laplacian
Как два небольших изображения! Те же метрики, что и при прямом сравнении изображений: SAD  =  Squared absolute difference SSD = Squared of square difference Cross-correlation Неустойчиво к изменениям! Освещения Малые сдвиги приводят к  большим изменениям Как сравнивать фрагменты?
SIFT S cale- I nvariant  F eature  T ransform DoG  или  Harris-Laplacian Характерный размер области  R Характерная ориентация Дескриптор на основе гистограммы направлений градиентов Один из самых эффективных  дескрипторов David G. Lowe.  "Distinctive image features from scale-invariant  keypoints .”   IJCV  60 (2), pp. 91-110, 2004.
Ориентация Пример: найти локальное направление градиента вокруг интересной точки Повернуть фрагмент(ы) так, чтобы средний градиент был направлен вверх 0 2 
Дескрипторы Ориентация  =  размытый градиент Рамка, независимая от поворота ( Rotation Invariant Frame )
Дескрипторы
Гистограммы градиентов  SIFT Вычисляем градиент в каждой точке Строим гистограммы по окрестностям Обычно – сетка 4 x4 , в каждой гистограмма с 8ю ячейками Стандартная длина вектора-дескриптора  – 128 (4*4*8) Устойчив к изменениям освещенности и небольшим сдвигам
1.  Извлечение фрагментов Выбрали фрагменты Вычислили для каждого дескриптор Составили большой список всех дескрипторов …
2.  Обучение словаря …
2.  Обучение словаря Кластеризация ݺߣ credit: Josef Sivic …
2.  Обучение словаря Кластеризация ݺߣ credit: Josef Sivic Визуальный словарь …
Кластеризации Кластеризация является обычным методов обучения визуального словаря или «кодовой книги» ( codebook ) Обучение без учителя Центр каждого кластера становится кодовым вектором Словарь можно обучить на отдельной выборке Если обучающая выборка достаточно представительна, тогда словарь может стать «универсальным»
Кластеризация  K-c редними Минимизируем сумму квадратов Евклидовых расстояний между точками  x i   и ближайшими центрами кластеров  m k Алгоритм : Случайно инициализируем  K  центров кластеров Повторяем до сходимости : Назначаем каждую точку ближайшему центру Пересчитываем центр каждого кластера как среднее всх назначенных точек
Иллюстрация
Иллюстрация
Иллюстрация
Иллюстрация
Иллюстрация
Иллюстрация
Иллюстрация
Иллюстрация
Иллюстрация
Пример словаря Fei-Fei et al. 2005
Визуальные словари Как выбрать размер словаря ? Маленький :  слова не могут описать все особенности Большой :  переобучение  Вычислительная сложность Деревья словарей   (Nister & Stewenius, 2006) Approximate nearest-neighbour Хеширование
3. От кластеризации к квантизации Квантуем особенности с помощью словаря Сопоставляем каждый дескриптор ближайшему слову из словаря Sivic et al. 2005 Примеры визуальных слова
3.  Описание изображения – «мешок слов» частоты слова … ..
4. Классификация изображений Как мы будем различать изображение, если представление изображения в виде сумки слов уже получено?
Классификация Обучим решающее правило (классификатор), назначающий «мешкам» соответствующий класс Любое  решающее правило  делит пространство на  решающие регионы  разделенные  решающими границами Decision
Классификатор – ближайший сосед Назначаем объекту метку ближайшего прецедента из обучающей выборки Диаграмма вороного для разбиения пространства признаков на 2 класса from Duda  et al. Source: D. Lowe
Для каждой точки найти  k  ближайших точек из обучающей выборки Метки  k  точек голосуют за метку  Работает неплохо при наличии большой обучающей выборки и хорошей функции близости К   ближайших соседей k  = 5 Source: D. Lowe
Решающее дерево 1 2 3 4 5 6 7 1 4 5 2 3 7 6 ݺߣ by V.Lempitsky
«Оверфиттинг» и «Прунинг» A B C D ݺߣ by V.Lempitsky
От дерева к лесу Yali Amit, Donald Geman:  Shape quantization and recognition with randomized trees.  Neural Computation,  1997 . Leo Breiman:  Random forests.  Machine Learning, 2001. ݺߣ by V.Lempitsky
Решающий лес - обучение function  Node =  Обучение_Вершины(  {(x,y)},   Level)   { if   {y}  одинаковые   или  Level  ==  maxLevel return   Создать_Лист(Распределение  y); {tests} =  Создать_ N _Случайных_Разбиений( {(x,y)} , N ) ; test =  Выбрать_лучшее_разбиение _ из( {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); return   Создать_Вершину( test, LeftChild, RightChild); } // Обучение леса function  main()  { {X,Y} =  Прочитать_Обучающие_Данные() ; for  i = 1 to N   {Xi,Yi} =  Случайное_Подмнжество( {X,Y})); TreeRoot_i =  Обучение_Вершины( {Xi,Yi}); end } ݺߣ by V.Lempitsky
Решающий лес - применение ݺߣ by V.Lempitsky
Решающий лес – свойства Один из самых эффективных алгоритмов классификации Вероятностное распределение на выходе Применим для высоких размерностей пространства признаков Высокая скорость обучения и тестирования Относительная простота реализации Caruana, R., Niculescu-Mizil, A.: An empirical comparison of supervised learning   algorithms , 2006   ݺߣ by V.Lempitsky
Случайные окна для классификации Raphaël Marée, Pierre Geurts, Justus H. Piater, Louis Wehenkel:  Random Subwindows for Robust Image Classification. CVPR 2005 - случайные окна - нормализация Признаки – интенсивности пикселей (цвета)
Возможные тесты I(p)  ≷  τ I(p)  ≷  I(q) +  τ p p q Σ   p∊A   I(p)  ≷  τ A A B Σ   p∊A   I(p)  ≷  Σ   p∊B   I(p) +  τ Интегральные изображения для быстрого подсчета ݺߣ by V.Lempitsky
Устойчивость к повороту Случайным образом поворачиваем каждое окно перед нормализацией размера
Результат работы Размер выборки = 100.000 Глубина = максимум Количество тестов = 1 ( “extremely-randomized decision trees”) 10  деревьев в лесу всего 6 минут на обучение!!!! 100 окон (2000 тестов) на классификацию картинки –  realtime Сравнимая с другими методами точность работы! ݺߣ by V.Lempitsky
Caltech 101 & 256 Griffin, Holub, Perona, 2007  Fei-Fei, Fergus, Perona, 2004  http://www.vision.caltech.edu/Image_Datasets/Caltech101/ http://www.vision.caltech.edu/Image_Datasets/Caltech256 /
Caltech-101
The PASCAL Visual Object Classes Challenge (2005-2009) Основные конкурсы Классификация :   Для каждого из 20 классов, определить присутствие/отсутствие объекта этого класса в изображении Поиск :   Определить рамку и метку каждого объекта из 20 классов в изображении http://pascallin.ecs.soton.ac.uk/challenges/VOC/
PASCAL (2005-2009) Классы  2008 : Человек :   человек Животные :   птица, кошка, корова, собака, лошадь, оцва  Транспорт :   самолет, велосипед, лодка, автобус, машина, мотоцикл, поезд Помещения :   бутылка, кресло, стол, растение в горшке, монитор, диван http://pascallin.ecs.soton.ac.uk/challenges/VOC/
The PASCAL Visual Object Classes Challenge (2005-2009) Новые конкурсы Семантическая сегментация :   попиксельная аннотация области объектов и фона Человек :  Пометить рамкой и меткой каждую часть тела (голову, руки, ступни)
Как реализовать? OpenCV 2.0 Работа с изображениями, классификаторы VLFeat Детекторы точек, дескрипторы, кластеризация http:// www.vlfeat.org / ColorDescriptor Ряд разнообразных дескрипторов точек http:// staff.science.uva.nl/~ksande/research/colordescriptors /
Резюме метода «мешок слов» Извлечение особенностей Обучить  “ визуальный словарь ” Квантуем особенности по словарю Описываем картинку частотами «визуальных слов» Варианты: Поиск ближайшего Многоклассовая классификация
Завтра… Поиск объектов Семантическая сегментация

More Related Content

What's hot (10)

CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
Anton Konushin
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
Anton Konushin
Константин Третьяков. Machine Learning
Константин Третьяков. Machine LearningКонстантин Третьяков. Machine Learning
Константин Третьяков. Machine Learning
Aleksandr Motsjonov
Реляционные базы данных
Реляционные базы данныхРеляционные базы данных
Реляционные базы данных
Levon Avakyan
Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей.
Levon Avakyan
Поиск объектов
Поиск объектовПоиск объектов
Поиск объектов
LiloSEA
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
Anton Konushin
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture0420120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
Computer Science Club
Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.
Roman Brovko
C#. От основ к эффективному коду
C#. От основ к эффективному кодуC#. От основ к эффективному коду
C#. От основ к эффективному коду
Vasiliy Deynega
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
Anton Konushin
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
Anton Konushin
Константин Третьяков. Machine Learning
Константин Третьяков. Machine LearningКонстантин Третьяков. Machine Learning
Константин Третьяков. Machine Learning
Aleksandr Motsjonov
Реляционные базы данных
Реляционные базы данныхРеляционные базы данных
Реляционные базы данных
Levon Avakyan
Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей.
Levon Avakyan
Поиск объектов
Поиск объектовПоиск объектов
Поиск объектов
LiloSEA
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
Anton Konushin
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture0420120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
Computer Science Club
Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.
Roman Brovko
C#. От основ к эффективному коду
C#. От основ к эффективному кодуC#. От основ к эффективному коду
C#. От основ к эффективному коду
Vasiliy Deynega

Viewers also liked (19)

Simonova sql server-enginetesting
Simonova sql server-enginetestingSimonova sql server-enginetesting
Simonova sql server-enginetesting
LiloSEA
Algorithms For Np Hard Problems
Algorithms For Np Hard ProblemsAlgorithms For Np Hard Problems
Algorithms For Np Hard Problems
LiloSEA
Dmitriy Nikonenko. CSEDays
Dmitriy Nikonenko. CSEDaysDmitriy Nikonenko. CSEDays
Dmitriy Nikonenko. CSEDays
LiloSEA
Victor Kuliamin.CSEDays
Victor Kuliamin.CSEDaysVictor Kuliamin.CSEDays
Victor Kuliamin.CSEDays
LiloSEA
Коллекции изображений
Коллекции изображенийКоллекции изображений
Коллекции изображений
LiloSEA
Nikolay Shilov. CSEDays 3
Nikolay Shilov. CSEDays 3Nikolay Shilov. CSEDays 3
Nikolay Shilov. CSEDays 3
LiloSEA
Классификация изображений
Классификация изображенийКлассификация изображений
Классификация изображений
LiloSEA
Simonova CSEDays
Simonova CSEDaysSimonova CSEDays
Simonova CSEDays
LiloSEA
Cse коновалова титов
Cse коновалова титовCse коновалова титов
Cse коновалова титов
LiloSEA
Сегментация
СегментацияСегментация
Сегментация
LiloSEA
Artem Shabarshin. CSEDays
Artem Shabarshin. CSEDaysArtem Shabarshin. CSEDays
Artem Shabarshin. CSEDays
LiloSEA
LevPliner.CSEDays
LevPliner.CSEDaysLevPliner.CSEDays
LevPliner.CSEDays
LiloSEA
Алексей Голдбергс. Криптография для бизнеса
Алексей Голдбергс. Криптография для бизнесаАлексей Голдбергс. Криптография для бизнеса
Алексей Голдбергс. Криптография для бизнеса
LiloSEA
CSEDays. Алексей Кадиев
CSEDays. Алексей КадиевCSEDays. Алексей Кадиев
CSEDays. Алексей Кадиев
LiloSEA
Александра Торгашова
Александра ТоргашоваАлександра Торгашова
Александра Торгашова
LiloSEA
Андрей Лабунец. Механизмы трассировки
Андрей Лабунец. Механизмы трассировкиАндрей Лабунец. Механизмы трассировки
Андрей Лабунец. Механизмы трассировки
LiloSEA
Katerina Simonova CSEDays
Katerina Simonova CSEDaysKaterina Simonova CSEDays
Katerina Simonova CSEDays
LiloSEA
схемы разделения секрета
схемы разделения секретасхемы разделения секрета
схемы разделения секрета
LiloSEA
Simonova sql server-enginetesting
Simonova sql server-enginetestingSimonova sql server-enginetesting
Simonova sql server-enginetesting
LiloSEA
Algorithms For Np Hard Problems
Algorithms For Np Hard ProblemsAlgorithms For Np Hard Problems
Algorithms For Np Hard Problems
LiloSEA
Dmitriy Nikonenko. CSEDays
Dmitriy Nikonenko. CSEDaysDmitriy Nikonenko. CSEDays
Dmitriy Nikonenko. CSEDays
LiloSEA
Victor Kuliamin.CSEDays
Victor Kuliamin.CSEDaysVictor Kuliamin.CSEDays
Victor Kuliamin.CSEDays
LiloSEA
Коллекции изображений
Коллекции изображенийКоллекции изображений
Коллекции изображений
LiloSEA
Nikolay Shilov. CSEDays 3
Nikolay Shilov. CSEDays 3Nikolay Shilov. CSEDays 3
Nikolay Shilov. CSEDays 3
LiloSEA
Классификация изображений
Классификация изображенийКлассификация изображений
Классификация изображений
LiloSEA
Simonova CSEDays
Simonova CSEDaysSimonova CSEDays
Simonova CSEDays
LiloSEA
Cse коновалова титов
Cse коновалова титовCse коновалова титов
Cse коновалова титов
LiloSEA
Сегментация
СегментацияСегментация
Сегментация
LiloSEA
Artem Shabarshin. CSEDays
Artem Shabarshin. CSEDaysArtem Shabarshin. CSEDays
Artem Shabarshin. CSEDays
LiloSEA
LevPliner.CSEDays
LevPliner.CSEDaysLevPliner.CSEDays
LevPliner.CSEDays
LiloSEA
Алексей Голдбергс. Криптография для бизнеса
Алексей Голдбергс. Криптография для бизнесаАлексей Голдбергс. Криптография для бизнеса
Алексей Голдбергс. Криптография для бизнеса
LiloSEA
CSEDays. Алексей Кадиев
CSEDays. Алексей КадиевCSEDays. Алексей Кадиев
CSEDays. Алексей Кадиев
LiloSEA
Александра Торгашова
Александра ТоргашоваАлександра Торгашова
Александра Торгашова
LiloSEA
Андрей Лабунец. Механизмы трассировки
Андрей Лабунец. Механизмы трассировкиАндрей Лабунец. Механизмы трассировки
Андрей Лабунец. Механизмы трассировки
LiloSEA
Katerina Simonova CSEDays
Katerina Simonova CSEDaysKaterina Simonova CSEDays
Katerina Simonova CSEDays
LiloSEA
схемы разделения секрета
схемы разделения секретасхемы разделения секрета
схемы разделения секрета
LiloSEA

Similar to Классификация изображений (20)

20120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture0620120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture06
Computer Science Club
20100919 computer vision_konushin_lecture03
20100919 computer vision_konushin_lecture0320100919 computer vision_konushin_lecture03
20100919 computer vision_konushin_lecture03
Computer Science Club
CV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysisCV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysis
Anton Konushin
Deep Dive C# by Sergey Teplyakov
Deep Dive  C# by Sergey TeplyakovDeep Dive  C# by Sergey Teplyakov
Deep Dive C# by Sergey Teplyakov
Alex Tumanoff
распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»
seik0ixtem
20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02
Computer Science Club
CV2011-2. Lecture 04. Semantic image segmentation
CV2011-2. Lecture 04.  Semantic image segmentationCV2011-2. Lecture 04.  Semantic image segmentation
CV2011-2. Lecture 04. Semantic image segmentation
Anton Konushin
Scala для всех (РИФ 2015)
Scala для всех (РИФ 2015)Scala для всех (РИФ 2015)
Scala для всех (РИФ 2015)
Арсений Жижелев
L5: Л5 Байесовские алгоритмы
L5: Л5 Байесовские алгоритмыL5: Л5 Байесовские алгоритмы
L5: Л5 Байесовские алгоритмы
Technosphere1
Clojure: Lisp for the modern world (русская версия)
Clojure: Lisp for the modern world (русская версия)Clojure: Lisp for the modern world (русская версия)
Clojure: Lisp for the modern world (русская версия)
Alex Ott
Павел Павлов - Scala для профессионалов - Joker 2013
Павел Павлов - Scala для профессионалов - Joker 2013Павел Павлов - Scala для профессионалов - Joker 2013
Павел Павлов - Scala для профессионалов - Joker 2013
ScalaNsk
CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.
Anton Konushin
Уровни проектирования информационной системы (обзор материалов портала wiki....
Уровни проектирования информационной системы  (обзор материалов портала wiki....Уровни проектирования информационной системы  (обзор материалов портала wiki....
Уровни проектирования информационной системы (обзор материалов портала wiki....
Media Gorod
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02
Computer Science Club
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02
Computer Science Club
20100919 computer vision_konushin_lecture04
20100919 computer vision_konushin_lecture0420100919 computer vision_konushin_lecture04
20100919 computer vision_konushin_lecture04
Computer Science Club
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic video
Anton Konushin
TMPA-2013 Kompan and Bui: OOP Class Diagrams
TMPA-2013 Kompan and Bui: OOP Class DiagramsTMPA-2013 Kompan and Bui: OOP Class Diagrams
TMPA-2013 Kompan and Bui: OOP Class Diagrams
Iosif Itkin
Алгоритмы и структуры данных осень 2013 лекция 1
Алгоритмы и структуры данных осень 2013 лекция 1Алгоритмы и структуры данных осень 2013 лекция 1
Алгоритмы и структуры данных осень 2013 лекция 1
Technopark
word2vec (part 1)
word2vec (part 1)word2vec (part 1)
word2vec (part 1)
Denis Dus
20120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture0620120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture06
Computer Science Club
20100919 computer vision_konushin_lecture03
20100919 computer vision_konushin_lecture0320100919 computer vision_konushin_lecture03
20100919 computer vision_konushin_lecture03
Computer Science Club
CV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysisCV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysis
Anton Konushin
Deep Dive C# by Sergey Teplyakov
Deep Dive  C# by Sergey TeplyakovDeep Dive  C# by Sergey Teplyakov
Deep Dive C# by Sergey Teplyakov
Alex Tumanoff
распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»
seik0ixtem
20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02
Computer Science Club
CV2011-2. Lecture 04. Semantic image segmentation
CV2011-2. Lecture 04.  Semantic image segmentationCV2011-2. Lecture 04.  Semantic image segmentation
CV2011-2. Lecture 04. Semantic image segmentation
Anton Konushin
L5: Л5 Байесовские алгоритмы
L5: Л5 Байесовские алгоритмыL5: Л5 Байесовские алгоритмы
L5: Л5 Байесовские алгоритмы
Technosphere1
Clojure: Lisp for the modern world (русская версия)
Clojure: Lisp for the modern world (русская версия)Clojure: Lisp for the modern world (русская версия)
Clojure: Lisp for the modern world (русская версия)
Alex Ott
Павел Павлов - Scala для профессионалов - Joker 2013
Павел Павлов - Scala для профессионалов - Joker 2013Павел Павлов - Scala для профессионалов - Joker 2013
Павел Павлов - Scala для профессионалов - Joker 2013
ScalaNsk
CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.
Anton Konushin
Уровни проектирования информационной системы (обзор материалов портала wiki....
Уровни проектирования информационной системы  (обзор материалов портала wiki....Уровни проектирования информационной системы  (обзор материалов портала wiki....
Уровни проектирования информационной системы (обзор материалов портала wiki....
Media Gorod
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02
Computer Science Club
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02
Computer Science Club
20100919 computer vision_konushin_lecture04
20100919 computer vision_konushin_lecture0420100919 computer vision_konushin_lecture04
20100919 computer vision_konushin_lecture04
Computer Science Club
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic video
Anton Konushin
TMPA-2013 Kompan and Bui: OOP Class Diagrams
TMPA-2013 Kompan and Bui: OOP Class DiagramsTMPA-2013 Kompan and Bui: OOP Class Diagrams
TMPA-2013 Kompan and Bui: OOP Class Diagrams
Iosif Itkin
Алгоритмы и структуры данных осень 2013 лекция 1
Алгоритмы и структуры данных осень 2013 лекция 1Алгоритмы и структуры данных осень 2013 лекция 1
Алгоритмы и структуры данных осень 2013 лекция 1
Technopark

More from LiloSEA (18)

CSEDays. Олег Ушмаев
CSEDays. Олег УшмаевCSEDays. Олег Ушмаев
CSEDays. Олег Ушмаев
LiloSEA
CSEDays. Юрий Айдаров
CSEDays. Юрий АйдаровCSEDays. Юрий Айдаров
CSEDays. Юрий Айдаров
LiloSEA
CSEDays. Александр Семенов
CSEDays. Александр СеменовCSEDays. Александр Семенов
CSEDays. Александр Семенов
LiloSEA
Степан Петухов
Степан ПетуховСтепан Петухов
Степан Петухов
LiloSEA
Лукина Ольга. Безопасность в соц. сетях
Лукина Ольга. Безопасность в соц. сетяхЛукина Ольга. Безопасность в соц. сетях
Лукина Ольга. Безопасность в соц. сетях
LiloSEA
Андрей Гаража. Биоинформатика
Андрей Гаража. БиоинформатикаАндрей Гаража. Биоинформатика
Андрей Гаража. Биоинформатика
LiloSEA
Александр Тиморин. Мошеннические атаки
Александр Тиморин. Мошеннические атакиАлександр Тиморин. Мошеннические атаки
Александр Тиморин. Мошеннические атаки
LiloSEA
Михаил Рыбалкин. Перестановочные многочлены.
Михаил Рыбалкин. Перестановочные многочлены.Михаил Рыбалкин. Перестановочные многочлены.
Михаил Рыбалкин. Перестановочные многочлены.
LiloSEA
почти пороговая схема разделения секрета
почти пороговая схема разделения секретапочти пороговая схема разделения секрета
почти пороговая схема разделения секрета
LiloSEA
Hash cse lecture3
Hash cse lecture3Hash cse lecture3
Hash cse lecture3
LiloSEA
Hash cse lecture1
Hash cse lecture1Hash cse lecture1
Hash cse lecture1
LiloSEA
Hash cse lecture2
Hash cse lecture2Hash cse lecture2
Hash cse lecture2
LiloSEA
Nikolay Shilov. CSEDays 2
Nikolay Shilov. CSEDays 2Nikolay Shilov. CSEDays 2
Nikolay Shilov. CSEDays 2
LiloSEA
Katerina Simonova CSEDays
Katerina Simonova CSEDaysKaterina Simonova CSEDays
Katerina Simonova CSEDays
LiloSEA
Nikolay Shilov. CSEDays 1
Nikolay Shilov. CSEDays 1Nikolay Shilov. CSEDays 1
Nikolay Shilov. CSEDays 1
LiloSEA
MSR in Russia. CSEDays
MSR in Russia. CSEDaysMSR in Russia. CSEDays
MSR in Russia. CSEDays
LiloSEA
Michael Dyakin. CSEDays
Michael Dyakin. CSEDaysMichael Dyakin. CSEDays
Michael Dyakin. CSEDays
LiloSEA
Anna Baranova. CSEDays
Anna Baranova. CSEDaysAnna Baranova. CSEDays
Anna Baranova. CSEDays
LiloSEA
CSEDays. Олег Ушмаев
CSEDays. Олег УшмаевCSEDays. Олег Ушмаев
CSEDays. Олег Ушмаев
LiloSEA
CSEDays. Юрий Айдаров
CSEDays. Юрий АйдаровCSEDays. Юрий Айдаров
CSEDays. Юрий Айдаров
LiloSEA
CSEDays. Александр Семенов
CSEDays. Александр СеменовCSEDays. Александр Семенов
CSEDays. Александр Семенов
LiloSEA
Степан Петухов
Степан ПетуховСтепан Петухов
Степан Петухов
LiloSEA
Лукина Ольга. Безопасность в соц. сетях
Лукина Ольга. Безопасность в соц. сетяхЛукина Ольга. Безопасность в соц. сетях
Лукина Ольга. Безопасность в соц. сетях
LiloSEA
Андрей Гаража. Биоинформатика
Андрей Гаража. БиоинформатикаАндрей Гаража. Биоинформатика
Андрей Гаража. Биоинформатика
LiloSEA
Александр Тиморин. Мошеннические атаки
Александр Тиморин. Мошеннические атакиАлександр Тиморин. Мошеннические атаки
Александр Тиморин. Мошеннические атаки
LiloSEA
Михаил Рыбалкин. Перестановочные многочлены.
Михаил Рыбалкин. Перестановочные многочлены.Михаил Рыбалкин. Перестановочные многочлены.
Михаил Рыбалкин. Перестановочные многочлены.
LiloSEA
почти пороговая схема разделения секрета
почти пороговая схема разделения секретапочти пороговая схема разделения секрета
почти пороговая схема разделения секрета
LiloSEA
Hash cse lecture3
Hash cse lecture3Hash cse lecture3
Hash cse lecture3
LiloSEA
Hash cse lecture1
Hash cse lecture1Hash cse lecture1
Hash cse lecture1
LiloSEA
Hash cse lecture2
Hash cse lecture2Hash cse lecture2
Hash cse lecture2
LiloSEA
Nikolay Shilov. CSEDays 2
Nikolay Shilov. CSEDays 2Nikolay Shilov. CSEDays 2
Nikolay Shilov. CSEDays 2
LiloSEA
Katerina Simonova CSEDays
Katerina Simonova CSEDaysKaterina Simonova CSEDays
Katerina Simonova CSEDays
LiloSEA
Nikolay Shilov. CSEDays 1
Nikolay Shilov. CSEDays 1Nikolay Shilov. CSEDays 1
Nikolay Shilov. CSEDays 1
LiloSEA
MSR in Russia. CSEDays
MSR in Russia. CSEDaysMSR in Russia. CSEDays
MSR in Russia. CSEDays
LiloSEA
Michael Dyakin. CSEDays
Michael Dyakin. CSEDaysMichael Dyakin. CSEDays
Michael Dyakin. CSEDays
LiloSEA
Anna Baranova. CSEDays
Anna Baranova. CSEDaysAnna Baranova. CSEDays
Anna Baranova. CSEDays
LiloSEA

Классификация изображений

  • 1. Классификация изображений Many slides adapted from Fei-Fei Li, Rob Fergus, Antonio Torralba and Svetlana Lazebnik CSEDays-2010
  • 2. Сколько всего классов объектов ? ~10,000 to 30,000 Biederman 1987 1500-3000 основных существительных, ~10 подкатегорий
  • 3. Миллионы крошечных картинок (« Tiny images ») http:// people.csail.mit.edu/torralba/tinyimages /
  • 5. Классификация текстов Представление документа без порядка : частоты слов из словаря («мешок слов») Salton & McGill (1983) US Presidential Speeches Tag Cloud http://chir.ag/phernalia/preztags/
  • 6. Классификация текстов Представление документа без порядка : частоты слов из словаря («мешок слов») Salton & McGill (1983) US Presidential Speeches Tag Cloud http://chir.ag/phernalia/preztags/
  • 7. Представление документа без порядка : частоты слов из словаря («мешок слов») Salton & McGill (1983) Классификация текстов US Presidential Speeches Tag Cloud http://chir.ag/phernalia/preztags/
  • 8. Слова и словари Что такое «слово» в контексте изображений? Как составить «словарь» для коллекции изображений?
  • 9. Моделирование текстур Текстура является повторением набора базовых элементов («текстонов») Для стохастических текстур важны сами текстоны, а не их пространственное расположение
  • 11. «Визуальные слова» face, flowers, building «Визуальное слово» – часто повторяющийся фрагмент изображения В отличие от текстур – не в одном изображении, а в коллекции В изображении визуальное слово может встречаться только один раз!
  • 12. «Визуальный словарь» Словарь – набор фрагментов, часто повторяющихся в коллекции изображений Как составить словарь? Составить большой список всех фрагментов по всей коллекции Разделить весь список на похожие группы Типичная задача «кластеризации» Будем считать все фрагменты в одной группе – «экземплярами» одного и того же слова
  • 14. Регулярная сетка Vogel & Schiele, 2003 Fei-Fei & Perona, 2005 1. Сбор фрагментов
  • 15. Регулярная сетка Vogel & Schiele, 2003 Fei-Fei & Perona, 2005 Характерные точки Csurka et al. 2004 Fei-Fei & Perona, 2005 Sivic et al. 2005 1. Сбор фрагментов
  • 16. Характерная точка изображения - это точка с характерной (отличающейся) окрестностью Характерные точки Пример особой точки Пример точки, не являющейся особой Названия: Особенность ( feature) Характеристическая / интересная точка ( interest point)
  • 17. Свойства характерных точек Локальность ( Locality ) Особенность занимаем маленькую область изображения, поэтому работа с ней нечувствительна к перекрытиям Повторяемость ( Repeatability ) Особенность ( feature) должна находится в том же месте не смотря на изменения точки обзора и освещения Значимость ( Saliency ) Каждая особенность должна иметь уникальное ( distinctive) описание Компактность и эффективность Особенностей гораздо меньше .чем пикселей в изображении
  • 18. Детекторы характерных точек Harris Difference of Gaussian Harris-Laplacian
  • 19. Как два небольших изображения! Те же метрики, что и при прямом сравнении изображений: SAD = Squared absolute difference SSD = Squared of square difference Cross-correlation Неустойчиво к изменениям! Освещения Малые сдвиги приводят к большим изменениям Как сравнивать фрагменты?
  • 20. SIFT S cale- I nvariant F eature T ransform DoG или Harris-Laplacian Характерный размер области R Характерная ориентация Дескриптор на основе гистограммы направлений градиентов Один из самых эффективных дескрипторов David G. Lowe. "Distinctive image features from scale-invariant keypoints .” IJCV 60 (2), pp. 91-110, 2004.
  • 21. Ориентация Пример: найти локальное направление градиента вокруг интересной точки Повернуть фрагмент(ы) так, чтобы средний градиент был направлен вверх 0 2 
  • 22. Дескрипторы Ориентация = размытый градиент Рамка, независимая от поворота ( Rotation Invariant Frame )
  • 24. Гистограммы градиентов SIFT Вычисляем градиент в каждой точке Строим гистограммы по окрестностям Обычно – сетка 4 x4 , в каждой гистограмма с 8ю ячейками Стандартная длина вектора-дескриптора – 128 (4*4*8) Устойчив к изменениям освещенности и небольшим сдвигам
  • 25. 1. Извлечение фрагментов Выбрали фрагменты Вычислили для каждого дескриптор Составили большой список всех дескрипторов …
  • 26. 2. Обучение словаря …
  • 27. 2. Обучение словаря Кластеризация ݺߣ credit: Josef Sivic …
  • 28. 2. Обучение словаря Кластеризация ݺߣ credit: Josef Sivic Визуальный словарь …
  • 29. Кластеризации Кластеризация является обычным методов обучения визуального словаря или «кодовой книги» ( codebook ) Обучение без учителя Центр каждого кластера становится кодовым вектором Словарь можно обучить на отдельной выборке Если обучающая выборка достаточно представительна, тогда словарь может стать «универсальным»
  • 30. Кластеризация K-c редними Минимизируем сумму квадратов Евклидовых расстояний между точками x i и ближайшими центрами кластеров m k Алгоритм : Случайно инициализируем K центров кластеров Повторяем до сходимости : Назначаем каждую точку ближайшему центру Пересчитываем центр каждого кластера как среднее всх назначенных точек
  • 41. Визуальные словари Как выбрать размер словаря ? Маленький : слова не могут описать все особенности Большой : переобучение Вычислительная сложность Деревья словарей (Nister & Stewenius, 2006) Approximate nearest-neighbour Хеширование
  • 42. 3. От кластеризации к квантизации Квантуем особенности с помощью словаря Сопоставляем каждый дескриптор ближайшему слову из словаря Sivic et al. 2005 Примеры визуальных слова
  • 43. 3. Описание изображения – «мешок слов» частоты слова … ..
  • 44. 4. Классификация изображений Как мы будем различать изображение, если представление изображения в виде сумки слов уже получено?
  • 45. Классификация Обучим решающее правило (классификатор), назначающий «мешкам» соответствующий класс Любое решающее правило делит пространство на решающие регионы разделенные решающими границами Decision
  • 46. Классификатор – ближайший сосед Назначаем объекту метку ближайшего прецедента из обучающей выборки Диаграмма вороного для разбиения пространства признаков на 2 класса from Duda et al. Source: D. Lowe
  • 47. Для каждой точки найти k ближайших точек из обучающей выборки Метки k точек голосуют за метку Работает неплохо при наличии большой обучающей выборки и хорошей функции близости К ближайших соседей k = 5 Source: D. Lowe
  • 48. Решающее дерево 1 2 3 4 5 6 7 1 4 5 2 3 7 6 ݺߣ by V.Lempitsky
  • 50. От дерева к лесу Yali Amit, Donald Geman: Shape quantization and recognition with randomized trees. Neural Computation, 1997 . Leo Breiman: Random forests. Machine Learning, 2001. ݺߣ by V.Lempitsky
  • 51. Решающий лес - обучение function Node = Обучение_Вершины( {(x,y)}, Level) { if {y} одинаковые или Level == maxLevel return Создать_Лист(Распределение y); {tests} = Создать_ N _Случайных_Разбиений( {(x,y)} , N ) ; test = Выбрать_лучшее_разбиение _ из( {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); return Создать_Вершину( test, LeftChild, RightChild); } // Обучение леса function main() { {X,Y} = Прочитать_Обучающие_Данные() ; for i = 1 to N {Xi,Yi} = Случайное_Подмнжество( {X,Y})); TreeRoot_i = Обучение_Вершины( {Xi,Yi}); end } ݺߣ by V.Lempitsky
  • 52. Решающий лес - применение ݺߣ by V.Lempitsky
  • 53. Решающий лес – свойства Один из самых эффективных алгоритмов классификации Вероятностное распределение на выходе Применим для высоких размерностей пространства признаков Высокая скорость обучения и тестирования Относительная простота реализации Caruana, R., Niculescu-Mizil, A.: An empirical comparison of supervised learning algorithms , 2006 ݺߣ by V.Lempitsky
  • 54. Случайные окна для классификации Raphaël Marée, Pierre Geurts, Justus H. Piater, Louis Wehenkel: Random Subwindows for Robust Image Classification. CVPR 2005 - случайные окна - нормализация Признаки – интенсивности пикселей (цвета)
  • 55. Возможные тесты I(p) ≷ τ I(p) ≷ I(q) + τ p p q Σ p∊A I(p) ≷ τ A A B Σ p∊A I(p) ≷ Σ p∊B I(p) + τ Интегральные изображения для быстрого подсчета ݺߣ by V.Lempitsky
  • 56. Устойчивость к повороту Случайным образом поворачиваем каждое окно перед нормализацией размера
  • 57. Результат работы Размер выборки = 100.000 Глубина = максимум Количество тестов = 1 ( “extremely-randomized decision trees”) 10 деревьев в лесу всего 6 минут на обучение!!!! 100 окон (2000 тестов) на классификацию картинки – realtime Сравнимая с другими методами точность работы! ݺߣ by V.Lempitsky
  • 58. Caltech 101 & 256 Griffin, Holub, Perona, 2007 Fei-Fei, Fergus, Perona, 2004 http://www.vision.caltech.edu/Image_Datasets/Caltech101/ http://www.vision.caltech.edu/Image_Datasets/Caltech256 /
  • 60. The PASCAL Visual Object Classes Challenge (2005-2009) Основные конкурсы Классификация : Для каждого из 20 классов, определить присутствие/отсутствие объекта этого класса в изображении Поиск : Определить рамку и метку каждого объекта из 20 классов в изображении http://pascallin.ecs.soton.ac.uk/challenges/VOC/
  • 61. PASCAL (2005-2009) Классы 2008 : Человек : человек Животные : птица, кошка, корова, собака, лошадь, оцва Транспорт : самолет, велосипед, лодка, автобус, машина, мотоцикл, поезд Помещения : бутылка, кресло, стол, растение в горшке, монитор, диван http://pascallin.ecs.soton.ac.uk/challenges/VOC/
  • 62. The PASCAL Visual Object Classes Challenge (2005-2009) Новые конкурсы Семантическая сегментация : попиксельная аннотация области объектов и фона Человек : Пометить рамкой и меткой каждую часть тела (голову, руки, ступни)
  • 63. Как реализовать? OpenCV 2.0 Работа с изображениями, классификаторы VLFeat Детекторы точек, дескрипторы, кластеризация http:// www.vlfeat.org / ColorDescriptor Ряд разнообразных дескрипторов точек http:// staff.science.uva.nl/~ksande/research/colordescriptors /
  • 64. Резюме метода «мешок слов» Извлечение особенностей Обучить “ визуальный словарь ” Квантуем особенности по словарю Описываем картинку частотами «визуальных слов» Варианты: Поиск ближайшего Многоклассовая классификация
  • 65. Завтра… Поиск объектов Семантическая сегментация

Editor's Notes

  • #3: 1500-3000 basic-level nouns, ~10 types per basic-level category
  • #25: Добавить пояснения