Универсальный открытый фреймворк для устройств естественного взаимодействия, таких как MS Kinect
Израильская компания PrimeSense, технологии которой были использованы при создании устройства Microsoft Kinect, представила новый открытый проект - OpenNI, код которого открыт под лицензиями GPLv3/LGPLv3. Дополнительно открыт пакет драйверов и сопутствующих компонентов для работы с сенсорами на базе платформы PrimeSense (поддержка MS Kinect может быть обеспечена через ранее представленный драйвер). Бинарные сборки OpenNI и драйверов доступны для Windows и Ubuntu.Цель проекта OpenNI - создание универсального фреймворка для обеспечения совместимости и переносимости приложений, промежуточного ПО и устройств, базирующихся на естественном взаимодействии с пользователем. В частности, OpenNI предоставляет универсальный API, для организации управления приложениями через движения пользователя и голосовые команды. Из областей применения интерфейсов естественного взаимодействия можно отметить не только игровые программы, в которых движения пользователя отражаются на течении игрового процесса, но и создание интуитивных форм управления бытовой электроникой через язык жестов (например, условное движение руки может включить определенный бытовой прибор или переключить канал телевизора).
Примеры базовых возможностей, которые можно реализовать при помощи OpenNI:
- Распознавание речи и управляющих речевых команд;
- Распознавание движения руки и выявление предопределенных жестов, которые затем интерпретируются в управляющие команды;
- Отслеживание и анализ движения тела, что может быть использовано для управления игровым процессом.
Состав OpenNI API:
- Сенсоры для приема визуальной и аудио информации, позволяющие видеть и слышать людей и их окружение.
Поддерживаемые сенсоры:
- 3D-сенсор, позволяющий определить расстояние до объекта с учетом грубины помещения;
- RGB-камера;
- Инфракрасная камера;
- Аудиоустройство (микрофон или группа микрофонов).
- Промежуточное ПО (middleware) для восприятие визуальной и звуковой инфомрации, предназначенное для анализа содержимого сцены и осмысления происходящего. Например, middleware-компонент получая на вхоже изображение может выявлять позицию кисти руки.
Компоненты промежуточного ПО:
- Анализатор положения тела, обрабатывающий полученные от сенсоров данные и генерирующий информацию, связанную с позицией тела человека (напирмер, предоставление данных о позиции суставов в пространстве, смещении центра масс и т.п.);
- Анализатор положения кисти руки, выявляющий позицию кистей рук у присутствующих в области видимости людей;
- Компонент для определения появления управляющих жестов на основании потока данных от анализатора положения кистей рук и уведомление приложений в случае выявления жеста (напирмер, жест рукой в виде волны);
- Анализатор состояния сцены, выявляющий такую информацию, как оценка изменения заднего плана, координация плоскости пола, выявление новых фигур и объектов.
© OpenNet