УДК 004.932.2
МЕТОД ДЕТЕКТИРОВАНИЯ ПЕРИОДИЧЕСКИХ ДВИЖЕНИЙ В ВИДЕОСИГНАЛЕ НА ОСНОВЕ АНАЛИЗА ОПТИЧЕСКОГО ПОТОКА
© 2013 г. Р.Л. Григорян, С.А. Репалов, А.В. Столповский1
Григорян Рубен Левонович - научный сотрудник, НИИ «Спец-вузавтоматика», пер. Газетный, 51, г. Ростов-на-Дону, 344002, e-mail: [email protected].
Репалов Сергей Анатольевич - кандидат физико-математических наук, доцент, заведующий лабораторией, НИИ «Спецвузавтоматика», пер. Газетный, 51, г. Ростов-на-Дону, 344002, e-mail: [email protected]. Столповский Алексей Владимирович - научный сотрудник, НИИ «Спецвузавтоматика», пер. Газетный, 51, г. Ростов-на-Дону, 344002, e-mail: [email protected].
Grigoryan Ruben Levonovich - Researcher, Research Institute «Spezvuzautomatika», Gazetny St., 51, Rostov-on-Don, Russia, 344002, e-mail: [email protected]. Repalov Sergey Anatolyevich - Candidate of Physical and Mathematical Science, Associate Professor, Head of the Laboratory, Research Institute «Spezvuzautomatika», Gazetny St., 51, Rostov-on-Don, Russia, 344002, e-mail: [email protected]. Stolpovskiy Alexey Vladimirovich - Researcher, Research Institute «Spezvuzautomatika», Gazetny St., 51, Rostov-on-Don, Russia, 344002, e-mail: a. [email protected].
Рассматривается задача детектирования и грубой оценки параметров периодических движений в кадре видеосигнала без предварительного распознавания осциллирующих объектов. В качестве первичных признаков использован результат определения оптического потока. Предложен подход, основанный на анализе проекций оптического потока на несколько фиксированных векторов (направлений движения). Показана эффективность модели для широкого круга типов периодического движения с частотой в диапазоне от 1,5 до 8 Гц.
Ключевые слова: обработка видеосигнала, оптический поток, детектирование периодичности.
The problem of detection and rough estimate ofparameters ofperiodic movements in a video signal frame without preliminary recognition of oscillating objects is considered. The result of definition of an optical flow is used as primary features. The approach based on the analysis ofprojections of an optical flow on some fixed vectors (the movement directions) is presented. Efficiency of model is shown for a wide range of types ofperiodic movement with a frequency in the range from 1,5 to 8 Hz.
Keywords: analysis of video sequences, optical flow, periodicity detection.
Рассматривается задача классификации содержимого видеопотока по признаку наличия периодического движения. Актуальность задачи обусловлена современными тенденциями «очеловечивания» результатов классификации образов при обработке мультимедийных данных. Яркими примерами достигнутых результатов являются автоматические автомобили Google, системы распознавания жестов типа Microsoft Kinect, область применения которых далеко не ограничивается играми (например, в [1] производится распознавание языка глухонемых), сервисы, производящие автоматическую классификацию аудио- и видеопотоков с целью поиска похожих записей (с человеческой точки зрения), системы видеонаблюдения, не реагирующие на естественные изменения природного фона, и многое другое. Наличие периодичного движения, очевидно, является одним из важных признаков для составления сжатого описания видеофрагмента.
Известные подходы
Общие подходы к оценке движения в кадре видеосигнала следует разделить на два больших класса - с предварительным поиском и оценкой положения заданных объектов и без него.
Второй подход применяется для грубой предварительной оценки характера движения обрабатываемого видеофрагмента, поэтому должен быть более быстрым, универсальным и не требовать предварительного трудоёмкого обучения. Рассматриваемый в работе метод детектирования периодических движений относится к данной категории.
В качестве базовых признаков для оценки движения в кадре могут выступать результаты определения оптического потока [2] или откликов пространственно-временных фильтров [3]. Отличие между этими подходами состоит в следующем.
'Работа выполнена при финансовой поддержке Министерства образования и науки РФ (ОКР ГК № 07.524.11.4023 от 10.07.2012 г.).
При вычислении оптического потока производится поиск похожих фрагментов между соседними кадрами изображения, причём предварительно указывается положение и размеры искомых областей (успешно найденные фрагменты на обоих кадрах, как правило, используются в качестве начальных при обработке следующего кадра).
В методе пространственно-временной фильтрации набор последовательных кадров видеоизображения рассматривается как трёхмерное пространство, одна из осей которого - время. Процедура фильтрации заключается в свёртке ограниченной области данного пространства с заданным набором фильтров, отражающих движение и/или вращение какой-либо области изображения с некоторой скоростью в заданном направлении. Обычно данные фильтры построены на основе масок, подобных тем, что используются при обнаружении краёв в изображении, оценивают движение небольших, определённым образом ориентированных, контрастных фрагментов. Имеются сведения об успешном применении этого подхода для решения рассматриваемой задачи детектирования периодических движений в рамках коммерческого продукта.
Близкие по тематике работы содержат результаты оценки периодичности в специальных случаях, например, оценки пульсаций крови в медицинских исследованиях [4]. В [5] предлагается использование пространственно-временных осцилляторов для улучшения качества определения оптического потока.
В данной работе предпринята попытка детектирования периодических движений путём обработки результатов вычисления оптического потока.
Построение оптического потока
Определение оптического потока производилось с помощью итеративного метода Лукаса-Канаде (Lucas-Kanade). Его суть состоит в анализе фрагментов двух соседних кадров видеоизображения путём оценки компонент вектора смещения исходя из критерия минимизации суммы квадратов ошибки составляющих эти фрагменты пикселей. Поиск соответствующего фрагмента на втором кадре начинается в окрестности положения исходного. Отличительной чертой данного алгоритма, обусловливающей его широкое практическое распространение, является сравнительно высокая скорость работы при достаточно низкой чувствительности к шуму и универсальности. В качестве практической реализации использовалась процедура calcOpticaLFlowPyrLK библиотеки Ореп^ [6].
Входными параметрами данной процедуры являются пара чёрно-белых изображений с 8-битным кодированием яркости; сетка опорных точек, определяющих положение искомых фрагментов изображения; величина прямоугольного окна, задающего размеры искомых фрагментов. Выходными параметрами являются массивы векторов смещений исходных фрагментов и соответствующих оценок степени близости. Поскольку не все исходные фрагменты могут быть найдены на втором кадре, некоторые элементы отмечены как неопределённые.
Исходя из поставленной задачи, для вычисления оптического потока все видеофрагменты предварительно
конвертировались к разрешению 320 точек по горизонтали (размер по вертикали определялся в соответствии с пропорциями исходного видеоизображения).
Сетка опорных точек выбрана размером 20x16 элементов, фрагмент - 10x10 точек. При построении сетки сделан отступ от краёв в 7,5 % с каждой стороны по вертикали и горизонтали.
Преобразование в чёрно-белое изображение проводилось путём перехода к цветовому пространству YUV, с последующем оставлением компоненты яркости.
Результат вычисления оптического потока, как правило, содержит шум, вызванный сложным и размытым характером движения трёхмерных объектов (повороты при незначительном изменении вида поверхности), наличием регулярных текстур, артефактами сжатия видеоизображения и другими причинами.
В рамках экспериментов производилась фильтрация оптического потока по величине ошибки с порогом 6,0. На рис. 1 показаны кадр видеосигнала и соответствующий оптический поток. Наиболее заметное движение на этом кадре вызвано движением руки и смычка скрипача на заднем плане. Это иллюстрируется размытостью движущихся частей изображения и подтверждается картиной оптического потока. Для наглядности отображения множества активных векторов их длина увеличена примерно в 4 раза относительно фактической. В правой верхней части рис. 1 некоторые из длинных стрелок соответствуют ложным срабатываниям алгоритма определения оптического потока, вызванным, по-видимому, быстрым движением смычка по пёстрому фону.
и \
го ]»
Рис. 1. Кадр видеоизображения и соответствующий оптический поток
Обработка оптического потока
Естественным предположением является то, что движения осциллирующих объектов в кадре ориентированы вдоль некоторой оси. Главная идея - проецирование векторов-смещений на несколько заданных фиксированных осей с последующим анализом одномерной последовательности на предмет наличия ос-цилляций.
Здесь сразу возникает вопрос о способе проектирования оптического потока на заданную ось. Можно просто проектировать все вектора и суммировать отклик, но можно поступить иначе - проектировать только те вектора, проекция которых на заданное направление имеет положительный знак. На первый взгляд, первый подход выглядит предпочтительнее, поскольку лучше соответствует идеальному осциллятору. Преимущества второго подхода проявляются в
случае двух осцилляторов примерно равных параметров, осциллирующих в противофазе. Очевидно, в первом случае проекция на любую ось будет равна нулю, во втором сигнал будет подобен функции |sin x|, что
позволит определить главную гармонику на удвоенной частоте.
Наличие пары сравнимых осцилляторов в противофазе не такое уж и редкое явление. Такая ситуация может возникнуть, например, при аплодисментах, при беге двух человек (подпрыгивания ритмичны, но вполне могут оказаться в противофазе) и в других случаях совместной деятельности нескольких человек.
В рамках экспериментов в случае полного проектирования рассматривались 4 вектора с углами 0, %/4, %/2, 3%/4 . Ясно, что проектирование на противоположно направленные вектора в этом случае не даст дополнительной информации.
В случае избирательного проектирования к данным четырём векторам добавлялись противоположно на-
правленные, и отклик вдоль вектора с углом ф° оценивался по формуле а(/, ф0) = £ гг оо8(фг -фо),
С08(ф,- -фо)>°
где гг, фг - длина и угол г -го вектора оптического потока; суммирование производится только по векторам, образующим острый угол с направлением ф° .
Далее полученные отклики по каждой оси подвергались анализу на наличие периодичности с помощью дискретного преобразования Фурье. В качестве оконной функции использовалось окно Блэкмена.
На рис. 2 приведены временные последовательности и соответствующие спектры для фрагмента видеозаписи с хорошо выраженной периодичностью (марширующая на месте девочка) и соответствующие спектры для случаев полного и избирательного проектирования. В обоих случаях спектральные пики оказываются хорошо выраженными, хотя в первом случае они заметно выше.
Рис. 2. Временной отклик (вверху) и соответствующий спектр (внизу) для случая полного проектирования на 4 вектора
б
Принятие решения
Оценка спектров производилась каждые 0,5 с при величине окна анализа около 2,5 с (32 спектральных отсчёта в спектре мощности). Каждый спектр подвер-
гался нормировке. Анализировалась область от 1,5 до 8 Гц, что соответствует диапазону периодических движений отобранных в базу видеофрагментов. Оценка возвышения пика в спектре над окружающей областью производилась по формуле Ьг = /г -
-(min(f-_ь f_2) + rninifi+1, f+2))/2, где f - спектральный отсчёт спектра мощности с индексом i.
Среди спектров по всем направлениям выбирался спектр с наибольшим пиком и признак периодичности -по признаку превышения его высотой некоторого фиксированного порога.
Таким образом, фрагмент преобразовывался в последовательность флагов - признаков периодичности. Принималось решение о наличии периодичности всего видеофрагмента, если находился сегмент из 4 последовательных флагов, содержащий не менее 3 признаков периодичности.
Результаты экспериментов
Проверка предложенного алгоритма определения периодичности производилась на небольшой базе видеофрагментов длительностью от 5 до 10 с суммарной длительностью около 40 мин. Сюжеты с периодическими движениями включали записи музыкантов (гитаристов, скрипачей), танцев и элементов физической культуры (зарядка, аэробика). Большая часть фрагментов без периодических движений была взята из тех же исходных файлов.
Основная обработка видеофрагментов производилась специально написанной программой на С++ с использованием библиотек OpenCV и ffmpeg. Она вычисляла и обрабатывала оптический поток, а также спектры откликов по осям. Результаты ее работы сохранялись в текстовых файлах, которые подвергались последующей обработке скриптами на языке Python.
Рассматривались результаты для методов полного проектирования на четыре оси и избирательного проектирования на 8 векторов. Также проверялось, что следующие частные технические решения повышают точность распознавания: применение оконной функции, нормировка спектров, фильтрация оптического потока по максимальной длине стрелок и по величине ошибки.
Поступила в редакцию_
В результате оценки эквивалентной ошибки 1 -го и 2-го рода получены значения: 24 % - для варианта полного проектирования на 4 вектора и 20 - для метода избранного проектирования на 8 векторов.
Выводы
Применённый метод детектирования периодичности движения является достаточно простым и универсальным; достигнутые результаты показывают его общую применимость.
По мнению авторов, он имеет большой потенциал в части повышения надёжности работы, что связано с повышением точности вычисления оптического потока, локализацией участков, содержащих движущиеся элементы, детектированием и компенсацией движения камеры.
Литература
1. Lang S., Block M., Rojas R. Sign Language Recognition
Using Kinect // Artificial Intelligence and Soft Computing. 2012. Vol. 7267. P. 394-402.
2. Bouguet J.-Y. Pyramidal Implementation of the Lucas
Kanade Feature Tracker Description of the Algorithm // Intel Corporation, J. Microprocessor Research Labs. Technical report. 2000. Р. 1-9.
3. Derpanis K.G., Gryn J.M. Three-Dimensional nth Deriva-
tive of Gaussian Separable Steerable Filters // International Conference on Image Processing (ICIP). 2005. Vol. III. P. 553-556.
4. Fang Liu, Rosalind W. Picard. Finding Periodicity in Space
and Time // International Conference on Computer Vision. 1998. P. 376-383.
5. ChengR., Shang Y., HayesD.Jr., Saha S.P., Yu G. Noninva-
sive Optical Evaluation of Spontaneous Low Frequency Oscillations in Cerebral Hemodinamics // Neuroimage. 2012. Vol. 62, № 3. P. 1445-1454.
6. Bradski G. The OpenCV Library // Dr. Dobb's J. of Software
Tools. 2000. Vol. 25, № 11. Р. 120, 122-125.
26 июня 2013 г.