Современная математика компьютерного зрения

Preview:

DESCRIPTION

Доклад на конференции DUMP-2013.В докладе рассказываются успехи компьютерного зрения и постановка общей математической задачи, которая описывает задачи компьютерного зрения. Рассказываются ограничения для простого решения этой общей задачи, и приводится ретроспектива методов.

Citation preview

Современная математика компьютерного зрения

Виктор КостоусовДенис Перевалов

Институт математики и механики им. Н.Н.Красовского

Конференция DUMP-2013

План

1. Что такое компьютерное зрение2. Успехи3. Математика4. Проблемы5. Методы

Нас интересуют методы извлечения и анализа цветовых и геометрических структур на изображении. 

ОпределениеКомпьютерное зрение

- теория и технология создания машин, которые могут видеть.

http://the-gadgeteer.com/wp-content/uploads/2009/12/mr-robot-head-game.jpg

Основной объект, над которым ведется работа – это изображение, заданное в виде прямоугольной матрицы чисел.

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

Высший уровень

Классификация и идентификация объектов,

построение описания сцены

Низкоуровневая обработка

фильтрация и выделение точечных особенностей

Задачи компьютерного зрения

Средний уровень

Обнаружение линий, контуров, простых геометрических фигур,

построение скелета,сегментация

2. Успехи компьютерногозрения

Решены конкретные задачи> Обнаружение лиц Обнаружение объектов: пешеходы, автомобили, животные и пр.Мониторинг людей в помещенииРаспознавание жестовАвтоматическое наведение на цельНомера автомобилейПоиск деталей на конвейереАвтоматический контроль в производствеАвтомобили без водителя

Алгоритм Виолы-Джонса, основанный на бустинге - каскадном усилении слабых классификаторов.

Решены конкретные задачиОбнаружение лиц > Обнаружение объектов: пешеходы, автомобили, животные и пр.Мониторинг людей в помещенииРаспознавание жестовАвтоматическое наведение на цельНомера автомобилейПоиск деталей на конвейереАвтоматический контроль в производствеАвтомобили без водителя

Алгоритмы HOG, основанные на гистограммах ориентаций градиентов + SVM (машина опорных векторов).

На картинках - примеры обнаружения скрытой в траве противопехотной прыгающей мины.

Решены конкретные задачиОбнаружение лиц Обнаружение объектов: пешеходы, автомобили, животные и пр.> Мониторинг людей в помещенииРаспознавание жестовАвтоматическое наведение на цельНомера автомобилейПоиск деталей на конвейереАвтоматический контроль в производствеАвтомобили без водителя

Обнаружение людей с помощью HOG, затем трекинг с помощью фильтра частиц (Particle filter).

Фильтр частиц следит за объектом с помощью облака частиц. Когда объект четко виден – частицы концентрируются к его центру. Когда объект пропал из зрения – облако расширяется. Когда два объекта похожи на искомый – облако разбивается на два меньших облака. Результат трекинга определяется по центру наибольшего облака.

Решены конкретные задачиОбнаружение лиц Обнаружение объектов: пешеходы, автомобили, животные и пр.Мониторинг людей в помещении> Распознавание жестовАвтоматическое наведение на цельНомера автомобилейПоиск деталей на конвейереАвтоматический контроль в производствеАвтомобили без водителя

3D-Камеры типа Microsoft Kinect вместо цвета выдают данные о расстоянии до объекта для каждого пикселя. Это значительно упростило отделение объектов от фона и распознавание частей тела, и позволило решить задачу анализа жестов.

Решены конкретные задачиОбнаружение лиц Обнаружение объектов: пешеходы, автомобили, животные и пр.Мониторинг людей в помещенииРаспознавание жестов> Автоматическое наведение на цельНомера автомобилейПоиск деталей на конвейереАвтоматический контроль в производствеАвтомобили без водителя

Авиабомба с оптической головкой

