Rambler's Top100
  -   !    !
our_sci_invent
our_sci_invent_MoCap
our_sci_invent_Cars_Move
our_sci_invent_GLF
3D-
our_sci_publish
 


???????@Mail.ru

Rambler's Top100


 

мы в наукеразработкизахват движения

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

 

Краткий обзор существующих технологий

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

  • Активные системы используют датчики, которые передают информацию о своем состоянии, для анализа движения объекта. Например, на корабль, спущенный на воду, можно установить радио-датчики для исследования параметров его остойчивости. Для анализа движения человека можно использовать механический костюм. Это тоже пример системы с активными датчиками, потому что информация о движении формируется непосредственно в узлах костюма при помощи отслеживания изменения углов между звеньями. Такие системы отличаются простотой и точностью обработки полученной информации. Однако далеко не всегда системы такого рода удобны. Активные датчики зачастую имеют большой размер и, поэтому могут затруднять само движение объекта либо не обеспечивать требуемую полноту данных о движении. Тем не менее, практические реализации систем захвата движения с использованием активных датчиков существуют. Более того, рассматриваемая область развивается и имеет ряд преимуществ перед архитектурой с пассивными датчиками. Одним из самых больших преимуществ пассивных датчиков является сравнительная простота алгоритмов обработки получаемых данных, вследствие чего система может обеспечивать намного менее дискретное получение информации об объекте, чем системы с пассивными датчиками.
  • Датчики системы называются пассивными, если они не формируют данных о движении исследуемого объекта, а просто получают какую-либо натуральную информацию об объекте, например, его изображение. Дальнейшая обработка производится программными средствами. Например, мимику при распознавании речи по губам было бы сложно анализировать при помощи множества механических датчиков на лице человека. В этом случае пользуются изображением, поступающим с видео- или инфракрасных камер. Системы этого вида зачастую проще с точки зрения аппаратной реализации, но математическая обработка данных значительно усложняется, особенно, в тех случаях, когда необходима высокая точность анализа.

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

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

По количеству степеней свободы, с которыми работает система.

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

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

Начальная инициализация системы

Этап инициализации в системах захвата и анализа движения должен проектироваться особенно тщательно, потому что на этом этапе происходит формирование данных, которыми в дальнейшем будут пользоваться все остальные подсистемы.
Этот этап включает в себя следующие задачи: настройку и калибровку датчиков, установку системных данных о начальном положении датчиков и исследуемого объекта, инициализацию начальной позы объекта, возможно, формирование графа свобод и ограничений, по которому система будет анализировать полученные данные на завершающем этапе своей работы. Граф свобод и ограничений, если таковой используется в системе, определяет степени свобод и ограничения изменений по этим степеням свобод для каждого участка скелета объекта.
Формирование начальной позы может происходить различными способами. В некоторых реализациях существует определенная инициализационная поза объекта, в таком случае система начинает сбор данных только после того, как подсистема инициализации сообщает, что объект принял предусмотренную начальную позу. В другом случае система может принимать любую начальную позу объекта, но тогда необходимо проанализировать несколько кадров данных, чтобы убедиться, что данные о позе получены правильно, иначе возможна ситуация, в которой система будет долгое время собирать неверные данные, и не сможет обнаружить ошибку.
Граф свобод и ограничений так же, как и инициализационная поза объекта, может либо изначально присутствовать в системе, либо формироваться при помощи анализа характера трансформаций и движения объекта на некотором интервале времени после первого запуска системы.
Кроме описанных подзадач, на этапе инициализации и начальной настройки система может производить самотестирование. Тестирование обычно строится следующим образом: проверяется работа датчиков, затем датчики отключаются и на вход системы отслеживания ключевых областей подается последовательность заведомо верных данных. Если данные, полученные в результате обработки, соответствуют имеющимся правильным результатам, система работает верно. Этап самотестирования обычно присутствует в системах, очень критичных к корректности реакции, либо в автоматических системах, в которых отсутствует оператор, который может проверить работоспособность системы визуально.

Трекинг, отслеживание ключевых областей

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

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

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

Пространственные алгоритмы анализируют не изменение изображения во времени, а структуры, из которых состоит изображение.

  • Алгоритм граничного выделения объекта основывается на контрасте цвета объекта и цвета фона. Существует два подхода к формированию изображения для анализа этим алгоритмом. Либо объект отображается монотонно, обычно, голубым цветом на фоне среды любого цвета. Либо объект любой расцветки выделятся монотонной, обычно, черной средой.
  • В эту группу алгоритмов входят и различные статистические методы выделения объекта. В этом случае объект обычно выделяется особым способом расположенными на нем цветными точками либо особыми формами, присущими данному объекту.

