Извлечение из видеоряда кинематической схемы и определение графиков движения человека

Раздел V. Моделирование сложных систем

УДК 004.89, 004.93

А.В. Кучуганов, Д.С. Глухов

ИЗВЛЕЧЕНИЕ ИЗ ВИДЕОРЯДА КИНЕМАТИЧЕСКОЙ СХЕМЫ И ОПРЕДЕЛЕНИЕ ГРАФИКОВ ДВИЖЕНИЯ ЧЕЛОВЕКА*

В работе рассматривается подход многоуровневого распознавания и логического анализа для извлечения из видеоряда кинематической схемы и определения графиков движения человека путем построения и сопоставления нечетких атрибутивных графов образов. Подход базируется на нечетких графах и структурном распознавании образов. Представлен оригинальный метод цветовой сегментации изображения путем кластеризации цветовой палитры в четырехмерном пространстве RGBW или HSVW, где W - количество пикселей соответствующего цвета, и рекурсивного (с помощью того же анализатора окрестностей) выделения областей изображения, относящихся к одному цвету полученной упрощенной палитры. Приведены примеры.

Видеоряд; когнитивное моделирование; цветовая сегментация; скелетон; распознавание образов; нечеткий граф.

A.V. Kuchuganov, D.S. Glukhov

EXTRACTING THE KINEMATIC SCHEME FROM A VIDEO SEQUENCE AND CALCULATING MOTION DIAGRAMS OF A PERSON

In the paper an approach of multilevel recognition and logical analysis to extracting the kinematic scheme from a video sequence and calculating motion diagrams of a person is considered, which consists in creating and matching fuzzy attributive pattern graphs. The described approach is based on fuzzy graphs and structural pattern recognition. Introduces an original method of the color segmented image by clustering color palette in four-dimensional space RGBW or HSVW, where W is the number of pixels corresponding color, and recursive (with the help of the same analyzer environs) highlight areas of an image, referring to the same color obtained simpli-fiedpalette. Examples are presented.

Video sequence; cognitive modeling; color segmentation; skeleton; pattern recognition; fuzzy graph.

Одной из самых актуальных тем в мире анимации является захват движения (англ. Motion Capture) - метод, который заключается в присваивании компьютерному персонажу движений реального актера. На сегодняшний день существует немало способов осуществления такого захвата. Самым распространенным из них является маркерный способ, который заключается в применении специального оборудования - датчиков, оптических или механических, закрепляемых на теле актера [1]. Во время движения специальные камеры фиксируют положение датчиков, а затем передают пространственные данные в соответствующее ПО, где и происходит создание компьютерной анимации.

*

Работа выполнена при поддержке РФФИ (проекты № 11-07-00632-а, 11-07-00783-а).

Такой способ дает весьма неплохие результаты, а потому нередко используется при создании трехмерных анимационных фильмов [2] («Беовульф», «Аватар» и др.). Однако стоимость систем маркерного захвата очень высока, и позволить их себе могут только крупные компании. Вследствие этого в последнее время, все чаще, поднимается проблема создания систем безмаркерного захвата, не требующего специального оборудования и основанного на обработке видеоинформации. Преимущества такого способа неоспоримы: во-первых, не потребуется специальная одежда, датчики и провода, что значительно упрощает движение и облегчает подготовку к съемкам; во-вторых, отпадает необходимость в специально оборудованном помещении; в-третьих, такой способ гораздо дешевле, ведь режиссеру придется заплатить лишь за ПО и за простую видеокамеру (либо, в зависимости от ПО, за несколько видеокамер).

Но, несмотря на все вышеперечисленные преимущества, нельзя не отметить и главный недостаток такого метода - его высокую математическую сложность, которая, пожалуй, является основной причиной того, что подобных систем сегодня практически не существует. Впрочем, разработчики находят способы в той или иной степени облегчить себе задачу. Например, одна из популярных систем в данной области - iPi Desktop Мotion Сapture - накладывает определенные ограничения на процесс захвата [3]. В частности, система требует наличия специальных камер (Sony PlayStation 3 Eye или Microsoft Kinect camera), зафиксированных в одной точке, темной однотонной одежды на актере. Кроме того, система пока плохо работает в режиме одной камеры. Остальные системы либо накладывают свой набор ограничений, либо дают некачественные результаты. Можно сделать вывод, что задача безмаркерного захвата движения на сегодняшний день не решена.