Решены конкретные задачиОбнаружение лиц Обнаружение объектов: пешеходы, автомобили, животные и пр.Мониторинг людей в помещенииРаспознавание жестовАвтоматическое наведение на цельНомера автомобилейПоиск деталей на конвейереАвтоматический контроль в производствеАвтомобили без водителя

Разработаны общие методы> Сегментация (GrabCut)Оптический поток (Farneback)Стереозрение (SGM)Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

Сшивка изображений (SIFT)

http://www.cis.upenn.edu/~jshi/GraphTutorial/Tutorial-ImageSegmentationGraph-cut4-Sharon.pdf

Разработаны общие методыСегментация (GrabCut)> Оптический поток (Farneback)Стереозрение (SGM)Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

Сшивка изображений (SIFT)

Разработаны общие методыСегментация (GrabCut)Оптический поток (Farneback)> Стереозрение (SGM)Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

Сшивка изображений (SIFT)

http://opencv.willowgarage.com/documentation/c/_images/disparity.png        

Разработаны общие методыСегментация (GrabCut)Оптический поток (Farneback)Стереозрение (SGM)> Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

Сшивка изображений (SIFT)

http://www.merl.com/projects/images/particle.jpg

Разработаны общие методыСегментация (GrabCut)Оптический поток (Farneback)Стереозрение (SGM)Трекинг (Particle filter)> Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

Сшивка изображений (SIFT)

http://ericbenhaim.free.fr/images/hog_process.png

Иллюстрация работы HOG-алгоритма. Изображение дробится на квадратные фрагменты, в каждом считается статистика направлений градиентов (контуров), и все эти данные используются как вектор признаков в предварительно обученной SVM.

Разработаны общие методыСегментация (GrabCut)Оптический поток (Farneback)Стереозрение (SGM)Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)> Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

Сшивка изображений (SIFT)

http://robwhess.github.io/opensift/

SIFT – Scalar Invariant Feature Transform – метод поискаключевых точек, инвариантный к поворотам, изменению масштаба и яркости

Разработаны общие методыСегментация (GrabCut)Оптический поток (Farneback)Стереозрение (SGM)Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)> по контурам (MRF)Сшивка изображений (SIFT)

Li 1994a, из книги Li по MRF

MRF – Markov Random Fields, марковские случайные поля.

Разработаны общие методыСегментация (GrabCut)Оптический поток (Farneback)Стереозрение (SGM)Трекинг (Particle filter)Поиск объектов на изображении (Виола-Джонс, HOG, GHT)Сопоставление с эталоном в условиях загораживания

по ключевым точкам (SIFT)по контурам (MRF)

> Сшивка изображений (SIFT)

http://queue.acm.org/detail.cfm?id=2206309

3. Математика компьютерного зрения

Задача сопоставления двух изображений

• Многие задачи компьютерного зрения являются конкретизацией следующей задачи:

-----------------------------------------------------------------------------

Дано два изображения A и B.

Требуется их сопоставить между собой,

и выдать параметры сопоставления: геометрические, цветовые, показатель надежности.

-----------------------------------------------------------------------------

Можно выбрать разные классы допустимых геометрических трансформаций, используемых при сопоставлении. В результате, получим разные известные задачи компьютерного зрения. Рассмотрим их.

> Отсутствие геометрических трансформаций

Малые локальные сдвиги

Большие горизонтальные сдвиги

Большой однородный сдвиг в любом направлении

Большой однородный сдвиг, поворот, масштабирование

A[x,y] ↔ B[x,y]

Задача поиска существенных изменений между изображениями

Задача сопоставления двух изображений

Отсутствие геометрических трансформаций

> Малые локальные сдвиги

Большие горизонтальные сдвиги

Большой однородный сдвиг в любом направлении

Большой однородный сдвиг, поворот, масштабирование

A[x,y] ↔ B[x + epsX, y + epsY]

Оптический поток

Задача сопоставления двух изображений

Отсутствие геометрических трансформаций

Малые локальные сдвиги

> Большие горизонтальные сдвиги

Большой однородный сдвиг в любом направлении

Большой однородный сдвиг, поворот, масштабирование

A[x,y] ↔ B[x + X, y]

