Доклады БГУИР
2013 № 6 (76)
УДК 004.942
АЛГОРИТМ ТРЕКИНГА ОБЪЕКТОВ В РЕАЛЬНОМ ВРЕМЕНИ С ОБРАБОТКОЙ ОШИБОК
О.П. СОЛОВЕЙ, Н.Н. ИВАНОВ
Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь
Поступила в редакцию 25 марта 2013
В приложениях видеонаблюдения в процессе трекинга множества объектов важно отслеживать соответствие объектов текущего фрейма объектам предыдущих фреймов. В процессе трекинга возможны ошибки, которые обусловлены различными обстоятельствами, такими как пересечения объектов между собой, пересечения объектов с объектами переднего плана сцены, изменения формы объектов. В данной статье рассматривается алгоритм трекинга множества объектов, основанный на выделении характерных параметров объекта. Вероятностная модель построена на основе фильтра Калмана. Система полностью автоматизирована и не требует ручного ввода параметров ни при инициализации, ни в процессе работы. Информация, полученная посредством создания модели движения с параметрами центроида, площади и вектора скорости движущихся объектов при необходимом условии статической сцены и статической камеры, позволяет выявить коллизии слияния/разделения, алгоритм позволяет решить проблему соответствия объектов после разделения.
Ключевые слова: трекинг множества объектов, модель движения, фильтр Калмана, окклюзия.
Введение
Трекинг движущихся объектов в видеопотоке является одной из важнейших проблем в системах компьютерного зрения. Трекинг нашел свое применение во многих областях, таких как видеонаблюдение, искусственный интеллект, робототехника, медицинские и биологические приложения и т. д. В последнее время появилось множество надежных алгоритмов для трекинга одного объекта, однако при наличии нескольких объектов, необходимо отслеживать соответствие объектов текущего фрейма объектам предыдущих фреймов. Отслеживание нескольких объектов является сложной задачей, особенно в случае их сходства.
На сегодняшний день существует достаточно много работ, посвященных решению задач такого рода. Для этих задач широко распространено применение фильтра Калмана [1, 2]. Основная область современного приложения фильтра Калмана - это предсказания будущего состояния динамической системы по имеющейся информации о состоянии системы в прошлом и настоящем. Параметры системы рассматриваются как случайные процессы, изначально они рассматривались как стационарные гауссовские. Именно этот подход к предсказанию значений параметров динамической системы называется фильтром Калмана.
Имеются работы по применению фильтра Калмана для предсказания параметров движущихся объектов на заданной последовательности фотоснимков или видеокадров [3]. Этот подход используется в распределенной системе трекинга множества движущихся людей в комнате с использованием нескольких камер. Проблема слияния и затенения наблюдаемого объекта (окклюзия) типична для трекинга в видеопоследовательности. В работе [4] в сочетании с фильтром Калмана для решения задачи окклюзии применяются байесовские сети. Для
решения этой задачи, наряду с фильтром Калмана, применяются специальные методы обработки окклюзий [5]. Последующее состояние движущихся объектов оценивается при помощи поиска по спирали. Авторы работы [6] для трекинга множества объектов с учетом окклюзий предложили метод, основанный на теории графов. Алгоритм обрабатывает разделения, используя корреляции оттенков серого цвета между объектами и сегментированными пятнами рисунка (блобами). Фильтр Калмана используется в сочетании с цветовой моделью объектов, при этом идентичность выделенных областей определяется по их гистограммам, однако этот метод не работает для случаев полной окклюзии [7].
В данной статье предложена модель оценки параметров движения, основанная на фильтре Калмана. Для достижения быстрого трекинга используется текущее положение объекта для предсказания положения объекта на следующем кадре, таким образом уменьшая область поиска и время, затрачиваемое на поиск. Соответствие объектов на последовательных кадрах определяется посредством использования характерных параметров объекта.
Экспериментальные результаты предлагаемого алгоритма подтверждают его эффективность и надежность в ситуациях пересечения траекторий объектов и их окклюзий с объектами переднего плана сцены.
Трекинг объектов на основе фильтра Калмана
Классический фильтр Калмана. Математически фильтр Калмана представляет собой рекурсивную процедуру, гарантирующую достижение результата за конечное число действий. Для этого, используя ряд неполных и зашумленных измерений, оценивается вектор состояния динамической системы. В основе успеха предсказания лежит достоверная и достаточно точная математическая модель системы.
Рассмотрим систему, где хк - вектор состояния, который представляет динамичное поведение объекта, индекс к обозначает дискретное время. Целью исследования является оценка хк на основании измерений ^ . Ниже представлено математическое описание фильтра
Калмана.
Уравнения процесса.
хк = Ахк-1 + Щ-1 , (!)
где А представляет матрицу перехода, хк - состояние на отрезоке времени от к - 1 до к. Вектор является гауссовским шумом с нулевым математическим ожиданием и ковариационной матрицей О , гауссовский шум нормально распределен со стандартной плотностью р(:
N(0,0) . (2)
Уравнения наблюдений.
2к = Нхк + Ч, (3)
где Н - матрица наблюдений и ^ - измерение, выполненное в интервале времени от к-1 до к, у - белый гауссовский шум измерений с нулевым математическим ожиданием, ковариационной матрицей Кк и нормальной плотностью р(у),
р(у)~ N(0, К). (4)
Уравнения коррекции. Уравнения (1) и (3) описывают линейную динамическую модель в момент времени к. Так как хк не измеряется непосредственно, информация, предоставляемая
измерением используется для обновления неизвестных состояний хк , где к е [к, + да). Априорная оценка состояния хк и ковариационная ошибка оценки хк_х необходимы для вычислений на следующем шаге. Данные уравнения представлены ниже:
хк- = ЛХ-1 + , (5)
где ~к - априорная оценка состояния вектора хк, ~ обозначает «оценку», х - род оценки (априорная / апостериорная), в данном выражении - априорная.
Рк = АРк_хАт + Q . (6)
Уравнения обновления измерений. Представленные ниже уравнения являются обратной связью системы. Целью служит получить опытным путем оценку хк, которая является
линейной комбинацией априорной оценки и нового измерения ^ .
Кк= Рк Нт (ярНт + Я )-1, (7)
~к = *; + Кк к - Н *Л (8)
Рк =(1 - КкНр , (9)
где К - коэффициент усиления фильтра Калмана. Вычисления производятся рекурсивно, используя значения, полученные опытным путем на предыдущем шаге. Такое рекурсивное вычисление состояний является важной особенностью фильтра Калмана.
Фильтр Калмана для трекинга множества объектов. В статье рассматривается применение фильтра Калмана для отслеживания одного или нескольких объектов видеопоследовательности, состоящей из двумерных растровых изображений. Описание геометрических особенностей объекта может включать в себя положение, форму и центр масс (центроид) [8], и т. п. Камера, используемая для эксперимента, описываемого в данной статье, имеет кадровую частоту 30 к/с, что позволяет наблюдать небольшие изменения движущегося объекта в двух последовательных кадрах. Таким образом, предполагается, что изменения размера отслеживаемого окна и позиции центройда движущегося объекта в соседних кадрах являются незначительными и перемещение объекта можно считать постоянным. Исходя из этого, координаты центроида и отслеживающего окна являются параметрами наблюдаемого объекта. После сегментации движущихся объектов выполняется ряд шагов для подготовки предсказания значений параметров на последующем шаге. Для каждого отслеживаемого объекта сцены определяется окно слежения. В целях уменьшения шума окно слежения выбиралось как можно меньшим (его размер немного больше размера самого объекта), что позволяет не только уменьшить шумовые помехи, но и снижает время обработки изображения. Алгоритм трекинга на основе фильтра Калмана может быть представлен тремя шагами с соответствующими моделями - моделью движения, моделью соответствия и моделью обновлений.
Модель движения. Фильтр Калмана, используемый в системах трекинга, определяется его состоянием, моделью движения и матрицей измерений и описывается 8-мерным вектором:
хк =[ хо ,к, У0,к, 1к, К, Vx ] , (10)
где х0к,уак абсцисса и ордината центроида, 1к,Кк представляют полуширину и полувысоту
окна слежения, Vиуук,Vк,уьк - векторы перемещения.
Площадь окна слежения описывается следующим выражением:
% = 41К. (11)
Вектор наблюдения системы имеет вид:
к = [-Хо^ Уо,^ 1к , Кк ]т . (12)
В следующем выражении А - матрица перехода (см. (6)) и Н - матрица наблюдений (см. (3)).
А =
1 0 0 0 м 0 0 0
0 1 0 0 0 А( 0 0
0 0 1 0 0 0 А( 0
0 0 0 1 0 0 0 А!
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
Матрица наблюдений Н может быть представлена следующим образом: "1 0 0 0 0 0 0 0"
Н =
0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0
м
Модель соответствия. Каждый движущийся объект описывается его центроидом, окном слежения, абсциссой и ординатой центроида и площадью к -го объекта в к -м кадре, которые описываются как х'к, у'к и . Расстояние между центроидами к -го объекта в к -кадре и ] -го объекта в к +1 - т кадре определяется следующим образом:
лКх
щ, ]) = ■
(Хк - х]к+1У +(ук -
Мах
п
к- хП+1)2 + (Ук - У1У
(13)
Разность площади к -го объекта в к -м кадре и ] -го объекта в (к +7)-м кадре определяется следующим выражением:
- ^'к+1|
А(к, ]) =
Мах
п I
к °к+1
(14)
Выражение (14) связано с оценкой изменения окна, чем меньше значение (14), тем более похожи объекты.
Используя формулы (13) и (14), можно определить целевую функцию, описывающую вес отдельно взятого сегментированного объекта:
У(1,]) = а Ба, ]) +р А(1, ]),
(15)
где а + в = 1, значения параметров были выбраны следующим образом, а = 0,8, в = 0,2. Они таковы, что вес расстояния между центроидами всегда больше, чем вес площади окна. Чем меньше значение функционала (15), тем более вероятно соответствие объектов.
Модель обновления. После того, как найдено минимальное значение функции, используются характеристики к -го кадра для обновления параметров модели движения, которые затем используются как входные параметры для следующего кадра, повторно производя данные вычисления до исчезновения объекта.
Проблема окклюзии
В данной статье для обнаружения и последующей сегментации движущихся объектов применяется метод вычитания фона. Полученные результаты позволяют выявить ситуации окклюзии или разделения объектов.
При обнаружении пересечения окон нескольких объектов предполагается, что объекты соединились. Используя данное предположение, объект слияния с позиции трекинга рассматривается как новый объект и оцениваются его параметры. В случае, когда изображение объекта заведомо содержит несколько независимых объектов, проводится проверка на предмет того, произошло ли раньше слияние, в этом случае при разделении изображения выполняется правдоподобное сопоставление частей разделившегося объекта с объектами, существовавшими до слияния. В противном случае части разделенного объекта рассматриваем как новые объекты с оценками их параметров.
Заключение
Предложен алгоритм трекинга множества объектов, основанный на фильтре Калмана. Основными параметрами каждого объекта избраны координаты центроида сегментированного объекта и окно слежения. Представлены математические модели применения фильтра в задаче. Модели построены на основе обновленной модели движения объектов. Сопоставление объектов на смежных кадрах определяется сравнением параметров объектов. Предложено решение задачи окклюзии.
Метод, предлагаемый в статье, применяется в стационарной сцене с искусственным освещением и стационарно установленной видеокамерой. Целью наблюдения является контроль доступа к складскому помещению в реальном времени. Преимущество представленного алгоритма состоит в его временном, а не частотном представлении, что ускоряет анализ ситуации. Временной подход обусловлен тем, что перемещение объектов оценивается напрямую сравнением их временных параметров.
REAL-TIME ALGORITHM OF OBJECT TRACKING WITH ERROR HANDLING
OP. SOLOVEY, N.N. IVANOV Abstract
Video surveillance applications have to support objects authentic in case of multiple objects tracking. During tracking process errors, caused by different circumstances, such as objects intersections among themselves, intersections with objects on the foreground, objects shape changes are possible. This article describes multiple objects tracking algorithm, based on system of object characteristics. The probabilistic model is based on the Kalman filter. The system is fully automated and does not require any manual input during initialization or execution.
Список литературы
1. Стратонович Р.Л. // Известия высших учебных заведений. Радиофизика. 1959. № 2 (6). С. 892-901.
2. Kalman R.E. // Journal of Basic Engineering. 1960. № 1 (82). P. 35-45.
3. Welch G., Bishop G. An Introduction to the Kalman Filter. TR 95-041. Department of Computer Science Carolina, 2006.
4. Nguyen N., Bui H. H., Venkatesh S. et. al. // ACTA Automatica Sinica. 2003. Vol. 29. P. 408-422.
5. Chang T.H., Gong S. // IEEE Workshop on multi-object tracking. 2001. P. 19-26.
6. Pan J., Hu B. // IEEE Conf. on Computer Vision and Pattern Recognition. 2007. P. 1-8.
7. Medioni G., Cohen I., Bremond F. et. al. // IEEE Trans. Pattern Anal. Mach. Intell. 2001. № 8 (23). P.873-889.
8. Czyzewski A., Dalka P. // 9th International workshop on image analysis and multimedia interactive services. 2008. P.175-178.