Предлагаемый подход включает в себя следующие этапы:

1. Обработка цифровых изображений, в качестве которых выступают кадры видео-файла.

2. Выделение силуэта человека на последовательности цифровых изображений.

3. Векторизация и аппроксимация границ силуэта.

4. Распознавание ключевых точек полученных векторных объектов.

5. Построение кинематической схемы человека и графиков движения точек соединения звеньев (конечностей, суставов).

6. Экспорт кинематической схемы в редакторы персонажной анимации.

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

Рассмотрим каждую подзадачу, реализуемую в нашей системе.

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

1. Унификация (нормализация) ряда изображений по яркости, насыщенности, составляющим спектра и т.д. Совершенно необходимая вещь при работе с недорогими видеокамерами и при нестабильности освещения, что бывает очень часто.

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

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

Обычно берут на изображении некоторую прямоугольную область и строят усредненный вектор в RGB пространстве для всех пикселей этой области. Простейшей мерой сходства является евклидово расстояние между вектором анализируемого пикселя и усредненным вектором искомого цвета. Такой способ достаточно хорошо работает в интерактивном режиме. В автоматическом режиме цветовую кластеризацию осуществляют (с различным успехом) методами "k-средних", графовыми, гистограммными методами, "выравниванием" областей, сегментацией по морфологическим водоразделам, а также модифицированными перечисленными методами или их совместным применением [6].

Опыт показывает, что гистограммы, построенные отдельно для R, G и B цветов, не дают желаемого эффекта, несмотря на то, что результаты в целом вполне удовлетворительны как для анализа, так и для сопоставления фотографий.

Наиболее адекватным когнитивным моделям механизмов зрения, на наш взгляд, является метод построения дерева областей на основе статистики [7]. Ниже этот алгоритм модифицирован в плане приближения к концепции когнитивного моделирования.

На цветном изображении кластеризация может работать в двух режимах -цветовом в модели HSV (Hue - цветовой тон, Saturation - насыщенность, Volume

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

В цветовом режиме HSV образуются кластеры двух видов: на основе гистограммы по каналу Hue (т.е. собственно цветные кластеры) и на основе гистограммы по Volume. Гистограмма по Volume строится на множестве пикселей изображения, цвет которых условно отнесен к оттенкам серого, то есть пиксель, в котором канал Saturation меньше или равен значению параметра S или канал Volume меньше или равен значению параметра V, относится к множеству «серых» пикселей. Все остальные пиксели считаются «цветными». Параметры S и V задаются пользователем с помощью соответствующих движков. Размерность каждой из гистограмм определяется соответствующим значением параметра Dimension.

Области изображения, принадлежащие силуэту персонажа и его деталям, могут быть выделены как по цвету, так и по интенсивности. Для этого строится гистограмма Hue без учета тех пикселей, цвет которых отнесен к серому. На первом же кадре видеоряда пользователь должен указать те цвета (диапазоны гистограммы), которые принадлежат персонажу. Те же действия осуществляются для гистограммы Volume.

Далее, в рабочем режиме система сканирует каждое изображение локальным анализатором 3x3 или 5x5 пикселей (рис. 1).

Если на одной из диагоналей анализируемой окрестности обнаруживается перепад по цвету или интенсивности, то соответствующие пиксели будут отнесены к различным областям - деталям персонажа или сцены.

4 3 2

5 Ех,у 1

6 7 8

Рис. 1. Виды анализируемых окрестностей: а — окрестность 3 х3; б - окрестность 5 х5 и анализируемые лучи

Выделение силуэта человека на последовательности цифровых изображений включает в себя:

1) методы компенсации тряски камеры, что необходимо в случае съемки нефиксированной камерой (основной задачей здесь является «вписывание» каждого кадра в единую глобальную систему координат);

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