Стереозрение

Задача сопоставления двух изображений

Отсутствие геометрических трансформаций

Малые локальные сдвиги

Большие горизонтальные сдвиги

> Большой однородный сдвиг в любом направлении

Большой однородный сдвиг, поворот, масштабирование

A[x,y] ↔ B[x + U, y +V] где U,V – одинаковы для всех (x,y)

Сшивка изображений

Задача сопоставления двух изображений

http://queue.acm.org/detail.cfm?id=2206309

Отсутствие геометрических трансформаций

Малые локальные сдвиги

Большие горизонтальные сдвиги

Большой однородный сдвиг в любом направлении

> Большой однородный сдвиг, поворот, масштабирование

A[x,y] ↔ B[ T(x,y) ] где T – афинный оператор

Поиск объектов на изображении

Задача сопоставления двух изображений

Математическая формулировка задач компьютерного зрения простая и кажется, что достаточно добавить критерий сопоставления пикселей, и задача будет решена. Но при практической реализации задачи в прямом виде возникают трудности, которые сейчас рассмотрим.

4. Проблемы компьютерногозрения

Комбинаторный взрыв

• Количество бинарных изображений размером NxN пикселей – 2N*N.

• 1x1 2 изображения• 2x2 16 изображений• 3x3 512 изображений• 5x5 33 554 432 изображений• 10x10 1267650600228229401496703205376• 100x100 ~103000 (3000 знаков в числе).

Это - комбинаторный взрыв:

Перебрать всё множество изображений трудно.Приходится сокращать пространство возможных изображений.

Трудоемкость

Число возможных расположений объекта на изображении велико (положение, поворот, размер, искажения).

Например, равнобедренный треугольник с шириной и высотой 1..100 пикселей, на изображении 1000x1000 пикселей,

100 углов поворота: 100 * 100 * 1000 * 1000 * 100 =~1 000 000 000 000 возможных положений для поиска по эталону.

Решение этой проблемы:

Двухуровневый поиск (грубый – точный масштаб).

Поиск объекта по частям (отрезки, углы объекта).

Структурная изменчивость изображений объектов

Проблема слабовыраженных границ

http://flogiston.ru/img/invisible_flounder_fish.jpg

Когда объект по цвету и текстуре трудноотличим от фона, его трудно найти путем корреляционными методы сопоставления, так как пик истинного сопоставления слабо различим на фоне остальных локальных пиков.

Проблема сегментации сильно-текстурированных объектов

http://dangerouswildlife.com/images/zebra-herd.jpg

Компьютерное зрение сегодня хорошоработает с низкотекстурированными объектами. В случае когда на изображении яркая текстура, представляет трудность нахождение границ объектов.

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

5. Методыкомпьютерного зрения

Ретроспектива развития методов> 50-е Перцептрон, линейные фильтры

60-е Корреляционные методы, Хаф, Фурье

70-е Математическая морфология

• Линейная фильтрация с помощью оптических и аналоговых средств.• Перцептрон Розенблатта – надежда использовать простую модель

нейронов мозга для распознавания изображений.

Фрэнк Розенблатт со своим компьютером — «Марк-1»

Цифровые компьютеры только появлялись, и поэтому строились аналоговые и оптические вычислители.

50-е Перцептрон, линейные фильтры

> 60-е Корреляционные методы, Хаф, Фурье

70-е Математическая морфология

• Сопоставления с эталоном с помощью корреляции.• Преобразование Хафа для поиска линий – аккумулирование в пространстве параметров

модели.• Быстрое преобразование Фурье – надежда на получение устойчивого метода

сопоставления с эталоном• Фильтры границ Собела, Превитта.

Ретроспектива развития методов

Но оказалось, что преобр. Фурье не очень хорошо работает, когда на изображении несколько объектов

Результат преобразования Хафа для двух прямых. Видны две соответствующих ярких точки в результате преобразования

Ретроспектива развития методов50-е Перцептрон, линейные фильтры

60-е Корреляционные методы, Хаф, Фурье

