Доклады БГУИР
2012 № 1 (63)
УДК 004.932.2
МЕТОД ВЫДЕЛЕНИЯ ДВИЖУЩИХСЯ ОБЪЕКТОВ НА ВИДЕОИЗОБРАЖЕНИИ
К.А. ВОЛКОВ
Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь
Поступила в редакцию 30 января 2012
Произведен анализ методов выделения движущихся объектов на видеоизображении. Предложен оконный метод выделения ограничивающий прямоугольников для движущихся объектов, основанный на интегральной матрице бинарных флагов различий изображений. Произведено сравнительное тестирование предложенного метода.
Ключевые слова: обнаружение движущихся объектов, интегральная матрица.
Введение
Задача автоматического обнаружения подвижных объектов является важной при разработке видеокодеков, систем видеонаблюдения, оптических навигационных систем и др. В зависимости от области применения, целевой операцией может являться выделение собственно движущегося объекта, или же выделение области движения [1, 2]. Движущийся объект - это физический объект, находящийся в поле зрения камеры, совершивший за время между двумя последовательными кадрами перемещение в пространстве. Область движения - участок кадра, изображение которого отличается от изображения на одном или нескольких предыдущих кадрах. Для большинства практических задач проблема выделения движущихся объектов может быть сведена к задаче выделения их ограничивающих прямоугольников с непосредственным использованием результатов данной процедуры или с последующей сегментацией внутренних областей. В работе рассматриваются известные подходы к выделению движущихся объектов на видеоизображении, проводится анализ межкадровых различий для движущихся объектов. Предлагается и исследуется оконный метод выделения ограничивающих прямоугольников для движущихся объектов, обладающий лучшими по сравнению с аналогами функциональными характеристиками при сопоставимом быстродействии.
Методы выделения движущихся объектов на видеоизображении
Различают четыре основных подхода к выделению движущихся объектов в кадре.
1. Определение смещения областей пикселов между кадрами [3, 4]. Выделение движущихся объектов основано на сегментации текущего и предыдущего кадра, поиске соответствующих областей и оценке изменения их расположения и/или формы. Данный подход используется для задачи сопровождения движущихся объектов и основан на априорном предположении, что движущийся объект гомогенен по цвету или текстуре и является достаточно контрастным по отношению к фону. Недостатками данного подхода является низкая устойчивость в условиях низкой контрастности движущихся объектов относительно неподвижного фона (например, при использовании средств маскировки, в т.ч. искажающего и дробящего камуфляжа) и высокие вычислительные затраты на сегментацию изображений.
2. Попиксельное определение изменения кадров. Выделение движущихся объектов в кадре основано на попиксельном сравнении текущего кадра с предыдущими. Пикселы, цвет
или яркость которых различаются больше, чем на некоторую пороговую величину, считаются принадлежащими к области движения. Данный подход используется для определения факта движения объектов в кадре и нахождения их координат. Недостатком данного подхода является сложность непосредственного определения формы движущегося объекта, т.е. требуется последующий анализ областей движения.
3. Определение оптического потока [5]. Выделение движущихся объектов в кадре основано на нахождении векторов смещения каждого пиксела для пары кадров. Каждому пикселу одного изображения отыскивается соответствующий ему пиксел второго изображения, формируемое поле векторов смещения сегментируется по критерию направления и длины вектора. Области с ненулевой длиной векторов смещения считаются проекциями движущихся объектов. Данный подход позволяет одновременно выделять форму объектов и оценивать параметры их движения. Недостатками данного метода являются высокая вычислительная сложность и относительная нестабильность результата работы для однотонных объектов и при наличии помех.
4. Определение смещения прямоугольных блоков [6, 7]. Выделение движущихся объектов в кадре основано на нахождении векторов смещения прямоугольных блоков для пары кадров. Блоки с ненулевой длиной векторов смещения считаются содержащими движущиеся объекты. Недостатком данного метода является нестабильность результата работы для объектов с малым отношением площадь/периметр и для однотонных объектов и при наличии помех.
Для задачи контроля территории с низкой интенсивностью движения и относительно стабильными условиям видеосъемки эффективно применение попиксельного определения изменения кадров, поскольку этот подход требует малых вычислительных затрат, не имеет ограничения на число одновременно контролируемых объектов, обладает относительно малой чувствительностью к использованию средств маскировки подвижных объектов.
Результатом анализа полутонового изображения |/г. . —^ ._о~^) (У7.. е{0..255})
является матрица бинарных флагов различий (МБФР) \м, . ^—^ ._0-^) (УМ. . е {0,1}), где — , h - ширина и высота изображения, соответственно. Пикселы с координатами (.,.), для которых Mi ■ _ 1, считаются принадлежащими областям движения, прочие - принадлежащими
неподвижным объектам или фону.
Различают два основных метода попиксельного определения изменения кадра:
1. Определение непосредственного изменения яркости пикселов текущего \7{.) и предыдущего .} кадров:
Мл _
0: \7и " КЛ * МТ
1 • К; - 7Л > МТ '
где МТ - пороговая величина, определяющая чувствительность метода к межкадровым различиям (МТ е {1..255}).
Недостатком данного способа является невозможность обнаружения медленно движущихся объектов, скорость которых в проекции ниже, чем 1 пиксел за время межкадрового интервала. Данная проблема решается за счет использования для анализа нескольких предыдущих кадров (Л }, {/" } и т.д.):
Ми _
0 • К. - и} * Мт)^\1г. - г. * ^И7., - 7" I * МТУ
1 • \- 7'',]\ > МТУ к; - 7111 > МТУ 17Л - 7. > МТУ
Это влечет за собой затраты памяти на хранение и процессорного времени на анализ дополнительных кадров, а также появление в матрице флагов различий выделенного «следа» движения объекта.
2. Определение изменения яркости текущего кадра |/г- ^) и сформированного фона
^•} = 0^1, ] =0, й-1) '
ми =
0: \11} - F j < MT - F,\ > MT
После формирования матрицы флагов различий на каждом шаге производится переформирование фона по одному из следующих правил'
Fu =
Fl; + DF : Iu - f;; > DF F;; - DF : It j - F;; <- DF
'I i. - F ; j < DF
или
F'j = (1 - af) • f; j + af • ,
где DF e {1..255} - параметр, определяющий скорость переформирования фона, AF е (0,1]. При DF = 255 или AF = 1 метод сводится к определению непосредственного изменения яркости пикселов текущего и предыдущего кадров.
Недостатком данного способа является значительное время восстановления корректного фона после случайного перекрытия поля зрения камеры посторонним предметом, занимающим значительную поверхность кадра (например, летящая рядом птица или близкорасположенный подвижный конструкционный элемент), или условий освещенности (например, включение света в помещении). Данная проблема решается при помощи принудительного переформирования фона, если количество найденных различий |{(/, j): Mt ■ = 1}| превышает некоторую пороговую величину MDF:
F;j + DF : (l,j - F;j > df)n ({(/, j): Mt j = 1}| < MDF) F,'j - DF : (l,j - F;j < -DF)n ({(/, j): MtJ = 1}| < MDF) Ij, (l,j - F j < DF)u ({(/, j): M,j = 1}| > MDF)
(1 - AF) • F,'j + AF • I,j : |{(i, j): Mt j = 1}| < MDF IU1 :{(/, j):M,j = 1||| >MDF '
F, j =
или
F, j =
Важно отметить, что вместо яркости пиксела может использоваться также любая норма цветового пространства [8], либо производиться оценка движения по каждой цветовой координате RGB с логическим суммированием результата:
m. =(Mj > o)^(Kj > °Mm5 >o).
Экспериментально не было выявлено преимущества какого-либо из способов преобразования цветного изображения в полутоновое, однако использование манхэттенской
(||с|= CR + CG + CB) и супремум (||С||^ = max(CR, CG, CB) ) норм цветового пространства
RGB позволяет снизить вычислительные затраты на несколько единиц процентов.
Оба метода попиксельного определения изменения кадров имеют ряд модификаций, направленных на адаптивность пороговых величин.
Анализ межкадровых различий для подвижных объектов
Анализ работы процедур определения движущихся объектов (рис. 1,а) на изображении выявил следующие особенности.
1. При появлении объекта в поле зрения камеры вся проекция объекта идентифицируется как область движения.
2. При движении объекта вдоль оптической оси камеры область движения идентифицируется на всех границах объекта (рис. 1,6).
3. При движении объекта в поле зрения камеры область движения идентифицируется только на границах объекта, перпендикулярных направлению его движения. При этом одна область движения соответствует участку фона, который выходит из затенения объекта, а другая -части объекта, который затеняет очередной участок фона (рис. 1,в, г).
4. Движение идентифицируется на границах объекта, при этом внутреннее пространство объекта (при условии его гомогенной окраски) определяется как неподвижная область.
5. При быстром движении объекта области движения имеют значительный линейный размер вдоль направления его движения в кадре, при медленном - области движения имеют малую ширину либо вырождаются во множество несвязанных пикселов.
Из вышеуказанных особенностей следует, что непосредственное выделение контура движущегося объекта с использованием только информации об областях движения в общем случае невозможно.
в г
Рис. 1. Межкадровая попиксельная разность |/( j -1[ ^ для движущегося объекта на однотонном
контрастном фоне; а - исходный объект (колесный транспортер);
6 - приближение объекта; в - движение вверх; г - движение влево
Для решения данной задачи предлагается метод сегментации ограничивающего прямоугольника. Он основан на предположении, что близлежащие области движения считаются относящимися к одному объекту. Метод состоит из следующих шагов:
1) близлежащие области движения объединяются в группу;
2) для каждой группы областей движения определяется ограничивающий прямоугольник (зона интереса);
3) проводится сегментация изображения внутри каждого ограничивающего прямоугольника [1, 9];
4) сегмент с наибольшей площадью внутри ограничивающего прямоугольника считается проекцией движущегося объекта, т.е. искомым результатом.
Заметим, что для ряда практических применений, не требующих выделения объектов, можно ограничиться только формированием ограничивающих прямоугольников;
Для выделения ограничивающих прямоугольников можно применить следующие подходы.
1. Группировка элементов МБФР по ячейкам регулярной структуры. Ячейка, содержащая количество элементов больше порогового значения, считается содержащей область движения. Предполагается, что размер движущегося объекта не превышает размера ячейки. Поэтому все соответствующие ему области движения относятся к одной или нескольким сосед-
ним ячейкам. Достоинствами данного подхода являются высокое быстродействие, нечувствительность к разрывам в области движения; недостатками - необходимость параметризации метода (задания размера ячеек), возможный пропуск областей движения на границах ячеек, низкая точность позиционирования ограничивающего прямоугольника (совпадает с расположением ячейки).
2. Сегментация МБФР с формированием ограничивающих прямоугольников для сегментов. Пересекающиеся ограничивающие прямоугольники областей движения объединяются для формирования ограничивающего прямоугольника движущегося объекта. Достоинством данного подхода является непосредственное получение всей информации об области движения (в т.ч. ограничивающего прямоугольника), недостатками - сравнительно низкое быстродействие, высокая чувствительность к разрывам в областях движения.
Таким образом, актуальной является задача разработки метода выделения ограничивающих прямоугольников движущихся объектов, обладающего высоким быстродействием, нечувствительностью к разрывам в областях движения, возможностью непосредственного позиционирования движущихся объектов. Данный метод должен учитывать особенность расположения областей движения у границ объекта для минимизации площади ограничивающего прямоугольника.
Оконный метод выделения ограничивающих прямоугольников для движущихся объектов
Предлагается оконный метод выделения ограничивающих прямоугольников для движущихся объектов, основанный на интегральной матрице [1, 10] бинарных флагов различий (ИМБФР). Метод может применяться как для пары последовательных кадров, так и для текущего кадра и сформированного фона.
Метод состоит из следующих шагов.
1. Производится построение ИМБФР {iM. . }(=—j .(^M . e {0, w x h}), для двух
последовательных кадров.
2. С использованием скользящего окна на ИМБФР выделяется множество ограничивающих прямоугольников для областей движения. Окно, содержащее количество элементов больше порогового значения, считается содержащим область движения. Ввиду специфики расположение областей движения преимущественно по границам объекта, лучшие результаты достигаются при одновременном использовании двух окон с различным соотношением сторон (вертикальной и горизонтальной ориентацией).
3. Пересекающиеся ограничивающие прямоугольники объединяются, ограничивающие прямоугольники для пересечений формируют результат работы метода - ограничивающие прямоугольники для движущихся объектов.
Исходными данными для работы метода является {I. . j - -\ и
Ч 1,j J\i=0, w—1, j =0, h—1J
{//. }(.=0—1 ._0hT) - пара полутоновых изображений.
Параметрами метода являются:
- MT - пороговая величина, определяющая чувствительность метода к межкадровым различиям;
- wH x hH и wV x hV - размер окон с горизонтальной и вертикальной ориентацией, соответственно;
- BMH и BMV - пороговое значение числа бинарных флагов различий в окнах просмотра для области движения, соответственно.
Результатом работы метода является:
- {R.} - множество ограничивающих прямоугольников R. = (left, top, right, bottom)i для движущихся объектов.
Для предложенного метода разработан алгоритм и программная модель на языке C++, обрабатывающая в режиме реального времени видеопоток с разрешением 640x480 или 768x576 пикселов и частотой 25 кадров в секунду.
Экспериментальные результаты работы метода
Для тестирования метода использовалась 4-часовая видеозапись с разрешением 640x480 пикселов участка автомобильной дороги с тротуаром в районе офисных и промышленных зданий. На видеозаписи было запечатлено движение 15 животных, 581 пешехода, 412 легковых и 25 грузовых автомобилей на расстоянии 50-100 м от камеры. Обработка видеопотока осуществлялась на компьютере с процессором Core Duo 1,8 ГГц, объемом ОЗУ 512 Мб и ОС Windows XP SP3, без использования GPU.
Для сравнения были использованы метод группировки элементов МБФР по ячейкам регулярной структуры (поле 32x24 ячейки) и метод сегментация МБФР с формированием ограничивающих прямоугольников для сегментов. Для всех методов использовались идентичные параметры формирования бинарных флагов различия (пороговая величина различия цвета пикселов, минимальная площадь области движения (в пикселах)). Для оценки качества работы каждого метода использованы следующие критерии: пропуск движущихся объектов, ложное обнаружение движущихся объектов, ложное разделение движущегося объекта на фрагменты, время обработки одного кадра. Результаты эксперимента приведены в таблице.
Сравнительные результаты тестирования методов выделения движущихся объектов на видеоизображении
Характеристика Метод группировки элементов МБФР по ячейкам регулярной структуры Метод сегментация МБФР с формированием ограничивающих прямоугольников для сегментов Метод выделения ограничивающий прямоугольников для движущихся объектов, основанный на ИМБФР
единиц % единиц % единиц %
Пропуск движущихся объектов 41 4% 53 5% 7 1%
Ложное обнаружение движущихся объектов 2 <1% 0 <1% 1 <1%
Ложное разделение движущегося объекта на фрагменты 18 2% 127 13% 2 <1%
Время обработки одного кадра 4 мс 12 мс 10 мс
В процессе тестирования были выявлены следующие особенности работы методов.
1. Метод сегментация МБФР с формированием ограничивающих прямоугольников для сегментов допускает ложное разделение движущихся объектов из-за разрывов в областях движения на ближней дистанции и пропуск истинных объектов из-за множества разрывов в области движения на дальней.
2. Метод группировки элементов МБФР по ячейкам регулярной структуры допускает пропуск объектов при их прохождении через границу ячеек из-за малой площади объекта в каждой из ячеек.
3. Все методы допускали пропуски при попадании объектов на неконтрастный фон, что может быть частично исправлено за счет применением адаптивных пороговых величин.
4. Метод выделения ограничивающих прямоугольников для движущихся объектов, основанный на ИМБФР, формирует результат, наиболее точно соответствующий истинным границам движущихся объектов.
Дополнительно было проведено тестирование предложенного метода с одним скользящим окном квадратной формы. Время обработки одного кадра при этом составило 9 мс; площадь ограничивающих прямоугольников увеличилась на 10-200% (в среднем на 20%). Таким образом, использование двух окон позволяет получить более точные координаты ограничивающего прямоугольника для движущегося объекта за счет приемлемого увеличения времени обработки.
Заключение
В работе рассмотрены методы обнаружения движущихся объектов на видеоизображении. Проведен анализ расположения областей движения. Предложен новый метод, обладающий лучшим качеством результата работы за счет использования двух подвижных окон различного размера, сопоставимым быстродействием за счет использования интегральных матриц бинарных флагов различий. Проведено экспериментальное сравнение программной реализации предложенного метода с распространенными аналогами по критериям пропуска и ложного обнаружения движущихся объектов, а также ложного разделения движущегося объекта на фрагменты.
METHOD OF MOVING OBJECT DETECTION IN THE VIDEO
К.А. VOLKOV Abstract
The analysis of methods of moving objects detection in video is done. The window method of bound rectangles allocation of moving objects, based on integral matrix of binary flags is proposed. A comparative test of the proposed method is done.
Список литературы
1. Szeliski R. Computer Vision: Algorithms and Applications Springer. New-York, 2010.
2. Форсайт Д., Понс Ж. Компьютерное зрение. Современный подход. М., 2004.
3. Xu L, Chen J., Jia J. // In Tenth European Conference on Computer Vision (ECCV 2008). 2008. P 671-684.
4. Yongfang Liang, Ishfaq Ahmad, Jiancong Luo et al. // IEEE Transactions on Circuits and Systems for Video Technology. 2005. Vol. 15, №12.
5. Barron J.L., Fleet D.J., Beauchemin S.S. // International Journal of Computer Vision. 1994. Vol. 12, №1. P. 43-77.
6. Shih-Yu Huang, Chuan-Yu Cho, Jia-Shung Wang // IEEE Transactions on Circuits and Systems for Video Technology. 2005. Vol. 15, №11.
7. Путилин С. // Труды конференции Graphicon - 2006. 2006. С. 407-410.
8. Волков К.А. // Докл. БГУИР. 2010. №5 (51). С. 47-53.
9. FakherM.M., Volkov K.A., Tsviatkou V.YU. // Second Information Technology Conference. Under the title of Information Technology: Application & Horizons. 2010. P. 173-184.
10. Bay H., Tuytelaars T., Luc Van Gool // Proceedings of the 9th European Conference on Computer Vision, Springer LNCS. 2006. Vol. 3951, Part 1. P. 404-417.