Векторизация и аппроксимация границ силуэта является промежуточным этапом работы системы. Данная задача не требует учитывать какие-то особенности движения человека, чтобы перевести его силуэт из растровой в векторную форму. Поэтому мы можем использовать здесь какой-либо из существующих векторизаторов (на текущий момент используется векторизатор «Аг1РЬо1;о» - разработка кафедры «АСОИУ» ИжГТУ) [8].

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

1) обработка векторного скелетона, в частности, его аппроксимация, нахождение пересечений и т.д.;

2) поиск наиболее подходящего эталона в базе;

3) корректировка эталона по достоверным частям скелетона.

В качестве результата распознавания берется скорректированный эталон.

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

Существует достаточно много алгоритмов построения геометрического остова (скелета) невыпуклых фигур, в т.ч. и достаточно простых. В общем случае изображения объектов разделяют на две категории: линейные и площадные. Скелетон как идеализированная модель реального объекта актуален для линейных объектов, к которым можно отнести буквы, поскольку они, вне зависимости от вида шрифта, по своей природе (истории происхождения) являются линейными. Однако выделение скелетона на широкополосных объектах и при низком качестве изображений само по себе является проблемой.

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

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

Отрицательный перегиб границы - это поворот вектора отрезка от площади фигуры (расширение или изгиб объекта, рис. 2).

а б в г

Рис. 2. Отрицательные перегибы границы

После обработки изображения представляется в виде нечеткого нагруженного графа.

По сути, все образы в памяти человека нечеткие. Мы не запоминаем точные координаты, размеры, углы, формы, но хорошо “видим” и помним качественные характеристики, соотношения, пропорции.

В нечетком графе ребра имеют нечеткие веса от 0 до 1. В нашем случае нечеткий нагруженный граф:

G = (V, А, E, R),

где v е V - множество типовых опорных узлов (ТОУ), параметры которых а е А - это множество лингвистических переменных [9, 10], принимающих значение из соответствующих нечетких множеств; e е E - множество ребер (неориентированных дуг), отображающих пространственные отношения между ТОУ с помощью параметров г е Я - множество лингвистических переменных, принимающих значения из нечетких множеств.

Множество А лингвистических переменных определяется кортежами:

<а, X, Са>,

где а - наименование переменной; Х - область определения переменной - набор возможных значений х; Са = {<Ма (х)/х>} - нечеткое множество, описывающее степень принадлежности (вероятность) Ма (х) того, что некоторое число принадлежит лингвистическому значению х.

Соответственно, множество Я = {<г, У, Сг>}.

В начале, строится нагруженный граф векторизованного скелетона. Вершины

- типовые опорные узлы (ТОУ). Ребра - цепочки из отрезков и дуг между ТОУ. Затем из графа в полуавтоматическом режиме делается эталон - нечеткий нагруженный граф анализируемого объекта.

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

не только с эталонами, но и с соседними кадрами, достаточно иметь 5-7 эталонов для персонажа. В этом плане можно провести аналогию с задачей распознавания рукописных текстов [11], где зачастую требуется несколько вариантов написания для одной буквы.

Экспорт кинематической схемы в редакторы персонажной анимации - завершающий этап в процессе захвата, который заключается в переводе кинематических схем в существующие форматы обмена анимацией (например, БУИ, В1Р, БМО).

Пример процесса распознавания векторного скелетона приведен на рис. 3,а,б

- векторизованные силуэт и скелетон; рис. 3,в,г - шаги достроения и аппроксимации скелетона; рис. 3,д - подбор и масштабирование эталона.

&

г

д

Рис. 3. Процесс распознавания скелетона и стилизованная модель человека

в 3D редакторе

После этого происходит выделение кинематической схемы и экспорт ее в

3Б-редактор для визуализации. В частности, на рисунке (см. рис. 3,д) показана