> 70-е Математическая морфология

• Морфология Серра – характеризация пористых изображений.• Морфологический анализ Ю.П. Пытьева – оператор морфологического

проектирования, инвариантный к изменениям яркостей объектов.

http://bme.med.upatras.gr/improc/Morphological%20operators.htm

Результат работы морфологического замыкания

Морфологическое замыкание = дилатация + эрозия.Видно что в результате замыкания мелкие дырки и тонкая черная линия были устранены.Остались только крупные отверстия.То есть, морфологические операции позволяют осуществлять огрубление формы объектов на изображении.

Ретроспектива развития методов> 80-е Дифференциальные и интегральные методы, обобщенный Хаф

90-е Комбинаторные методы и анализ многообразий изображений

2000-е - н.в. Три направления

• Метод Канни для поиска контуров.• Методы Люкаса-Канаде и Хорна для вычисления оптического потока.• Метод активных контуров• Обобщенный метод Хафа.• Многомасштабный анализ – надежда на вейвлеты.• RANSAC – стабильный метод оценки параметров модели на основе случайных выборок.

http://www.roborealm.com/help/Canny.php

На изображении контура, найденные алгоритмом Канни на изображении

Появились персональные компьютеры, и увеличились мощности суперкомпьютеров, появились сканеры и цифровые камеры. Это привело к лавинообразному появлению новых алгоритмов.

Ретроспектива развития методов80-е Дифференциальные и интегральные методы, обобщенный Хаф

> 90-е Комбинаторные методы и анализ многообразий изображений

2000-е - н.в. Три направления

• Использование множества частиц для трекинга объектов (Particle filter). • Методы анализа изображений как многообразий, PCA (principal component analysis) –

построение опорных векторов многообразий классов изображений, применено для поиска лиц.

В компьютерное зрение внедряются мощные методы статистики и распознавания образов.

Ретроспектива развития методов80-е Дифференциальные и интегральные методы, обобщенный Хаф

90-е Комбинаторные методы и анализ многообразий изображений

> 2000-е - н.в. Три направления

1. Общий подход (MRF) для решения многих задач компьютерного зрения. Позволяет формулировать задачу в общей математической формулировке, описанной выше. Модель задачи в виде марковских случайных полей + наложение модели на изображение с помощью глобальной оптимизации (имитация отжига, разрезы на графах). Правда, качество их работы немного меньше, чем качество специализированных алгоритмов, а скорость – значительно меньше. Но всё равно, это действительно универсальный подход для решения почти всех задач компьютерного зрения.

2. Сильные признаки (SIFT)Построены признаки, инвариантные к повороту и изменению масштаба, которые можно

применять для сопоставления объектов и пр. (Сопоставление признаков ведется здесь “простыми” методами типа RANSAC)

3. Простой признак + “сильный” метод принятия решения (HOG, Виола-Джонс)Использование достаточно простых признаков вместе с мощным аппаратом распознавания

образов типа SVM и бустинга. (В Виоле-Джонсе признаки являются разностью значений сумм яркостей двух прямоугольных областей)

Видимо, скоро будет найден какой-либо общий метод, который будет использовать и сильные признаки, и сильный алгоритм принятия решений.

Заключение

1. Все упомянутые методы, классические и новейшие, используются в различных задачах.

2. Многие алгоритмы реализованы в библиотеке OpenCV и могут быть использованы для «разведки» задачи.

3. Для серъезных приложений необходимы собственные реализации методов, учитывающих специфику задачи.

ЛитератураЭтот доклад будет опубликован тут:

www.uralvision.blogspot.com

Компьютерное зрение• E. R. Davies, Computer and Machine Vision, 2012.• Гонсалес Р., Вудс Р.  Цифровая Обработка Изображений, 2012.• Шапиро Л., Стокман  Дж. Компьютерное зрение, 2009.• Форсайт Д., Понс Ж. - Компьютерное зрение. Современный

подход, 2004.

Список книг по OpenCV

http://opencv.willowgarage.com/wiki/OpenCVBooks

Recommended