Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Алгоритм конденсации ( Con десятеричная Дэнс итй PROPAG ция ) является компьютерным зрением алгоритма. Основное применение - обнаружение и отслеживание контуров объектов, движущихся в загроможденной среде. Отслеживание объектов - один из самых основных и сложных аспектов компьютерного зрения и, как правило, необходимое условие для распознавания объектов . Возможность определить, какие пиксели на изображении составляют контур объекта, - нетривиальная проблема. Конденсация - это вероятностный алгоритм, который пытается решить эту проблему.

Сам алгоритм подробно описан Айсардом и Блейком в публикации в Международном журнале компьютерного зрения в 1998 году. [1] Одним из наиболее интересных аспектов алгоритма является то, что он не вычисляет каждый пиксель изображения. Скорее всего, пиксели для обработки выбираются случайным образом, и в конечном итоге обрабатывается только подмножество пикселей. Множественные гипотезы о том, что движется, естественным образом поддерживаются вероятностной природой подхода. Функции оценки во многом основаны на предыдущей работе в этой области и включают множество стандартных статистических подходов. Первоначальной частью этой работы является применение методов оценки фильтра частиц.

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

Обзор алгоритма [ править ]

Алгоритм уплотнения направлен на решение проблемы оценки конформации объекта, описываемого вектором, во время , учитывая наблюдения обнаруженных особенностей на изображениях до текущего времени включительно. Алгоритм выводит оценку условной плотности вероятности состояния путем применения нелинейного фильтра, основанного на факторизованной выборке, и его можно рассматривать как развитие метода Монте-Карло . [1] представляет собой представление вероятности возможных конформаций для объектов на основе предыдущих конформаций и измерений. Алгоритм уплотнения является генеративной моделью [2], поскольку он моделирует совместное распределение объекта и наблюдателя.

Условная плотность объекта в текущий момент времени оценивается как взвешенный, индексированный по времени набор образцов с весами . N - параметр, определяющий количество выбранных наборов образцов. Реализация получается выборкой с заменой из множества с вероятностью, равной соответствующему элементу . [1]

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

Алгоритм можно резюмировать путем инициализации во время и трех шагов в каждый момент времени t :

Инициализация [ править ]

Сформируйте исходный набор образцов и веса путем отбора образцов в соответствии с предварительным распределением. Например, укажите значение Гаусса и установите одинаковые веса.

Итерационная процедура [ править ]

  1. Выборка с временами замены из множества с вероятностью создания реализации .
  2. Примените изученную динамику к каждому элементу этого нового набора, чтобы создать новый набор .
  3. Чтобы учесть текущее наблюдение , установите для каждого элемента .

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

Вместо этого можно использовать кумулятивные веса для более эффективного отбора проб. [1]

Соображения по реализации [ править ]

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

Одним из способов повышения эффективности алгоритма является выбор модели с низкой степенью свободы для представления формы объекта. Модель, используемая Isard 1998, представляет собой линейную параметризацию B-сплайнов, в которой шлицы ограничены определенными конфигурациями. Подходящие конфигурации были найдены путем аналитического определения комбинаций контуров из нескольких видов объекта в разных позах и посредством анализа главных компонентов (PCA) деформируемого объекта.

Айсард и Блейк моделируют динамику объекта как разностное уравнение второго порядка с детерминированной и стохастической составляющими:

где среднее значение состояния, и , матрицы , представляющие детерминированные и стохастические компоненты динамической модели соответственно. , И оцениваются с помощью максимального правдоподобия , пока объект выполняет типичные движения. [1] [3]

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

Базовый алгоритм уплотнения используется для отслеживания одного объекта во времени. Алгоритм уплотнения можно расширить, используя единое распределение вероятностей, чтобы описать вероятные состояния нескольких объектов для одновременного отслеживания нескольких объектов в сцене. [4]

Поскольку беспорядок может вызвать разделение вероятностного распределения объекта на несколько пиков, каждый пик представляет собой гипотезу о конфигурации объекта. Сглаживание - это статистический метод кондиционирования распределения, основанный как на прошлых, так и на будущих измерениях после завершения отслеживания, чтобы уменьшить влияние нескольких пиков. [5] Сглаживание невозможно выполнить непосредственно в режиме реального времени, поскольку для этого требуется информация о будущих измерениях.