После получения и формализации данных, анализ переходит на следующую ступень.
До сих пор мы говорили о способах выделения ключевых областей из общего потока информации. И, если система использует активные датчики или даже дифференцируемые маркеры, то этап отслеживания ключевых областей на этом завершает свою работу. Однако возможно использование однотипных маркеров либо корреляционное получение информации. В этих случаях на этапе трекинга появляется специфическая подзадача. Подзадача сопоставления ключевых областей друг другу в кадрах информации, полученных на различных временных метках.
Для разрешения описанной проблемы, в любом случае, необходимо использовать искусственный интеллект, конечно, в разной степени.
Одним из самых популярных и простых с алгоритмической точки зрения вариантов решения является использование высокочастотных датчиков. Большинство систем захвата движения, присутствующих на рынке, используют высокочастотные видеокамеры, для получения изображения объекта. Частота камер варьируется от 100 до 800 кадров в секунду. Такие частоты, конечно, существенно упрощают алгоритмы сопоставления маркеров, потому что в следующем кадре маркер очень незначительно перемещается от своего предыдущего положения.
Однако разрабатываются и алгоритмы, направленные на отвязку от качества аппаратуры. Они более интеллектуальные. Например, маркеры можно располагать определенным образом, позволяющим определять однозначно некоторые группы маркеров независимо от их положения и трансформации.
В дополнение к неравномерному распределению маркеров предложено использование априорных знаний о структуре объекта. В таких реализациях обычно используется активная модель объекта для отслеживания маркеров. Например, зная положение маркеров локтевого и плечевого суставов модели человека, мы можем точно сказать, что, если предполагаемый маркер кисти отклонился более чем на 90 градусов в наружную сторону руки, то это не маркер кисти. Вводя много такого рода ограничений в структуру модели, мы можем достичь требуемой для решения поставленной задачи «интеллектуальности» модели.

Распознавание формы и положения

Этот этап работы системы, можно с уверенностью считать наиболее сложным и наукоемким. Распознавание формы и трансформации объекта уже никак не зависит от аппаратной реализации датчиков, потому что все данные получаются на этапе выделения и отслеживания ключевых областей.
Если объект не имеет способности к свободной трансформации, то остается сопоставить положения ключевых областей модели объекта, и будут получены форма и положение. Таким объектом может быть, к примеру, стол. Все его части имеют постоянное положение относительно друг друга. Но существуют и объекты, которые могут изменять форму в своем локальном пространстве. Рука – различным расположением пальцев мы можем придавать ей самые различные формы. Для таких объектов распознавание формы производится несколько сложнее.
Существуют три подхода к распознаванию формы.

  • Без использования модели. Допустим, существует способ передачи двоичных данных, в котором поднятая вверх рука означает ноль, а расположенная перпендикулярно позвоночнику – единицу. Тогда наблюдателю не важны никакие другие данные о передающем, кроме его положения руки. В этом случае можно не создавать модель человека, необходим только лишь упрощенный скелет и три ключевые области на объекте.
  • С косвенным использованием модели. Рассмотрим случай, когда нужно проанализировать движения спортсмена, чтобы затем указать на его слабые стороны. Для этой цели не имеет смысла создавать очень детальную модель, но и одним скелетом обойтись будет сложно. В этом случае создается простая модель. На ней проводится анализ некоторого количества стандартных поз. А затем, при анализе движения реального человека, его движения приводятся к этим стандартным позам.
  • С непосредственным использованием модели. В особо сложных случаях, например, при анализе мимики лица человека, необходимо создание очень детальной и удобной в использовании модели. Обработка такого рода движений сейчас вызывает особенно высокий интерес разработчиков диагностической аппаратуры и крупных студий, занимающихся компьютерной графикой.

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

Распознавание действия