трехмерная модель человека в искомой позе.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. J. Root. Performance and Motion Capture. The VES Handbook of Visual Effects // Industry Standard VFX Practices and Procedures. - 2010. - P. 335-386.

2. Menache A. Motion Capture Case Studies and Controversy, Understanding Motion Capture for Computer Animation (Second Edition). - Elsevier, 2011. - P. 47-73.

3. Интервью с директором компании iPi Soft [электронный ресурс]. - Режим доступа: http://www.render.ru/books/show_book.php?book_id=877, свободный.

4. Гонсалес Р., Вудс Р. Цифровая обработка изображений. - М.: Техносфера, 2006. - 1072 с.

5. Kuchuganov A.V. Recursions in Image Analysis Problems // Pattern Recognition and Image Analysis. - 2009. - Vol. 19, №. 3. - Р. 501-507.

6. Шапиро Л., Стокман Дж. Компьютерное зрение. - М.: БИНОМ. Лаборатория знаний, 2006. - 752 с.

7. Ohlander R., Price K., Reddy D.R. Picture segmentation using a recursive region splitting method // Comput. Graphics Image Process. - 1978. - № 8. - P. 313-333.

8. Кучуганов А.В. Рекурсивные биоалгоритмы анализа изображений // Интеллектуальные системы. Коллективная монография. Вып. 3. - М.: Физматлит, 2009. - С. 179-187.

9. Заде Л.А. Роль мягких вычислений и нечеткой логики в понимании, конструировании и развитии информационных/интеллектуальных систем // Новости Искусственного Интеллекта. - 2001. - № 2-3. - C. 7-11.

10. Яхъяева Г.Э., Нечеткие множества и нейронные сети. - БИНОМ. Лаборатория знаний, Интернет-университет информационных технологий - ИНТУИТ.ру, 2008.

11. Исупов Н.С., Кучуганов А.В. Распознавание слитных рукописных текстов с использованием аппарата нечеткой логики // Вестник Ижевского государственного технического университета. - Ижевск: Изд-во ИжГТУ, 2012. - № 1. - С. 104-107.

Статью рекомендовал к опубликованию д.т.н., профессор А.Г. Кравец.

Кучуганов Александр Валерьевич - Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Ижевский государственный технический университет»; e-mail: Aleks_KAV@udm.ru; 426069, г. Ижевск, ул. Студенческая, 7, корп. 3, ауд. 607; тел.: 83412588910; факс: 83412504055; кафедра автоматизированных систем обработки информации и управления; к.т.н., доцент.

Глухов Денис Сергеевич - магистрант.

Kuchuganov Aleksander Valeryevich - Izhevsk State Technical University; e-mail: Aleks_KAV@udm.ru; 7, Studencheskaya street, Izhevsk, 426069, Russia; phone: +73412588910; fax: +73412504055; the department of CAD systems; cand. of eng. sc.; associate professor.

Glukhov Denis Sergeevich - master.

УДК 004.9:621.391.825:519.7

В.Ю. Михайлов

ФОРМИРОВАНИЕ ПСЕВДОГАУССОВЫХ ШУМОВЫХ СИГНАЛОВ С НОРМИРОВАННЫМИ ХАРАКТЕРИСТИКАМИ

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

Моделирование; шумовые сигналы; энергетический спектр; каналы передачи данных; псевдослучайные последовательности.

V.Yu. Mikhaylov

GENERATION OF PSEUDO-GAUSSIAN NOISE SIGNALS HAVING SPECIFIED CHARACTERISTICS

A method of a broadband PN signals generation having controlled energy spectrum envelope and normalized amplitude distribution was proposed. An estimates of PN signals energy spectrum envelope irregularity for some of the most simple generator implementation options was obtained. A comparison of the energy spectrum envelope flatness of the proposed PN signals type and widely used PN was done. The results may be useful in data transmission channels simulating as well as for the problems of given type man-made noises making.

Simulating; noise signals; the energy spectrum; data channels; pseudo-random sequence.