Приложения [ править ]

Алгоритм может быть использован для локализации мобильных роботов с помощью машинного зрения. [6] Однако вместо отслеживания положения объекта в сцене отслеживается положение платформы камеры. Это позволяет глобально локализовать платформу камеры с учетом визуальной карты окружающей среды.

Расширения алгоритма уплотнения также использовались для распознавания человеческих жестов в последовательностях изображений. Такое применение алгоритма уплотнения влияет на диапазон возможных взаимодействий человека с компьютером. Он использовался для распознавания простых жестов пользователя на доске для управления такими действиями, как выбор областей доски для печати или сохранения. [7] Другие расширения также использовались для отслеживания нескольких автомобилей в одной сцене. [8]

Алгоритм уплотнения также использовался для распознавания лиц в видеопоследовательности. [9]

Ресурсы [ править ]

Реализацию алгоритма уплотнения на языке C можно найти на веб-сайте Майкла Айсарда .

Реализацию в MATLAB можно найти на Mathworks File Exchange .

Пример реализации с использованием библиотеки OpenCV можно найти на форумах OpenCV .

См. Также [ править ]

  • Фильтр частиц - конденсация - это применение оценки повторной выборки по важности выборки (SIR) для отслеживания контуров.

Ссылки [ править ]

  1. ^ a b c d e Isard, M .; Блейк, А (август 1998 г.). «КОНДЕНСАЦИЯ - распространение условной плотности визуального слежения». Международный журнал компьютерного зрения . 29 (1): 5–28. DOI : 10,1023 / A: 1008078328650 .
  2. ^ Sminchisescu, C .; Kanaujia, A .; Метаксас, Д. Н. (ноябрь 2007 г.). «BM3E: распространение дискриминации по плотности для визуального отслеживания». IEEE Transactions по анализу шаблонов и машинному анализу . 29 (11): 2030–2044. CiteSeerX 10.1.1.78.1751 . DOI : 10.1109 / tpami.2007.1111 . PMID 17848782 .  
  3. ^ Блейк, Андреа; Айсард, Майкл; Рейнард, Дэвид (октябрь 1995 г.). «Учимся отслеживать визуальное движение контуров» . Искусственный интеллект . 78 (1–2): 179–212. DOI : 10.1016 / 0004-3702 (95) 00032-1 .
  4. ^ Коллер-Мейер, Эстер Б .; Адэ, Франк (28 февраля 2001). «Отслеживание нескольких объектов с использованием алгоритма конденсации». Робототехника и автономные системы . 34 (2–3): 93–105. DOI : 10.1016 / s0921-8890 (00) 00114-7 .
  5. ^ Айсард, Майкл; Блейк, Эндрю (28 мая 2006 г.). Сглаживающий фильтр от конденсата . Конспект лекций по информатике . 1406 . С. 767–781. DOI : 10.1007 / BFb0055703 . ISBN 978-3-540-64569-6.
  6. ^ Dellaert, F .; Burgard, W .; Fox, D .; Трун, С. (1999). «Использование алгоритма CONDENSATION для надежной локализации мобильного робота на основе зрения». Компьютерное зрение и распознавание образов . 2 : 588–594. DOI : 10,1109 / CVPR.1999.784976 . ISBN 0-7695-0149-4.
  7. ^ Блэк, MJ; Джепсон, AD (14 апреля 1998 г.). «Распознавание временных траекторий с помощью алгоритма уплотнения». Автоматическое распознавание лиц и жестов : 16–21. CiteSeerX 10.1.1.154.1402 . DOI : 10.1109 / AFGR.1998.670919 . ISBN  0-8186-8344-9.
  8. ^ Meier, EB; Адэ, Франк (1999). «Слежение за автомобилями на изображениях дальности с использованием алгоритма КОНДЕНСАЦИИ». Интеллектуальные транспортные системы : 129–134. DOI : 10.1109 / ITSC.1999.821040 . ISBN 0-7803-4975-X.
  9. ^ Чжоу, Шаохуа; Krueger, V .; Челлаппа, Р. (21 мая 2002 г.). «Распознавание лиц из видео: КОНДЕНСАЦИОННЫЙ подход». Автоматическое распознавание лиц и жестов : 221–226. DOI : 10.1109 / AFGR.2002.1004158 . ISBN 0-7695-1602-5.