Это завершающая фаза работы системы, как анализатора, за ней следует непосредственно ответная реакция системы, если таковая предусмотрена.
Распознавание действия, как и распознавание формы, может быть реализовано с использованием статических или динамических данных.
Системы, которые распознают действия объекта по статическим данным, просто сравнивают вычисленную на предыдущем этапе позу объекта с хранящимися в системе шаблонами. Такие системы обычно распознают только очень простые действия. Они могут сказать, что человек сидит, стоит, указывает на что-то. Но не смогут определить, подпрыгнул человек или падает с какой-то высоты.
Системы динамического распознавания действия работают уже с некоторой последовательностью данных распознавателя формы, и поэтому могут узнавать сложные действия. Большая часть таких систем может распознавать только идет человек или стоит, такие распознаватели считаются низкоуровневыми. Если же система может достоверно распознать такие действия, как перенос объектов, бег, контролирующие действия, элементы танца, то это система высокого уровня.
Как статические, так и динамические системы, на конечном этапе своей работы сравнивают действие объекта, которое они получили, с шаблонами, которые хранятся в их памяти. И делают заключение о сходстве с одним из таких шаблонов.
Алгоритм работы статических систем обычно не накладывает особых требований на реализацию предыдущего этапа анализа. Однако динамические системы распознавания действия могу пользоваться такими данными, как, например, состояние каких-то отдельных мышц тела человека. В таких случаях распознавание формы должно быть реализовано соответствующим образом.
Реакция системы

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

Некоторые существующие системы захвата движения

Лидерами в отрасли являются фирмы Vicon, Acty, Advanced Mechanical Technology, DKH, Gsport, Motion Analysis, Peak Performance, PhaseSpace, Phoenix Technologies, Polhemus, Gypsy и Qualisys. Недавно компания Vicon сообщила о том, что оптическая система оцифровки движений персонажа Vicon 8, наряду с аналогичными системами других разработчиков была подвергнута независимому тестированию на международном форуме Clinical Gait Analysis Forum в Японии. В результате проведенных тестов, система Vicon 8 показала наилучшие по скорости обработки и точности полученного материала результаты.
Vicon 8i это второе поколение семейства V8 – первой системы захвата движения созданной специально для анимации компьютерных персонажей. Система основана на пассивных датчиках и маркерах для обозначения ключевых областей.
Система оптимизирована для работы с большими объемами данных, может производить захват движения для нескольких актеров. Поддерживает работу с 24 камерами, так же есть возможность работы в режиме реального времени.
Система не накладывает ограничение на количество маркеров расположенных на модели. Обычно используется около 120 маркеров. Но возможно использование до 400 маркеров в автономном режиме.
Необходим определенный уровень качества входных данных, чтобы определять движение актера и избежать неавтоматическую обработку данных (например, если какой-то из маркеров не будет выделен, оператору систему будет нужно указать его положение в ручном режиме). В качестве источников информации применяются разработанные фирмой камеры Vicon Mcam2.
Основные свойства камеры Vicon Mcam2:
• Увеличивает активную область действия
• 1.3 миллиона пикселей – больше точность, больше детализация
• 1000 кадров в секунду – более быстрые движения, больше нюансов, истинная красота движения в высокой скорости
• способность легко различать соприкасающиеся маркеры, даже на расстоянии порядка 25 метров от камеры.
• Можно использовать меньшие маркеры – захват полного тела, лица, руки, все одновременно. Только камеры MCam2 способны точно обнаружить позицию маленьких (4mm) маркеров на расстояниях больше чем 10 метров
• Сокращение последующей обработки благодаря повышенному качеству данных
Оборудование с такими характеристиками позволяет добиваться высокого качества обработки таких видов движения как взмах клинка, удар по мячу в гольфе, приемы каратэ.
Вместе с оборудованием поставляется и пакет программного обеспечения, который состоит из следующих программных продуктов:
• Vicon IQ
Обеспечивает процесс обработки потока данных, улучшая его за счет использования элементов искусственного интеллекта. Расширяет все преимущества от оптического захвата движения. Проводит распознавание движения нескольких актеров. Решает проблему «исчезнувших» маркеров. При необходимости проводит аппроксимацию движения.
• Vicon Workstation
Данный программный продукт является «сердцем» системы. Проводит полный цикл обработки захвата движения от выделения маркеров до 3D моделирования.
• Vicon Realtime
Специализированный программный продукт, который оптимизирует обработку информации и представления ее в режиме реального времени.
• Vicon BodyBuilder
Приложение, которое позволяет создавать и анализировать кинематическую модель скелета. Разработан собственный язык описания скелета. Который позволяет избавиться от сложной векторной алгебры для описания трехмерного движения и перевести его в обычный скриптовый язык.
Система захвата движения Gypsy Motion Capture System предлагает альтернативный способ захвата движения. Патентованная электромеханическая система, состоит из скелета, сделанного из легких алюминиевых стержней, которые следуют за движением актера, и датчиков. За счет движения изменяется сопротивление, которое детектируется с помощью потенциометров. Чтобы вычислить угол поворота бедер используется гироскоп (установленный на бедрах). Данные из аналоговой формы преобразуются в цифровую форму и обрабатываются на компьютере в специализированном программном обеспечении.